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

Side by Side Diff: telemetry/telemetry/util/js_template_unittest.py

Issue 2693923005: Reland of [Telemetry] Switch clients to new JavaScript API (batch 5) (Closed)
Patch Set: Created 3 years, 10 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 unified diff | Download patch
« no previous file with comments | « telemetry/telemetry/util/js_template.py ('k') | telemetry/telemetry/value/histogram_util.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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)
OLDNEW
« no previous file with comments | « telemetry/telemetry/util/js_template.py ('k') | telemetry/telemetry/value/histogram_util.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698