def test_AddingLabel(self):
     # Arrange
     parser = cmb.parse_any(label='Parser: lor')
     parser_default_label = cmb.parse_any()
     # Assert
     self.assertEqual(parser.label, 'Parser: lor')
     self.assertEqual(parser_default_label.label, '.?')
 def test_FailureCase(self):
     # Arrange
     txt = ''
     parser = cmb.parse_any()
     # Act
     result = parser(txt)
     expected = res.Failure('No more input')
     # Assert
     self.assertEqual(result, expected)
 def test_SuccessCase(self):
     # Arrange
     txt1 = '1'
     txt2 = 'a'
     txt3 = '$'
     parser = cmb.parse_any()
     # Act
     result1 = parser(txt1)
     result2 = parser(txt2)
     result3 = parser(txt3)
     expected1 = res.Success((txt1, ''))
     expected2 = res.Success((txt2, ''))
     expected3 = res.Success((txt3, ''))
     # Assert
     self.assertEqual(result1, expected1)
     self.assertEqual(result2, expected2)
     self.assertEqual(result3, expected3)