Exits with error code on build exception, fixes #674
This commit is contained in:
parent
4183428daa
commit
586152c6ce
3 changed files with 28 additions and 1 deletions
|
@ -14,9 +14,10 @@ def main():
|
||||||
except BuildozerCommandException:
|
except BuildozerCommandException:
|
||||||
# don't show the exception in the command line. The log already show
|
# don't show the exception in the command line. The log already show
|
||||||
# the command failed.
|
# the command failed.
|
||||||
pass
|
sys.exit(1)
|
||||||
except BuildozerException as error:
|
except BuildozerException as error:
|
||||||
Buildozer().error('%s' % error)
|
Buildozer().error('%s' % error)
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
main()
|
main()
|
||||||
|
|
0
tests/scripts/__init__.py
Normal file
0
tests/scripts/__init__.py
Normal file
26
tests/scripts/test_client.py
Normal file
26
tests/scripts/test_client.py
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
import sys
|
||||||
|
import mock
|
||||||
|
import unittest
|
||||||
|
from buildozer import BuildozerCommandException
|
||||||
|
from buildozer.scripts import client
|
||||||
|
|
||||||
|
|
||||||
|
class TestClient(unittest.TestCase):
|
||||||
|
|
||||||
|
def test_run_command_called(self):
|
||||||
|
"""
|
||||||
|
Checks Buildozer.run_command() is being called with arguments from command line.
|
||||||
|
"""
|
||||||
|
with mock.patch('buildozer.Buildozer.run_command') as m_run_command:
|
||||||
|
client.main()
|
||||||
|
assert m_run_command.call_args_list == [mock.call(sys.argv[1:])]
|
||||||
|
|
||||||
|
def test_exit_code(self):
|
||||||
|
"""
|
||||||
|
Makes sure the CLI exits with error code on BuildozerCommandException, refs #674.
|
||||||
|
"""
|
||||||
|
with mock.patch('buildozer.Buildozer.run_command') as m_run_command:
|
||||||
|
m_run_command.side_effect = BuildozerCommandException()
|
||||||
|
with self.assertRaises(SystemExit) as context:
|
||||||
|
client.main()
|
||||||
|
assert context.exception.code == 1
|
Loading…
Reference in a new issue