示例#1
0
    def test_conversion_CONFD_URL_to_XML_6(self):
        self.maxDiff = None # expected_xml is too large
        url = "/api/operational/car?select=brand"
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"/></data>
        ''')

        schema = load_schema_root("vehicle-a")
        
        actual_xml = convert_get_request_to_xml(schema, url)        

        self.assertEquals(actual_xml, expected_xml)
示例#2
0
    def test_conversion_CONFD_URL_to_XML_6(self):
        self.maxDiff = None  # expected_xml is too large
        url = "/api/operational/car?select=brand"
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"/></data>
        ''')

        schema = load_schema_root("vehicle-a")

        actual_xml = convert_get_request_to_xml(schema, url)

        self.assertEquals(actual_xml, expected_xml)
示例#3
0
    def test_conversion_CONFD_URL_to_XML_get_list_key(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/operational/car/honda"
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><brand>honda</brand></vehicle-a:car></data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.assertEquals(actual_xml, expected_xml)
示例#4
0
    def test_conversion_CONFD_URL_to_XML_1(self):
        self.maxDiff = None  # expected_xml is too large
        # trailing '/' is on purpose to test that edge case
        url = "/api/operational/car/subaru/models/"
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><brand>subaru</brand><vehicle-a:models><name-m></name-m></vehicle-a:models></vehicle-a:car></data>
        ''')

        schema = load_schema_root("vehicle-a")

        actual_xml = convert_get_request_to_xml(schema, url)

        self.assertEquals(actual_xml, expected_xml)
示例#5
0
    def test_conversion_CONFD_URL_to_XML_get_list_key(self):
        self.maxDiff = None # expected_xml is too large

        url = "/api/operational/car/honda"
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><brand>honda</brand></vehicle-a:car></data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a","vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url) 

        self.assertEquals(actual_xml, expected_xml)
示例#6
0
    def test_conversion_CONFD_URL_to_XML_1(self):
        self.maxDiff = None # expected_xml is too large
        # trailing '/' is on purpose to test that edge case
        url = "/api/operational/car/subaru/models/" 
        expected_xml = _collapse_string('''
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><brand>subaru</brand><vehicle-a:models><name-m></name-m></vehicle-a:models></vehicle-a:car></data>
        ''')

        schema = load_schema_root("vehicle-a")
        
        actual_xml = convert_get_request_to_xml(schema, url)        

        self.assertEquals(actual_xml, expected_xml)
示例#7
0
    def test_conversion_CONFD_URL_to_XML_5(self):
        self.maxDiff = None  # expected_xml is too large
        url = "/api/operational/whatever/inner-whatever"
        expected_xml = _collapse_string(
            """
<data><vehicle-a:whatever xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><vehicle-a:inner-whatever/></vehicle-a:whatever></data>
        """
        )

        schema = load_schema_root("vehicle-a")

        actual_xml = convert_get_request_to_xml(schema, url)

        self.assertEquals(actual_xml, expected_xml)
示例#8
0
    def test_conversion_CONFD_URL_to_XML_00(self):
        self.maxDiff = None # expected_xml is too large

        url = "/api/config/top-container-deep"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:top-container-deep xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"/>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a","vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)
示例#9
0
    def test_conversion_CONFD_URL_to_XML_00(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/config/top-container-deep"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:top-container-deep xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"/>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)
示例#10
0
    def test_conversion_CONFD_URL_to_XML_get_bogus(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/operational/bogus"

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        converter = ConfdRestTranslator(schema)

        caught_exception = False
        try:
            actual_xml = convert_get_request_to_xml(schema, url)
        except ValueError:
            caught_exception = True

        self.assertTrue(caught_exception)
示例#11
0
    def test_conversion_CONFD_URL_to_XML_get_bogus(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/operational/bogus"

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        converter = ConfdRestTranslator(schema)

        caught_exception = False
        try:
            actual_xml = convert_get_request_to_xml(schema, url)
        except ValueError:
            caught_exception = True

        self.assertTrue(caught_exception)
示例#12
0
    def test_conversion_CONFD_URL_to_XML_3(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/operational/car/subaru/extras?select=speakers;engine(*)"
        expected_xml = _collapse_string(
            """
<data><vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a"><brand>subaru</brand><vehicle-augment-a:extras xmlns:vehicle-augment-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-augment-a"/></vehicle-a:car></data>

        """
        )

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.assertEquals(actual_xml, expected_xml)
示例#13
0
    def test_get_cross_namespace(self):
        self.maxDiff = None # expected_xml is too large

        url = "/api/config/car/honda%20motors/extras"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a">
    <brand>honda motors</brand>
    <vehicle-augment-a:extras xmlns:vehicle-augment-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-augment-a"/>
  </vehicle-a:car>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a","vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)
示例#14
0
    def test_get_cross_namespace(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/config/car/honda%20motors/extras"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:car xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a">
    <brand>honda motors</brand>
    <vehicle-augment-a:extras xmlns:vehicle-augment-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-augment-a"/>
  </vehicle-a:car>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)
示例#15
0
    def test_conversion_CONFD_URL_to_XML_25(self):
        self.maxDiff = None # expected_xml is too large

        url = "/api/config/multi-key/firstkey,secondkey/treasure"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:multi-key xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a">
    <foo>firstkey</foo>
    <bar>secondkey</bar>
    <vehicle-a:treasure/>
  </vehicle-a:multi-key>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a","vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)
示例#16
0
    def test_conversion_CONFD_URL_to_XML_25(self):
        self.maxDiff = None  # expected_xml is too large

        url = "/api/config/multi-key/firstkey,secondkey/treasure"
        expected_xml = _collapse_string('''
<data>
  <vehicle-a:multi-key xmlns:vehicle-a="http://riftio.com/ns/core/mgmt/rwrestconf/test/vehicle-a">
    <foo>firstkey</foo>
    <bar>secondkey</bar>
    <vehicle-a:treasure/>
  </vehicle-a:multi-key>
</data>
        ''')

        schema = load_multiple_schema_root(["vehicle-a", "vehicle-augment-a"])

        actual_xml = convert_get_request_to_xml(schema, url)

        self.compare_doms(actual_xml, expected_xml)