diff --git a/tests/UuidFactoryTest.php b/tests/UuidFactoryTest.php index b4ab300..bd57944 100644 --- a/tests/UuidFactoryTest.php +++ b/tests/UuidFactoryTest.php @@ -35,4 +35,57 @@ class UuidFactoryTest extends TestCase $this->assertEquals($uuidString, $uuid->toString()); } + + public function testGettersReturnValueFromFeatureSet() + { + $codec = $this->getMock('Ramsey\Uuid\Codec\CodecInterface'); + $nodeProvider = $this->getMock('Ramsey\Uuid\Provider\NodeProviderInterface'); + $randomGenerator = $this->getMock('Ramsey\Uuid\Generator\RandomGeneratorInterface'); + $timeGenerator = $this->getMock('Ramsey\Uuid\Generator\TimeGeneratorInterface'); + + $featureSet = $this->getMock('Ramsey\Uuid\FeatureSet'); + $featureSet->method('getCodec')->willReturn($codec); + $featureSet->method('getNodeProvider')->willReturn($nodeProvider); + $featureSet->method('getRandomGenerator')->willReturn($randomGenerator); + $featureSet->method('getTimeGenerator')->willReturn($timeGenerator); + + $uuidFactory = new UuidFactory($featureSet); + $this->assertEquals($codec, + $uuidFactory->getCodec(), + 'getCodec did not return CodecInterface from FeatureSet'); + + $this->assertEquals($nodeProvider, + $uuidFactory->getNodeProvider(), + 'getNodeProvider did not return NodeProviderInterface from FeatureSet'); + + $this->assertEquals($randomGenerator, + $uuidFactory->getRandomGenerator(), + 'getRandomGenerator did not return RandomGeneratorInterface from FeatureSet'); + + $this->assertEquals($timeGenerator, + $uuidFactory->getTimeGenerator(), + 'getTimeGenerator did not return TimeGeneratorInterface from FeatureSet'); + } + + public function testSettersSetValueForGetters() + { + $uuidFactory = new UuidFactory(); + + $codec = $this->getMock('Ramsey\Uuid\Codec\CodecInterface'); + $uuidFactory->setCodec($codec); + $this->assertEquals($codec, $uuidFactory->getCodec()); + + $timeGenerator = $this->getMock('Ramsey\Uuid\Generator\TimeGeneratorInterface'); + $uuidFactory->setTimeGenerator($timeGenerator); + $this->assertEquals($timeGenerator, $uuidFactory->getTimeGenerator()); + + $numberConverter = $this->getMock('Ramsey\Uuid\Converter\NumberConverterInterface'); + $uuidFactory->setNumberConverter($numberConverter); + $this->assertEquals($numberConverter, $uuidFactory->getNumberConverter()); + + $uuidBuilder = $this->getMock('Ramsey\Uuid\Builder\UuidBuilderInterface'); + $uuidFactory->setUuidBuilder($uuidBuilder); + $this->assertEquals($uuidBuilder, $uuidFactory->getUuidBuilder()); + + } }