def testMultipleBinaryProperties(self): parser = DictParser(stream("{name(7):1234567;name2(1):x;nn(3):abc;}")) prop = parser.getNextProperty() self.assertEqual("name", prop.name()) self.assertEqual("1234567", prop.value()) prop = parser.getNextProperty() self.assertEqual("name2", prop.name()) self.assertEqual("x", prop.value()) prop = parser.getNextProperty() self.assertEqual("nn", prop.name()) self.assertEqual("abc", prop.value())
def testRepeatedNames(self): parser = DictParser(stream("{n:;n:x;n(3):123;}")) prop = parser.getNextProperty() self.assertEqual("n", prop.name()) self.assertEqual("", prop.value()) prop = parser.getNextProperty() self.assertEqual("n", prop.name()) self.assertEqual("x", prop.value()) prop = parser.getNextProperty() self.assertEqual("n", prop.name()) self.assertEqual("123", prop.value())
def testMultipleSimpleProperties(self): parser = DictParser(stream("{name:val;name2:v2;name3:val3;}")) prop = parser.getNextProperty() self.assertEqual("name", prop.name()) self.assertEqual("val", prop.value()) prop = parser.getNextProperty() self.assertEqual("name2", prop.name()) self.assertEqual("v2", prop.value()) prop = parser.getNextProperty() self.assertEqual("name3", prop.name()) self.assertEqual("val3", prop.value())
def testMixedProperties(self): parser = DictParser(stream("{b1(2):ab;s1:xy;b2(3):abc;s2:rs;}")) prop = parser.getNextProperty() self.assertEqual("b1", prop.name()) self.assertEqual("ab", prop.value()) prop = parser.getNextProperty() self.assertEqual("s1", prop.name()) self.assertEqual("xy", prop.value()) prop = parser.getNextProperty() self.assertEqual("b2", prop.name()) self.assertEqual("abc", prop.value()) prop = parser.getNextProperty() self.assertEqual("s2", prop.name()) self.assertEqual("rs", prop.value())
def testEmptyBinaryProperty(self): parser = DictParser(stream("{name(0):;}")) prop = parser.getNextProperty() self.assertEqual("name", prop.name()) self.assertEqual("", prop.value())
def testBinaryProperty(self): parser = DictParser(stream("{name(7):1234567;}")) prop = parser.getNextProperty() self.assertEqual("name", prop.name()) self.assertEqual("1234567", prop.value())
def testSimpleProperty(self): parser = DictParser(stream("{name:val;}")) prop = parser.getNextProperty() self.assertEqual("name", prop.name()) self.assertEqual("val", prop.value())
def testDontThrowAfterExpectedEOF(self): parser = DictParser(stream("{}")) self.assertIsNone(parser.getNextProperty()) self.assertIsNone(parser.getNextProperty())
def testEmpty(self): parser = DictParser(stream("{}")) self.assertIsNone(parser.getNextProperty())