| 
<?php
 namespace WsdlToPhp\PackageGenerator\Tests\Parser\Wsdl;
 
 use WsdlToPhp\PackageGenerator\Parser\Wsdl\TagList;
 use WsdlToPhp\PackageGenerator\Model\StructAttribute;
 
 class TagListTest extends WsdlParser
 {
 /**
 * @return \WsdlToPhp\PackageGenerator\Parser\Wsdl\TagList
 */
 public static function odigeoInstance()
 {
 return new TagList(self::generatorInstance(self::wsdlOdigeoPath()));
 }
 /**
 * @return \WsdlToPhp\PackageGenerator\Parser\Wsdl\TagList
 */
 public static function myBaordInstance()
 {
 return new TagList(self::generatorInstance(self::wsdlMyBoardPackPath()));
 }
 /**
 *
 */
 public function testParseOdigeo()
 {
 $tagListParser = self::odigeoInstance();
 
 $tagListParser->parse();
 
 $count = 0;
 $structs = $tagListParser->getGenerator()->getStructs();
 if ($structs->count() > 0) {
 foreach ($structs as $struct) {
 switch ($struct->getName()) {
 case 'fareItinerary':
 foreach ($struct->getAttributes() as $attribute) {
 switch ($attribute->getName()) {
 case 'firstSegmentsIds':
 case 'secondSegmentsIds':
 case 'thirdSegmentsIds':
 $this->assertSame('int', $attribute->getInheritance());
 $count++;
 break;
 }
 }
 break;
 case 'segment':
 if ($struct->getAttribute('sectionIds') instanceof StructAttribute) {
 $this->assertSame('int', $struct->getAttribute('sectionIds')->getInheritance());
 $count++;
 }
 break;
 }
 }
 }
 $this->assertSame(4, $count);
 }
 /**
 *
 */
 public function testParseMyBoard()
 {
 $tagListParser = self::myBaordInstance();
 
 $tagListParser->parse();
 
 $count = 0;
 $structs = $tagListParser->getGenerator()->getStructs();
 if ($structs->count() > 0) {
 foreach ($structs as $struct) {
 switch ($struct->getName()) {
 case 'Rights':
 $this->assertSame('string[]', $struct->getInheritance());
 $count++;
 break;
 }
 }
 }
 $this->assertSame(1, $count);
 }
 }
 
 |