Search in sources :

Example 11 with ChildModuleElement

use of com.mvp4g.rebind.config.element.ChildModuleElement in project mvp4g by mvp4g.

the class Mvp4gConfigurationTest method testUnknownEventForAutoDisplay.

@Test(expected = UnknownConfigurationElementException.class)
public void testUnknownEventForAutoDisplay() throws InvalidMvp4gConfigurationException {
    ChildModuleElement childModule1 = newChildModule(Modules.ChildModule01.class, "child1");
    childModule1.setEventToDisplayView("unknown");
    childModules.add(childModule1);
    EventElement event = newEvent("testEvent");
    event.setForwardToModules(new String[] { "child1" });
    event.setEventObjectClass(new String[] { Object.class.getCanonicalName() });
    events.add(event);
    setEventBus();
    configuration.validateChildModules();
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) Modules(com.mvp4g.rebind.test_tools.Modules) OneObject(com.mvp4g.rebind.test_tools.OneObject) ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement) Test(org.junit.Test)

Example 12 with ChildModuleElement

use of com.mvp4g.rebind.config.element.ChildModuleElement in project mvp4g by mvp4g.

the class Mvp4gConfigurationTest method testFindChildModuleSameHistory.

@Test(expected = InvalidMvp4gConfigurationException.class)
public void testFindChildModuleSameHistory() throws InvalidMvp4gConfigurationException {
    setEventBus();
    ChildModuleElement childModule1 = newChildModule(Modules.ModuleWithParent01.class, "child1");
    childModules.add(childModule1);
    ChildModuleElement childModule2 = new ChildModuleElement();
    childModule2.setName("child2");
    childModule2.setClassName(Modules.ModuleWithParent01.class.getCanonicalName());
    childModules.add(childModule2);
    JClassType module = oracle.findType(Mvp4gModule.class.getCanonicalName());
    configuration.setModule(module);
    try {
        configuration.findChildModuleHistoryNameAndLoader();
        fail();
    } catch (InvalidMvp4gConfigurationException e) {
        String.format("Module %s: You can't have two child modules with the same history name \"%s\".", module.getQualifiedSourceName(), "moduleWithParent");
        throw e;
    }
}
Also used : JClassType(com.google.gwt.core.ext.typeinfo.JClassType) Mvp4gModule(com.mvp4g.client.Mvp4gModule) InvalidMvp4gConfigurationException(com.mvp4g.rebind.exception.InvalidMvp4gConfigurationException) Modules(com.mvp4g.rebind.test_tools.Modules) ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement) Test(org.junit.Test)

Example 13 with ChildModuleElement

use of com.mvp4g.rebind.config.element.ChildModuleElement in project mvp4g by mvp4g.

the class Mvp4gConfigurationTest method testChildModulesNoStart.

@Test(expected = InvalidMvp4gConfigurationException.class)
public void testChildModulesNoStart() throws InvalidMvp4gConfigurationException {
    ChildModuleElement childModule1 = newChildModule(Modules.ChildModule01.class, "child1");
    childModule1.setEventToDisplayView("testEvent");
    childModules.add(childModule1);
    configuration.getOthersEventBusClassMap().put(Modules.ChildModule01.class.getCanonicalName(), oracle.addClass(EventBusWithNoStartPresenter.class));
    EventElement event = newEvent("testEvent");
    event.setForwardToModules(new String[] { "child1" });
    event.setEventObjectClass(new String[] { Object.class.getCanonicalName() });
    events.add(event);
    try {
        configuration.validateChildModules();
    } catch (InvalidMvp4gConfigurationException e) {
        assertEquals("Module com.mvp4g.rebind.test_tools.Modules.ChildModule01: You must define a start presenter since this module has a parent module that uses the auto-displayed feature for this module.", e.getMessage());
        throw e;
    }
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) InvalidMvp4gConfigurationException(com.mvp4g.rebind.exception.InvalidMvp4gConfigurationException) Modules(com.mvp4g.rebind.test_tools.Modules) OneObject(com.mvp4g.rebind.test_tools.OneObject) ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement) EventBusWithNoStartPresenter(com.mvp4g.rebind.test_tools.annotation.Events.EventBusWithNoStartPresenter) Test(org.junit.Test)

Example 14 with ChildModuleElement

use of com.mvp4g.rebind.config.element.ChildModuleElement in project mvp4g by mvp4g.

the class Mvp4gConfigurationTest method setParentEventBus.

private void setParentEventBus(Class<?> moduleClass, Class<?> parentEventBusClass) {
    ChildModuleElement elt = new ChildModuleElement();
    elt.setParentEventBus(oracle.findType(parentEventBusClass.getCanonicalName()));
    configuration.getModuleParentEventBusClassMap().put(moduleClass.getCanonicalName(), elt);
}
Also used : ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement)

Example 15 with ChildModuleElement

use of com.mvp4g.rebind.config.element.ChildModuleElement in project mvp4g by mvp4g.

the class Mvp4gConfigurationTest method testInvalidChildModule.

@Test(expected = InvalidClassException.class)
public void testInvalidChildModule() throws InvalidMvp4gConfigurationException {
    ChildModuleElement childModule1 = new ChildModuleElement();
    childModule1.setName("child1");
    childModule1.setClassName(Object.class.getName());
    childModules.add(childModule1);
    EventElement event = newEvent("testEvent");
    event.setForwardToModules(new String[] { "child1" });
    event.setEventObjectClass(new String[] { Object.class.getCanonicalName() });
    events.add(event);
    setEventBus();
    configuration.validateChildModules();
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) OneObject(com.mvp4g.rebind.test_tools.OneObject) ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement) Test(org.junit.Test)

Aggregations

ChildModuleElement (com.mvp4g.rebind.config.element.ChildModuleElement)18 Test (org.junit.Test)16 Modules (com.mvp4g.rebind.test_tools.Modules)15 EventElement (com.mvp4g.rebind.config.element.EventElement)12 OneObject (com.mvp4g.rebind.test_tools.OneObject)6 JClassType (com.google.gwt.core.ext.typeinfo.JClassType)5 InvalidMvp4gConfigurationException (com.mvp4g.rebind.exception.InvalidMvp4gConfigurationException)5 TestBroadcast (com.mvp4g.rebind.test_tools.annotation.TestBroadcast)3 TestBroadcast2 (com.mvp4g.rebind.test_tools.annotation.TestBroadcast2)3 Loaders (com.mvp4g.rebind.test_tools.Loaders)2 EventBusOk (com.mvp4g.rebind.test_tools.annotation.events.EventBusOk)2 Mvp4gModule (com.mvp4g.client.Mvp4gModule)1 BaseEventBus (com.mvp4g.client.event.BaseEventBus)1 EventBus (com.mvp4g.client.event.EventBus)1 EventBusElement (com.mvp4g.rebind.config.element.EventBusElement)1 LoaderElement (com.mvp4g.rebind.config.element.LoaderElement)1 InvalidTypeException (com.mvp4g.rebind.exception.InvalidTypeException)1 EventBusWithNoStartPresenter (com.mvp4g.rebind.test_tools.annotation.Events.EventBusWithNoStartPresenter)1 SimpleView (com.mvp4g.rebind.test_tools.annotation.views.SimpleView)1