2 # Copyright 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
6 from os
import path
as os_path
8 import resource_checker
9 from sys
import path
as sys_path
13 _HERE
= os_path
.dirname(os_path
.abspath(__file__
))
14 sys_path
.append(os_path
.join(_HERE
, '..', '..', '..', 'tools'))
16 import find_depot_tools
# pylint: disable=W0611
17 from testing_support
.super_mox
import SuperMoxTestBase
20 class ResourceCheckerTest(SuperMoxTestBase
):
22 SuperMoxTestBase
.setUp(self
)
24 input_api
= self
.mox
.CreateMockAnything()
26 output_api
= self
.mox
.CreateMockAnything()
27 self
.checker
= resource_checker
.ResourceChecker(input_api
, output_api
)
29 def ShouldFailIncludeCheck(self
, line
):
30 """Checks that the '</include>' checker flags |line| as a style error."""
31 error
= self
.checker
.IncludeCheck(1, line
)
32 self
.assertNotEqual('', error
,
33 'Should be flagged as style error: ' + line
)
34 highlight
= test_util
.GetHighlight(line
, error
).strip()
35 self
.assertTrue('include' in highlight
and highlight
[0] == '<')
37 def ShouldPassIncludeCheck(self
, line
):
38 """Checks that the '</include>' checker doesn't flag |line| as an error."""
39 self
.assertEqual('', self
.checker
.IncludeCheck(1, line
),
40 'Should not be flagged as style error: ' + line
)
42 def testIncludeFails(self
):
47 ' <include src="blah.js" /> ',
48 '<include src="blee.js"/>',
51 self
.ShouldFailIncludeCheck(line
)
53 def testIncludePasses(self
):
55 '<include src="assert.js">',
56 "<include src='../../assert.js'>",
57 "<i>include src='blah'</i>",
62 self
.ShouldPassIncludeCheck(line
)
65 if __name__
== '__main__':