summaryrefslogtreecommitdiffstats
path: root/third_party/libwebrtc/build/fuchsia/binary_sizes_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/libwebrtc/build/fuchsia/binary_sizes_test.py')
-rwxr-xr-xthird_party/libwebrtc/build/fuchsia/binary_sizes_test.py61
1 files changed, 61 insertions, 0 deletions
diff --git a/third_party/libwebrtc/build/fuchsia/binary_sizes_test.py b/third_party/libwebrtc/build/fuchsia/binary_sizes_test.py
new file mode 100755
index 0000000000..962e4c9123
--- /dev/null
+++ b/third_party/libwebrtc/build/fuchsia/binary_sizes_test.py
@@ -0,0 +1,61 @@
+#!/usr/bin/env python
+# Copyright 2020 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import copy
+import math
+import os
+import shutil
+import subprocess
+import tempfile
+import time
+import unittest
+
+import binary_sizes
+
+from common import DIR_SOURCE_ROOT
+
+
+class TestBinarySizes(unittest.TestCase):
+ tmpdir = None
+
+ @classmethod
+ def setUpClass(cls):
+ cls.tmpdir = tempfile.mkdtemp()
+
+ @classmethod
+ def tearDownClass(cls):
+ shutil.rmtree(cls.tmpdir)
+
+ # TODO(crbug.com/1145648): Add tests covering FAR file input and histogram
+ # output.
+
+ def testCommitFromBuildProperty(self):
+ commit_position = binary_sizes.CommitPositionFromBuildProperty(
+ 'refs/heads/master@{#819458}')
+ self.assertEqual(commit_position, 819458)
+
+ def testCompressedSize(self):
+ """Verifies that the compressed file size can be extracted from the
+ blobfs-compression output."""
+
+ uncompressed_file = tempfile.NamedTemporaryFile(delete=False)
+ for line in range(200):
+ uncompressed_file.write(
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. '
+ 'Sed eleifend')
+ uncompressed_file.close()
+ compressed_path = uncompressed_file.name + '.compressed'
+ compressor_path = os.path.join(DIR_SOURCE_ROOT, 'third_party',
+ 'fuchsia-sdk', 'sdk', 'tools', 'x64',
+ 'blobfs-compression')
+ subprocess.call([compressor_path, uncompressed_file.name, compressed_path])
+ self.assertEqual(binary_sizes.CompressedSize(uncompressed_file.name),
+ os.path.getsize(compressed_path))
+ os.remove(uncompressed_file.name)
+ os.remove(compressed_path)
+
+
+if __name__ == '__main__':
+ unittest.main()