Index: third_party/closure_linter/closure_linter/requireprovidesorter_test.py |
diff --git a/third_party/closure_linter/closure_linter/requireprovidesorter_test.py b/third_party/closure_linter/closure_linter/requireprovidesorter_test.py |
deleted file mode 100644 |
index fecb6d04dad9cebf6633428b20371471eda5f06c..0000000000000000000000000000000000000000 |
--- a/third_party/closure_linter/closure_linter/requireprovidesorter_test.py |
+++ /dev/null |
@@ -1,155 +0,0 @@ |
-#!/usr/bin/env python |
-# |
-# Copyright 2012 The Closure Linter Authors. All Rights Reserved. |
-# |
-# Licensed under the Apache License, Version 2.0 (the "License"); |
-# you may not use this file except in compliance with the License. |
-# You may obtain a copy of the License at |
-# |
-# http://www.apache.org/licenses/LICENSE-2.0 |
-# |
-# Unless required by applicable law or agreed to in writing, software |
-# distributed under the License is distributed on an "AS-IS" BASIS, |
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
-# See the License for the specific language governing permissions and |
-# limitations under the License. |
- |
-"""Unit tests for RequireProvideSorter.""" |
- |
- |
- |
-import unittest as googletest |
-from closure_linter import javascripttokens |
-from closure_linter import requireprovidesorter |
-from closure_linter import testutil |
- |
-# pylint: disable=g-bad-name |
-TokenType = javascripttokens.JavaScriptTokenType |
- |
- |
-class RequireProvideSorterTest(googletest.TestCase): |
- """Tests for RequireProvideSorter.""" |
- |
- def testGetFixedProvideString(self): |
- """Tests that fixed string constains proper comments also.""" |
- input_lines = [ |
- 'goog.provide(\'package.xyz\');', |
- '/** @suppress {extraprovide} **/', |
- 'goog.provide(\'package.abcd\');' |
- ] |
- |
- expected_lines = [ |
- '/** @suppress {extraprovide} **/', |
- 'goog.provide(\'package.abcd\');', |
- 'goog.provide(\'package.xyz\');' |
- ] |
- |
- token = testutil.TokenizeSourceAndRunEcmaPass(input_lines) |
- |
- sorter = requireprovidesorter.RequireProvideSorter() |
- fixed_provide_string = sorter.GetFixedProvideString(token) |
- |
- self.assertEquals(expected_lines, fixed_provide_string.splitlines()) |
- |
- def testGetFixedRequireString(self): |
- """Tests that fixed string constains proper comments also.""" |
- input_lines = [ |
- 'goog.require(\'package.xyz\');', |
- '/** This is needed for scope. **/', |
- 'goog.require(\'package.abcd\');' |
- ] |
- |
- expected_lines = [ |
- '/** This is needed for scope. **/', |
- 'goog.require(\'package.abcd\');', |
- 'goog.require(\'package.xyz\');' |
- ] |
- |
- token = testutil.TokenizeSourceAndRunEcmaPass(input_lines) |
- |
- sorter = requireprovidesorter.RequireProvideSorter() |
- fixed_require_string = sorter.GetFixedRequireString(token) |
- |
- self.assertEquals(expected_lines, fixed_require_string.splitlines()) |
- |
- def testFixRequires_removeBlankLines(self): |
- """Tests that blank lines are omitted in sorted goog.require statements.""" |
- input_lines = [ |
- 'goog.provide(\'package.subpackage.Whatever\');', |
- '', |
- 'goog.require(\'package.subpackage.ClassB\');', |
- '', |
- 'goog.require(\'package.subpackage.ClassA\');' |
- ] |
- expected_lines = [ |
- 'goog.provide(\'package.subpackage.Whatever\');', |
- '', |
- 'goog.require(\'package.subpackage.ClassA\');', |
- 'goog.require(\'package.subpackage.ClassB\');' |
- ] |
- token = testutil.TokenizeSourceAndRunEcmaPass(input_lines) |
- |
- sorter = requireprovidesorter.RequireProvideSorter() |
- sorter.FixRequires(token) |
- |
- self.assertEquals(expected_lines, self._GetLines(token)) |
- |
- def fixRequiresTest_withTestOnly(self, position): |
- """Regression-tests sorting even with a goog.setTestOnly statement. |
- |
- Args: |
- position: The position in the list where to insert the goog.setTestOnly |
- statement. Will be used to test all possible combinations for |
- this test. |
- """ |
- input_lines = [ |
- 'goog.provide(\'package.subpackage.Whatever\');', |
- '', |
- 'goog.require(\'package.subpackage.ClassB\');', |
- 'goog.require(\'package.subpackage.ClassA\');' |
- ] |
- expected_lines = [ |
- 'goog.provide(\'package.subpackage.Whatever\');', |
- '', |
- 'goog.require(\'package.subpackage.ClassA\');', |
- 'goog.require(\'package.subpackage.ClassB\');' |
- ] |
- input_lines.insert(position, 'goog.setTestOnly();') |
- expected_lines.insert(position, 'goog.setTestOnly();') |
- |
- token = testutil.TokenizeSourceAndRunEcmaPass(input_lines) |
- |
- sorter = requireprovidesorter.RequireProvideSorter() |
- sorter.FixRequires(token) |
- |
- self.assertEquals(expected_lines, self._GetLines(token)) |
- |
- def testFixRequires_withTestOnly(self): |
- """Regression-tests sorting even after a goog.setTestOnly statement.""" |
- |
- # goog.setTestOnly at first line. |
- self.fixRequiresTest_withTestOnly(position=0) |
- |
- # goog.setTestOnly after goog.provide. |
- self.fixRequiresTest_withTestOnly(position=1) |
- |
- # goog.setTestOnly before goog.require. |
- self.fixRequiresTest_withTestOnly(position=2) |
- |
- # goog.setTestOnly after goog.require. |
- self.fixRequiresTest_withTestOnly(position=4) |
- |
- def _GetLines(self, token): |
- """Returns an array of lines based on the specified token stream.""" |
- lines = [] |
- line = '' |
- while token: |
- line += token.string |
- if token.IsLastInLine(): |
- lines.append(line) |
- line = '' |
- token = token.next |
- return lines |
- |
-if __name__ == '__main__': |
- googletest.main() |