KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > test > junit > utils > ResultWindowOperator


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 package org.netbeans.test.junit.utils;
20
21 import java.awt.Component JavaDoc;
22 import org.netbeans.jellytools.TopComponentOperator;
23 import org.netbeans.jellytools.actions.Action;
24 import org.netbeans.jellytools.modules.junit.actions.ResultWindowViewAction;
25 import org.netbeans.jemmy.ComponentChooser;
26 import org.netbeans.jemmy.operators.JToggleButtonOperator;
27
28 /**
29  * This Operator operates JUnit Tests Results Window
30  * @author Max Sauer
31  */

32 public class ResultWindowOperator extends TopComponentOperator {
33     
34     private static final Action invokeAction = new ResultWindowViewAction();
35     
36     /**
37      * Creates a new instance of ResultWindowOperator
38      */

39     public ResultWindowOperator() {
40         /* In IDE ResultWindow top component is singleton but in sense of
41          * jellytools, it is not singleton. It can be closed/hidden and
42          * again opened/shown, so it make sense to wait for OutputWindow
43          * top component again.
44          */

45         super(waitTopComponent(null, null, 0, resultsSubchooser));
46     }
47     
48     /**
49      *
50      * Opens JUnit Test Results from main menu Window|JUnit Test Results and
51      * returns ResultWindowOperator.
52      *
53      * @return instance of ResultsWindowOperatorOperator
54      */

55     public static ResultWindowOperator invoke() {
56         invokeAction.perform();
57         return new ResultWindowOperator();
58     }
59     
60     /**
61      * Returns operator of Statistics Panel
62      * @return the operator of statistics panel
63      * (left of the two JUnit Test Result Window panels in a JSplitPane)
64      */

65     public StatisticsPanelOperator getLeftPanelOperator() {
66         return new StatisticsPanelOperator();
67     }
68     
69     /**
70      * Test whether the Results Filter toggle button is enabled
71      * @return true if the button os enabled
72      */

73     public boolean isFilterButtonEnabled() {
74         return (new JToggleButtonOperator(new StatisticsPanelOperator(), 0).isEnabled());
75     }
76     
77     /**
78      * Pushes Filter Button
79      */

80     public void pushFilterButton() {
81         new JToggleButtonOperator(new StatisticsPanelOperator(), 0).push();
82     }
83     
84     /**
85      * SubChooser to determine ResultsWindow TopComponent
86      * Used in constructor.
87      */

88     private static final ComponentChooser resultsSubchooser = new ComponentChooser() {
89         public boolean checkComponent(Component JavaDoc comp) {
90             return comp.getClass().getName().endsWith("ResultWindow"); //NOI18N
91
}
92         
93         public String JavaDoc getDescription() {
94             return "component instanceof org.netbeans.modules.junit.output.ResultWindow";// NOI18N
95
}
96     };
97 }
98
Popular Tags