public function testScenario4()
 {
     $namespace = 'Saxulum\\SaxulumControllerProvider\\Controller\\TestController';
     $serviceId = 'saxulum.saxulumcontrollerprovider.controller.testcontroller';
     $injectionKeys = array('twig');
     $methodArray = array('name' => 'setDoctrine', 'injectionKeys' => array('doctrine'));
     $method = $this->getMock('Saxulum\\SaxulumControllerProvider\\Map\\Method');
     $method->expects($this->any())->method('__toArray')->will($this->returnValue($methodArray));
     $controller = new Controller();
     $controller->setNamespace($namespace);
     $controller->setServiceId($serviceId);
     $controller->setInjectionKeys($injectionKeys);
     $controller->addMethod($method);
     $this->assertEquals($namespace, $controller->getNamespace());
     $this->assertEquals($serviceId, $controller->getServiceId());
     $this->assertEquals($injectionKeys, $controller->getInjectionKeys());
     $this->assertTrue($controller->hasInjectionKeys());
     $this->assertFalse($controller->isInjectContainer());
     $this->assertTrue($controller->hasMethods());
     $newController = new Controller($controller->__toArray());
     $this->assertEquals($controller->__toArray(), $newController->__toArray());
 }