<?php
namespace WsdlToPhp\PackageGenerator\Tests\Parser\Wsdl;
use WsdlToPhp\PackageGenerator\Container\Model\Schema as SchemaContainer;
use WsdlToPhp\PackageGenerator\Parser\Wsdl\TagInclude;
use WsdlToPhp\PackageGenerator\Model\Wsdl;
use WsdlToPhp\PackageGenerator\Model\Schema;
class TagIncludeTest extends WsdlParser
{
/**
* @return \WsdlToPhp\PackageGenerator\Parser\Wsdl\TagInclude
*/
public static function instance()
{
return new TagInclude(self::getInstance(self::wsdlImageViewServicePath()));
}
/**
*
*/
public function testIsWsdlParsed()
{
$tagIncludeParser = self::instance();
$tagIncludeParser->parse();
$this->assertTrue($tagIncludeParser->isWsdlParsed(new Wsdl($tagIncludeParser->getGenerator(), self::wsdlImageViewServicePath(), file_get_contents(self::wsdlImageViewServicePath()))));
}
/**
*
*/
public function testGetExternalSchemas()
{
$tagIncludeParser = self::instance();
$tagIncludeParser->parse();
$schemas = array(
'availableImagesRequest.xsd',
'availableImagesResponse.xsd',
'imagesRequest.xsd',
'imagesResponse.xsd',
'imageViewCommon.xsd',
);
$schemaContainer = new SchemaContainer($tagIncludeParser->getGenerator());
foreach ($schemas as $schemaPath) {
$schemaPath = realpath(sprintf(__DIR__ . '/../../resources/image/%s', $schemaPath));
$schema = new Schema($tagIncludeParser->getGenerator(), $schemaPath, file_get_contents($schemaPath));
$schema->getContent()->setCurrentTag('include');
$schemaContainer->add($schema);
}
$tagIncludeParser->getGenerator()->getWsdl()->getContent()->getExternalSchemas()->rewind();
$this->assertEquals($schemaContainer, $tagIncludeParser->getGenerator()->getWsdl()->getContent()->getExternalSchemas());
}
}
|