- dialog.doDialog("HELP");
- Assert.assertTrue(dialog.runner.firstRunWasCalled);
- Assert.assertFalse(ok.wasRun);
- Assert.assertEquals(ineed.returned, ooh);
- Assert.assertEquals(dialog.runner.responses.size(), 3);
+ actions = dialog.doDialog("HELP");
+// Assert.assertTrue(dialog.runner.firstRunWasCalled);
+ assertFalse(actions.contains(ok));//ok.wasRun);
+ assertEquals(ineed.returnValue, ooh);
+ assertEquals(actions/*dialog.runner.responses*/.size(), 3);
+
+ // TODO: test prepend and chained execution of tasks for a response.
+// Assert.assertFalse(dialog.runner.isRegistered(befok));
+ dialog.runner.addResponse("OK", befok); //setFirstResponse(befok);
+
+ assertTrue(isRegistered(dialog.runner, befok));
+ assertTrue(isRegistered(dialog.runner, ok));
+
+// dialog.runner.resetResponses();
+
+ actions = dialog.doDialog("OK");
+ assertTrue(actions.contains(befok));//befok.wasRun);
+ assertTrue(actions.contains(ok)); //ok.wasRun);
+ assertEquals(actions/*dialog.runner.responses*/.size(), 3);
+ }
+
+ private boolean isRegistered(DialogRunnerI runner, RunResponse action)
+ {
+ Map<Object, Collection<Object>> actions = (Map<Object, Collection<Object>>) PA.getValue(runner, "callbacks");
+ Collection<Object> registered = actions.get(action.getTrigger());
+ return registered != null && registered.contains(action);