diff --git a/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Edit3.java b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Edit3.java new file mode 100644 index 00000000..a4859cc6 --- /dev/null +++ b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Edit3.java @@ -0,0 +1,114 @@ +/* + * $Id$ + * + * Copyright (c) 2001, 2022, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package jthtest.Sanity_Tests; + +import java.io.File; +import java.io.IOException; +import java.lang.reflect.InvocationTargetException; + +import org.junit.Test; +import org.junit.runner.JUnitCore; +import org.netbeans.jemmy.JemmyException; +import org.netbeans.jemmy.operators.JButtonOperator; +import org.netbeans.jemmy.operators.JDialogOperator; +import org.netbeans.jemmy.operators.JFrameOperator; +import org.netbeans.jemmy.operators.JTextFieldOperator; +import org.netbeans.jemmy.util.NameComponentChooser; + +import javax.swing.JTextField; + +import jthtest.Tools; +import jthtest.Config_Edit.Config_Edit; + +public class Test_Config_Edit3 extends Config_Edit { + public static void main(String[] args) { + JUnitCore.main("jthtest.gui.Sanity_Tests.Test_Config_Edit3"); + } + + /** + * This test case Verify that \"Done\" button in an empty Configuration Editor + * will bring up a Save Configuration file browser. + * + * @throws ClassNotFoundException + * + * @throws InvocationTargetException + * + * @throws NoSuchMethodException + */ + @Test + public void testConfig_Edit7() throws ClassNotFoundException, InvocationTargetException, NoSuchMethodException { + + startJavatestNewDesktop(); + JFrameOperator mainFrame = findMainFrame(); + openTestSuite(mainFrame); + createWorkDirInTemp(mainFrame); + + openConfigFile(openLoadConfigDialogByMenu(mainFrame), CONFIG_NAME); + waitForConfigurationLoading(mainFrame, CONFIG_NAME); + openConfigCreation(mainFrame); + JDialogOperator config = findConfigEditor(mainFrame); + + pushNextConfigEditor(config); + new JTextFieldOperator(config, new NameComponentChooser("str.txt")).typeText("some_jti"); + + pushDoneConfigEditor(config); + saveConfig(); + openConfigDialogByKey(mainFrame); + + if (!findConfigEditor(mainFrame).getTitle().contains("some_jti")) { + File f = new File(LOCAL_PATH + "jt_gui_test_temp_some_jti-this_file_will_be_deleted.jti"); + f.delete(); + throw new JemmyException("Wrong jti filename in config editor: " + findConfigEditor(mainFrame).getTitle()); + } + File f = new File(LOCAL_PATH + "jt_gui_test_temp_some_jti-this_file_will_be_deleted.jti"); + f.delete(); + } + + /** + * This method clicks on OK button on Save Configuration file browser and save + * the configuration (.jti) file. + * + * @throws IOException + * + */ + @SuppressWarnings("deprecation") + private void saveConfig() { + File f = new File(LOCAL_PATH + "jt_gui_test_temp_some_jti-this_file_will_be_deleted.jti"); + if (f.exists()) + f.delete(); + JDialogOperator save = new JDialogOperator(getExecResource("ce.okToClose.title")); + new JButtonOperator(save, "Ok").push(); + save = new JDialogOperator(getExecResource("ce.save.title")); + JTextFieldOperator tf; + + tf = new JTextFieldOperator( + (JTextField) Tools.getComponent(save, new String[] { "Folder name:", "File name:" })); + tf.enterText("jt_gui_test_temp_some_jti-this_file_will_be_deleted"); + } + +} diff --git a/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Load1.java b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Load1.java new file mode 100644 index 00000000..f859bb4b --- /dev/null +++ b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Load1.java @@ -0,0 +1,70 @@ +/* + * $Id$ + * + * Copyright (c) 2001, 2022, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package jthtest.Sanity_Tests; + +import static org.junit.Assert.fail; + +import java.lang.reflect.InvocationTargetException; + +import org.junit.Test; +import org.junit.runner.JUnitCore; +import org.netbeans.jemmy.operators.JFrameOperator; + +import jthtest.ConfigTools; + +public class Test_Config_Load1 extends ConfigTools { + public static void main(String[] args) { + JUnitCore.main("jthtest.gui.Config_Load.Config_Load1"); + } + + /** + * This test is to verify that Load button under configuration will bring up a + * file browser to select a jti file to be used. + * + * @throws ClassNotFoundException + * + * @throws InvocationTargetException + * + * @throws NoSuchMethodException + */ + @Test + public void testConfig_Load1() throws ClassNotFoundException, InvocationTargetException, NoSuchMethodException { + + startJavatestNewDesktop(); + JFrameOperator mainFrame = findMainFrame(); + closeQS(mainFrame); + + openTestSuite(mainFrame); + createWorkDirInTemp(mainFrame); + + if (!(openLoadConfigDialogByMenu(mainFrame).isVisible())) { + fail("Load button under configuration does not bring up a file browser to select a jti file to be used"); + } + + } +} diff --git a/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_New1.java b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_New1.java new file mode 100644 index 00000000..f342b3be --- /dev/null +++ b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_New1.java @@ -0,0 +1,64 @@ +/* + * $Id$ + * + * Copyright (c) 2001, 2022, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package jthtest.Sanity_Tests; + +import java.lang.reflect.InvocationTargetException; + +import jthtest.Test; +import jthtest.tools.ConfigDialog; +import jthtest.tools.JTFrame; + +public class Test_Config_New1 extends Test { + /** + * This test is to verify that menu item \"Configure-> New configuration\" in an + * existing directory and configuration will reset it to an empty state. + * + * @throws ClassNotFoundException + * + * @throws InvocationTargetException + * + * @throws NoSuchMethodException + */ + public void testImpl() throws ClassNotFoundException, InvocationTargetException, NoSuchMethodException { + + JTFrame frame = JTFrame.startJTWithDefaultWorkDirectory(); + ConfigDialog cd = frame.getConfiguration().openByKey(); + boolean firstly = cd.isFullConfiguration(); + cd.closeByMenu(); + + cd = frame.getConfiguration().create(true); + boolean secondly = cd.isFullConfiguration(); + + if (secondly) { + errors.add("Configuration is full after creation"); + } + if (!firstly) { + errors.add("Warning: configuration was not full before creation"); + } + } +} diff --git a/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Save2.java b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Save2.java new file mode 100644 index 00000000..4d032f87 --- /dev/null +++ b/gui-tests/src/gui/src/jthtest/Sanity_Tests/Test_Config_Save2.java @@ -0,0 +1,84 @@ +/* + * $Id$ + * + * Copyright (c) 2001, 2022, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package jthtest.Sanity_Tests; + +import java.io.File; +import java.lang.reflect.InvocationTargetException; + +import org.junit.Test; +import org.junit.runner.JUnitCore; +import org.netbeans.jemmy.JemmyException; +import org.netbeans.jemmy.operators.JDialogOperator; +import org.netbeans.jemmy.operators.JFrameOperator; + +import jthtest.ConfigTools; + +public class Test_Config_Save2 extends ConfigTools { + public static void main(String args[]) { + JUnitCore.main("jthtest.gui.Config_SaveEdit.Test_Config_SaveEdit2"); + } + /** + * Verify that "File->Save" menu item in Configuration Editor will save the + * current configuration in a new file if there is no file name. + * + * @throws ClassNotFoundException + * + * @throws InvocationTargetException + * + * @throws NoSuchMethodException + * + */ + @Test + public void testConfig_SaveEdit2() + throws ClassNotFoundException, InvocationTargetException, NoSuchMethodException, InterruptedException { + File f = new File(LOCAL_PATH + "jt_gui_test_Config_SaveEdit2_test_this_file_will_be_deleted.jti"); + if (f.exists()) + f.delete(); + f = null; + startJavatestNewDesktop(); + JFrameOperator mainFrame = findMainFrame(); + closeQS(mainFrame); + + openTestSuite(mainFrame); + createWorkDirInTemp(mainFrame); + openConfigCreation(mainFrame); + JDialogOperator config = findConfigEditor(mainFrame); + saveConfig(config, "jt_gui_test_Config_SaveEdit2_test_this_file_will_be_deleted"); + + f = new File(LOCAL_PATH + "jt_gui_test_Config_SaveEdit2_test_this_file_will_be_deleted.jti"); + int t = 0; + while (t < 1000 && !f.exists()) { + f = new File(LOCAL_PATH + "jt_gui_test_Config_SaveEdit2_test_this_file_will_be_deleted.jti"); + t += 100; + Thread.sleep(100); + } + if (!f.exists()) + throw new JemmyException("File was not created"); + f.delete(); + } +}