def start(self): cp = CommandParser() cp.add_command('show_movies', self.show_all_movies) cp.add_command('add_movie', self.add_movie) cp.add_command('add_projection', self.add_movie_projection) cp.add_command('show_projections', self.show_projections) cp.add_command('add_reservation', self.add_reservation) while True: user_input = input() if user_input == 'exit': break else: print(cp.execute(user_input))
class CommandsTest(unittest.TestCase): def setUp(self): self.parser = CommandParser() def test_add_command(self): self.parser.add_command('plus', plus) self.assertEqual({'plus': plus}, self.parser._CommandParser__commands) def test_parse_arguments(self): result = self.parser.parse_arguments('(1, 2)') # ToDo def test_execute_key_error(self): self.parser.add_command('plus', plus) result = self.parser.execute('minus; 3') self.assertEqual('No such command', result) def test_execute(self): self.parser.add_command('plus', plus) result = self.parser.execute('plus; (1, 2)') self.assertEqual(3, result)