+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_plus(self):
+ self.assertEqual(
+ tokenize('+'),
+ (Token(
+ type='addition_level_operator',
+ match='+',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_minus(self):
+ self.assertEqual(
+ tokenize('-'),
+ (Token(
+ type='addition_level_operator',
+ match='-',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_times(self):
+ self.assertEqual(
+ tokenize('*'),
+ (Token(
+ type='multiplication_level_operator',
+ match='*',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_integer_divide(self):
+ self.assertEqual(
+ tokenize('//'),
+ (Token(
+ type='multiplication_level_operator',
+ match='//',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_modular_divide(self):
+ self.assertEqual(
+ tokenize('%'),
+ (Token(
+ type='multiplication_level_operator',
+ match='%',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_comma(self):
+ self.assertEqual(
+ tokenize(','),
+ (Token(
+ type='comma',
+ match=',',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_assignment_operator(self):
+ self.assertEqual(
+ tokenize('='),
+ (Token(
+ type='assignment_operator',
+ match='=',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_equality_operator(self):
+ self.assertEqual(
+ tokenize('=='),
+ (Token(
+ type='comparison_level_operator',
+ match='==',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_greater_than_or_equal_operator(self):
+ self.assertEqual(
+ tokenize('>='),
+ (Token(
+ type='comparison_level_operator',
+ match='>=',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_less_than_or_equal_operator(self):
+ self.assertEqual(
+ tokenize('<='),
+ (Token(
+ type='comparison_level_operator',
+ match='<=',
+ index=0,
+ line=1,
+ ),),
+ )
+
+ def test_tokenizes_greater_than_equal_operator(self):
+ self.assertEqual(
+ tokenize('>'),
+ (Token(
+ type='comparison_level_operator',
+ match='>',
+ index=0,
+ line=1,
+ ),),