Index: tools/binary_size/libsupersize/integration_test.py |
diff --git a/tools/binary_size/libsupersize/integration_test.py b/tools/binary_size/libsupersize/integration_test.py |
index 3a4302b537aadec44150ac2486130555653e3695..0ed5e6c326fb02727c3bc5bdd4bfa78752d6c73c 100755 |
--- a/tools/binary_size/libsupersize/integration_test.py |
+++ b/tools/binary_size/libsupersize/integration_test.py |
@@ -85,6 +85,10 @@ def _RunApp(name, args, debug_measures=False): |
return subprocess.check_output(argv, env=env).splitlines() |
+def _DiffCounts(sym): |
+ return (sym.changed_count, sym.added_count, sym.removed_count) |
+ |
+ |
class IntegrationTest(unittest.TestCase): |
maxDiff = None # Don't trucate diffs in errors. |
cached_size_info = [None, None, None] |
@@ -198,12 +202,15 @@ class IntegrationTest(unittest.TestCase): |
a1.aliases.remove(a1) |
d = diff.Diff(size_info1, size_info2) |
self.assertEquals(d.symbols.size, 0) |
- self.assertEquals(d.symbols.removed_count, 1) |
+ self.assertEquals((0, 0, 1), _DiffCounts(d.symbols)) |
+ # shrinkToFit is in a cluster, so removed turns to a changed when clustered. |
+ self.assertEquals((1, 0, 0), _DiffCounts(d.symbols.Clustered())) |
# Adding one alias should not change size. |
d = diff.Diff(size_info2, size_info1) |
self.assertEquals(d.symbols.size, 0) |
- self.assertEquals(d.symbols.added_count, 1) |
+ self.assertEquals((0, 1, 0), _DiffCounts(d.symbols)) |
+ self.assertEquals((1, 0, 0), _DiffCounts(d.symbols.Clustered())) |
def test_Diff_Aliases2(self): |
size_info1 = self._CloneSizeInfo() |
@@ -217,12 +224,14 @@ class IntegrationTest(unittest.TestCase): |
a1.aliases.remove(a2) |
d = diff.Diff(size_info1, size_info2) |
self.assertEquals(d.symbols.size, 0) |
- self.assertEquals(d.symbols.removed_count, 2) |
+ self.assertEquals((0, 0, 2), _DiffCounts(d.symbols)) |
+ self.assertEquals((1, 0, 1), _DiffCounts(d.symbols.Clustered())) |
# Adding 2 aliases should not change size. |
d = diff.Diff(size_info2, size_info1) |
self.assertEquals(d.symbols.size, 0) |
- self.assertEquals(d.symbols.added_count, 2) |
+ self.assertEquals((0, 2, 0), _DiffCounts(d.symbols)) |
+ self.assertEquals((1, 1, 0), _DiffCounts(d.symbols.Clustered())) |
def test_Diff_Aliases3(self): |
size_info1 = self._CloneSizeInfo() |
@@ -234,12 +243,14 @@ class IntegrationTest(unittest.TestCase): |
size_info2.symbols -= [a1, a2, a3] |
d = diff.Diff(size_info1, size_info2) |
self.assertEquals(d.symbols.size, -a1.size) |
- self.assertEquals(d.symbols.removed_count, 3) |
+ self.assertEquals((0, 0, 3), _DiffCounts(d.symbols)) |
+ self.assertEquals((1, 0, 2), _DiffCounts(d.symbols.Clustered())) |
# Adding all 3 aliases should change size. |
d = diff.Diff(size_info2, size_info1) |
self.assertEquals(d.symbols.size, a1.size) |
- self.assertEquals(d.symbols.added_count, 3) |
+ self.assertEquals((0, 3, 0), _DiffCounts(d.symbols)) |
+ self.assertEquals((1, 2, 0), _DiffCounts(d.symbols.Clustered())) |
def test_Diff_Clustering(self): |
size_info1 = self._CloneSizeInfo() |