| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import unittest | 5 import unittest |
| 6 | 6 |
| 7 from telemetry.util import js_template | 7 from telemetry.util import js_template |
| 8 | 8 |
| 9 | 9 |
| 10 class JavaScriptTemplateTest(unittest.TestCase): | 10 class JavaScriptTemplateTest(unittest.TestCase): |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 selector='.r > a[href*="wikipedia"]'), | 22 selector='.r > a[href*="wikipedia"]'), |
| 23 r'function(elem) { return elem.find(".r > a[href*=\"wikipedia\"]"); }') | 23 r'function(elem) { return elem.find(".r > a[href*=\"wikipedia\"]"); }') |
| 24 | 24 |
| 25 def testRenderWithLiteralValues(self): | 25 def testRenderWithLiteralValues(self): |
| 26 self.assertEquals( | 26 self.assertEquals( |
| 27 js_template.Render( | 27 js_template.Render( |
| 28 'var {{ @var_name }} = {{ x }} + {{ y }};', | 28 'var {{ @var_name }} = {{ x }} + {{ y }};', |
| 29 var_name='foo', x='bar', y=None), | 29 var_name='foo', x='bar', y=None), |
| 30 'var foo = "bar" + null;') | 30 'var foo = "bar" + null;') |
| 31 | 31 |
| 32 def testRenderWithArgumentExpansion(self): |
| 33 self.assertEquals( |
| 34 js_template.Render( |
| 35 '{{ @f }}({{ *args }})', f='foo', args=(1, 'hi!', None)), |
| 36 'foo(1, "hi!", null)') |
| 37 |
| 32 def testRenderRaisesWithUnknownIdentifier(self): | 38 def testRenderRaisesWithUnknownIdentifier(self): |
| 33 with self.assertRaises(KeyError): | 39 with self.assertRaises(KeyError): |
| 34 js_template.Render('foo({{ some_name }})', another_name='bar') | 40 js_template.Render('foo({{ some_name }})', another_name='bar') |
| 35 | 41 |
| 36 def testRenderRaisesWithBadIdentifier(self): | 42 def testRenderRaisesWithBadIdentifier(self): |
| 37 with self.assertRaises(KeyError): | 43 with self.assertRaises(KeyError): |
| 38 js_template.Render('foo({{ bad identifier name }})', name='bar') | 44 js_template.Render('foo({{ bad identifier name }})', name='bar') |
| 39 | 45 |
| 40 def testRenderRaisesWithBadLiteralValue(self): | 46 def testRenderRaisesWithBadLiteralValue(self): |
| 41 with self.assertRaises(ValueError): | 47 with self.assertRaises(ValueError): |
| 42 js_template.Render('function() { {{ @code }} }', code=['foo', 'bar']) | 48 js_template.Render('function() { {{ @code }} }', code=['foo', 'bar']) |
| 43 | 49 |
| 44 def testRenderRaisesWithUnusedKeywordArgs(self): | 50 def testRenderRaisesWithUnusedKeywordArgs(self): |
| 45 with self.assertRaises(TypeError): | 51 with self.assertRaises(TypeError): |
| 46 js_template.Render('foo = {{ x }};', x=4, y=5, timemout=6) | 52 js_template.Render('foo = {{ x }};', x=4, y=5, timemout=6) |
| OLD | NEW |