|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2003 Sun * Microsystems, Inc. All Rights Reserved. */ package complete; import complete.GenericStub.GenericNode; import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Enumeration; import junit.framework.AssertionFailedError; import org.netbeans.jellytools.NbDialogOperator; import org.netbeans.jellytools.NewWizardOperator; import org.netbeans.jellytools.actions.Action; import org.netbeans.jellytools.actions.CustomizeAction; import org.netbeans.jellytools.modules.javacvs.CVSClientCustomizerDialogOperator; import org.netbeans.jellytools.modules.javacvs.actions.JCVSMountAction; import org.netbeans.jellytools.modules.javacvs.wizard.*; import org.netbeans.jellytools.nodes.Node; import org.netbeans.jellytools.properties.ComboBoxProperty; import org.netbeans.jellytools.properties.PropertySheetOperator; import org.netbeans.jemmy.operators.JCheckBoxOperator; import org.netbeans.jemmy.operators.JTableOperator; import org.netbeans.test.oo.gui.jelly.javacvs.AddDialog; import org.netbeans.test.oo.gui.jelly.javacvs.CheckoutDialog; import org.netbeans.test.oo.gui.jelly.javacvs.CommitDialog; import org.netbeans.test.oo.gui.jelly.javacvs.TagDialog; import org.openide.filesystems.FileSystem; import org.openide.filesystems.Repository; import util.History; public abstract class JCVSStub extends GenericStub { public JCVSStub(String testName) { super(testName); nRootPrefix = "CVS "; } static FileSystem sfs = null; protected FileSystem getFileSystem () { return sfs; } protected void setFileSystem (FileSystem fs) { sfs = fs; } protected void prepareServer (String dir) { } protected static String roothistoryshort = null; protected void setUp() throws Exception { super.setUp (); if (!"configure".equals (getName ())) { history.switchToJCVS(); history.setTimeout(30); root.setHistoryShort(roothistoryshort); } } protected void findFS () { if (!GenericStub.DEBUG) { super.findFS (); return; } String normalizedClient = (nRootPrefix + clientDirectory.replace ('\\', '/')).toLowerCase (); Enumeration e = Repository.getDefault().getFileSystems(); while (e.hasMoreElements()) { FileSystem f = (FileSystem) e.nextElement(); info.println("Is it?: " + f.getDisplayName()); String path = f.getDisplayName ().replace ('\\', '/').toLowerCase(); if (path.indexOf (normalizedClient) >= 0) { info.println("Yes"); setFileSystem(f); roothistoryshort = f.getDisplayName ().substring(f.getDisplayName ().lastIndexOf ('/') + 1); return; } } new AssertionFailedError ("Filesystem not found: Filesystem: " + normalizedClient); } protected void mountVCSFileSystem () { new Action ("Versioning|Mount Version Control", null).performMenu (); // workaround for issue #31026 new Action ("Tools", null).performMenu (); // workaround for issue #31026 sleep (10000); new Action ("Versioning|Mount Version Control", null).performMenu (); // workaround for issue #31026 new Action ("Tools", null).performMenu (); // workaround for issue #31026 new JCVSMountAction().perform(); WorkingDirectoryStepOperator wdso = new WorkingDirectoryStepOperator (); wdso.verify (); txtSetTypeText (wdso.cboWorkingDirectory().getTextField(), clientDirectory); wdso.next (); CVSConnectionMethodStepOperator ccmsto = new CVSConnectionMethodStepOperator (); ccmsto.verify (); ccmsto.passwordServer(); // ccmsto.setServerName("qa-w2k-s1"); // ccmsto.setUserName("test"); // txtSetTypeText (ccmsto.txtRepository(), "d:\\apps\\vcs\\cvs\\repository"); // ccmsto.txtCVSROOT().waitText(":pserver:test@qa-w2k-s1:d:\\apps\\vcs\\cvs\\repository"); ccmsto.setServerName("mercury"); ccmsto.setUserName("test"); txtSetTypeText (ccmsto.txtRepository(), "/cvsroot"); ccmsto.txtCVSROOT().waitText(":pserver:test@mercury:/cvsroot"); ccmsto.next (); CVSClientStepOperator ccso = new CVSClientStepOperator (); ccso.verify (); ccso.useBuiltInCVSClient(); ccso.next (); CVSLoginStepOperator clso = new CVSLoginStepOperator (); clso.verify (); clso.txtPassword().clearText (); clso.txtPassword().typeText ("test"); clso.login(); clso.txtLogin().waitText ("Login successful."); clso.next (); InitialCheckoutStepOperator icso = new InitialCheckoutStepOperator (); icso.checkCheckOutACopyOfTheRepositoryFilesToYourWorkingDirectory (false); icso.finish (); } protected void prepareClient () { history = new History (getFileSystem(), info); history.switchToJCVS(); history.setTimeout(30); root.setHistoryShort ("client"); closeAllVCSWindows(); closeAllProperties(); root.jcvsNode().properties(); PropertySheetOperator pso = new PropertySheetOperator (root.node ()); ComboBoxProperty cbp = new ComboBoxProperty (pso, "User Interface Mode"); cbp.setValue("GUI Style"); sleep (1000); info.println ("User Interface Mode property value 1: " + cbp.getValue ()); closeAllProperties(); // stabilization root.jcvsNode().properties(); pso = new PropertySheetOperator (root.node ()); cbp = new ComboBoxProperty (pso, "User Interface Mode"); info.println ("User Interface Mode property value 2: " + cbp.getValue ()); cbp.setValue("GUI Style"); sleep (1000); info.println ("User Interface Mode property value 3: " + cbp.getValue ()); closeAllProperties(); history.setTimeout(120); checkout(root, "test/jcvs"); history.setTimeout(30); GenericNode test = new GenericNode (root, "test"); GenericNode jcvs = new GenericNode (test, "jcvs"); jcvs.waitStatus (null); jcvs.jcvsNode().select (); roothistoryshort = new SimpleDateFormat ("yyMMddHHmmssSS").format (new Date (System.currentTimeMillis())); GenericNode cur = new GenericNode (jcvs, roothistoryshort); cur.mkdirs(); refresh (jcvs); cur.waitStatus("Local"); addDirectory (cur); new CustomizeAction ().performPopup(root.jcvsNode()); CVSClientCustomizerDialogOperator cus = new CVSClientCustomizerDialogOperator (); new Node (cus.treeSelectRelativeMountPoint(), "test|jcvs|" + roothistoryshort).select (); cus.txtRelativeMountPoint().waitText ("test" + File.separator + "jcvs" + File.separator + roothistoryshort); cus.ok (); cus.waitClosed(); closeAllVCSWindows(); for (int a = 0; a < 30; a ++) { if (getFileSystem().getDisplayName().endsWith(roothistoryshort)) { root = new GenericNode (null, getFileSystem ().getDisplayName ().substring(nRootPrefix.length())); root.setHistoryShort(roothistoryshort); root.jcvsNode ().select (); return; } sleep (1000); } throw new AssertionFailedError ("New root not found: Root: " + roothistoryshort); } protected void refresh (GenericNode node) { node.jcvsNode ().expand (); // workaround for issue #29598 node.jcvsNode().jCVSRefresh(); node.waitHistoryShort ("status -l"); } protected void refreshRecursively (GenericNode node) { node.jcvsNode ().expand (); // workaround for issue #29598 node.jcvsNode ().jCVSRefreshRecursively(); node.waitHistoryShort ("status"); } protected void addDirectory (GenericNode node) { node.jcvsNode ().expand (); // workaround for issue #29598 node.jcvsNode ().jCVSAdd(); AddDialog add = new AddDialog (); add.runCommand (); add.waitClosed(); node.waitHistoryShort ("add"); node.waitStatus (null); } protected void checkout (GenericNode node, String what) { node.jcvsNode ().expand (); // workaround for issue #29598 node.jcvsNode ().jCVSCheckOut(); CheckoutDialog cod = new CheckoutDialog (); cod.txtCheckout().clearText(); cod.txtCheckout().typeText(what); cod.runCommand(); cod.waitClosed(); node.waitHistoryShort ("checkout " + what); } protected void addFile (GenericNode node, String desc) { node.cvsNode ().cVSAdd(); AddDialog add = new AddDialog (); if (desc != null) { add.txtMessage().setCaretPosition(0); add.txtMessage().typeText(desc); } add.runCommand (); add.waitClosed(); if (desc != null) { if (desc.length () > 9) desc = desc.substring(0, 5) + "..."; node.waitHistoryShort("add -m \"" + desc + "\""); } else node.waitHistoryShort("add"); node.waitStatus ("LAdded; New"); } protected void commitFile (GenericNode node, String branch, String desc) { node.cvsNode ().cVSCommit(); CommitDialog com = new CommitDialog (); if (branch != null) { checkCheckBox (com.cbRevisionBranch()); com.txtRevisionBranch().clearText(); com.txtRevisionBranch().typeText(branch); } if (desc != null) { com.txtMessage().setCaretPosition(0); com.txtMessage().typeText(desc); } com.runCommand (); com.waitClosed(); String cmd = "commit"; if (branch != null) cmd += " -r " + branch; if (desc != null) { if (desc.length () > 9) desc = desc.substring (0, 5) + "..."; cmd += " -m \"" + desc + "\""; } else cmd += " -m \"\""; node.waitHistoryShort (cmd); node.jcvsNode().jCVSRefresh(); // workaround for unreported issue - sometimes file annotation is not updated after commit node.waitHistoryShort ("status -l"); // workaround for unreported issue - sometimes file annotation is not updated after commit node.waitStatus ("Up-to-date", false); } public void createAddCommitFile (GenericNode node, String template) { NewWizardOperator.create(template, node.parent ().node (), node.name ()); node.waitStatus ("Local"); addFile (node, "Initial"); commitFile (node, null, "Initial state"); node.waitStatus ("Up-to-date; 1.1"); } public void dumpTable (JTableOperator table) { out.println ("==== Table Dump ===="); int rows = table.getRowCount(); out.println ("Rows: " + rows); int columns = table.getColumnCount(); out.println ("Columns: " + columns); for (int a = 0; a < rows; a ++) { out.print ("" + (a + 1) + "."); for (int b = 0; b < columns; b ++) out.print (" - " + table.getValueAt(a, b)); out.println (); } } protected void addTagFile (GenericNode node, String name, boolean branch) { node.jcvsNode().jCVSTag(); TagDialog tag = new TagDialog (); checkCheckBox (tag.cbBranch(), branch); tag.txtTag().clearText (); tag.txtTag().typeText (name); tag.runCommand (); tag.waitClosed (); if (branch) node.waitHistoryShort("tag -b " + name); else node.waitHistoryShort("tag " + name); } protected void checkCheckBox (JCheckBoxOperator cb) { checkCheckBox (cb, true); } protected void checkCheckBox (JCheckBoxOperator cb, boolean state) { if (cb.isSelected() != state) cb.push (); } protected void assertCVSErrorDialog () { NbDialogOperator dia = new NbDialogOperator ("CVS Error"); dia.close(); dia.waitClosed (); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.