Commit f4f2ba8
committed
merged branch jakzal/form-tests-fix (PR #6517)
This PR was merged into the 2.1 branch.
Commits
-------
81967f6 [Form] Fixed failing tests for DateTimeToStringTransformer.
Discussion
----------
[Form] Fixed failing tests for DateTimeToStringTransformer
Bug fix: no
Feature addition: no
Backwards compatibility break: no
Symfony2 tests pass: yes
Fixes the following tickets: -
Todo: -
License of the code: MIT
Documentation PR: -
Tests were only failing at the end of the month. Since February was used in the test cases, date was being moved to the next month (February has less days than other months).
If a day is not passed, \DateTime's constructor will set it to the first day of the month:
```php
var_dump(new \DateTime('2010-02'));
object(DateTime)#1 (3) {
["date"]=>
string(19) "2010-02-01 00:00:00"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/London"
}
```
\DateTime is used in the test assertions.
However, DateTimeToStringTransformer::reverseTransform() uses \DateTime::createFromFormat(), which sets a missing day to the current day:
```php
var_dump(\DateTime::createFromFormat("Y-m", '2010-02'));
object(DateTime)#1 (3) {
["date"]=>
string(19) "2010-03-01 20:09:26"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/London"
}
```
I changed the date in the test case to avoid failures. If we need to be sure that month's not going to be changed, I'll update my PR.File tree
1 file changed
+1
-1
lines changed- src/Symfony/Component/Form/Tests/Extension/Core/DataTransformer
1 file changed
+1
-1
lines changedLines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | | - | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| |||
0 commit comments