blob: 075180702b99b2556d212a584208e28a8530f15b [file] [log] [blame]
package com.google.inject.lifecycle;
import com.google.inject.Guice;
import com.google.inject.Singleton;
import junit.framework.TestCase;
/** @author [email protected] (Dhanji R. Prasanna) */
public class ArbitraryBroadcastTest extends TestCase {
private static int called;
public final void testCallable() {
called = 0;
Lifecycle lifecycle = Guice.createInjector(new LifecycleModule() {
@Override
protected void configureLifecycle() {
bind(Runnable.class).to(AClass.class).in(Singleton.class);
bind(AClass.class).in(Singleton.class);
callable(Runnable.class);
}
}).getInstance(Lifecycle.class);
lifecycle
.broadcast(Runnable.class)
.run();
assertEquals(2, called);
}
public static class AClass implements Runnable {
public void run() {
called++;
}
}
}