aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java/com/google/devtools/build/lib/util
diff options
context:
space:
mode:
authorGravatar Janak Ramakrishnan <janakr@google.com>2016-10-25 00:11:37 +0000
committerGravatar John Cater <jcater@google.com>2016-10-25 20:16:34 +0000
commitdade5e171bb8a82f267513e47ccb63aa7d3d4517 (patch)
tree45275a1d8fca4dc122b83966ce27bd60bc4d97ca /src/test/java/com/google/devtools/build/lib/util
parent11730a017e6f79bbd07a6ed29d6d05dc1c87d345 (diff)
If a group of deps has only one unique element, store it bare.
Not storing it bare both breaks equality comparison for GroupedList and uses more space. -- Change-Id: Iaf4f88908ecf4293cfc31dbd896f46e1da3b4184 Reviewed-on: https://bazel-review.googlesource.com/#/c/6850/ MOS_MIGRATED_REVID=137099785
Diffstat (limited to 'src/test/java/com/google/devtools/build/lib/util')
-rw-r--r--src/test/java/com/google/devtools/build/lib/util/GroupedListTest.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/util/GroupedListTest.java b/src/test/java/com/google/devtools/build/lib/util/GroupedListTest.java
index 6ffba0ef34..8ac5230dac 100644
--- a/src/test/java/com/google/devtools/build/lib/util/GroupedListTest.java
+++ b/src/test/java/com/google/devtools/build/lib/util/GroupedListTest.java
@@ -93,6 +93,33 @@ public class GroupedListTest {
}
@Test
+ public void listWithOneUniqueElementStoredBare() {
+ GroupedList<String> groupedListWithDuplicateInGroup = new GroupedList<>();
+ groupedListWithDuplicateInGroup.append(GroupedListHelper.create("a"));
+ GroupedListHelper<String> helper = new GroupedListHelper<>();
+ helper.startGroup();
+ helper.add("b");
+ helper.add("b");
+ helper.endGroup();
+ groupedListWithDuplicateInGroup.append(helper);
+ GroupedList<String> groupedListWithNoDuplicates = new GroupedList<>();
+ groupedListWithNoDuplicates.append(GroupedListHelper.create("a"));
+ groupedListWithNoDuplicates.append(GroupedListHelper.create("b"));
+ assertThat(groupedListWithNoDuplicates).isEqualTo(groupedListWithDuplicateInGroup);
+ }
+
+ @Test
+ public void listWithNoNewElementsStoredEmpty() {
+ GroupedList<String> groupedListWithEmptyGroup = new GroupedList<>();
+ GroupedListHelper<String> helper = GroupedListHelper.create("a");
+ helper.add("a");
+ groupedListWithEmptyGroup.append(helper);
+ GroupedList<String> groupedListWithNoDuplicates = new GroupedList<>();
+ groupedListWithNoDuplicates.append(GroupedListHelper.create("a"));
+ assertThat(groupedListWithNoDuplicates).isEqualTo(groupedListWithEmptyGroup);
+ }
+
+ @Test
public void group() {
GroupedList<String> groupedList = new GroupedList<>();
assertTrue(groupedList.isEmpty());