コード例 #1
0
 def test_greater_than_or_equal(self):
     self.assertTrue(evaluate('10 >= 5'))
     self.assertFalse(evaluate('5 >= 10'))
     self.assertTrue(evaluate('5 >= 5'))
コード例 #2
0
 def test_less_than_or_equal(self):
     self.assertTrue(evaluate('5 <= 10'))
     self.assertFalse(evaluate('10 <= 5'))
     self.assertTrue(evaluate('10 <= 10'))
コード例 #3
0
 def test_greater_than(self):
     self.assertTrue(evaluate('10 > 5'))
     self.assertFalse(evaluate('5 > 10'))
     self.assertFalse(evaluate('5 > 5'))
コード例 #4
0
 def test_strings(self):
     with self.assertRaises(UnsupportedOperation):
         evaluate('"string"')
コード例 #5
0
 def test_items(self):
     with self.assertRaises(UnsupportedOperation):
         evaluate('b[0]', b=5)
コード例 #6
0
 def test_not(self):
     self.assertFalse(evaluate('not 10 > 5'))
     self.assertTrue(evaluate('not 5 > 10'))
コード例 #7
0
 def test_comparisons_with_variable(self):
     self.assertTrue(evaluate('a < 10', a=5))
コード例 #8
0
 def test_division(self):
     self.assertEqual(evaluate('10 / 2'), 5)
コード例 #9
0
 def test_exponentiation(self):
     self.assertEqual(evaluate('5 ** 2'), 25)
コード例 #10
0
 def test_subtraction(self):
     self.assertEqual(evaluate('5 - 2'), 3)
コード例 #11
0
 def test_multiplication(self):
     self.assertEqual(evaluate('3 * 2'), 6)
コード例 #12
0
 def test_non_expression_code(self):
     with self.assertRaises(BadExpression):
         evaluate('a = 5')
コード例 #13
0
 def test_addition(self):
     self.assertEqual(evaluate('2 + 2'), 4)
コード例 #14
0
 def test_multiple_expressions(self):
     with self.assertRaises(BadExpression):
         evaluate('5 + 5; 2 + 2')
コード例 #15
0
 def test_and(self):
     self.assertTrue(evaluate('10 > 5 and 10 > 6'))
     self.assertFalse(evaluate('10 < 5 and 10 > 6'))
     self.assertFalse(evaluate('10 > 5 and 10 < 6'))
     self.assertFalse(evaluate('10 < 5 and 10 < 6'))
コード例 #16
0
 def test_modulo(self):
     self.assertEqual(evaluate('10 % 3'), 1)
コード例 #17
0
 def test_or(self):
     self.assertTrue(evaluate('10 > 5 or 10 > 6'))
     self.assertTrue(evaluate('10 < 5 or 10 > 6'))
     self.assertTrue(evaluate('10 > 5 or 10 < 6'))
     self.assertFalse(evaluate('10 < 5 or 10 < 6'))
コード例 #18
0
 def test_equal(self):
     self.assertTrue(evaluate('5 == 5'))
     self.assertFalse(evaluate('10 == 5'))
コード例 #19
0
 def test_calculating_with_variables(self):
     self.assertEqual(evaluate('a + b', a=2, b=3), 5)
コード例 #20
0
 def test_unequal(self):
     self.assertFalse(evaluate('5 != 5'))
     self.assertTrue(evaluate('5 != 10'))
コード例 #21
0
 def test_undefined_variables(self):
     with self.assertRaises(UndefinedVariable):
         evaluate('a + b', a=3)
コード例 #22
0
 def test_less_than(self):
     self.assertTrue(evaluate('5 < 10'))
     self.assertFalse(evaluate('10 < 5'))
     self.assertFalse(evaluate('10 < 10'))
コード例 #23
0
 def test_attrs(self):
     with self.assertRaises(UnsupportedOperation):
         evaluate('b.attr', b=5)
コード例 #24
0
ファイル: test_computer.py プロジェクト: vhsw/Advent-of-Code
def test_computer(code, result):
    assert evaluate(code) == result