1#!/usr/bin/env python 2# 3# Copyright (c) 2012 The Chromium Authors. All rights reserved. 4# Use of this source code is governed by a BSD-style license that can be 5# found in the LICENSE file. 6 7# This is used to test the findbugs plugin, it calls 8# build/android/pylib/utils/findbugs.py to analyze the classes in 9# org.chromium.tools.findbugs.plugin package, and expects to get the same 10# issue with those in expected_result.txt. 11# 12# Useful command line: 13# --rebaseline to generate the expected_result.txt, please make sure don't 14# remove the expected result of exsting tests. 15 16 17import optparse 18import os 19import sys 20 21sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), 22 '..', '..', '..', '..', 23 'build', 'android'))) 24 25from pylib import constants 26from pylib.utils import findbugs 27 28 29def main(argv): 30 parser = findbugs.GetCommonParser() 31 32 options, _ = parser.parse_args() 33 34 if not options.known_bugs: 35 options.known_bugs = os.path.join(constants.DIR_SOURCE_ROOT, 'tools', 36 'android', 'findbugs_plugin', 'test', 37 'expected_result.txt') 38 if not options.only_analyze: 39 options.only_analyze = 'org.chromium.tools.findbugs.plugin.*' 40 41 return findbugs.Run(options) 42 43if __name__ == '__main__': 44 sys.exit(main(sys.argv)) 45