@Override public Host next() { return TomcatEngine.this.registry.getHostFactory().createHost(TomcatEngine.this.registry, (org.apache.catalina.Host) children.next(), TomcatEngine.this); }
@Override public Host findHost(String name) { org.apache.catalina.Host host = (org.apache.catalina.Host) this.engine.findChild(name); return (host != null) ? this.registry.getHostFactory().createHost(this.registry, host, this) : null; }
@Test public void findHost() { org.apache.catalina.Host host = mock(org.apache.catalina.Host.class); HostFactory hostFactory = mock(HostFactory.class); Host expected = mock(Host.class); when(this.engine.findChild("host")).thenReturn(host); when(this.registry.getHostFactory()).thenReturn(hostFactory); when(hostFactory.createHost(same(this.registry), same(host), same(this.catalinaEngine))).thenReturn(expected); Host result = this.catalinaEngine.findHost("host"); assertSame(expected, result); }
@Test public void getHosts() { org.apache.catalina.Host host = mock(org.apache.catalina.Host.class); HostFactory hostFactory = mock(HostFactory.class); Host expected = mock(Host.class); when(this.engine.findChildren()).thenReturn(new Container[] { host }); when(this.registry.getHostFactory()).thenReturn(hostFactory); when(hostFactory.createHost(same(this.registry), same(host), same(this.catalinaEngine))).thenReturn(expected); Iterable<Host> result = this.catalinaEngine.getHosts(); Iterator<Host> hosts = result.iterator(); assertTrue(hosts.hasNext()); assertSame(expected, hosts.next()); assertFalse(hosts.hasNext()); }
protected void verifyCatalinaFactoryTypes(TomcatFactoryRegistry registry) { assertSame(TomcatServerFactory.class, registry.getServerFactory().getClass()); assertSame(TomcatEngineFactory.class, registry.getEngineFactory().getClass()); assertSame(TomcatHostFactory.class, registry.getHostFactory().getClass()); assertSame(TomcatContextFactory.class, registry.getContextFactory().getClass()); assertSame(TomcatConnectorFactory.class, registry.getConnectorFactory().getClass()); assertSame(this.provider, registry.getProxyConnectorProvider()); } }
@Test public void testCatalinaFactoryRegistry() { TomcatFactoryRegistry registry = new ServiceLoaderTomcatFactory(this.serverFactory, this.engineFactory, this.hostFactory, this.contextFactory, this.connectorFactory, this.provider); assertSame(this.serverFactory, registry.getServerFactory()); assertSame(this.engineFactory, registry.getEngineFactory()); assertSame(this.hostFactory, registry.getHostFactory()); assertSame(this.contextFactory, registry.getContextFactory()); assertSame(this.connectorFactory, registry.getConnectorFactory()); assertSame(this.provider, registry.getProxyConnectorProvider()); }