| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 | <?phpnamespace JMS\Serializer\Tests\Serializer;use JMS\Serializer\Exception\RuntimeException;use JMS\Serializer\SerializationContext;class YamlSerializationTest extends BaseSerializationTest{    public function testObjectUsingTypeCasting()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testEmptyChild()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testSkipEmptyChild()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testConstraintViolation()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testConstraintViolationList()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testFormErrors()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testNestedFormErrors()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    public function testFormErrorsWithNonFormComponents()    {        $this->markTestSkipped('This is not available for the YAML format.');    }    protected function getContent($key)    {        if (!file_exists($file = __DIR__ . '/yml/' . $key . '.yml')) {            throw new RuntimeException(sprintf('The content with key "%s" does not exist.', $key));        }        return file_get_contents($file);    }    public function getTypeHintedArrays()    {        return [            [[1, 2], "- 1\n- 2\n", null],            [['a', 'b'], "- a\n- b\n", null],            [['a' => 'a', 'b' => 'b'], "a: a\nb: b\n", null],            [[], " []\n", null],            [[], " []\n", SerializationContext::create()->setInitialType('array')],            [[], " []\n", SerializationContext::create()->setInitialType('array<integer>')],            [[], " {}\n", SerializationContext::create()->setInitialType('array<string,integer>')],            [[1, 2], "- 1\n- 2\n", SerializationContext::create()->setInitialType('array')],            [[1 => 1, 2 => 2], "1: 1\n2: 2\n", SerializationContext::create()->setInitialType('array')],            [[1 => 1, 2 => 2], "- 1\n- 2\n", SerializationContext::create()->setInitialType('array<integer>')],            [['a', 'b'], "- a\n- b\n", SerializationContext::create()->setInitialType('array<string>')],            [[1 => 'a', 2 => 'b'], "- a\n- b\n", SerializationContext::create()->setInitialType('array<string>')],            [['a' => 'a', 'b' => 'b'], "- a\n- b\n", SerializationContext::create()->setInitialType('array<string>')],            [[1, 2], "0: 1\n1: 2\n", SerializationContext::create()->setInitialType('array<integer,integer>')],            [[1, 2], "0: 1\n1: 2\n", SerializationContext::create()->setInitialType('array<string,integer>')],            [[1, 2], "0: 1\n1: 2\n", SerializationContext::create()->setInitialType('array<string,string>')],            [['a', 'b'], "0: a\n1: b\n", SerializationContext::create()->setInitialType('array<integer,string>')],            [['a' => 'a', 'b' => 'b'], "a: a\nb: b\n", SerializationContext::create()->setInitialType('array<string,string>')],        ];    }    /**     * @dataProvider getTypeHintedArrays     * @param array $array     * @param string $expected     * @param SerializationContext|null $context     */    public function testTypeHintedArraySerialization(array $array, $expected, $context = null)    {        $this->assertEquals($expected, $this->serialize($array, $context));    }    protected function getFormat()    {        return 'yml';    }    protected function hasDeserializer()    {        return false;    }}
 |