summaryrefslogtreecommitdiff
path: root/ext/date/tests/DateTime_data-february.inc
diff options
context:
space:
mode:
Diffstat (limited to 'ext/date/tests/DateTime_data-february.inc')
-rw-r--r--ext/date/tests/DateTime_data-february.inc208
1 files changed, 208 insertions, 0 deletions
diff --git a/ext/date/tests/DateTime_data-february.inc b/ext/date/tests/DateTime_data-february.inc
new file mode 100644
index 000000000..8c31ef69a
--- /dev/null
+++ b/ext/date/tests/DateTime_data-february.inc
@@ -0,0 +1,208 @@
+<?php
+
+/*
+ * Note: test names match method names in a set of PHPUnit tests
+ * in a userland package. Please be so kind as to leave them.
+ */
+
+date_default_timezone_set('America/New_York');
+
+
+/*
+ * Check PHP bug 49081
+ */
+echo "test_bug_49081__1: ";
+examine_diff('2010-03-31', '2010-03-01', 'P+0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081__2: ";
+examine_diff('2010-04-01', '2010-03-01', 'P+0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081__3: ";
+examine_diff('2010-04-01', '2010-03-31', 'P+0Y0M1DT0H0M0S', 1);
+
+echo "test_bug_49081__4: ";
+examine_diff('2010-04-29', '2010-03-31', 'P+0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081__5: ";
+examine_diff('2010-04-30', '2010-03-31', 'P+0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081__6: ";
+examine_diff('2010-04-30', '2010-03-30', 'P+0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081__7: ";
+examine_diff('2010-04-30', '2010-03-29', 'P+0Y1M1DT0H0M0S', 32);
+
+echo "test_bug_49081__8: ";
+examine_diff('2010-01-29', '2010-01-01', 'P+0Y0M28DT0H0M0S', 28);
+
+echo "test_bug_49081__9: ";
+examine_diff('2010-01-30', '2010-01-01', 'P+0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081__10: ";
+examine_diff('2010-01-31', '2010-01-01', 'P+0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081__11: ";
+examine_diff('2010-02-01', '2010-01-01', 'P+0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081__12: ";
+examine_diff('2010-02-01', '2010-01-31', 'P+0Y0M1DT0H0M0S', 1);
+
+echo "test_bug_49081__13: ";
+examine_diff('2010-02-27', '2010-01-31', 'P+0Y0M27DT0H0M0S', 27);
+
+echo "test_bug_49081__14: ";
+examine_diff('2010-02-28', '2010-01-31', 'P+0Y0M28DT0H0M0S', 28);
+
+echo "test_bug_49081__15: ";
+examine_diff('2010-02-28', '2010-01-30', 'P+0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081__16: ";
+examine_diff('2010-02-28', '2010-01-29', 'P+0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081__17: ";
+examine_diff('2010-02-28', '2010-01-28', 'P+0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081__18: ";
+examine_diff('2010-02-28', '2010-01-27', 'P+0Y1M1DT0H0M0S', 32);
+
+echo "test_bug_49081__19: ";
+examine_diff('2010-03-01', '2010-01-01', 'P+0Y2M0DT0H0M0S', 59);
+
+echo "test_bug_49081__20: ";
+examine_diff('2010-03-01', '2010-01-31', 'P+0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081__21: ";
+examine_diff('2010-03-27', '2010-01-31', 'P+0Y1M24DT0H0M0S', 55);
+
+echo "test_bug_49081__22: ";
+examine_diff('2010-03-28', '2010-01-31', 'P+0Y1M25DT0H0M0S', 56);
+
+echo "test_bug_49081__23: ";
+examine_diff('2010-03-29', '2010-01-31', 'P+0Y1M26DT0H0M0S', 57);
+
+echo "test_bug_49081__24: ";
+examine_diff('2010-03-30', '2010-01-31', 'P+0Y1M27DT0H0M0S', 58);
+
+echo "test_bug_49081__25: ";
+examine_diff('2010-03-31', '2010-01-31', 'P+0Y2M0DT0H0M0S', 59);
+
+echo "test_bug_49081__26: ";
+examine_diff('2010-03-31', '2010-01-30', 'P+0Y2M1DT0H0M0S', 60);
+
+echo "test_bug_49081__27: ";
+examine_diff('2009-01-31', '2009-01-01', 'P+0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081__28: ";
+examine_diff('2010-03-27', '2010-02-28', 'P+0Y0M27DT0H0M0S', 27);
+
+echo "test_bug_49081__29: ";
+examine_diff('2010-03-28', '2010-02-28', 'P+0Y1M0DT0H0M0S', 28);
+
+echo "test_bug_49081__30: ";
+examine_diff('2010-03-29', '2010-02-28', 'P+0Y1M1DT0H0M0S', 29);
+
+echo "test_bug_49081__31: ";
+examine_diff('2010-03-27', '2010-02-27', 'P+0Y1M0DT0H0M0S', 28);
+
+echo "test_bug_49081__32: ";
+examine_diff('2010-03-27', '2010-02-26', 'P+0Y1M1DT0H0M0S', 29);
+
+
+/*
+ * Check PHP bug 49081, negative
+ */
+echo "test_bug_49081_negative__1: ";
+examine_diff('2010-03-01', '2010-03-31', 'P-0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081_negative__2: ";
+examine_diff('2010-03-01', '2010-04-01', 'P-0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081_negative__3: ";
+examine_diff('2010-03-31', '2010-04-01', 'P-0Y0M1DT0H0M0S', 1);
+
+echo "test_bug_49081_negative__4: ";
+examine_diff('2010-03-31', '2010-04-29', 'P-0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081_negative__5: ";
+examine_diff('2010-03-31', '2010-04-30', 'P-0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081_negative__6: ";
+examine_diff('2010-03-30', '2010-04-30', 'P-0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081_negative__7: ";
+examine_diff('2010-03-29', '2010-04-30', 'P-0Y1M1DT0H0M0S', 32);
+
+echo "test_bug_49081_negative__8: ";
+examine_diff('2010-01-01', '2010-01-29', 'P-0Y0M28DT0H0M0S', 28);
+
+echo "test_bug_49081_negative__9: ";
+examine_diff('2010-01-01', '2010-01-30', 'P-0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081_negative__10: ";
+examine_diff('2010-01-01', '2010-01-31', 'P-0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081_negative__11: ";
+examine_diff('2010-01-01', '2010-02-01', 'P-0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081_negative__12: ";
+examine_diff('2010-01-31', '2010-02-01', 'P-0Y0M1DT0H0M0S', 1);
+
+echo "test_bug_49081_negative__13: ";
+examine_diff('2010-01-31', '2010-02-27', 'P-0Y0M27DT0H0M0S', 27);
+
+echo "test_bug_49081_negative__14: ";
+examine_diff('2010-01-31', '2010-02-28', 'P-0Y0M28DT0H0M0S', 28);
+
+echo "test_bug_49081_negative__15: ";
+examine_diff('2010-01-30', '2010-02-28', 'P-0Y0M29DT0H0M0S', 29);
+
+echo "test_bug_49081_negative__16: ";
+examine_diff('2010-01-29', '2010-02-28', 'P-0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081_negative__17: ";
+examine_diff('2010-01-28', '2010-02-28', 'P-0Y1M0DT0H0M0S', 31);
+
+echo "test_bug_49081_negative__18: ";
+examine_diff('2010-01-27', '2010-02-28', 'P-0Y1M1DT0H0M0S', 32);
+
+echo "test_bug_49081_negative__19: ";
+examine_diff('2010-01-01', '2010-03-01', 'P-0Y2M0DT0H0M0S', 59);
+
+echo "test_bug_49081_negative__20: ";
+examine_diff('2010-01-31', '2010-03-01', 'P-0Y1M1DT0H0M0S', 29);
+
+echo "test_bug_49081_negative__21: ";
+examine_diff('2010-01-31', '2010-03-27', 'P-0Y1M27DT0H0M0S', 55);
+
+echo "test_bug_49081_negative__22: ";
+examine_diff('2010-01-31', '2010-03-28', 'P-0Y1M28DT0H0M0S', 56);
+
+echo "test_bug_49081_negative__23: ";
+examine_diff('2010-01-31', '2010-03-29', 'P-0Y1M29DT0H0M0S', 57);
+
+echo "test_bug_49081_negative__24: ";
+examine_diff('2010-01-31', '2010-03-30', 'P-0Y1M30DT0H0M0S', 58);
+
+echo "test_bug_49081_negative__25: ";
+examine_diff('2010-01-31', '2010-03-31', 'P-0Y2M0DT0H0M0S', 59);
+
+echo "test_bug_49081_negative__26: ";
+examine_diff('2010-01-30', '2010-03-31', 'P-0Y2M1DT0H0M0S', 60);
+
+echo "test_bug_49081_negative__27: ";
+examine_diff('2009-01-01', '2009-01-31', 'P-0Y0M30DT0H0M0S', 30);
+
+echo "test_bug_49081_negative__28: ";
+examine_diff('2010-02-28', '2010-03-27', 'P-0Y0M27DT0H0M0S', 27);
+
+echo "test_bug_49081_negative__29: ";
+examine_diff('2010-02-28', '2010-03-28', 'P-0Y1M0DT0H0M0S', 28);
+
+echo "test_bug_49081_negative__30: ";
+examine_diff('2010-02-28', '2010-03-29', 'P-0Y1M1DT0H0M0S', 29);
+
+echo "test_bug_49081_negative__31: ";
+examine_diff('2010-02-27', '2010-03-27', 'P-0Y1M0DT0H0M0S', 28);
+
+echo "test_bug_49081_negative__32: ";
+examine_diff('2010-02-26', '2010-03-27', 'P-0Y1M1DT0H0M0S', 29);