فهرست منبع

Fix tests running in different environments

Vyacheslav Salakhutdinov 12 سال پیش
والد
کامیت
04b723ca08
2فایلهای تغییر یافته به همراه3 افزوده شده و 2 حذف شده
  1. 2 1
      src/JMS/Serializer/Handler/DateHandler.php
  2. 1 1
      tests/JMS/Serializer/Tests/SerializerBuilderTest.php

+ 2 - 1
src/JMS/Serializer/Handler/DateHandler.php

@@ -79,7 +79,8 @@ class DateHandler implements SubscribingHandlerInterface
     public function deserializeDateTimeFromXml(XmlDeserializationVisitor $visitor, $data, array $type)
     {
         $attributes = $data->attributes();
-        if (isset($attributes['nil'][0]) && (string) $attributes['nil'][0] === 'true') {
+        if ((isset($attributes['nil'][0]) && (string) $attributes['nil'][0] === 'true') ||
+            (isset($attributes['xsi:nil'][0]) && (string) $attributes['xsi:nil'][0] === 'true')) {
             return null;
         }
 

+ 1 - 1
tests/JMS/Serializer/Tests/SerializerBuilderTest.php

@@ -50,7 +50,7 @@ class SerializerBuilderTest extends \PHPUnit_Framework_TestCase
     {
         $serializer = $this->builder->build();
 
-        $this->assertEquals('"2020-04-16T00:00:00+0000"', $serializer->serialize(new \DateTime('2020-04-16'), 'json'));
+        $this->assertEquals('"2020-04-16T00:00:00+0000"', $serializer->serialize(new \DateTime('2020-04-16', new \DateTimeZone('UTC')), 'json'));
     }
 
     public function testDoesNotAddDefaultHandlersWhenExplicitlyConfigured()