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

Unified Diff: tools/telemetry/telemetry/results/base_test_results_unittest.py

Issue 332513002: Add unittest for gtest_test_results. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 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: tools/telemetry/telemetry/results/base_test_results_unittest.py
diff --git a/tools/telemetry/telemetry/results/base_test_results_unittest.py b/tools/telemetry/telemetry/results/base_test_results_unittest.py
new file mode 100644
index 0000000000000000000000000000000000000000..b448e69b28788d888762d113a58ddd954fe786df
--- /dev/null
+++ b/tools/telemetry/telemetry/results/base_test_results_unittest.py
@@ -0,0 +1,59 @@
+# 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.
+import unittest
+import sys
+
+
+class TestOutputStream(object):
+ def __init__(self):
+ self.output_data = []
+
+ def write(self, data):
+ assert isinstance(data, str)
+ self.output_data.append(data)
+
+class BaseTestResultsUnittest(unittest.TestCase):
+
+ def CreateException(self):
tonyg 2014/06/11 23:08:51 I know you're just moving this. But while you're h
nednguyen 2014/06/11 23:30:36 Done.
+ try:
+ raise Exception('Intentional exception')
+ except Exception:
+ return sys.exc_info()
+
+ def assertEquals(self, ex, res):
+ # This helps diagnose result mismatches.
+ if ex != res and isinstance(ex, list):
+ def CleanList(l):
+ res = []
+ for x in l:
+ x = x.split('\n')
+ res.extend(x)
+ return res
+ ex = CleanList(ex)
+ res = CleanList(res)
+ max_len = max(len(ex), len(res))
+ max_width = max([len(x) for x in ex + res])
+ max_width = max(10, max_width)
+ print 'Lists differ!'
+ print '%*s | %*s' % (max_width, 'expected', max_width, 'result')
+ for i in range(max_len):
+ if i < len(ex):
+ e = ex[i]
+ else:
+ e = ''
+ if i < len(res):
+ r = res[i]
+ else:
+ r = ''
+ if e != r:
+ sep = '*'
+ else:
+ sep = '|'
+ print '%*s %s %*s' % (max_width, e, sep, max_width, r)
+ print ''
+ if ex != res and isinstance(ex, str) and isinstance(res, str):
+ print 'Strings differ!'
+ print 'exepected:\n%s' % repr(ex)
+ print 'result:\n%s\n' % repr(res)
+ super(BaseTestResultsUnittest, self).assertEquals(ex, res)

Powered by Google App Engine
This is Rietveld 408576698