summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-05-29 09:47:54 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-05-29 09:47:54 +0200
commit5a0df6a414b6f07e4b7e5a04caa949f76a44ec0b (patch)
treec9d791f6266ad5ebd96261e29fcbcf380ba4ab42
parent0d102515bf4adf102ebb889f42c86d946f0000b8 (diff)
parentde7d0256a316a548c3a986a07acdcf093985300b (diff)
downloadphp-git-5a0df6a414b6f07e4b7e5a04caa949f76a44ec0b.tar.gz
Merge branch 'PHP-7.3' into PHP-7.4
-rw-r--r--ext/date/tests/DatePeriod_properties1.phpt37
-rw-r--r--ext/date/tests/DatePeriod_properties2.phpt46
2 files changed, 83 insertions, 0 deletions
diff --git a/ext/date/tests/DatePeriod_properties1.phpt b/ext/date/tests/DatePeriod_properties1.phpt
new file mode 100644
index 0000000000..32ede7d218
--- /dev/null
+++ b/ext/date/tests/DatePeriod_properties1.phpt
@@ -0,0 +1,37 @@
+--TEST--
+DatePeriod: Test read only properties
+--INI--
+date.timezone=UTC
+--FILE--
+<?php
+
+$start = new DateTime;
+$interval = new DateInterval('P1D');
+$end = new DateTime;
+$period = new DatePeriod($start, $interval, $end);
+
+echo "recurrences: ";
+var_dump($period->recurrences);
+
+echo "include_start_date: ";
+var_dump($period->include_start_date);
+
+echo "start: ";
+var_dump($period->start == $start);
+
+echo "current: ";
+var_dump($period->current);
+
+echo "end: ";
+var_dump($period->end == $end);
+
+echo "interval: ";
+var_dump($period->interval->format("%R%d"));
+?>
+--EXPECT--
+recurrences: int(1)
+include_start_date: bool(true)
+start: bool(true)
+current: NULL
+end: bool(true)
+interval: string(2) "+1"
diff --git a/ext/date/tests/DatePeriod_properties2.phpt b/ext/date/tests/DatePeriod_properties2.phpt
new file mode 100644
index 0000000000..01858e68d4
--- /dev/null
+++ b/ext/date/tests/DatePeriod_properties2.phpt
@@ -0,0 +1,46 @@
+--TEST--
+DatePeriod: Test cannot modify read only properties
+--INI--
+date.timezone=UTC
+--FILE--
+<?php
+
+$period = new DatePeriod(new DateTime, new DateInterval('P1D'), new DateTime);
+
+$properties = [
+ "recurrences",
+ "include_start_date",
+ "start",
+ "current",
+ "end",
+ "interval",
+];
+
+foreach ($properties as $property) {
+ try {
+ $period->$property = "new";
+ } catch (Error $e) {
+ echo $e->getMessage() . "\n";
+ }
+
+ try {
+ $period->$property[] = "extra";
+ } catch (Error $e) {
+ echo $e->getMessage() . "\n";
+ }
+}
+
+?>
+--EXPECT--
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported
+Writing to DatePeriod properties is unsupported
+Retrieval of DatePeriod properties for modification is unsupported