### Question:
Events { public static void removeListener (int threadID, int typeID, EventListener listener) { if (threadID >= NUM_THREADS) { throw new IllegalArgumentException("threadID cannot >= number of threads, but threadID: " + threadID + " >= " + NUM_THREADS); } managers[threadID].removeListener(typeID, listener); } protected  Events(); static void init(); static void queueEvent(EventData event); static void triggerEvent(EventData event); static void update(int threadID, int maxMillis); static void addListener(int threadID, ClientEvents event, EventListener listener); static void addListener(int threadID, int typeID, EventListener listener); static void removeListener(int threadID, int typeID, EventListener listener); static final int UI_THREAD; static final int LOGIC_THREAD; static final int NETWORK_THREAD; }### Answer:
@Test (expected = IllegalArgumentException.class) public void testRemoveListenerWithIllegalThreadID () { Events.removeListener(10, 1, eventData -> { }); }