From c4dd7a1a684490673e25aaf4fabec5df138854c4 Mon Sep 17 00:00:00 2001 From: Lorry Tar Creator Date: Thu, 14 Mar 2013 05:42:27 +0000 Subject: Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2. --- tests/classes/factory_and_singleton_002.phpt | 100 +++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 tests/classes/factory_and_singleton_002.phpt (limited to 'tests/classes/factory_and_singleton_002.phpt') diff --git a/tests/classes/factory_and_singleton_002.phpt b/tests/classes/factory_and_singleton_002.phpt new file mode 100644 index 0000000..3308a56 --- /dev/null +++ b/tests/classes/factory_and_singleton_002.phpt @@ -0,0 +1,100 @@ +--TEST-- +ZE2 factory and singleton, test 2 +--SKIPIF-- + +--FILE-- +x = $x; + } + + static function destroy() { + test::$test = NULL; + } + + protected function __destruct() { + test::$cnt--; + } + + public function get() { + return $this->x; + } + + static public function getX() { + if (test::$test) { + return test::$test->x; + } else { + return NULL; + } + } + + static public function count() { + return test::$cnt; + } +} + +echo "Access static members\n"; +var_dump(test::getX()); +var_dump(test::count()); + +echo "Create x and y\n"; +$x = test::factory(1); +$y = test::factory(2); +var_dump(test::getX()); +var_dump(test::count()); +var_dump($x->get()); +var_dump($y->get()); + +echo "Destruct x\n"; +$x = NULL; +var_dump(test::getX()); +var_dump(test::count()); +var_dump($y->get()); + +echo "Destruct y\n"; +$y = NULL; +var_dump(test::getX()); +var_dump(test::count()); + +//echo "Destruct static\n"; +//test::destroy(); +//var_dump(test::getX()); +//var_dump(test::count()); + +echo "Done\n"; +?> +--EXPECT-- +Access static members +NULL +int(0) +Create x and y +int(1) +int(1) +int(1) +int(1) +Destruct x +int(1) +int(1) +int(1) +Destruct y +int(1) +int(1) +Done + +Warning: Call to protected test::__destruct() from context '' during shutdown ignored in Unknown on line 0 -- cgit v1.2.1