nginxsonarrradarrplexorganizrdashboardbookmarkapplication-dashboardmuximuxlandingpagestartpagelandinghtpcserverhomepagesabnzbdheimdallembycouchpotatonzbget
		
		
		
		
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							75 lines
						
					
					
						
							2.4 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							75 lines
						
					
					
						
							2.4 KiB
						
					
					
				| <?php | |
| 
 | |
| namespace Faker\Test\Provider; | |
| 
 | |
| use Faker\Provider\Image; | |
| 
 | |
| class ImageTest extends \PHPUnit_Framework_TestCase | |
| { | |
|     public function testImageUrlUses640x680AsTheDefaultSize() | |
|     { | |
|         $this->assertRegExp('#^https://lorempixel.com/640/480/#', Image::imageUrl()); | |
|     } | |
| 
 | |
|     public function testImageUrlAcceptsCustomWidthAndHeight() | |
|     { | |
|         $this->assertRegExp('#^https://lorempixel.com/800/400/#', Image::imageUrl(800, 400)); | |
|     } | |
| 
 | |
|     public function testImageUrlAcceptsCustomCategory() | |
|     { | |
|         $this->assertRegExp('#^https://lorempixel.com/800/400/nature/#', Image::imageUrl(800, 400, 'nature')); | |
|     } | |
| 
 | |
|     public function testImageUrlAcceptsCustomText() | |
|     { | |
|         $this->assertRegExp('#^https://lorempixel.com/800/400/nature/Faker#', Image::imageUrl(800, 400, 'nature', false, 'Faker')); | |
|     } | |
| 
 | |
|     public function testImageUrlAddsARandomGetParameterByDefault() | |
|     { | |
|         $url = Image::imageUrl(800, 400); | |
|         $splitUrl = preg_split('/\?/', $url); | |
| 
 | |
|         $this->assertEquals(count($splitUrl), 2); | |
|         $this->assertRegexp('#\d{5}#', $splitUrl[1]); | |
|     } | |
| 
 | |
|     /** | |
|      * @expectedException \InvalidArgumentException | |
|      */ | |
|     public function testUrlWithDimensionsAndBadCategory() | |
|     { | |
|         Image::imageUrl(800, 400, 'bullhonky'); | |
|     } | |
| 
 | |
|     public function testDownloadWithDefaults() | |
|     { | |
|         $url = "http://www.lorempixel.com/"; | |
|         $curlPing = curl_init($url); | |
|         curl_setopt($curlPing, CURLOPT_TIMEOUT, 5); | |
|         curl_setopt($curlPing, CURLOPT_CONNECTTIMEOUT, 5); | |
|         curl_setopt($curlPing, CURLOPT_RETURNTRANSFER, true); | |
|         $data = curl_exec($curlPing); | |
|         $httpCode = curl_getinfo($curlPing, CURLINFO_HTTP_CODE); | |
|         curl_close($curlPing); | |
| 
 | |
|         if ($httpCode < 200 | $httpCode > 300) { | |
|             $this->markTestSkipped("LoremPixel is offline, skipping image download"); | |
|         } | |
| 
 | |
|         $file = Image::image(sys_get_temp_dir()); | |
|         $this->assertFileExists($file); | |
|         if (function_exists('getimagesize')) { | |
|             list($width, $height, $type, $attr) = getimagesize($file); | |
|             $this->assertEquals(640, $width); | |
|             $this->assertEquals(480, $height); | |
|             $this->assertEquals(constant('IMAGETYPE_JPEG'), $type); | |
|         } else { | |
|             $this->assertEquals('jpg', pathinfo($file, PATHINFO_EXTENSION)); | |
|         } | |
|         if (file_exists($file)) { | |
|             unlink($file); | |
|         } | |
|     } | |
| }
 | |
| 
 |