package org.jooby; import org.jooby.test.ServerFeature; import org.junit.Test; import com.google.inject.Key; import com.google.inject.name.Names; import com.typesafe.config.ConfigFactory; import com.typesafe.config.ConfigValueFactory; public class EnvCallbackWithThreeEnvsFeature extends ServerFeature { { use(ConfigFactory.empty().withValue("application.env", ConfigValueFactory.fromAnyRef("prod"))); Key<String> key = Key.get(String.class, Names.named(("envcallback"))); on("dev", "stage", "prod", () -> { use((env, conf, binder) -> { binder.bind(key).toInstance(env.name()); }); }); get("/", req -> req.require(key)); } @Test public void devCallback() throws Exception { request().get("/").expect("prod"); } }