Пример #1
0
    def test_dispatch_Echo_MIH_EPR3(self):
        epr = GED('http://schemas.xmlsoap.org/ws/2004/03/addressing',
                  'EndpointReference').pyclass()
        epr.Address = 'urn:whatever'
        epr.ReferenceProperties = epr.new_ReferenceProperties()

        class Xstr(str):
            typecode = TC.String(('urn:josh', 'mystr'))

        epr.ReferenceProperties.Any = [
            Xstr('whatever'),
        ]

        loc = self.client_module.EchoWSAddr200403ServerLocator()
        self._setUpDispatch()
        port = loc.getport(endPointReference=epr, **self.getPortKWArgs())

        msg = self.client_module.EchoRequest()
        epr2 = GTD('http://schemas.xmlsoap.org/ws/2004/03/addressing',
                   'EndpointReferenceType')(None).pyclass()
        epr2.Address = epr.Address
        epr2.ReferenceProperties = epr.ReferenceProperties

        msg.EchoIn = epr2
        rsp = port.Echo(msg)
        self.assertTrue(rsp.EchoResult.Address == msg.EchoIn.Address,
                        "Bad Echo")
        self.assertTrue(
            rsp.EchoResult.ReferenceProperties.Any ==
            msg.EchoIn.ReferenceProperties.Any, "Bad Echo")
    def test_dispatch_Echo_MIH_EPR2(self):
        epr = GED('http://schemas.xmlsoap.org/ws/2004/03/addressing','EndpointReference').pyclass()
        epr.Address = 'urn:whatever'
        epr.ReferenceProperties = epr.new_ReferenceProperties()

        loc = self.client_module.EchoWSAddr200403ServerLocator()
        port = loc.getport(endPointReference=epr, **self.getPortKWArgs())

        msg = self.client_module.EchoRequest()
        msg.EchoIn = 1
        rsp = port.Echo(msg)
        self.failUnless(rsp.EchoResult == msg.EchoIn, "Bad Echo")
    def test_dispatch_Echo_MIH_EPR3_BadHeader(self):
        """Unqualified element "mystr" in Header
        """
        epr = GED('http://schemas.xmlsoap.org/ws/2004/03/addressing','EndpointReference').pyclass()
        epr.Address = 'urn:whatever'
        epr.ReferenceProperties = epr.new_ReferenceProperties()
        class Xstr(str): 
            typecode = TC.String('mystr')

        epr.ReferenceProperties.Any = [Xstr('whatever'),]

        loc = self.client_module.EchoWSAddr200403ServerLocator()
        self._setUpDispatch()
        port = loc.getport(endPointReference=epr, **self.getPortKWArgs())

        msg = self.client_module.EchoRequest()
        self.failUnlessRaises(FaultException, port.Echo,msg)
    def test_dispatch_Echo_MIH_EPR3(self):
        epr = GED('http://schemas.xmlsoap.org/ws/2004/03/addressing','EndpointReference').pyclass()
        epr.Address = 'urn:whatever'
        epr.ReferenceProperties = epr.new_ReferenceProperties()
        class Xstr(str): 
            typecode = TC.String(('urn:josh','mystr'))

        epr.ReferenceProperties.Any = [Xstr('whatever'),]

        loc = self.client_module.EchoWSAddr200403ServerLocator()
        self._setUpDispatch()
        port = loc.getport(endPointReference=epr, **self.getPortKWArgs())

        msg = self.client_module.EchoRequest()
        epr2 = GTD('http://schemas.xmlsoap.org/ws/2004/03/addressing','EndpointReferenceType')(None).pyclass()
        epr2.Address = epr.Address
        epr2.ReferenceProperties = epr.ReferenceProperties

        msg.EchoIn = epr2
        rsp = port.Echo(msg)
        self.failUnless(rsp.EchoResult.Address == msg.EchoIn.Address, "Bad Echo")
        self.failUnless(rsp.EchoResult.ReferenceProperties.Any == msg.EchoIn.ReferenceProperties.Any, "Bad Echo")