public function testCompositeDelegatesAddingComplexTypesToSubStrategies() { $strategy = new ComplexTypeStrategy\Composite(array(), new \Zend\Soap\Wsdl\ComplexTypeStrategy\AnyType()); $strategy->connectTypeToStrategy('\\ZendTest\\Soap\\Wsdl\\Book', new \Zend\Soap\Wsdl\ComplexTypeStrategy\ArrayOfTypeComplex()); $strategy->connectTypeToStrategy('\\ZendTest\\Soap\\Wsdl\\Cookie', new \Zend\Soap\Wsdl\ComplexTypeStrategy\DefaultComplexType()); $wsdl = new Wsdl('SomeService', 'http://example.com'); $strategy->setContext($wsdl); $this->assertEquals('tns:Book', $strategy->addComplexType('\\ZendTest\\Soap\\Wsdl\\Book')); $this->assertEquals('tns:Cookie', $strategy->addComplexType('\\ZendTest\\Soap\\Wsdl\\Cookie')); $this->assertEquals('xsd:anyType', $strategy->addComplexType('\\ZendTest\\Soap\\Wsdl\\Anything')); }
public function testCompositeThrowsExceptionOnInvalidStrategyPart2() { $strategy = new ComplexTypeStrategy\Composite(array(), 'invalid'); $strategy->connectTypeToStrategy('Book', 'strategy'); $this->setExpectedException('Zend\\Soap\\Exception\\InvalidArgumentException', 'Default Strategy for Complex Types is not a valid strategy object'); $strategy->getStrategyOfType('Anything'); }