Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Unified Diff: build/android/chrome_profiler/postprocessor_unittest.py

Issue 293193002: adb_profile_chrome: Add perf profiler (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Implemented trace merging. Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: build/android/chrome_profiler/postprocessor_unittest.py
diff --git a/build/android/chrome_profiler/postprocessor_unittest.py b/build/android/chrome_profiler/postprocessor_unittest.py
new file mode 100644
index 0000000000000000000000000000000000000000..f37136c2fef58e5feb3897c7db2888e9463b6e51
--- /dev/null
+++ b/build/android/chrome_profiler/postprocessor_unittest.py
@@ -0,0 +1,32 @@
+# Copyright 2014 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.
+
+from chrome_profiler import postprocessor
+
+import json
+import tempfile
+import unittest
+
+
+class PostprocessorTest(unittest.TestCase):
+ def testJsonTraceMerging(self):
+ t1 = {'traceEvents': [{'ts': 123, 'ph': 'b'}]}
+ t2 = {'traceEvents': [], 'stackFrames': ['blah']}
+
+ with tempfile.NamedTemporaryFile(delete=False) as f1:
+ with tempfile.NamedTemporaryFile(delete=False) as f2:
bulach 2014/06/04 10:34:12 why delete=False? the with would only close them a
Sami 2014/06/04 15:16:59 Both of these files get deleted during merging, an
+ f1.write(json.dumps(t1))
+ f2.write(json.dumps(t2))
+ f1.flush()
+ f2.flush()
+
+ with tempfile.NamedTemporaryFile() as output:
+ postprocessor.PackageTraces([f1.name, f2.name],
+ output.name,
+ compress=False,
+ write_json=True)
+ with open(output.name) as output:
+ output = json.load(output)
+ self.assertEquals(output['traceEvents'], t1['traceEvents'])
+ self.assertEquals(output['stackFrames'], t2['stackFrames'])

Powered by Google App Engine
This is Rietveld 408576698