Search in sources :

Example 36 with EventElement

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

the class Mvp4gConfigurationTest method testEventHandlerValidationSucceedsNoInjectedView.

@Test
public void testEventHandlerValidationSucceedsNoInjectedView() throws InvalidMvp4gConfigurationException {
    ViewElement view = newView(SimpleView01.class, "view");
    views.add(view);
    PresenterElement presenter = newPresenter(SimplePresenter01.class, "testHandler");
    presenter.setView("view");
    presenters.add(presenter);
    EventElement event = newEvent("testEvent");
    event.setHandlers(new String[] { "testHandler" });
    events.add(event);
    setEventBus();
    configuration.validateEventHandlers();
    assertFalse(presenter.hasInverseView());
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) ViewElement(com.mvp4g.rebind.config.element.ViewElement) PresenterElement(com.mvp4g.rebind.config.element.PresenterElement) Test(org.junit.Test)

Example 37 with EventElement

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

the class Mvp4gConfigurationTest method testGenerate.

@Test
public void testGenerate() throws InvalidMvp4gConfigurationException {
    EventBusElement eventBus = new EventBusElement(EventBusWithLookup.class.getName(), BaseEventBus.class.getName(), false);
    configuration.setEventBus(eventBus);
    EventElement event1 = newEvent("event1");
    event1.setHandlers(new String[] { "generate2" });
    event1.setGenerate(new String[] { "generate1", "generate2" });
    events.add(event1);
    ViewElement view = newView(SimpleView01.class, "view");
    views.add(view);
    PresenterElement generate1 = newPresenter(SimplePresenter01.class, "generate1");
    generate1.setView("view");
    EventHandlerElement generate2 = newEventHandler(SimpleEventHandler01.class, "generate2");
    presenters.add(generate1);
    eventHandlers.add(generate2);
    generate1.setMultiple(Boolean.TRUE.toString());
    generate2.setMultiple(Boolean.TRUE.toString());
    configuration.validateEventHandlers();
    List<String> generate = event1.getGenerate();
    assertEquals(2, generate.size());
    assertEquals(generate.get(0), generate1.getName());
    assertEquals(generate.get(1), generate2.getName());
    List<String> handlers = event1.getHandlers();
    assertEquals(1, handlers.size());
    assertEquals(generate2.getName(), handlers.get(0));
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) EventBusElement(com.mvp4g.rebind.config.element.EventBusElement) EventBusWithLookup(com.mvp4g.client.event.EventBusWithLookup) BaseEventBus(com.mvp4g.client.event.BaseEventBus) EventHandlerElement(com.mvp4g.rebind.config.element.EventHandlerElement) ViewElement(com.mvp4g.rebind.config.element.ViewElement) PresenterElement(com.mvp4g.rebind.config.element.PresenterElement) Test(org.junit.Test)

Example 38 with EventElement

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

the class Mvp4gConfigurationTest method testUnknownActivateDeactivate.

@Test
public void testUnknownActivateDeactivate() throws InvalidMvp4gConfigurationException {
    EventBusElement eventBus = new EventBusElement(EventBusWithLookup.class.getName(), BaseEventBus.class.getName(), false);
    configuration.setEventBus(eventBus);
    EventElement event1 = newEvent("event1");
    event1.setActivate(new String[] { "activate" });
    events.add(event1);
    try {
        configuration.validateEventHandlers();
        fail();
    } catch (UnknownConfigurationElementException e) {
        assertTrue(e.getMessage().contains("Encountered a reference to unknown element 'activate'"));
    }
    events.clear();
    EventElement event2 = newEvent("event2");
    event2.setDeactivate(new String[] { "deactivate" });
    events.add(event2);
    try {
        configuration.validateEventHandlers();
        fail();
    } catch (UnknownConfigurationElementException e) {
        assertTrue(e.getMessage().contains("Encountered a reference to unknown element 'deactivate'"));
    }
}
Also used : EventElement(com.mvp4g.rebind.config.element.EventElement) EventBusElement(com.mvp4g.rebind.config.element.EventBusElement) EventBusWithLookup(com.mvp4g.client.event.EventBusWithLookup) BaseEventBus(com.mvp4g.client.event.BaseEventBus) UnknownConfigurationElementException(com.mvp4g.rebind.exception.UnknownConfigurationElementException) Test(org.junit.Test)

Example 39 with EventElement

use of com.mvp4g.rebind.config.element.EventElement 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)

Example 40 with EventElement

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

the class Mvp4gConfigurationTest method testChildModulesBroadcast.

@Test
public void testChildModulesBroadcast() throws InvalidMvp4gConfigurationException {
    oracle.addClass(TestBroadcast.class);
    ChildModuleElement childModule = new ChildModuleElement();
    childModule.setName("child");
    Class<?> c = Modules.BroadcastModule.class;
    oracle.addClass(c);
    childModule.setClassName(c.getCanonicalName());
    childModule.setAutoDisplay("false");
    childModules.add(childModule);
    ChildModuleElement childModule2 = new ChildModuleElement();
    childModule2.setName("child2");
    c = Modules.BroadcastModule2.class;
    oracle.addClass(c);
    childModule2.setClassName(c.getCanonicalName());
    childModule2.setAutoDisplay("false");
    childModules.add(childModule2);
    ChildModuleElement childModule3 = new ChildModuleElement();
    childModule3.setName("child3");
    c = Modules.BroadcastModule2.class;
    childModule3.setClassName(c.getCanonicalName());
    childModule3.setAutoDisplay("false");
    childModules.add(childModule3);
    EventElement event = newEvent("testEvent");
    event.setBroadcastTo(TestBroadcast.class.getCanonicalName());
    event.setForwardToModules(new String[0]);
    events.add(event);
    EventElement event2 = newEvent("testEvent2");
    event2.setBroadcastTo(TestBroadcast2.class.getCanonicalName());
    event2.setForwardToModules(new String[] { "child3" });
    events.add(event2);
    setEventBus();
    configuration.validateChildModules();
    List<String> modules = event.getForwardToModules();
    assertEquals(3, modules.size());
    assertEquals("child", modules.get(0));
    assertEquals("child3", modules.get(1));
    assertEquals("child2", modules.get(2));
    modules = event2.getForwardToModules();
    assertEquals(2, modules.size());
    assertEquals("child3", modules.get(0));
    assertEquals("child2", modules.get(1));
}
Also used : TestBroadcast2(com.mvp4g.rebind.test_tools.annotation.TestBroadcast2) EventElement(com.mvp4g.rebind.config.element.EventElement) TestBroadcast(com.mvp4g.rebind.test_tools.annotation.TestBroadcast) Modules(com.mvp4g.rebind.test_tools.Modules) ChildModuleElement(com.mvp4g.rebind.config.element.ChildModuleElement) Test(org.junit.Test)

Aggregations

EventElement (com.mvp4g.rebind.config.element.EventElement)56 Test (org.junit.Test)55 PresenterElement (com.mvp4g.rebind.config.element.PresenterElement)22 InvalidMvp4gConfigurationException (com.mvp4g.rebind.exception.InvalidMvp4gConfigurationException)18 OneObject (com.mvp4g.rebind.test_tools.OneObject)15 ChildModuleElement (com.mvp4g.rebind.config.element.ChildModuleElement)12 ViewElement (com.mvp4g.rebind.config.element.ViewElement)12 Modules (com.mvp4g.rebind.test_tools.Modules)12 BaseEventBus (com.mvp4g.client.event.BaseEventBus)11 EventBusElement (com.mvp4g.rebind.config.element.EventBusElement)11 EventHandlerElement (com.mvp4g.rebind.config.element.EventHandlerElement)10 EventBusWithLookup (com.mvp4g.client.event.EventBusWithLookup)8 JClassType (com.google.gwt.core.ext.typeinfo.JClassType)6 InvalidTypeException (com.mvp4g.rebind.exception.InvalidTypeException)5 TestBroadcast (com.mvp4g.rebind.test_tools.annotation.TestBroadcast)5 HistoryConverterElement (com.mvp4g.rebind.config.element.HistoryConverterElement)4 TestBroadcast2 (com.mvp4g.rebind.test_tools.annotation.TestBroadcast2)4 EventBusOk (com.mvp4g.rebind.test_tools.annotation.events.EventBusOk)4 SimpleView02 (com.mvp4g.rebind.test_tools.annotation.views.SimpleView02)4 EventBus (com.mvp4g.client.event.EventBus)3