01: package com.canoo.webtest.extension.applet.jemmy;
02:
03: import com.canoo.webtest.extension.applet.AppletPluginResults;
04: import com.canoo.webtest.extension.applet.runner.Context;
05: import com.canoo.webtest.self.TestBlock;
06: import com.canoo.webtest.self.ThrowAssert;
07: import junit.framework.TestCase;
08: import org.netbeans.jemmy.JemmyException;
09: import org.netbeans.jemmy.JemmyProperties;
10: import org.netbeans.jemmy.TestOut;
11: import org.netbeans.jemmy.Timeouts;
12:
13: import java.net.MalformedURLException;
14: import java.net.URL;
15:
16: /**
17: * @author Denis N. Antonioli
18: */
19: public class ContextOperatorTest extends TestCase {
20: private ContextOperator fContextOperator;
21: private Context fContext;
22:
23: protected void setUp() throws Exception {
24: fContext = new Context(new AppletPluginResults());
25: fContextOperator = new ContextOperator(fContext);
26: }
27:
28: public void testGetContext() {
29: assertEquals(fContext, fContextOperator.getContext());
30: }
31:
32: public void testOutputAccessors() {
33: assertNotNull(fContextOperator.getOutput());
34: final TestOut newOutput = new TestOut();
35: fContextOperator.setOutput(newOutput);
36: assertSame(newOutput, fContextOperator.getOutput());
37: }
38:
39: public void testTimeoutAccessors() {
40: assertSame(JemmyProperties.getCurrentTimeouts(),
41: fContextOperator.getTimeouts());
42: Timeouts newTimeouts = new Timeouts();
43: fContextOperator.setTimeouts(newTimeouts);
44: assertSame(newTimeouts, fContextOperator.getTimeouts());
45: }
46:
47: public void testWaitAnyDocument() throws MalformedURLException {
48:
49: final Timeouts timeouts = new Timeouts();
50: timeouts.setTimeout(ContextOperator.WAIT_TIMEOUT_NAME, 1);
51:
52: fContextOperator.setTimeouts(timeouts);
53: ThrowAssert.assertThrows(JemmyException.class, new TestBlock() {
54: public void call() throws Exception {
55: fContextOperator.waitShowDocument();
56: }
57: });
58: fContext.showDocument(new URL("http://webtest.canoo.com/"));
59: fContextOperator.waitShowDocument();
60: }
61:
62: public void testWaitDocument() throws MalformedURLException {
63: final URL url = new URL("http://webtest.canoo.com/");
64:
65: final Timeouts timeouts = new Timeouts();
66: timeouts.setTimeout(ContextOperator.WAIT_TIMEOUT_NAME, 1);
67:
68: fContextOperator.setTimeouts(timeouts);
69: ThrowAssert.assertThrows(JemmyException.class, new TestBlock() {
70: public void call() throws Exception {
71: fContextOperator.waitShowDocument(url);
72: }
73: });
74: fContext.showDocument(url);
75: fContextOperator.waitShowDocument(url);
76: }
77: }
|