</xs:simpleType>""", XMLSchemaParseError) schema = self.check_schema(""" <xs:simpleType name='RestrictedDateTimeType'> <xs:restriction base='xs:dateTime'> <xs:assertion test="$value > xs:dateTime('1999-12-31T23:59:59')"/> </xs:restriction> </xs:simpleType>""") self.assertTrue(schema.types['RestrictedDateTimeType'].is_valid('2000-01-01T12:00:00')) schema = self.check_schema(""" <xs:simpleType name="Percentage"> <xs:restriction base="xs:integer"> <xs:assertion test="$value >= 0"/> <xs:assertion test="$value <= 100"/> </xs:restriction> </xs:simpleType>""") self.assertTrue(schema.types['Percentage'].is_valid('10')) self.assertTrue(schema.types['Percentage'].is_valid('100')) self.assertTrue(schema.types['Percentage'].is_valid('0')) self.assertFalse(schema.types['Percentage'].is_valid('-1')) self.assertFalse(schema.types['Percentage'].is_valid('101')) self.assertFalse(schema.types['Percentage'].is_valid('90.1')) if __name__ == '__main__': from xmlschema.tests import print_test_header print_test_header() unittest.main()
if self.package_dir is not None: files.extend([ os.path.join(self.package_dir, 'setup.py'), os.path.join(self.package_dir, 'doc/conf.py'), ]) version = filename = None for line in fileinput.input(files): if fileinput.isfirstline(): filename = fileinput.filename() lineno = fileinput.filelineno() match = self.get_version.search(line) if match is not None: if version is None: version = match.group(1).strip('\'\"') else: self.assertTrue( version == match.group(1).strip('\'\"'), message % (lineno, filename, match.group(1).strip('\'\"'), version) ) # TODO: Add tests for checking base schemas files and other package files. if __name__ == '__main__': from xmlschema.tests import print_test_header print_test_header() unittest.main()