Exemple #1
0
class TestVirtstrapRunner(object):
    def setup(self):
        self.runner = VirtstrapRunner()

    def teardown(self):
        self.runner = None
    
    @fudge.test
    def test_runner_lists_commands(self):
        fake_registry = fudge.Fake()
        (fake_registry.expects('list_commands')
                .returns(['command1', 'command2']))
        self.runner.set_registry(fake_registry)
        commands = self.runner.list_commands()
        assert commands == ['command1', 'command2']

    @fudge.test
    def test_runner_run_command(self):
        """Test that the runner passes the correct data to the registry"""
        args = ('test', 'options')
        fake_registry = fudge.Fake()
        fake_registry.expects('run').with_args(*args)
        self.runner.set_registry(fake_registry)
        self.runner.run_command(*args)

    @fudge.patch('sys.stderr')
    def test_run_no_args(self, fake_stderr):
        """Run the main command line utility with no args"""
        fake_stderr.is_a_stub() # just want to silence stderr
        try:
            return_code = self.runner.main()
        except SystemExit, e:
            system_exit = True
            assert e.code == 2
        assert system_exit == True, "Runner didn't issue a system exit"
class TestVirtstrapRunner(object):
    def setup(self):
        self.runner = VirtstrapRunner()

    def teardown(self):
        self.runner = None

    @fudge.patch('sys.stderr')
    def test_run_no_args(self, fake_sys_stderr):
        """Run the main command line utility with no args"""
        fake_sys_stderr.is_a_stub() # just want to silence stderr
        try:
            return_code = self.runner.main()
        except SystemExit, e:
            system_exit = True
            assert e.code == 2
        assert system_exit == True, "Runner didn't issue a system exit"