public void testRemoveIIOReadProgressListenerMultiple() { ImageReader reader = createReader(); TestData data = getTestData().get(0); reader.setInput(data.getInputStream()); Mock mockListener = new Mock(IIOReadProgressListener.class, "Listener1"); IIOReadProgressListener listener = (IIOReadProgressListener) mockListener.proxy(); reader.addIIOReadProgressListener(listener); Mock mockListenerToo = new Mock(IIOReadProgressListener.class, "Listener2"); mockListenerToo.expects(once()).method("imageStarted").with(eq(reader), eq(0)); mockListenerToo.stubs().method("imageProgress").withAnyArguments(); mockListenerToo.expects(once()).method("imageComplete").with(eq(reader)); IIOReadProgressListener listenerToo = (IIOReadProgressListener) mockListenerToo.proxy(); reader.addIIOReadProgressListener(listenerToo); reader.removeIIOReadProgressListener(listener); try { reader.read(0); } catch (IOException e) { fail("Could not read image"); } // Should not have called any methods... mockListener.verify(); mockListenerToo.verify(); }
mockListener.stubs().method("imageStarted").withAnyArguments(); mockListener.stubs().method("imageProgress").withAnyArguments(); mockListener.expects(once()).method("readAborted").with(eq(reader)); mockListener.stubs().method("imageComplete").withAnyArguments(); IIOReadProgressListener listener = (IIOReadProgressListener) mockListener.proxy(); mockListenerToo.stubs().method("imageStarted").withAnyArguments(); mockListenerToo.stubs().method("imageProgress").withAnyArguments(); mockListenerToo.expects(once()).method("readAborted").with(eq(reader)); mockListenerToo.stubs().method("imageComplete").withAnyArguments(); IIOReadProgressListener listenerToo = (IIOReadProgressListener) mockListenerToo.proxy();