def issue7(): whenCheck = DatetimeCheck('when', format="%m/%d/%Y") when = ET.fromstring('<when>10/12/2013</when>') print whenCheck(when) when_dict = whenCheck.to_dict(when) print when_dict new_when = whenCheck.from_dict(when_dict) ET.dump( new_when ) print whenCheck(new_when) event = XCheck('event') event.addattribute(whenCheck) party = ET.fromstring('<event when="10/12/2013" />') print "Checking Party:", event(party) party_as_dict = event.to_dict(party) print party_as_dict
def setUp(self): #~ dude = XCheck('dude') nick = BoolCheck('nick', required=False) fname = TextCheck('first', min_length = 1) fname.addattribute(nick) lname = TextCheck('last', min_length = 1) code = IntCheck('code', min_occurs = 1, max_occurs = 5) code.addattribute(TextCheck('word', required=False) ) name = XCheck('name', children=[fname, lname, code]) emailtype = SelectionCheck('type', values = ['home','work', 'personal']) email = EmailCheck('email', max_occurs=2) email.addattribute(emailtype) street = TextCheck('street') city = TextCheck('city') address = XCheck('address', children = [street, city, email], max_occurs = 4) self.address = address dude = XCheck('dude', children=[name, address]) idch = IntCheck('id', required=True) dude.addattribute(idch) elem = ET.fromstring("""<dude id="1"> <name> <first nick="true">Josh</first> <last>English</last> <code>12</code> <code word="answer">42</code> </name> <address> <street>100 Main St</street> <city>Podunk</city> <email type="home">[email protected]</email> <email type="work">[email protected]</email> </address> <address> <street>318 West Nowhere Ln</street> <city>East Podunk</city> <email type="personal">[email protected]</email> </address> </dude>""") self.w = Wrap(dude, elem)
def setUp(self): nick = BoolCheck('nick', required=False) fname = TextCheck('first', min_length = 1) fname.addattribute(nick) lname = TextCheck('last', min_length = 1) code = IntCheck('code', min_occurs = 1, max_occurs = 5) code.addattribute(TextCheck('word', required=False) ) ch = XCheck('name', children=[fname, lname, code]) idch = IntCheck('id', required=True) ch.addattribute(idch) elem = ET.fromstring("""<name id="1"> <first nick="true">Josh</first> <last>English</last> <code>12</code> <code word="answer">42</code> </name>""") self.w = Wrap(ch, elem)
class Issue10Test(unittest.TestCase): def setUp(self): self.ch = XCheck('test') self.ch.addattribute(SelectionCheck('value', values=['a', 'b'], required=False)) def tearDown(self): del self.ch def testGoodValues(self): self.assertTrue(self.ch('<test value="a" />')) self.assertTrue(self.ch('<test value="b" />')) def testBadValues(self): self.assertRaises(self.ch.error, self.ch, "<test value='c' />") def testMissing(self): self.assertTrue(self.ch('<test />')) def testPassingNone(self): v = self.ch.get('value') ## v.logger.setLevel(logging.DEBUG) self.assertTrue(v(None))