Add subtype inclusion for event handlers
This commit is contained in:
		| @@ -1,6 +1,6 @@ | ||||
| package dev.kske.eventbus; | ||||
|  | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.*; | ||||
|  | ||||
| import org.junit.jupiter.api.*; | ||||
|  | ||||
| @@ -21,18 +21,29 @@ class EventBusTest implements EventListener { | ||||
|  | ||||
| 	@Test | ||||
| 	void testDispatch() { | ||||
| 		EventBus.getInstance().dispatch(new SimpleEventSub()); | ||||
| 		EventBus.getInstance().dispatch(new SimpleEvent()); | ||||
| 	} | ||||
|  | ||||
| 	@Event(priority = 50) | ||||
| 	private void onSimpleEventSecond(SimpleEvent event) { | ||||
| 	@Event( | ||||
| 		eventType = SimpleEvent.class, | ||||
| 		includeSubtypes = true, | ||||
| 		priority = 200 | ||||
| 	) | ||||
| 	private void onSimpleEventFirst() { | ||||
| 		++hits; | ||||
| 		assertEquals(2, hits); | ||||
| 		assertTrue(hits == 1 || hits == 2); | ||||
| 	} | ||||
|  | ||||
| 	@Event(eventType = SimpleEvent.class, priority = 150) | ||||
| 	private void onSimpleEventFirst() { | ||||
| 	private void onSimpleEventSecond() { | ||||
| 		++hits; | ||||
| 		assertEquals(1, hits); | ||||
| 		assertEquals(3, hits); | ||||
| 	} | ||||
|  | ||||
| 	@Event(priority = 50) | ||||
| 	private void onSimpleEventThird(SimpleEvent event) { | ||||
| 		++hits; | ||||
| 		assertEquals(4, hits); | ||||
| 	} | ||||
| } | ||||
|   | ||||
							
								
								
									
										9
									
								
								src/test/java/dev/kske/eventbus/SimpleEventSub.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/test/java/dev/kske/eventbus/SimpleEventSub.java
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| package dev.kske.eventbus; | ||||
|  | ||||
| /** | ||||
|  * Subclass of {@link SimpleEvent} for testing purposes. | ||||
|  * | ||||
|  * @author Kai S. K. Engelbart | ||||
|  * @since 0.0.4 | ||||
|  */ | ||||
| public class SimpleEventSub extends SimpleEvent {} | ||||
		Reference in New Issue
	
	Block a user