Update of /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder In directory sc8-pr-cvs1:/tmp/cvs-serv10014/test/net/sourceforge/marathon/recorder Modified Files: ContextMenuTest.java RecordableMock.java RecorderMock.java RecordingEventListenerGetsEventsTest.java RecordingEventListenerTest.java RecordingTagsTest.java ScriptRecorderTest.java TagInserterNestsWindowsTest.java TagInserterTest.java Added Files: ScriptListenerMock.java Log Message: remove Player, et al --- NEW FILE: ScriptListenerMock.java --- //$Id: ScriptListenerMock.java,v 1.1 2003/02/09 00:05:33 cowboyd Exp $ package net.sourceforge.marathon.recorder; public class ScriptListenerMock implements ScriptListener { public String script; public void setScript(String script) { this.script = script; } } Index: ContextMenuTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/ContextMenuTest.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** ContextMenuTest.java 19 Jan 2003 18:01:53 -0000 1.13 --- ContextMenuTest.java 9 Feb 2003 00:05:32 -0000 1.14 *************** *** 12,16 **** import net.sourceforge.marathon.MessageList; import net.sourceforge.marathon.TestDialog; ! import net.sourceforge.marathon.api.Recordable; import javax.swing.JMenuItem; --- 12,16 ---- import net.sourceforge.marathon.MessageList; import net.sourceforge.marathon.TestDialog; ! import net.sourceforge.marathon.api.ScriptElement; import javax.swing.JMenuItem; *************** *** 55,59 **** _menu = new ContextMenu(new RecorderMock() { ! public void record(Recordable recordable) { _tags.add(recordable.toPython("")); } --- 55,59 ---- _menu = new ContextMenu(new RecorderMock() { ! public void record(ScriptElement recordable) { _tags.add(recordable.toPython("")); } Index: RecordableMock.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/RecordableMock.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** RecordableMock.java 19 Jan 2003 18:02:42 -0000 1.1 --- RecordableMock.java 9 Feb 2003 00:05:33 -0000 1.2 *************** *** 2,10 **** package net.sourceforge.marathon.recorder; ! import net.sourceforge.marathon.api.Recordable; import net.sourceforge.marathon.component.ComponentId; import net.sourceforge.marathon.component.WindowId; ! public class RecordableMock implements Recordable { private String _name; --- 2,10 ---- package net.sourceforge.marathon.recorder; ! import net.sourceforge.marathon.api.ScriptElement; import net.sourceforge.marathon.component.ComponentId; import net.sourceforge.marathon.component.WindowId; ! public class RecordableMock implements ScriptElement { private String _name; Index: RecorderMock.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/RecorderMock.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** RecorderMock.java 19 Jan 2003 18:02:43 -0000 1.1 --- RecorderMock.java 9 Feb 2003 00:05:33 -0000 1.2 *************** *** 5,9 **** import net.sourceforge.marathon.action.AbstractMarathonAction; import net.sourceforge.marathon.action.KeyStrokeAction; ! import net.sourceforge.marathon.api.Recordable; import java.util.List; --- 5,9 ---- import net.sourceforge.marathon.action.AbstractMarathonAction; import net.sourceforge.marathon.action.KeyStrokeAction; ! import net.sourceforge.marathon.api.ScriptElement; import java.util.List; *************** *** 18,22 **** private int _index = 0; ! public void record(Recordable recordable) { _builtTags.add(recordable); } --- 18,22 ---- private int _index = 0; ! public void record(ScriptElement recordable) { _builtTags.add(recordable); } Index: RecordingEventListenerGetsEventsTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/RecordingEventListenerGetsEventsTest.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** RecordingEventListenerGetsEventsTest.java 19 Jan 2003 18:02:17 -0000 1.9 --- RecordingEventListenerGetsEventsTest.java 9 Feb 2003 00:05:33 -0000 1.10 *************** *** 1,2 **** --- 1,3 ---- + //$Id$ package net.sourceforge.marathon.recorder; Index: RecordingEventListenerTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/RecordingEventListenerTest.java,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** RecordingEventListenerTest.java 19 Jan 2003 18:02:26 -0000 1.10 --- RecordingEventListenerTest.java 9 Feb 2003 00:05:33 -0000 1.11 *************** *** 5,9 **** import net.sourceforge.marathon.action.Click; import net.sourceforge.marathon.action.Select; ! import net.sourceforge.marathon.api.Recordable; import net.sourceforge.marathon.component.*; --- 5,9 ---- import net.sourceforge.marathon.action.Click; import net.sourceforge.marathon.action.Select; ! import net.sourceforge.marathon.api.ScriptElement; import net.sourceforge.marathon.component.*; *************** *** 163,167 **** final StringBuffer titleBuffer = new StringBuffer(); RecordingEventListener listener = new RecordingEventListener(new RecorderMock() { ! public void record(Recordable recordable) { titleBuffer.append(recordable.getWindowId().getTitle()); } --- 163,167 ---- final StringBuffer titleBuffer = new StringBuffer(); RecordingEventListener listener = new RecordingEventListener(new RecorderMock() { ! public void record(ScriptElement recordable) { titleBuffer.append(recordable.getWindowId().getTitle()); } Index: RecordingTagsTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/RecordingTagsTest.java,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** RecordingTagsTest.java 19 Jan 2003 18:02:36 -0000 1.12 --- RecordingTagsTest.java 9 Feb 2003 00:05:33 -0000 1.13 *************** *** 4,13 **** import junit.framework.TestCase; import net.sourceforge.marathon.TestDialog; ! import net.sourceforge.marathon.component.ComponentId; ! import net.sourceforge.marathon.component.ComponentResolver; ! import net.sourceforge.marathon.component.VariableResolver; import net.sourceforge.marathon.action.Click; import net.sourceforge.marathon.action.Select; ! import net.sourceforge.marathon.action.AbstractMarathonAction; /** --- 4,13 ---- import junit.framework.TestCase; import net.sourceforge.marathon.TestDialog; ! import net.sourceforge.marathon.action.AbstractMarathonAction; import net.sourceforge.marathon.action.Click; import net.sourceforge.marathon.action.Select; ! import net.sourceforge.marathon.component.ComponentId; ! import net.sourceforge.marathon.component.VariableResolver; ! import net.sourceforge.marathon.component.ComponentResolver; /** *************** *** 23,151 **** */ public class RecordingTagsTest extends TestCase { ! private TestDialog _dialog; ! private ScriptRecorder _recorder; private static final ComponentId BUTTON_ID = new ComponentId("button.name"); public RecordingTagsTest(String name) { ! super(name); ! } ! ! protected void setUp() throws Exception { ! WindowMonitor.getInstance(); ! _recorder = new ScriptRecorder(); ! _recorder.startListening(new ComponentResolver()); ! _dialog = new TestDialog(getName()); ! } ! public void runBare() throws Throwable { ! try { ! super.runBare(); ! } catch (Throwable throwable) { ! System.out.println(getName() + " failed - messages : \n" + _recorder.getRecordingEventListener().getLog()); ! throw throwable; ! } ! } ! protected void tearDown() throws Exception { ! _dialog.dispose(); ! _dialog = null; ! _recorder.stopListening(); ! } ! public void testClickAButton() throws Exception { ! _dialog.addButton("button.name", "some text"); ! _dialog.show(); ! sleep(); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tclick('button.name')\n"); ! } ! public void testDoubleClickAButton() throws Exception { ! _dialog.addButton("button.name", "some text"); ! _dialog.show(); ! sleep(); ! new Click(BUTTON_ID, 2).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tdoubleclick('button.name')\n"); ! } ! public void testSelectATextField() throws Exception { ! _dialog.addTextField("text.name", "foo"); ! _dialog.addButton("button.name", "bar"); ! _dialog.show(); ! sleep(); ! new Select(new ComponentId("text.name"), "abc").play(_dialog.getResolver(), new VariableResolver()); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tselect('text.name', 'abc')\n" + ! "\tclick('button.name')\n"); ! } ! public void testSelectAComboBox() throws Exception { ! _dialog.addComboBox("combo.name", new String[]{"a", "b", "c"}); ! _dialog.addButton("button.name", "bar"); ! _dialog.show(); ! sleep(); ! new Select(new ComponentId("combo.name"), "c").play(_dialog.getResolver(), new VariableResolver()); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertEquals("c", _dialog.getComboBox().getSelectedItem()); ! assertRecorded("\tselect('combo.name', 'c')\n" + ! "\tclick('button.name')\n"); ! } ! public void testSelectInsideATable () throws Exception { ! showTable(); ! play(new Select(new ComponentId("table.name", "col1,1"), "NEW VALUE")); ! play(new Click(new ComponentId("table.name", "col2,1"))); ! assertEquals ("NEW VALUE",_dialog.getTable().getValueAt(1,0)); ! assertRecorded ("\tselect('table.name', 'NEW VALUE', 'col1,1')\n" + ! "\tclick('table.name', 'col2,1')\n"); ! } ! public void testClickInsideATable() throws Exception { ! showTable(); ! play(new Click(new ComponentId("table.name", "col1,1"))); ! assertRecorded ("\tclick('table.name', 'col1,1')\n"); ! } ! public void testDoubleClickInsideATable() throws Exception { ! showTable(); ! play(new Click(new ComponentId("table.name", "col1,1"), 2)); ! assertRecorded("\tdoubleclick('table.name', 'col1,1')\n"); ! } ! private void assertRecorded(String recorded) { ! assertEquals("\twindow('" + getName() + "')\n" + ! recorded + ! "\tclose()\n", ! _recorder.getScript()); ! } ! private void play(AbstractMarathonAction tag) { ! tag.play (_dialog.getResolver(), new VariableResolver()); ! } ! private void sleep() throws InterruptedException { ! Thread.sleep (10); ! } ! private void showTable() throws InterruptedException { ! _dialog.addTable(); ! _dialog.show (); ! sleep(); ! } } --- 23,153 ---- */ public class RecordingTagsTest extends TestCase { ! private TestDialog _dialog; ! private ScriptRecorder _recorder; private static final ComponentId BUTTON_ID = new ComponentId("button.name"); + private RecordingEventListener _listener; + private ScriptListenerMock _scriptListener; public RecordingTagsTest(String name) { ! super(name); ! } ! protected void setUp() throws Exception { ! WindowMonitor.getInstance(); ! _scriptListener = new ScriptListenerMock(); ! _recorder = new ScriptRecorder(_scriptListener); ! _dialog = new TestDialog(getName()); ! _listener = new RecordingEventListener(_recorder); ! _listener.startListening(new ComponentResolver()); ! } ! public void runBare() throws Throwable { ! try { ! super.runBare(); ! } catch (Throwable throwable) { ! throw throwable; ! } ! } ! protected void tearDown() throws Exception { ! _listener.stopListening(); ! _dialog.dispose(); ! _dialog = null; ! } ! public void testClickAButton() throws Exception { ! _dialog.addButton("button.name", "some text"); ! _dialog.show(); ! sleep(); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tclick('button.name')\n"); ! } ! public void testDoubleClickAButton() throws Exception { ! _dialog.addButton("button.name", "some text"); ! _dialog.show(); ! sleep(); ! new Click(BUTTON_ID, 2).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tdoubleclick('button.name')\n"); ! } ! public void testSelectATextField() throws Exception { ! _dialog.addTextField("text.name", "foo"); ! _dialog.addButton("button.name", "bar"); ! _dialog.show(); ! sleep(); ! new Select(new ComponentId("text.name"), "abc").play(_dialog.getResolver(), new VariableResolver()); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertRecorded("\tselect('text.name', 'abc')\n" + ! "\tclick('button.name')\n"); ! } ! public void testSelectAComboBox() throws Exception { ! _dialog.addComboBox("combo.name", new String[]{"a", "b", "c"}); ! _dialog.addButton("button.name", "bar"); ! _dialog.show(); ! sleep(); ! new Select(new ComponentId("combo.name"), "c").play(_dialog.getResolver(), new VariableResolver()); ! new Click(BUTTON_ID).play(_dialog.getResolver(), new VariableResolver()); ! assertEquals("c", _dialog.getComboBox().getSelectedItem()); ! assertRecorded("\tselect('combo.name', 'c')\n" + ! "\tclick('button.name')\n"); ! } ! public void testSelectInsideATable() throws Exception { ! showTable(); ! play(new Select(new ComponentId("table.name", "col1,1"), "NEW VALUE")); ! play(new Click(new ComponentId("table.name", "col2,1"))); ! assertEquals("NEW VALUE", _dialog.getTable().getValueAt(1, 0)); ! assertRecorded("\tselect('table.name', 'NEW VALUE', 'col1,1')\n" + ! "\tclick('table.name', 'col2,1')\n"); ! } ! public void testClickInsideATable() throws Exception { ! showTable(); ! play(new Click(new ComponentId("table.name", "col1,1"))); ! assertRecorded("\tclick('table.name', 'col1,1')\n"); ! } ! public void testDoubleClickInsideATable() throws Exception { ! showTable(); ! play(new Click(new ComponentId("table.name", "col1,1"), 2)); ! assertRecorded("\tdoubleclick('table.name', 'col1,1')\n"); ! } ! private void assertRecorded(String recorded) { ! assertEquals("\twindow('" + getName() + "')\n" + ! recorded + ! "\tclose()\n", ! _scriptListener.script); ! } ! private void play(AbstractMarathonAction action) { ! action.play(_dialog.getResolver(), new VariableResolver()); ! } ! private void sleep() throws InterruptedException { ! Thread.sleep(10); ! } ! private void showTable() throws InterruptedException { ! _dialog.addTable(); ! _dialog.show(); ! sleep(); ! } } Index: ScriptRecorderTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/ScriptRecorderTest.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ScriptRecorderTest.java 8 Feb 2003 18:31:47 -0000 1.1 --- ScriptRecorderTest.java 9 Feb 2003 00:05:33 -0000 1.2 *************** *** 2,8 **** import junit.framework.TestCase; ! import net.sourceforge.marathon.TestDialog; ! import net.sourceforge.marathon.api.Recordable; ! import net.sourceforge.marathon.component.*; import javax.swing.*; --- 2,9 ---- import junit.framework.TestCase; ! import net.sourceforge.marathon.api.ScriptElement; ! import net.sourceforge.marathon.component.ComponentId; ! import net.sourceforge.marathon.component.MButton; ! import net.sourceforge.marathon.component.WindowId; import javax.swing.*; *************** *** 10,13 **** --- 11,15 ---- public class ScriptRecorderTest extends TestCase { private ScriptRecorder _recorder; + private ScriptListenerMock _listener; public ScriptRecorderTest(String name) { *************** *** 17,27 **** protected void setUp() throws Exception { super.setUp(); ! _recorder = new ScriptRecorder(); } protected void tearDown() throws Exception { - if (_recorder.isRecording()) { - _recorder.stopListening(); - } super.tearDown(); } --- 19,27 ---- protected void setUp() throws Exception { super.setUp(); ! _listener = new ScriptListenerMock(); ! _recorder = new ScriptRecorder(_listener); } protected void tearDown() throws Exception { super.tearDown(); } *************** *** 49,55 **** } ! private Recordable recordable(final String component, final String window, final String python) { ! return new Recordable() { public String toPython(String indent) { return indent + python; --- 49,55 ---- } ! private ScriptElement recordable(final String component, final String window, final String python) { ! return new ScriptElement() { public String toPython(String indent) { return indent + python; *************** *** 97,122 **** } ! public void testRecordTwice() { ! TestDialog dialog = new TestDialog(getName()); ! dialog.addButton("foo", "foo"); ! ! _recorder.startListening(new ComponentResolver()); ! dialog.show(); ! final MComponent component = new MComponent(dialog.getButton(), "foo"); ! _recorder.record(new RecordedClick(component.getComponentId(),new WindowId(getName()),1)); ! dialog.dispose(); ! _recorder.stopListening(); ! ! _recorder.startListening(new ComponentResolver()); ! ! assertEquals("", _recorder.getScript()); ! ! dialog.show(); ! dialog.dispose(); ! _recorder.stopListening(); ! } ! ! private void assertScriptEquals(String xml) { ! assertEquals(xml, _recorder.getScript()); } --- 97,102 ---- } ! private void assertScriptEquals(String script) { ! assertEquals(script, _listener.script); } *************** *** 127,139 **** } - public void testPluggableComponentResolver() { - final ComponentResolver resolver = new ComponentResolver(); - ScriptRecorder recorder = new ScriptRecorder(); - recorder.startListening(resolver); - try { - assertSame(resolver, recorder.getRecordingEventListener().getResolver()); - } finally { - recorder.stopListening(); - } - } } --- 107,109 ---- Index: TagInserterNestsWindowsTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/TagInserterNestsWindowsTest.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TagInserterNestsWindowsTest.java 19 Jan 2003 18:02:40 -0000 1.4 --- TagInserterNestsWindowsTest.java 9 Feb 2003 00:05:33 -0000 1.5 *************** *** 6,10 **** import net.sourceforge.marathon.recorder.WindowAction; import net.sourceforge.marathon.component.WindowId; ! import net.sourceforge.marathon.api.Recordable; public class TagInserterNestsWindowsTest extends TestCase { --- 6,10 ---- import net.sourceforge.marathon.recorder.WindowAction; import net.sourceforge.marathon.component.WindowId; ! import net.sourceforge.marathon.api.ScriptElement; public class TagInserterNestsWindowsTest extends TestCase { *************** *** 29,33 **** public void testNestedWindow() { ! Recordable child = null; _inserter.add(w1 = window("window1"), mock()); --- 29,33 ---- public void testNestedWindow() { ! ScriptElement child = null; _inserter.add(w1 = window("window1"), mock()); Index: TagInserterTest.java =================================================================== RCS file: /cvsroot/marathonman/marathon/test/net/sourceforge/marathon/recorder/TagInserterTest.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** TagInserterTest.java 19 Jan 2003 18:02:40 -0000 1.9 --- TagInserterTest.java 9 Feb 2003 00:05:33 -0000 1.10 *************** *** 3,8 **** import net.sourceforge.marathon.action.*; import net.sourceforge.marathon.component.ComponentId; ! import net.sourceforge.marathon.api.Recordable; ! import net.sourceforge.marathon.api.RecordableClick; import junit.framework.TestCase; --- 3,8 ---- import net.sourceforge.marathon.action.*; import net.sourceforge.marathon.component.ComponentId; ! import net.sourceforge.marathon.api.ScriptElement; ! import net.sourceforge.marathon.api.ClickElement; import junit.framework.TestCase; *************** *** 53,58 **** public void testDeleteClicksWithLessCount() { ! RecordableClick bar = null; ! RecordableClick foo3 = null; _inserter.add(_window, bar = new RecordedClick(new ComponentId("bar"),_window.getWindowId(),1)); _inserter.add(_window, fooClick(1)); --- 53,58 ---- public void testDeleteClicksWithLessCount() { ! ClickElement bar = null; ! ClickElement foo3 = null; _inserter.add(_window, bar = new RecordedClick(new ComponentId("bar"),_window.getWindowId(),1)); _inserter.add(_window, fooClick(1)); *************** *** 66,70 **** public void testSelectTagWithSameName() { ! Recordable tag = null; _inserter.add(_window, fooSelect("foo")); _inserter.add(_window, tag = fooSelect("bar")); --- 66,70 ---- public void testSelectTagWithSameName() { ! ScriptElement tag = null; _inserter.add(_window, fooSelect("foo")); _inserter.add(_window, tag = fooSelect("bar")); *************** *** 75,79 **** public void testRemoveSeveralSteps() { ! Recordable tag = null; _inserter.add(_window, fooSelect("bar")); _inserter.add(_window, fooClick()); --- 75,79 ---- public void testRemoveSeveralSteps() { ! ScriptElement tag = null; _inserter.add(_window, fooSelect("bar")); _inserter.add(_window, fooClick()); |