def test_invalid_token_raises_exception(self): interpreter = Interpreter('') interpreter.current_token = Token(PLUS, '+') with self.assertRaises(InvalidTokenException) as exc: interpreter.eat([DIVIDE, MULTIPLY])
def test_valid_token_calls_get_next_token(self): interpreter = Interpreter('') with patch.object(interpreter, 'get_next_token') as get_next_token: interpreter.current_token = Token(PLUS, '+') interpreter.eat([PLUS, SUBTRACT, DIVIDE, MULTIPLY]) self.assertTrue(get_next_token.called)