37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			37 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
| 
								 | 
							
								<?php declare(strict_types=1);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @license Apache 2.0
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace OpenApi\Tests;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class CommandlineInterfaceTest extends OpenApiTestCase
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    protected function setUp(): void
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        parent::setUp();
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public function testStdout()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $path = __DIR__ . '/../Examples/swagger-spec/petstore-simple';
							 | 
						||
| 
								 | 
							
								        exec(__DIR__ . '/../bin/openapi --format yaml ' . escapeshellarg($path) . ' 2> /dev/null', $output, $retval);
							 | 
						||
| 
								 | 
							
								        $this->assertSame(0, $retval);
							 | 
						||
| 
								 | 
							
								        $yaml = implode("\n", $output);
							 | 
						||
| 
								 | 
							
								        $this->assertSpecEquals(file_get_contents($path . '/petstore-simple.yaml'), $yaml);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public function testOutputTofile()
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        $path = __DIR__ . '/../Examples/swagger-spec/petstore-simple';
							 | 
						||
| 
								 | 
							
								        $filename = sys_get_temp_dir() . '/swagger-php-clitest.yaml';
							 | 
						||
| 
								 | 
							
								        exec(__DIR__ . '/../bin/openapi --format yaml -o ' . escapeshellarg($filename) . ' ' . escapeshellarg($path) . ' 2> /dev/null', $output, $retval);
							 | 
						||
| 
								 | 
							
								        $this->assertSame(0, $retval);
							 | 
						||
| 
								 | 
							
								        $this->assertCount(0, $output, 'No output to stdout');
							 | 
						||
| 
								 | 
							
								        $yaml = file_get_contents($filename);
							 | 
						||
| 
								 | 
							
								        unlink($filename);
							 | 
						||
| 
								 | 
							
								        $this->assertSpecEquals(file_get_contents($path . '/petstore-simple.yaml'), $yaml);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |