123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171 |
- <?php
- /**
- * File SecurityDefinitionTest.php
- *
- * @author Edward Pfremmer <epfremme@nerdery.com>
- */
- namespace Epfremme\Swagger\Tests\Entity;
- use Epfremme\Swagger\Entity\SecurityDefinition;
- use Epfremme\Swagger\Tests\Mixin\SerializerContextTrait;
- /**
- * Class SecurityDefinitionTest
- *
- * @package Epfremme\Swagger
- * @subpackage Tests\Entity
- */
- class SecurityDefinitionTest extends \PHPUnit_Framework_TestCase
- {
- use SerializerContextTrait;
- /**
- * @var SecurityDefinition
- */
- protected $securityDefinition;
- /**
- * {@inheritdoc}
- */
- protected function setUp()
- {
- $this->securityDefinition = new SecurityDefinition();
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getType
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setType
- */
- public function testType()
- {
- $this->assertClassHasAttribute('type', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setType('foo'));
- $this->assertAttributeEquals('foo', 'type', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getType());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getDescription
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setDescription
- */
- public function testDescription()
- {
- $this->assertClassHasAttribute('description', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setDescription('foo'));
- $this->assertAttributeEquals('foo', 'description', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getDescription());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getName
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setName
- */
- public function testName()
- {
- $this->assertClassHasAttribute('name', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setName('foo'));
- $this->assertAttributeEquals('foo', 'name', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getName());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getIn
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setIn
- */
- public function testIn()
- {
- $this->assertClassHasAttribute('in', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setIn('foo'));
- $this->assertAttributeEquals('foo', 'in', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getIn());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getFlow
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setFlow
- */
- public function testFlow()
- {
- $this->assertClassHasAttribute('flow', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setFlow('foo'));
- $this->assertAttributeEquals('foo', 'flow', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getFlow());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getAuthorizationUrl
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setAuthorizationUrl
- */
- public function testAuthorizationUrl()
- {
- $this->assertClassHasAttribute('authorizationUrl', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setAuthorizationUrl('foo'));
- $this->assertAttributeEquals('foo', 'authorizationUrl', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getAuthorizationUrl());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getTokenUrl
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setTokenUrl
- */
- public function testTokenUrl()
- {
- $this->assertClassHasAttribute('tokenUrl', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setTokenUrl('foo'));
- $this->assertAttributeEquals('foo', 'tokenUrl', $this->securityDefinition);
- $this->assertEquals('foo', $this->securityDefinition->getTokenUrl());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::getScopes
- * @covers Epfremme\Swagger\Entity\SecurityDefinition::setScopes
- */
- public function testScopes()
- {
- $scopes = ['foo', 'bar', 'baz'];
- $this->assertClassHasAttribute('scopes', SecurityDefinition::class);
- $this->assertInstanceOf(SecurityDefinition::class, $this->securityDefinition->setScopes($scopes));
- $this->assertAttributeInternalType('array', 'scopes', $this->securityDefinition);
- $this->assertAttributeEquals($scopes, 'scopes', $this->securityDefinition);
- $this->assertEquals($scopes, $this->securityDefinition->getScopes());
- }
- /**
- * @covers Epfremme\Swagger\Entity\SecurityDefinition
- */
- public function testSerialize()
- {
- $data = json_encode([
- 'type' => 'foo',
- 'description' => 'bar',
- 'name' => 'baz',
- 'in' => 'qux',
- 'flow' => 'quux',
- 'authorizationUrl' => 'corge',
- 'tokenUrl' => 'grault',
- 'scopes' => [
- 'foo',
- 'bar',
- 'baz'
- ],
- ]);
- $securityDefinition = $this->getSerializer()->deserialize($data, SecurityDefinition::class, 'json');
- $this->assertInstanceOf(SecurityDefinition::class, $securityDefinition);
- $this->assertAttributeEquals('foo', 'type', $securityDefinition);
- $this->assertAttributeEquals('bar', 'description', $securityDefinition);
- $this->assertAttributeEquals('baz', 'name', $securityDefinition);
- $this->assertAttributeEquals('qux', 'in', $securityDefinition);
- $this->assertAttributeEquals('quux', 'flow', $securityDefinition);
- $this->assertAttributeEquals('corge', 'authorizationUrl', $securityDefinition);
- $this->assertAttributeEquals('grault', 'tokenUrl', $securityDefinition);
- $this->assertAttributeEquals(['foo', 'bar', 'baz'], 'scopes', $securityDefinition);
- $json = $this->getSerializer()->serialize($securityDefinition, 'json');
- $this->assertJson($json);
- $this->assertJsonStringEqualsJsonString($data, $json);
- }
- }
|