| #!/usr/bin/env python3 |
| # Copyright 2017 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import os |
| import sys |
| import unittest |
| |
| import PRESUBMIT |
| |
| sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) |
| from PRESUBMIT_test_mocks import MockFile, MockInputApi |
| |
| class DisallowedBuildFlagsTest(unittest.TestCase): |
| def testChromeDoesNotUseISAPPLE(self): |
| lines = ['#if BUILDFLAG(IS_APPLE)', |
| '#error IS_APPLE not allowed', |
| '#endif'] |
| errors = PRESUBMIT._CheckNoIsAppleBuildFlagsInChromeFile( |
| MockInputApi(), MockFile('chrome/path/foo_platform.cc', lines)) |
| self.assertEqual(1, len(errors)) |
| self.assertEqual(' chrome/path/foo_platform.cc:1', errors[0]) |
| |
| def testChromeDoesNotUseISIOS(self): |
| lines = ['#if BUILDFLAG(IS_IOS)', |
| '#error IS_IOS not allowed', |
| '#endif'] |
| errors = PRESUBMIT._CheckNoIsIOSBuildFlagsInChromeFile( |
| MockInputApi(), MockFile('chrome/path/foo_platform.cc', lines)) |
| self.assertEqual(1, len(errors)) |
| self.assertEqual(' chrome/path/foo_platform.cc:1', errors[0]) |
| |
| if __name__ == '__main__': |
| unittest.main() |