| 
<?php
 namespace WsdlToPhp\PackageGenerator\Tests\File;
 
 use WsdlToPhp\PackageGenerator\Model\EmptyModel;
 use WsdlToPhp\PackageGenerator\Model\Struct as StructModel;
 use WsdlToPhp\PackageGenerator\File\Struct as StructFile;
 
 class StructTest extends AbstractFile
 {
 /**
 * @expectedException \InvalidArgumentException
 */
 public function testSetModelGoodNameTooManyAttributesWithException()
 {
 $instance = self::bingGeneratorInstance();
 $struct = new StructFile($instance, 'Foo');
 $struct->setModel(new EmptyModel($instance, 'Foo'));
 }
 /**
 * @expectedException \InvalidArgumentException
 */
 public function testExceptionOnWrite()
 {
 $file = new StructFile(self::bingGeneratorInstance(), 'foo');
 
 $file->write();
 }
 /**
 *
 */
 public function testGetFileName()
 {
 $model = new StructModel(self::bingGeneratorInstance(), 'Foo');
 $file = new StructFile(self::bingGeneratorInstance(), 'foo');
 $file->setModel($model);
 
 $this->assertSame(sprintf('%s%s%s/%s.php', self::getTestDirectory(), StructFile::SRC_FOLDER, $model->getContextualPart(), $model->getPackagedName(false)), $file->getFileName());
 }
 /**
 *
 */
 public function testWriteBingSearchStructQuery()
 {
 $generator = self::bingGeneratorInstance();
 if (($model = $generator->getStruct('Query')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiQuery', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find Query struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteBingSearchStructVideoRequest()
 {
 $generator = self::bingGeneratorInstance();
 if (($model = $generator->getStruct('VideoRequest')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiVideoRequest', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find VideoRequest struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteBingSearchStructSearchRequest()
 {
 $generator = self::bingGeneratorInstance();
 if (($model = $generator->getStruct('SearchRequest')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiSearchRequest', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find SearchRequest struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteActonStructItem()
 {
 $generator = self::actonGeneratorInstance();
 if (($model = $generator->getStruct('Item')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiItem', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find Item struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteOdigeoStructFareItinerary()
 {
 $generator = self::odigeoGeneratorInstance();
 if (($model = $generator->getStruct('fareItinerary')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiFareItinerary', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find fareItinerary struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteBingStructNewsArticle()
 {
 $generator = self::bingGeneratorInstance();
 if (($model = $generator->getStruct('NewsArticle')) instanceof StructModel) {
 $generator->setOptionStructClass('\Std\Opt\StructClass');
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiNewsArticle', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find NewsArticle struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteWcfStructOffer()
 {
 $generator = self::wcfGeneratorInstance();
 if (($model = $generator->getStruct('offer')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidApiOffer', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find offer struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteYandexDirectApiStructAddRequest()
 {
 $generator = self::yandexDirectApiAdGroupsGeneratorInstance();
 if (($model = $generator->getStruct('AddRequest')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidAddRequest', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find AddRequest struct for file generation');
 }
 }
 /**
 *
 */
 public function testWriteYandexDirectApiStructAdGroupsSelectionCriteria()
 {
 $generator = self::yandexDirectApiAdGroupsGeneratorInstance();
 if (($model = $generator->getStruct('AdGroupsSelectionCriteria')) instanceof StructModel) {
 $struct = new StructFile($generator, $model->getName());
 $struct
 ->setModel($model)
 ->write();
 $this->assertSameFileContent('ValidAdGroupsSelectionCriteria', $struct);
 } else {
 $this->assertFalse(true, 'Unable to find AdGroupsSelectionCriteria struct for file generation');
 }
 }
 /**
 *
 */
 public function testDestination()
 {
 $generator = self::bingGeneratorInstance();
 if (($model = $generator->getStruct('NewsArticle')) instanceof StructModel) {
 $generator->setOptionStructClass('\Std\Opt\StructClass');
 $struct = new StructFile($generator, $model->getName());
 $struct->setModel($model);
 
 $this->assertSame(sprintf('%s%s%s/', self::getTestDirectory(), StructFile::SRC_FOLDER, $model->getContextualPart()), $struct->getFileDestination());
 } else {
 $this->assertFalse(true, 'Unable to find NewsArticle struct for file generation');
 }
 }
 }
 
 |