Example #1
0
 public function testServiceInstantiation()
 {
     $serviceManager = new CM_Service_Manager();
     $serviceManager->registerWithArray('stream-message', ['class' => 'CM_MessageStream_Factory', 'method' => ['name' => 'createService', 'arguments' => ['adapterClass' => 'CM_MessageStream_Adapter_SocketRedis', 'adapterArguments' => ['servers' => [['httpHost' => 'localhost', 'httpPort' => 8085, 'sockjsUrls' => ['http://localhost:8090']]]]]]]);
     $stream = $serviceManager->get('stream-message');
     $this->assertSame(true, $stream instanceof CM_MessageStream_Service);
     $adapter = $stream->getAdapter();
     $this->assertSame(true, $adapter instanceof CM_MessageStream_Adapter_SocketRedis);
     /** @var CM_MessageStream_Adapter_SocketRedis $adapter */
     $this->assertSame($serviceManager, $adapter->getServiceManager());
 }
Example #2
0
 public function testRegisterInstance()
 {
     $serviceManager = new CM_Service_Manager();
     $serviceFoo = 12.3;
     $serviceManager->registerInstance('foo', $serviceFoo);
     $this->assertSame($serviceFoo, $serviceManager->get('foo'));
     $serviceBar = new DummyService('hello');
     $serviceManager->registerInstance('bar', $serviceBar);
     $this->assertSame($serviceBar, $serviceManager->get('bar'));
     $this->assertSame($serviceManager, $serviceBar->getServiceManager());
 }
Example #3
0
 public function testReplaceInstance()
 {
     $serviceManager = new CM_Service_Manager();
     $this->assertSame(false, $serviceManager->has('foo'));
     $serviceManager->replaceInstance('foo', 12.3);
     $this->assertSame(12.3, $serviceManager->get('foo'));
     $serviceManager->replaceInstance('foo', 12.4);
     $this->assertSame(12.4, $serviceManager->get('foo'));
 }