Ver código fonte

Improved ModelToIdTransformerTest

Andrej Hudec 11 anos atrás
pai
commit
30d44b06af

+ 21 - 5
Tests/Form/DataTransformer/ModelToIdTransformerTest.php

@@ -1,4 +1,5 @@
 <?php
+
 /*
  * This file is part of the Sonata package.
  *
@@ -24,17 +25,16 @@ class ModelToIdTransformerTest extends \PHPUnit_Framework_TestCase
     public function testReverseTransformWhenPassing0AsId()
     {
         $transformer = new ModelToIdTransformer($this->modelManager,'TEST');
-        
-        
+
         $this->modelManager
                 ->expects($this->exactly(2))
                 ->method('find');
-        
+
         //we pass 0 as integer
         // this must call the model manager find method... i not care what is returned, but must be called
         $transformer->reverseTransform(0);
-        
-        //we pass 0 as string        
+
+        //we pass 0 as string
         //this must call the model manager find method... i not care what is returned, but must be called
         $transformer->reverseTransform('0');
 
@@ -44,4 +44,20 @@ class ModelToIdTransformerTest extends \PHPUnit_Framework_TestCase
         //we pass false, must return null
         $this->assertNull($transformer->reverseTransform(false));
     }
+
+    public function testTransform()
+    {
+        $this->modelManager->expects($this->once())
+            ->method('getIdentifierValues')
+            ->will($this->returnValue(array(123)));
+
+        $transformer = new ModelToIdTransformer($this->modelManager,'TEST');
+
+        $this->assertNull($transformer->transform(null));
+        $this->assertNull($transformer->transform(false));
+        $this->assertNull($transformer->transform(0));
+        $this->assertNull($transformer->transform('0'));
+
+        $this->assertEquals(123, $transformer->transform(new \stdClass));
+    }
 }