1*37748cd8SNickeau<?php 2*37748cd8SNickeau 3*37748cd8SNickeaunamespace Cron\Tests; 4*37748cd8SNickeau 5*37748cd8SNickeauuse Cron\FieldFactory; 6*37748cd8SNickeauuse PHPUnit_Framework_TestCase; 7*37748cd8SNickeau 8*37748cd8SNickeau/** 9*37748cd8SNickeau * @author Michael Dowling <mtdowling@gmail.com> 10*37748cd8SNickeau */ 11*37748cd8SNickeauclass FieldFactoryTest extends PHPUnit_Framework_TestCase 12*37748cd8SNickeau{ 13*37748cd8SNickeau /** 14*37748cd8SNickeau * @covers Cron\FieldFactory::getField 15*37748cd8SNickeau */ 16*37748cd8SNickeau public function testRetrievesFieldInstances() 17*37748cd8SNickeau { 18*37748cd8SNickeau $mappings = array( 19*37748cd8SNickeau 0 => 'Cron\MinutesField', 20*37748cd8SNickeau 1 => 'Cron\HoursField', 21*37748cd8SNickeau 2 => 'Cron\DayOfMonthField', 22*37748cd8SNickeau 3 => 'Cron\MonthField', 23*37748cd8SNickeau 4 => 'Cron\DayOfWeekField', 24*37748cd8SNickeau 5 => 'Cron\YearField' 25*37748cd8SNickeau ); 26*37748cd8SNickeau 27*37748cd8SNickeau $f = new FieldFactory(); 28*37748cd8SNickeau 29*37748cd8SNickeau foreach ($mappings as $position => $class) { 30*37748cd8SNickeau $this->assertEquals($class, get_class($f->getField($position))); 31*37748cd8SNickeau } 32*37748cd8SNickeau } 33*37748cd8SNickeau 34*37748cd8SNickeau /** 35*37748cd8SNickeau * @covers Cron\FieldFactory::getField 36*37748cd8SNickeau * @expectedException InvalidArgumentException 37*37748cd8SNickeau */ 38*37748cd8SNickeau public function testValidatesFieldPosition() 39*37748cd8SNickeau { 40*37748cd8SNickeau $f = new FieldFactory(); 41*37748cd8SNickeau $f->getField(-1); 42*37748cd8SNickeau } 43*37748cd8SNickeau} 44