Annotation of embedaddon/php/ext/date/tests/bug54851.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #54851 (DateTime::createFromFormat() doesn't interpret "D")
                      3: --INI--
                      4: date.timezone=UTC
                      5: --FILE--
                      6: <?php
                      7: $date = new DateTime("2011-05-17T22:14:12");
                      8: $date2 = DateTime::createFromFormat("D H i s", $date->format("D"). ' 0 00 00');
                      9: echo $date->format("r"), "\n";
                     10: echo $date2->format("r"), "\n";
                     11: var_dump($date->format("D") == $date2->format("D"));
                     12: 
                     13: // Verify that our implementation works regardless of position
                     14: $datePre = DateTime::createFromFormat("!D d M Y", "Fri 17 may 2011");
                     15: $datePost = DateTime::createFromFormat("!d M Y D", "17 may 2011 Fri");
                     16: echo $datePre->format("r"), "\n";
                     17: echo $datePost->format("r"), "\n";
                     18: var_dump($datePre->format("Y-m-d") == $datePost->format("Y-m-d"));
                     19: 
                     20: // Verify that our implementation is the same as for the constructor and
                     21: // strtotime
                     22: $date1 = new DateTime("Tuesday");
                     23: $date2 = DateTime::createFromFormat("D H i s", "Tuesday 0 00 00");
                     24: echo $date1->format('r'), "\n";
                     25: echo $date2->format('r'), "\n";
                     26: var_dump($date1->format('D') == $date2->format('D'));
                     27: 
                     28: // - when the day is not the same as the day on the original date:
                     29: $date1 = DateTime::createFromFormat("!D d M Y", "Fri 19 November 2011");
                     30: $date2 = new DateTime("Fri 19 November 2011");
                     31: echo $date1->format('r'), "\n";
                     32: echo $date2->format('r'), "\n";
                     33: var_dump($date1->format('Y-m-d') == $date2->format('Y-m-d'));
                     34: 
                     35: // - when the day *is* the same as the day on the original date:
                     36: $date1 = DateTime::createFromFormat("!D d M Y", "Sat 19 November 2011");
                     37: $date2 = new DateTime("Sat 19 November 2011");
                     38: echo $date1->format('r'), "\n";
                     39: echo $date2->format('r'), "\n";
                     40: var_dump($date1->format('Y-m-d') == $date2->format('Y-m-d'));
                     41: ?>
                     42: --EXPECTF--
                     43: Tue, 17 May 2011 22:14:12 +0000
                     44: Tue, %d %s %d 00:00:00 +0000
                     45: bool(true)
                     46: Fri, 20 May 2011 00:00:00 +0000
                     47: Fri, 20 May 2011 00:00:00 +0000
                     48: bool(true)
                     49: Tue, %d %s %d 00:00:00 +0000
                     50: Tue, %d %s %d 00:00:00 +0000
                     51: bool(true)
                     52: Fri, 25 Nov 2011 00:00:00 +0000
                     53: Fri, 25 Nov 2011 00:00:00 +0000
                     54: bool(true)
                     55: Sat, 19 Nov 2011 00:00:00 +0000
                     56: Sat, 19 Nov 2011 00:00:00 +0000
                     57: bool(true)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>