123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- <?php
- namespace GuzzleHttp\Tests\Command\Guzzle;
- use GuzzleHttp\Command\Guzzle\SchemaFormatter;
- /**
- * @covers \GuzzleHttp\Command\Guzzle\SchemaFormatter
- */
- class SchemaFormatterTest extends \PHPUnit_Framework_TestCase
- {
- public function dateTimeProvider()
- {
- $dateUtc = 'October 13, 2012 16:15:46 UTC';
- $dateOffset = 'October 13, 2012 10:15:46 -06:00';
- $expectedDateTime = '2012-10-13T16:15:46Z';
- return [
- ['foo', 'does-not-exist', 'foo'],
- [$dateUtc, 'date-time', $expectedDateTime],
- [$dateUtc, 'date-time-http', 'Sat, 13 Oct 2012 16:15:46 GMT'],
- [$dateUtc, 'date', '2012-10-13'],
- [$dateUtc, 'timestamp', strtotime($dateUtc)],
- [new \DateTime($dateUtc), 'timestamp', strtotime($dateUtc)],
- [$dateUtc, 'time', '16:15:46'],
- [strtotime($dateUtc), 'time', '16:15:46'],
- [strtotime($dateUtc), 'timestamp', strtotime($dateUtc)],
- ['true', 'boolean-string', 'true'],
- [true, 'boolean-string', 'true'],
- ['false', 'boolean-string', 'false'],
- [false, 'boolean-string', 'false'],
- ['1350144946', 'date-time', $expectedDateTime],
- [1350144946, 'date-time', $expectedDateTime],
- [$dateOffset, 'date-time', $expectedDateTime],
- ];
- }
- /**
- * @dataProvider dateTimeProvider
- */
- public function testFilters($value, $format, $result)
- {
- $this->assertEquals($result, (new SchemaFormatter)->format($format, $value));
- }
- /**
- * @expectedException \InvalidArgumentException
- */
- public function testValidatesDateTimeInput()
- {
- (new SchemaFormatter)->format('date-time', false);
- }
- public function testEnsuresTimestampsAreIntegers()
- {
- $t = time();
- $result = (new SchemaFormatter)->format('timestamp', $t);
- $this->assertSame($t, $result);
- $this->assertInternalType('int', $result);
- }
- }
|