Beispiel #1
0
class Ops(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    aircraft = xsd.Element(xsd.String)
    flight_number = xsd.Element(xsd.String)
    type = xsd.Element(xsd.String(enumeration=[
        "COMMERCIAL", "INCOMPLETE", "ENGINE_RUN_UP", "TEST", "TRAINING", "FERRY", "POSITIONING", "LINE_TRAINING"
    ]))
    takeoff_airport = xsd.Element(Airport)
    takeoff_gate_datetime = xsd.Element(xsd.DateTime, minOccurs=0)
    takeoff_datetime = xsd.Element(xsd.DateTime)
    takeoff_fuel = xsd.Element(Weight, minOccurs=0)
    takeoff_gross_weight = xsd.Element(Weight, minOccurs=0)
    takeoff_pilot = xsd.Element(Pilot, minOccurs=0)
    landing_airport = xsd.Element(Airport)
    landing_gate_datetime = xsd.Element(xsd.DateTime, minOccurs=0)
    landing_datetime = xsd.Element(xsd.DateTime)
    landing_fuel = xsd.Element(Weight, minOccurs=0)
    landing_pilot = xsd.Element(Pilot, minOccurs=0)
    destination_airport = xsd.Element(Airport, minOccurs=0)
    captain_code = xsd.Element(xsd.String, minOccurs=0)
    first_officer_code = xsd.Element(xsd.String, minOccurs=0)
    V2 = xsd.Element(xsd.Integer, minOccurs=0)
    Vref = xsd.Element(xsd.Integer, minOccurs=0)
    Vapp = xsd.Element(xsd.Integer, minOccurs=0)
Beispiel #2
0
 def test_can_check_for_restrictions_before_accepting_values(self):
     xsd_string = xsd.String(enumeration=('10', '20', '30'), pattern='1.')
     self.assertEqual('10', xsd_string.accept('10'))
     with self.assertRaises(ValueError):
         xsd_string.accept('15')
     with self.assertRaises(ValueError):
         xsd_string.accept('20')
Beispiel #3
0
 def test_can_restrict_acceptable_values_with_length_range(self):
     self.xsd_type = xsd.String(minLength=2, maxLength=4)
     self.assert_can_not_set('1')
     self.assert_can_set('12')
     self.assert_can_set('123')
     self.assert_can_set('1234')
     self.assert_can_not_set('12345')
Beispiel #4
0
class RequestResponse(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    declar_number = xsd.Element(xsd.String)
    register_date = xsd.Element(xsd.Date)
    result = xsd.Element(
        xsd.String(
            enumeration=['ACCEPTED', 'INTERMEDIATE', 'INFO', 'ERROR', 'FINAL'
                         ]))
    text = xsd.Element(xsd.String, minOccurs=0)
    AppliedDocument = xsd.ListElement(AppliedDocument,
                                      tagname='AppliedDocument',
                                      minOccurs=0,
                                      maxOccurs=xsd.UNBOUNDED)

    @classmethod
    def create(cls, declar_number, register_date, result):
        instance = cls()
        instance.declar_number = declar_number
        instance.register_date = register_date
        instance.result = result
        return instance

    def __str__(self):
        return "Номер дела: %s\nДата регистрации: %s\nРезультат: %s\n" \
               "Ответ: %s" % (self.declar_number, self.register_date,
                              self.result, self.text)
Beispiel #5
0
    def test_string_element(self):
        tail_number = xsd.Element(xsd.String())
        xmlelement = etree.Element("aircraft")
        tail_number.render(xmlelement, "tail_number", "LN-KKU")
        self.assertEqual(b"""<aircraft>
  <tail_number>LN-KKU</tail_number>
</aircraft>
""",
                         etree.tostring(xmlelement, pretty_print=True))
Beispiel #6
0
    def test_string_element(self):
        tail_number = xsd.Element(xsd.String())
        xmlelement = etree.Element('aircraft')
        tail_number.render(xmlelement, 'tail_number', 'LN-KKU')
        self.assertEqual(
            b'''<aircraft>
  <tail_number>LN-KKU</tail_number>
</aircraft>
''', etree.tostring(xmlelement, pretty_print=True))
Beispiel #7
0
class Airport(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    code_type = xsd.Element(xsd.String(enumeration=["ICAO", "IATA", "FAA"]))
    code = xsd.Element(xsd.String)

    @classmethod
    def create(cls, code_type, code):
        instance = cls()
        instance.code_type = code_type
        instance.code = code
        return instance
Beispiel #8
0
class Status(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    action = xsd.Element(xsd.String(enumeration=['INSERTED', 'UPDATED', 'EXISTS']))
    id = xsd.Element(xsd.Long)

    @classmethod
    def create(cls, action, id):
        instance = cls()
        instance.action = action
        instance.id = id
        return instance
Beispiel #9
0
class Weight(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    value = xsd.Element(xsd.Integer)
    unit = xsd.Element(xsd.String(enumeration=["kg", "lb"]))

    @classmethod
    def create(cls, value, unit):
        instance = cls()
        instance.value = value
        instance.unit = unit
        return instance
Beispiel #10
0
class Ops(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    aircraft = xsd.Element(xsd.String)
    flight_number = xsd.Element(xsd.String)
    type = xsd.Element(
        xsd.String(enumeration=[
            'COMMERCIAL', 'INCOMPLETE', 'ENGINE_RUN_UP', 'TEST', 'TRAINING',
            'FERRY', 'POSITIONING', 'LINE_TRAINING'
        ], ))
    takeoff_airport = xsd.Element('Airport')
    takeoff_gate_datetime = xsd.Element(xsd.DateTime, minOccurs=0)
    takeoff_datetime = xsd.Element(xsd.DateTime)
    takeoff_fuel = xsd.Element('Weight', minOccurs=0)
    takeoff_gross_weight = xsd.Element('Weight', minOccurs=0)
    takeoff_pilot = xsd.Element('Pilot', minOccurs=0)
    landing_airport = xsd.Element('Airport')
    landing_gate_datetime = xsd.Element(xsd.DateTime, minOccurs=0)
    landing_datetime = xsd.Element(xsd.DateTime)
    landing_fuel = xsd.Element('Weight', minOccurs=0)
    landing_pilot = xsd.Element('Pilot', minOccurs=0)
    destination_airport = xsd.Element('Airport', minOccurs=0)
    captain_code = xsd.Element(xsd.String, minOccurs=0)
    first_officer_code = xsd.Element(xsd.String, minOccurs=0)
    V2 = xsd.Element(xsd.Integer, minOccurs=0)
    Vref = xsd.Element(xsd.Integer, minOccurs=0)
    Vapp = xsd.Element(xsd.Integer, minOccurs=0)

    @classmethod
    def create(cls, aircraft, flight_number, type, takeoff_airport,
               takeoff_datetime, landing_airport, landing_datetime):
        instance = cls()
        instance.aircraft = aircraft
        instance.flight_number = flight_number
        instance.type = type
        instance.takeoff_airport = takeoff_airport
        instance.takeoff_datetime = takeoff_datetime
        instance.landing_airport = landing_airport
        instance.landing_datetime = landing_datetime
        return instance
Beispiel #11
0
 def test_restriction_whitespace_replace(self):
     xsd_string = xsd.String(whiteSpace='replace')
     expected = value = 'line  1   line  2'
     value = xsd_string.accept(value)
     assert_equals(expected, value)
Beispiel #12
0
 def test_can_check_for_restrictions_before_accepting_values(self):
     xsd_string = xsd.String(enumeration=('10', '20', '30'), pattern='1.')
     assert_equals('10', xsd_string.accept('10'))
     assert_raises(ValueError, lambda: xsd_string.accept('15'))
     assert_raises(ValueError, lambda: xsd_string.accept('20'))
Beispiel #13
0
 def test_can_restrict_acceptable_values_with_length(self):
     self.xsd_type = xsd.String(length=4)
     self.assert_can_set('1234')
     self.assert_can_not_set('12345')
Beispiel #14
0
 def test_can_restrict_acceptable_values_with_pattern(self):
     self.xsd_type = xsd.String(pattern='1.')
     self.assert_can_set('12')
     self.assert_can_set('1a')
     self.assert_can_not_set('ab')
     self.assert_can_not_set('123')
Beispiel #15
0
class Airport(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    code_type = xsd.Element(xsd.String(enumeration=["ICAO", "IATA", "FAA"]))
    code = xsd.Element(xsd.String)
Beispiel #16
0
class Airport(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    code_type = xsd.Element(xsd.String(enumeration=['ICAO', 'IATA', 'FAA']))
    code = xsd.Element(xsd.String)
Beispiel #17
0
 class Test(xsd.ComplexType):
     value = xsd.Element(xsd.String(pattern=r'^a*$'))
Beispiel #18
0
 def test_restriction_whitespace_collapse(self):
     xsd_string = xsd.String(whiteSpace='collapse')
     value = 'line  1\n \tline  2'
     expected = 'line 1 line 2'
     value = xsd_string.accept(value)
     assert_equals(expected, value)
Beispiel #19
0
 def test_apply_whitespace_restriction_before_validation(self):
     self.xsd_type = xsd.String(minLength=4, whiteSpace='collapse')
     self.assert_can_not_set('1\n  \t 2')
     self.assert_can_set('1\n  \t 23')
Beispiel #20
0
class Weight(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    value = xsd.Element(xsd.Integer)
    unit = xsd.Element(xsd.String(enumeration=["kg", "lb"]))
Beispiel #21
0
 class Container(xsd.ComplexType):
     code = xsd.Element(xsd.String(pattern='[0-9]{0,5}'))
Beispiel #22
0
 def test_restriction_whitespace_preserve(self):
     xsd_string = xsd.String(whiteSpace='preserve')
     expected = value = 'line  1\n \tline  2'
     value = xsd_string.accept(value)
     self.assertEqual(expected, value)
Beispiel #23
0
class Status(xsd.ComplexType):
    INHERITANCE = None
    INDICATOR = xsd.Sequence
    action = xsd.Element(xsd.String(enumeration=["INSERTED", "UPDATED", "EXISTS"]))
    id = xsd.Element(xsd.Long)
Beispiel #24
0
 def test_restriction_whitespace_preserve(self):
     xsd_string = xsd.String(whiteSpace="preserve")
     expected = value = 'line  1\n \tline  2'
     value = xsd_string.accept(value)
     assert_equals(expected, value)