public function testRegisterContainerConfiguration()
 {
     $containerConfigurator = new MockeryCallableMock();
     $kernel = $this->build(array('container_configurator' => $containerConfigurator));
     $loader = \Mockery::mock('Symfony\\Component\\Config\\Loader\\LoaderInterface');
     $containerConfigurator->should()->with($loader)->once();
     $kernel->registerContainerConfiguration($loader);
 }
 public function testItReturnsTheServerResourceResponseIfItExists()
 {
     $secureRequestChecker = new MockeryCallableMock();
     $resourceProcessor = new MockeryCallableMock();
     $subscriber = new SymfonyHttpKernelAkamonOAuth2FirewallEventSubscriber($this->server, $secureRequestChecker, $resourceProcessor);
     $httpKernel = $this->httpKernelMock();
     $request = $this->requestMock();
     $event = new GetResponseEvent($httpKernel, $request, HttpKernelInterface::MASTER_REQUEST);
     $secureRequestChecker->should()->with($request)->once()->andReturn(true)->ordered();
     $response = new Response();
     $this->server->shouldReceive('resource')->with($request, $resourceProcessor)->once()->andReturn($response);
     $this->assertNull($subscriber->onKernelRequest($event));
     $this->assertSame($response, $event->getResponse());
 }
 /** @test */
 public function it_loads_only_indicated_relations_from_loader()
 {
     $id1 = 'ups';
     $id2 = 'yep';
     $data1 = new \stdClass();
     $data2 = new \ArrayObject();
     $relationTypeProcessorObtainer = new MockeryCallableMock();
     $destinationIdentityMap = new DestinationIdentityMap();
     $relationLoader = new CallableRelationLoader();
     $loader = new RelationsToLoadLoader($relationTypeProcessorObtainer, $destinationIdentityMap, $relationLoader);
     $oneRelationTypeProcessor = new OneRelationTypeProcessor();
     $relationTypeProcessorObtainer->should()->with('one')->andReturn($oneRelationTypeProcessor);
     $loaderInfo1 = new MockeryCallableMock();
     $loaderInfo2 = new MockeryCallableMock();
     $destinationDef1 = new DestinationMetadata('_', $loaderInfo1);
     $destinationDef2 = new DestinationMetadata('_', $loaderInfo2);
     $relationDef1 = new RelationMetadata('foo1', 'one', $destinationDef1);
     $relationDef2 = new RelationMetadata('foo2', 'one', $destinationDef2);
     $relationsToLoad = [new RelationToLoad($relationDef1, new IdOneTypeNotLoadedRelation($id1)), new RelationToLoad($relationDef2, new IdOneTypeNotLoadedRelation($id2))];
     $loaderInfo2->should()->with([$id2])->once()->andReturn([$id2 => $data2]);
     $result = $loader($relationsToLoad, ['foo2']);
     $expected = [new LoadedRelation($relationsToLoad[1], $data2)];
     $this->assertEquals($expected, $result);
 }