12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- /**
- * TimeZone's tests
- */
- require_once 'application/TimeZone.php';
- /**
- * Unitary tests for timezone utilities
- */
- class TimeZoneTest extends PHPUnit_Framework_TestCase
- {
- /**
- * Generate a timezone selection form
- */
- public function testGenerateTimeZoneForm()
- {
- $generated = generateTimeZoneForm();
- // HTML form
- $this->assertStringStartsWith('Continent:<select', $generated[0]);
- $this->assertContains('selected="selected"', $generated[0]);
- $this->assertStringEndsWith('</select><br />', $generated[0]);
- // Javascript handler
- $this->assertStringStartsWith('<script>', $generated[1]);
- $this->assertContains(
- '<option value=\"Bermuda\">Bermuda<\/option>',
- $generated[1]
- );
- $this->assertStringEndsWith('</script>', $generated[1]);
- }
- /**
- * Generate a timezone selection form, with a preselected timezone
- */
- public function testGenerateTimeZoneFormPreselected()
- {
- $generated = generateTimeZoneForm('Antarctica/Syowa');
- // HTML form
- $this->assertStringStartsWith('Continent:<select', $generated[0]);
- $this->assertContains(
- 'value="Antarctica" selected="selected"',
- $generated[0]
- );
- $this->assertContains(
- 'value="Syowa" selected="selected"',
- $generated[0]
- );
- $this->assertStringEndsWith('</select><br />', $generated[0]);
- // Javascript handler
- $this->assertStringStartsWith('<script>', $generated[1]);
- $this->assertContains(
- '<option value=\"Bermuda\">Bermuda<\/option>',
- $generated[1]
- );
- $this->assertStringEndsWith('</script>', $generated[1]);
- }
- /**
- * Check valid timezones
- */
- public function testValidTimeZone()
- {
- $this->assertTrue(isTimeZoneValid('America', 'Argentina/Ushuaia'));
- $this->assertTrue(isTimeZoneValid('Europe', 'Oslo'));
- }
- /**
- * Check invalid timezones
- */
- public function testInvalidTimeZone()
- {
- $this->assertFalse(isTimeZoneValid('CEST', 'CEST'));
- $this->assertFalse(isTimeZoneValid('Europe', 'Atlantis'));
- $this->assertFalse(isTimeZoneValid('Middle_Earth', 'Moria'));
- $this->assertFalse(isTimeZoneValid('UTC', 'UTC'));
- }
- }
|