Chris@0: value = 'myvalue'; Chris@0: $container = new ContainerBuilder(); Chris@0: $container->set('foo', $service); Chris@0: $bridge = new ZfExtensionManagerSfContainer(); Chris@0: $bridge->setContainer($container); Chris@0: $this->assertEquals($service, $bridge->get('foo')); Chris@0: } Chris@0: Chris@0: /** Chris@0: * @covers ::setContainer Chris@0: * @covers ::has Chris@0: */ Chris@0: public function testHas() { Chris@0: $service = new \stdClass(); Chris@0: $service->value = 'myvalue'; Chris@0: $container = new ContainerBuilder(); Chris@0: $container->set('foo', $service); Chris@0: $bridge = new ZfExtensionManagerSfContainer(); Chris@0: $bridge->setContainer($container); Chris@0: $this->assertTrue($bridge->has('foo')); Chris@0: $this->assertFalse($bridge->has('bar')); Chris@0: } Chris@0: Chris@0: /** Chris@0: * @covers ::__construct Chris@0: * @covers ::has Chris@0: * @covers ::get Chris@0: */ Chris@0: public function testPrefix() { Chris@0: $service = new \stdClass(); Chris@0: $service->value = 'myvalue'; Chris@0: $container = new ContainerBuilder(); Chris@0: $container->set('foo.bar', $service); Chris@0: $bridge = new ZfExtensionManagerSfContainer('foo.'); Chris@0: $bridge->setContainer($container); Chris@0: $this->assertTrue($bridge->has('bar')); Chris@0: $this->assertFalse($bridge->has('baz')); Chris@0: $this->assertEquals($service, $bridge->get('bar')); Chris@0: } Chris@0: Chris@0: /** Chris@0: * @covers ::canonicalizeName Chris@0: * @dataProvider canonicalizeNameProvider Chris@0: */ Chris@0: public function testCanonicalizeName($name, $canonical_name) { Chris@0: $service = new \stdClass(); Chris@0: $service->value = 'myvalue'; Chris@0: $container = new ContainerBuilder(); Chris@0: $container->set($canonical_name, $service); Chris@0: $bridge = new ZfExtensionManagerSfContainer(); Chris@0: $bridge->setContainer($container); Chris@0: $this->assertTrue($bridge->has($name)); Chris@0: $this->assertEquals($service, $bridge->get($name)); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Data provider for testReverseProxyEnabled. Chris@0: * Chris@0: * Replacements: Chris@0: * array('-' => '', '_' => '', ' ' => '', '\\' => '', '/' => '') Chris@0: */ Chris@0: public function canonicalizeNameProvider() { Chris@0: return [ Chris@0: [ Chris@0: 'foobar', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo-bar', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo_bar', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo bar', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo\\bar', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo/bar', Chris@0: 'foobar', Chris@0: ], Chris@0: // There is also a strtolower in canonicalizeName. Chris@0: [ Chris@0: 'Foo/bAr', Chris@0: 'foobar', Chris@0: ], Chris@0: [ Chris@0: 'foo/-_\\ bar', Chris@0: 'foobar', Chris@0: ], Chris@0: ]; Chris@0: } Chris@0: Chris@0: }