Example #1
0
 def test_buildozer_help(self):
     """
     Makes sure the help gets display with no error, refs:
     https://github.com/kivy/buildozer/issues/813
     """
     buildozer = Buildozer()
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         buildozer.usage()
     assert 'Usage:' in mock_stdout.getvalue()
Example #2
0
 def test_run_command_unknown(self):
     """
     Makes sure the unknown command/target is handled gracefully, refs:
     https://github.com/kivy/buildozer/issues/812
     """
     buildozer = Buildozer()
     command = 'foobar'
     args = [command, 'debug']
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         with self.assertRaises(SystemExit):
             buildozer.run_command(args)
     assert mock_stdout.getvalue() == 'Unknown command/target {}\n'.format(command)
Example #3
0
 def test_log_print(self):
     """
     Checks logger prints different info depending on log level.
     """
     # sets log level to 1 in the spec file
     self.set_specfile_log_level(self.specfile.name, 1)
     buildozer = Buildozer(self.specfile.name)
     assert buildozer.log_level == 1
     # at this level, debug messages shouldn't not be printed
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         buildozer.debug('debug message')
         buildozer.info('info message')
         buildozer.error('error message')
     # using `in` keyword rather than `==` because of bash color prefix/suffix
     assert 'debug message' not in mock_stdout.getvalue()
     assert 'info message' in mock_stdout.getvalue()
     assert 'error message' in mock_stdout.getvalue()
     # sets log level to 2 in the spec file
     self.set_specfile_log_level(self.specfile.name, 2)
     buildozer = Buildozer(self.specfile.name)
     assert buildozer.log_level == 2
     # at this level all message types should be printed
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         buildozer.debug('debug message')
         buildozer.info('info message')
         buildozer.error('error message')
     assert 'debug message' in mock_stdout.getvalue()
     assert 'info message' in mock_stdout.getvalue()
     assert 'error message' in mock_stdout.getvalue()
Example #4
0
 def test_log_print(self):
     """
     Checks logger prints different info depending on log level.
     """
     # sets log level to 1 in the spec file
     self.set_specfile_log_level(self.specfile.name, 1)
     buildozer = Buildozer(self.specfile.name)
     assert buildozer.log_level == 1
     # at this level, debug messages shouldn't not be printed
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         buildozer.debug('debug message')
         buildozer.info('info message')
         buildozer.error('error message')
     # using `in` keyword rather than `==` because of bash color prefix/suffix
     assert 'debug message' not in mock_stdout.getvalue()
     assert 'info message' in mock_stdout.getvalue()
     assert 'error message' in mock_stdout.getvalue()
     # sets log level to 2 in the spec file
     self.set_specfile_log_level(self.specfile.name, 2)
     buildozer = Buildozer(self.specfile.name)
     assert buildozer.log_level == 2
     # at this level all message types should be printed
     with mock.patch('sys.stdout', new_callable=StringIO) as mock_stdout:
         buildozer.debug('debug message')
         buildozer.info('info message')
         buildozer.error('error message')
     assert 'debug message' in mock_stdout.getvalue()
     assert 'info message' in mock_stdout.getvalue()
     assert 'error message' in mock_stdout.getvalue()
Example #5
0
 def test_buildozer_read_spec(self):
     """
     Initializes Buildozer object from existing spec file.
     """
     buildozer = Buildozer(filename=self.default_specfile_path())
     assert os.path.exists(buildozer.specfilename) is True
Example #6
0
 def test_p4a_best_ndk_version_default_value(self):
     self.set_specfile_log_level(self.specfile.name, 1)
     buildozer = Buildozer(self.specfile.name, 'android')
     assert buildozer.target.p4a_best_ndk_version is None