use of ninja.Router in project ninja by ninjaframework.
the class NinjaServletBootstrapTest method userSuppliedServletModuleInShiftedConfDirectory.
@Test
public void userSuppliedServletModuleInShiftedConfDirectory() {
ninjaPropertiesImpl = Mockito.spy(new NinjaPropertiesImpl(NinjaMode.test));
Mockito.when(ninjaPropertiesImpl.get(NinjaConstant.APPLICATION_MODULES_BASE_PACKAGE)).thenReturn("custom_base_package");
Bootstrap bootstrap = new NinjaServletBootstrap(ninjaPropertiesImpl);
bootstrap.boot();
assertThat("Ninja Boostrap process picks up user supplied Guice servlet module in custom_base_package.conf.ServletModule", bootstrap.getInjector().getInstance(custom_base_package.conf.ServletModule.DummyInterfaceForTesting.class), is(instanceOf(custom_base_package.conf.ServletModule.DummyClassForTesting.class)));
Router router = bootstrap.getInjector().getInstance(Router.class);
Route route = router.getRouteFor("GET", "/custom_base_package");
assertThat("custom_base_package.conf.Routes initialized properly. We get back the class we defined by the route.", route.getControllerClass(), is(instanceOf(controller.DummyControllerForTesting.class.getClass())));
}
use of ninja.Router in project ninja by ninjaframework.
the class NinjaServletBootstrapTest method userSuppliedServletModuleInConfDirectory.
@Test
public void userSuppliedServletModuleInConfDirectory() {
ninjaPropertiesImpl = new NinjaPropertiesImpl(NinjaMode.test);
Bootstrap bootstrap = new NinjaServletBootstrap(ninjaPropertiesImpl);
bootstrap.boot();
assertThat(bootstrap.getInjector().getInstance(Context.class), is(instanceOf(NinjaServletContext.class)));
assertThat("Ninja Boostrap process picks up user supplied Guice servlet module in conf.ServletModule", bootstrap.getInjector().getInstance(conf.ServletModule.DummyInterfaceForTesting.class), is(instanceOf(conf.ServletModule.DummyClassForTesting.class)));
Router router = bootstrap.getInjector().getInstance(Router.class);
Route route = router.getRouteFor("GET", "/");
assertThat("conf.Routes initialized properly. We get back the class we defined by the route.", route.getControllerClass(), is(instanceOf(controller.DummyControllerForTesting.class.getClass())));
}
use of ninja.Router in project ninja by ninjaframework.
the class NinjaServletListenerTest method testCreatingInjectorWithCustomModulesPackageWorks.
@Test
public void testCreatingInjectorWithCustomModulesPackageWorks() {
// setup stuff
NinjaPropertiesImpl ninjaProperties = new NinjaPropertiesImpl(NinjaMode.test);
ninjaProperties.setProperty(NinjaConstant.APPLICATION_MODULES_BASE_PACKAGE, "ninja.servlet");
NinjaServletListener ninjaServletListener = new NinjaServletListener();
ninjaServletListener.setNinjaProperties(ninjaProperties);
// start the injector:
ninjaServletListener.contextInitialized(servletContextEvent);
// test stuff
Injector injector = ninjaServletListener.getInjector();
Router router = injector.getInstance((Router.class));
//router is initialized otherwise there will be exception that routes isn't compiled
router.getRouteFor("GET", "/");
//validate that main application module is initialized
Boolean mainModuleConstant = injector.getInstance(Key.get(Boolean.class, Names.named(Module.TEST_CONSTANT_NAME)));
assertThat(mainModuleConstant, is(true));
}