package ${project_package}; import griffon.core.artifact.ArtifactManager; import griffon.core.test.GriffonUnitRule; import griffon.core.test.TestFor; import org.junit.Rule; import org.junit.Test; import javax.inject.Inject; import static org.awaitility.Awaitility.await; import static java.util.concurrent.TimeUnit.SECONDS; import static org.junit.Assert.assertEquals; @TestFor(${project_class_name}Controller.class) public class ${project_class_name}ControllerTest { static { System.setProperty("org.slf4j.simpleLogger.defaultLogLevel", "trace"); } @Inject private ArtifactManager artifactManager; private ${project_class_name}Controller controller; @Rule public final GriffonUnitRule griffon = new GriffonUnitRule(); @Test public void executeClickAction() { // given: ${project_class_name}Model model = artifactManager.newInstance(${project_class_name}Model.class); controller.setModel(model); // when: controller.invokeAction("click"); await().atMost(2, SECONDS); // then: assertEquals(1, model.getClickCount()); } }