Test creating dates from string input.
public function testDateStrings() {
// Create date object from datetime string.
$input = '2009-03-07 10:30';
$timezone = 'America/Chicago';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-03-07T10:30:00-06:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
// Same during daylight savings time.
$input = '2009-06-07 10:30';
$timezone = 'America/Chicago';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-06-07T10:30:00-05:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
// Create date object from date string.
$input = '2009-03-07';
$timezone = 'America/Chicago';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-03-07T00:00:00-06:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
// Same during daylight savings time.
$input = '2009-06-07';
$timezone = 'America/Chicago';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-06-07T00:00:00-05:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
// Create date object from date string.
$input = '2009-03-07 10:30';
$timezone = 'Australia/Canberra';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-03-07T10:30:00+11:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
// Same during daylight savings time.
$input = '2009-06-07 10:30';
$timezone = 'Australia/Canberra';
$date = new DateTimePlus($input, $timezone);
$value = $date
->format('c');
$expected = '2009-06-07T10:30:00+10:00';
$this
->assertEqual($expected, $value, "Test new DateTimePlus({$input}, {$timezone}): should be {$expected}, found {$value}.");
}