performance/test/qa-functional/src/org/netbeans/performance/uml/actions/ScrollExpandedProject.java
author Jesse Glick <jglick@netbeans.org>
Tue, 28 Jun 2011 16:36:36 -0400
changeset 38 7b6e218ca0af
permissions -rw-r--r--
Moved performance/uml out of main.
     1 /*
     2  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
     3  *
     4  * Copyright 1997-2010 Oracle and/or its affiliates. All rights reserved.
     5  *
     6  * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
     7  * Other names may be trademarks of their respective owners.
     8  *
     9  * The contents of this file are subject to the terms of either the GNU
    10  * General Public License Version 2 only ("GPL") or the Common
    11  * Development and Distribution License("CDDL") (collectively, the
    12  * "License"). You may not use this file except in compliance with the
    13  * License. You can obtain a copy of the License at
    14  * http://www.netbeans.org/cddl-gplv2.html
    15  * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
    16  * specific language governing permissions and limitations under the
    17  * License.  When distributing the software, include this License Header
    18  * Notice in each file and include the License file at
    19  * nbbuild/licenses/CDDL-GPL-2-CP.  Oracle designates this
    20  * particular file as subject to the "Classpath" exception as provided
    21  * by Oracle in the GPL Version 2 section of the License file that
    22  * accompanied this code. If applicable, add the following below the
    23  * License Header, with the fields enclosed by brackets [] replaced by
    24  * your own identifying information:
    25  * "Portions Copyrighted [year] [name of copyright owner]"
    26  *
    27  * Contributor(s):
    28  *
    29  * The Original Software is NetBeans. The Initial Developer of the Original
    30  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2007 Sun
    31  * Microsystems, Inc. All Rights Reserved.
    32  *
    33  * If you wish your version of this file to be governed by only the CDDL
    34  * or only the GPL Version 2, indicate your decision by adding
    35  * "[Contributor] elects to include this software in this distribution
    36  * under the [CDDL or GPL Version 2] license." If you do not indicate a
    37  * single choice of license, a recipient has the option to distribute
    38  * your version of this file under either the CDDL, the GPL Version 2 or
    39  * to extend the choice of license to its licensees as provided above.
    40  * However, if you add GPL Version 2 code and therefore, elected the GPL
    41  * Version 2 license, then the option applies only if the new code is
    42  * made subject to such option by the copyright holder.
    43  */
    44 package org.netbeans.performance.uml.actions;
    45 
    46 import org.netbeans.jellytools.ProjectsTabOperator;
    47 import org.netbeans.jellytools.nodes.Node;
    48 import org.netbeans.jemmy.EventTool;
    49 import org.netbeans.jemmy.operators.ComponentOperator;
    50 
    51 import org.netbeans.jemmy.operators.JScrollBarOperator;
    52 import org.netbeans.modules.performance.guitracker.ActionTracker;
    53 import org.netbeans.modules.performance.utilities.CommonUtilities;
    54 import org.netbeans.modules.performance.utilities.PerformanceTestCase;
    55 import org.netbeans.modules.project.ui.test.ProjectSupport;
    56 
    57 /**
    58  * Measure UI-RESPONSIVENES and WINDOW_OPENING.
    59  *
    60  * @author rashid@netbeans.org
    61  *
    62  */
    63 public class ScrollExpandedProject extends PerformanceTestCase {
    64 
    65     private static String testProjectName = "jEdit-Model";
    66     private JScrollBarOperator projectScroll;
    67     private ProjectsTabOperator pto;
    68 
    69     /** Creates a new instance of ScrollExpandedProject*/
    70     public ScrollExpandedProject(String testName) {
    71         super(testName);
    72         expectedTime = 2000;
    73         WAIT_AFTER_OPEN = 4000;
    74     }
    75 
    76     public ScrollExpandedProject(String testName, String performanceDataName) {
    77         super(testName, performanceDataName);
    78         expectedTime = 2000;
    79         WAIT_AFTER_OPEN = 4000;
    80     }
    81 
    82     @Override
    83     public void initialize() {
    84         log(":: initialize");
    85 
    86         ProjectSupport.openProject(CommonUtilities.getProjectsDir() + testProjectName);
    87         Node pNode = new ProjectsTabOperator().getProjectRootNode(testProjectName);
    88         Node nodeModel = new Node(pNode, "Model");
    89         Node nodeDiagrams = new Node(pNode, "Diagrams");
    90         nodeModel.expand();
    91         nodeDiagrams.select();
    92         nodeDiagrams.expand();
    93         new EventTool().waitNoEvent(1000);
    94         pto = new ProjectsTabOperator();
    95         projectScroll = new JScrollBarOperator(pto, 0);
    96         MY_START_EVENT = ActionTracker.TRACK_OPEN_BEFORE_TRACE_MESSAGE;
    97     }
    98 
    99     public void prepare() {
   100         log(":: prepare");
   101         projectScroll.scrollToMinimum();
   102     }
   103 
   104     public ComponentOperator open() {
   105         log("::open");
   106         projectScroll.scrollToMaximum();
   107         return null;
   108     }
   109 
   110     @Override
   111     protected void shutdown() {
   112         log("::shutdown");
   113         ProjectSupport.closeProject(testProjectName);
   114     }
   115 
   116     @Override
   117     public void close() {
   118         log("::close");
   119     }
   120 
   121 //    public static void main(java.lang.String[] args) {
   122 //        junit.textui.TestRunner.run(new ScrollExpandedProject("measureTime"));
   123 //    }
   124 }