aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wrapper
diff options
context:
space:
mode:
Diffstat (limited to 'tests/wrapper')
-rw-r--r--tests/wrapper/gmgetdate_test.php49
-rw-r--r--tests/wrapper/mt_rand_test.php46
2 files changed, 95 insertions, 0 deletions
diff --git a/tests/wrapper/gmgetdate_test.php b/tests/wrapper/gmgetdate_test.php
new file mode 100644
index 0000000000..0b4c3378a9
--- /dev/null
+++ b/tests/wrapper/gmgetdate_test.php
@@ -0,0 +1,49 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2011 phpBB Group
+* @license http://opensource.org/licenses/gpl-license.php GNU Public License
+*
+*/
+
+require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
+
+class phpbb_wrapper_gmgetdate_test extends phpbb_test_case
+{
+ public function test_gmgetdate()
+ {
+ $this->run_gmgetdate_assertion();
+ $this->run_test_with_timezone('UTC');
+ $this->run_test_with_timezone('Europe/Berlin');
+ $this->run_test_with_timezone('America/Los_Angeles');
+ $this->run_test_with_timezone('Antarctica/South_Pole');
+ }
+
+ protected function run_test_with_timezone($timezone_identifier)
+ {
+ $current_timezone = date_default_timezone_get();
+
+ date_default_timezone_set($timezone_identifier);
+ $this->run_gmgetdate_assertion();
+ date_default_timezone_set($current_timezone);
+ }
+
+ protected function run_gmgetdate_assertion()
+ {
+ $expected = time();
+
+ $date_array = phpbb_gmgetdate($expected);
+
+ $actual = gmmktime(
+ $date_array['hours'],
+ $date_array['minutes'],
+ $date_array['seconds'],
+ $date_array['mon'],
+ $date_array['mday'],
+ $date_array['year']
+ );
+
+ $this->assertEquals($expected, $actual);
+ }
+}
diff --git a/tests/wrapper/mt_rand_test.php b/tests/wrapper/mt_rand_test.php
new file mode 100644
index 0000000000..c8bcb3d14c
--- /dev/null
+++ b/tests/wrapper/mt_rand_test.php
@@ -0,0 +1,46 @@
+<?php
+/**
+*
+* @package testing
+* @copyright (c) 2011 phpBB Group
+* @license http://opensource.org/licenses/gpl-license.php GNU Public License
+*
+*/
+
+require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php';
+
+class phpbb_wrapper_mt_rand_test extends phpbb_test_case
+{
+ public function test_max_equals_min()
+ {
+ $result = phpbb_mt_rand(42, 42);
+ $this->assertEquals(42, $result);
+ }
+
+ public function test_max_equals_min_negative()
+ {
+ $result = phpbb_mt_rand(-42, -42);
+ $this->assertEquals(-42, $result);
+ }
+
+ public function test_max_greater_min()
+ {
+ $result = phpbb_mt_rand(3, 4);
+ $this->assertGreaterThanOrEqual(3, $result);
+ $this->assertLessThanOrEqual(4, $result);
+ }
+
+ public function test_min_greater_max()
+ {
+ $result = phpbb_mt_rand(4, 3);
+ $this->assertGreaterThanOrEqual(3, $result);
+ $this->assertLessThanOrEqual(4, $result);
+ }
+
+ public function test_min_greater_max_negative()
+ {
+ $result = phpbb_mt_rand(-3, -4);
+ $this->assertGreaterThanOrEqual(-4, $result);
+ $this->assertLessThanOrEqual(-3, $result);
+ }
+}