Merge changes I615b109f,I261f140c,Ia6ffd80e * changes: Superproject Subscriptions: test more corner cases AbstractSubmoduleSubscription: test for pushes to be valid Fix "submoduleOp: Move checking for existence to SubmoduleOp"
diff --git a/gerrit-acceptance-framework/src/test/java/com/google/gerrit/acceptance/AssertUtil.java b/gerrit-acceptance-framework/src/test/java/com/google/gerrit/acceptance/AssertUtil.java new file mode 100644 index 0000000..a325feb --- /dev/null +++ b/gerrit-acceptance-framework/src/test/java/com/google/gerrit/acceptance/AssertUtil.java
@@ -0,0 +1,47 @@ +// Copyright (C) 2016 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package com.google.gerrit.acceptance; + +import static com.google.common.truth.Truth.assertWithMessage; +import static com.google.gerrit.server.config.ConfigUtil.skipField; + +import java.lang.reflect.Field; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +public class AssertUtil { + public static <T> void assertPrefs(T actual, T expected, + String... fieldsToExclude) + throws IllegalArgumentException, IllegalAccessException { + Set<String> exludedFields = new HashSet<>(Arrays.asList(fieldsToExclude)); + for (Field field : actual.getClass().getDeclaredFields()) { + if (exludedFields.contains(field.getName()) || skipField(field)) { + continue; + } + Object actualVal = field.get(actual); + Object expectedVal = field.get(expected); + if (field.getType().isAssignableFrom(Boolean.class)) { + if (actualVal == null) { + actualVal = false; + } + if (expectedVal == null) { + expectedVal = false; + } + } + assertWithMessage(field.getName()).that(actualVal).isEqualTo(expectedVal); + } + } +}
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/DiffPreferencesIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/DiffPreferencesIT.java index bc18d30..a4707dc 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/DiffPreferencesIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/DiffPreferencesIT.java
@@ -15,9 +15,8 @@ package com.google.gerrit.acceptance.api.accounts; import static com.google.common.truth.Truth.assertThat; -import static com.google.common.truth.Truth.assertWithMessage; +import static com.google.gerrit.acceptance.AssertUtil.assertPrefs; import static com.google.gerrit.acceptance.GitUtil.fetch; -import static com.google.gerrit.server.config.ConfigUtil.skipField; import com.google.gerrit.acceptance.AbstractDaemonTest; import com.google.gerrit.acceptance.NoHttpd; @@ -36,10 +35,6 @@ import org.junit.After; import org.junit.Test; -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; - @NoHttpd public class DiffPreferencesIT extends AbstractDaemonTest { @Inject @@ -141,27 +136,4 @@ // assert hard-coded defaults assertPrefs(o, d, "lineLength", "tabSize"); } - - private static void assertPrefs(DiffPreferencesInfo actual, - DiffPreferencesInfo expected, String... fieldsToExclude) - throws IllegalArgumentException, IllegalAccessException { - List<String> exludedFields = Arrays.asList(fieldsToExclude); - for (Field field : actual.getClass().getDeclaredFields()) { - if (exludedFields.contains(field.getName()) || skipField(field)) { - continue; - } - Object actualVal = field.get(actual); - Object expectedVal = field.get(expected); - if (field.getType().isAssignableFrom(Boolean.class)) { - if (actualVal == null) { - actualVal = false; - } - if (expectedVal == null) { - expectedVal = false; - } - } - assertWithMessage("field " + field.getName()).that(actualVal) - .isEqualTo(expectedVal); - } - } }
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java index 337aa8e..6d8ae5c 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/accounts/GeneralPreferencesIT.java
@@ -15,6 +15,7 @@ package com.google.gerrit.acceptance.api.accounts; import static com.google.common.truth.Truth.assertThat; +import static com.google.gerrit.acceptance.AssertUtil.assertPrefs; import com.google.gerrit.acceptance.AbstractDaemonTest; import com.google.gerrit.acceptance.NoHttpd; @@ -49,28 +50,8 @@ GeneralPreferencesInfo o = gApi.accounts() .id(user42.id.toString()) .getPreferences(); - GeneralPreferencesInfo d = GeneralPreferencesInfo.defaults(); - - assertThat(o.changesPerPage).isEqualTo(d.changesPerPage); - assertThat(o.showSiteHeader).isEqualTo(d.showSiteHeader); - assertThat(o.useFlashClipboard).isEqualTo(d.useFlashClipboard); - assertThat(o.downloadScheme).isNull(); - assertThat(o.downloadCommand).isEqualTo(d.downloadCommand); - assertThat(o.dateFormat).isEqualTo(d.getDateFormat()); - assertThat(o.timeFormat).isEqualTo(d.getTimeFormat()); - assertThat(o.emailStrategy).isEqualTo(d.getEmailStrategy()); - assertThat(o.relativeDateInChangeTable).isNull(); - assertThat(o.sizeBarInChangeTable).isEqualTo(d.sizeBarInChangeTable); - assertThat(o.legacycidInChangeTable).isNull(); - assertThat(o.muteCommonPathPrefixes).isEqualTo( - d.muteCommonPathPrefixes); - assertThat(o.signedOffBy).isNull(); - assertThat(o.reviewCategoryStrategy).isEqualTo( - d.getReviewCategoryStrategy()); - assertThat(o.diffView).isEqualTo(d.getDiffView()); - + assertPrefs(o, GeneralPreferencesInfo.defaults(), "my"); assertThat(o.my).hasSize(7); - assertThat(o.urlAliases).isNull(); GeneralPreferencesInfo i = GeneralPreferencesInfo.defaults(); @@ -97,25 +78,7 @@ o = gApi.accounts() .id(user42.getId().toString()) .setPreferences(i); - - assertThat(o.changesPerPage).isEqualTo(i.changesPerPage); - assertThat(o.showSiteHeader).isNull(); - assertThat(o.useFlashClipboard).isNull(); - assertThat(o.downloadScheme).isNull(); - assertThat(o.downloadCommand).isEqualTo(i.downloadCommand); - assertThat(o.dateFormat).isEqualTo(i.getDateFormat()); - assertThat(o.timeFormat).isEqualTo(i.getTimeFormat()); - assertThat(o.emailStrategy).isEqualTo(i.emailStrategy); - assertThat(o.relativeDateInChangeTable).isEqualTo( - i.relativeDateInChangeTable); - assertThat(o.sizeBarInChangeTable).isNull(); - assertThat(o.legacycidInChangeTable).isEqualTo(i.legacycidInChangeTable); - assertThat(o.muteCommonPathPrefixes).isNull(); - assertThat(o.signedOffBy).isEqualTo(i.signedOffBy); - assertThat(o.reviewCategoryStrategy).isEqualTo( - i.getReviewCategoryStrategy()); - assertThat(o.diffView).isEqualTo(i.getDiffView()); + assertPrefs(o, i, "my"); assertThat(o.my).hasSize(1); - assertThat(o.urlAliases).hasSize(1); } }
diff --git a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/DiffPreferencesIT.java b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/DiffPreferencesIT.java similarity index 66% rename from gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/DiffPreferencesIT.java rename to gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/DiffPreferencesIT.java index b6c02dc..047305c 100644 --- a/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/rest/config/DiffPreferencesIT.java +++ b/gerrit-acceptance-tests/src/test/java/com/google/gerrit/acceptance/api/config/DiffPreferencesIT.java
@@ -12,10 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. -package com.google.gerrit.acceptance.rest.config; +package com.google.gerrit.acceptance.api.config; import static com.google.common.truth.Truth.assertThat; -import static com.google.gerrit.server.config.ConfigUtil.skipField; +import static com.google.gerrit.acceptance.AssertUtil.assertPrefs; import com.google.gerrit.acceptance.AbstractDaemonTest; import com.google.gerrit.acceptance.NoHttpd; @@ -23,8 +23,6 @@ import org.junit.Test; -import java.lang.reflect.Field; - @NoHttpd public class DiffPreferencesIT extends AbstractDaemonTest { @@ -32,7 +30,7 @@ public void getDiffPreferences() throws Exception { DiffPreferencesInfo result = gApi.config().server().getDefaultDiffPreferences(); - assertPrefsEqual(result, DiffPreferencesInfo.defaults()); + assertPrefs(result, DiffPreferencesInfo.defaults()); } @Test @@ -47,23 +45,6 @@ result = gApi.config().server().getDefaultDiffPreferences(); DiffPreferencesInfo expected = DiffPreferencesInfo.defaults(); expected.lineLength = newLineLength; - assertPrefsEqual(result, expected); - } - - private void assertPrefsEqual(DiffPreferencesInfo actual, - DiffPreferencesInfo expected) throws Exception { - for (Field field : actual.getClass().getDeclaredFields()) { - if (skipField(field)) { - continue; - } - Object actualField = field.get(actual); - Object expectedField = field.get(expected); - Class<?> type = field.getType(); - if ((type == boolean.class || type == Boolean.class) - && actualField == null) { - continue; - } - assertThat(actualField).named(field.getName()).isEqualTo(expectedField); - } + assertPrefs(result, expected); } }