44 lines
		
	
	
		
			995 B
		
	
	
	
		
			PHP
		
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			995 B
		
	
	
	
		
			PHP
		
	
	
|  | <?php | ||
|  | 
 | ||
|  | namespace Cron\Tests; | ||
|  | 
 | ||
|  | use Cron\FieldFactory; | ||
|  | use PHPUnit_Framework_TestCase; | ||
|  | 
 | ||
|  | /** | ||
|  |  * @author Michael Dowling <mtdowling@gmail.com> | ||
|  |  */ | ||
|  | class FieldFactoryTest extends PHPUnit_Framework_TestCase | ||
|  | { | ||
|  |     /** | ||
|  |      * @covers Cron\FieldFactory::getField | ||
|  |      */ | ||
|  |     public function testRetrievesFieldInstances() | ||
|  |     { | ||
|  |         $mappings = array( | ||
|  |             0 => 'Cron\MinutesField', | ||
|  |             1 => 'Cron\HoursField', | ||
|  |             2 => 'Cron\DayOfMonthField', | ||
|  |             3 => 'Cron\MonthField', | ||
|  |             4 => 'Cron\DayOfWeekField', | ||
|  |             5 => 'Cron\YearField' | ||
|  |         ); | ||
|  | 
 | ||
|  |         $f = new FieldFactory(); | ||
|  | 
 | ||
|  |         foreach ($mappings as $position => $class) { | ||
|  |             $this->assertEquals($class, get_class($f->getField($position))); | ||
|  |         } | ||
|  |     } | ||
|  | 
 | ||
|  |     /** | ||
|  |      * @covers Cron\FieldFactory::getField | ||
|  |      * @expectedException InvalidArgumentException | ||
|  |      */ | ||
|  |     public function testValidatesFieldPosition() | ||
|  |     { | ||
|  |         $f = new FieldFactory(); | ||
|  |         $f->getField(-1); | ||
|  |     } | ||
|  | } |