def testMultipleGoogScopeCalls(self): start_token = testutil.TokenizeSourceAndRunEcmaPass( _TEST_MULTIPLE_SCOPE_SCRIPT) error_accumulator = erroraccumulator.ErrorAccumulator() alias_pass = aliaspass.AliasPass(set(['goog', 'myproject']), error_handler=error_accumulator) alias_pass.Process(start_token) alias_errors = error_accumulator.GetErrors() self.assertEquals(3, len(alias_errors)) error = alias_errors[0] self.assertEquals(errors.INVALID_USE_OF_GOOG_SCOPE, error.code) self.assertEquals(7, error.token.line_number) error = alias_errors[1] self.assertEquals(errors.EXTRA_GOOG_SCOPE_USAGE, error.code) self.assertEquals(7, error.token.line_number) error = alias_errors[2] self.assertEquals(errors.EXTRA_GOOG_SCOPE_USAGE, error.code) self.assertEquals(11, error.token.line_number)
def _ParseComment(self, script): """Parse a script that contains one comment and return it.""" accumulator = erroraccumulator.ErrorAccumulator() _, comments = testutil.ParseFunctionsAndComments(script, accumulator) if accumulator.GetErrors(): raise TypeErrorException(accumulator.GetErrors()) self.assertEquals(1, len(comments)) return comments[0]
def _ProcessFileAndGetMessages(self, filename): """Trap gpylint's output parse it to get messages added.""" errors = erroraccumulator.ErrorAccumulator() self._runner.Run([filename], errors) errors = errors.GetErrors() errors.sort() return errors
def _AssertInError(self, original, expected): """Asserts that the error fixer corrects original to expected.""" # Trap gjslint's output parse it to get messages added. error_accumulator = erroraccumulator.ErrorAccumulator() runner.Run('testing.js', error_accumulator, source=original) error_nums = [e.code for e in error_accumulator.GetErrors()] self.assertIn(expected, error_nums)
def _ProcessFileAndGetMessages(self, filename): """Trap gpylint's output parse it to get messages added.""" errors = erroraccumulator.ErrorAccumulator() self._runner.Run([filename], errors) errors = errors.GetErrors() # Convert to expected tuple format. error_msgs = [(error.token.line_number, error.code) for error in errors] error_msgs.sort() return error_msgs
def _AssertErrors(self, original, expected_errors, include_header=True): """Asserts that the error fixer corrects original to expected.""" if include_header: original = self._GetHeader() + original # Trap gjslint's output parse it to get messages added. error_accumulator = erroraccumulator.ErrorAccumulator() runner.Run('testing.js', error_accumulator, source=original) error_nums = [e.code for e in error_accumulator.GetErrors()] error_nums.sort() expected_errors.sort() self.assertListEqual(error_nums, expected_errors)
def testInvalidGoogScopeCall(self): start_token = testutil.TokenizeSourceAndRunEcmaPass(_TEST_SCOPE_SCRIPT) error_accumulator = erroraccumulator.ErrorAccumulator() alias_pass = aliaspass.AliasPass(error_handler=error_accumulator) alias_pass.Process(start_token) alias_errors = error_accumulator.GetErrors() self.assertEquals(1, len(alias_errors)) alias_error = alias_errors[0] self.assertEquals(errors.INVALID_USE_OF_GOOG_SCOPE, alias_error.code) self.assertEquals('goog.scope', alias_error.token.string)
def _CheckPath(path): """Check a path and return any errors. Args: path: paths to check. Returns: A list of errorrecord.ErrorRecords for any found errors. """ error_handler = erroraccumulator.ErrorAccumulator() runner.Run(path, error_handler) make_error_record = lambda err: errorrecord.MakeErrorRecord(path, err) return map(make_error_record, error_handler.GetErrors())
def _CheckPath(path): """Check a path and return any errors. Args: path: paths to check. Returns: A list of errorrecord.ErrorRecords for any found errors. """ error_accumulator = erroraccumulator.ErrorAccumulator() style_checker = checker.JavaScriptStyleChecker(error_accumulator) style_checker.Check(path) # Return any errors as error records. make_error_record = functools.partial(errorrecord.MakeErrorRecord, path) return map(make_error_record, error_accumulator.GetErrors())