diff options
author | Liu Zhe <liuzhe@apache.org> | 2012-08-27 06:25:44 +0000 |
---|---|---|
committer | Liu Zhe <liuzhe@apache.org> | 2012-08-27 06:25:44 +0000 |
commit | f46c6ac27fd26974b0a96fb1d80174da88148165 (patch) | |
tree | 595b7e4bae3d0988bc3a73db1bc2606de9076462 /test | |
parent | e2d4543f969c119393e4147fe0baa9122bb57b6b (diff) |
#120700 - SC SVT case 1 on a new ods document
Patch by: Liu Yi Xuan <liuyixuan.527@gmail.com>
Review by: Liu Zhe <aliuzhe@gmail.com>
Notes
Notes:
ignore: vclauto
Diffstat (limited to 'test')
-rw-r--r-- | test/testgui/source/testcase/gui/svt/sc/OperationOnNewSC.java | 196 | ||||
-rw-r--r-- | test/testgui/source/testlib/gui/UIMap.java | 4 |
2 files changed, 200 insertions, 0 deletions
diff --git a/test/testgui/source/testcase/gui/svt/sc/OperationOnNewSC.java b/test/testgui/source/testcase/gui/svt/sc/OperationOnNewSC.java new file mode 100644 index 000000000000..22efffb54d1e --- /dev/null +++ b/test/testgui/source/testcase/gui/svt/sc/OperationOnNewSC.java @@ -0,0 +1,196 @@ +/************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + *************************************************************/ + +/** + * + */ + + +package testcase.gui.svt.sc; + +import static org.openoffice.test.vcl.Tester.sleep; +import static testlib.gui.AppUtil.typeKeys; +import static testlib.gui.UIMap.SortOptionsPage; +import static testlib.gui.UIMap.SortOptionsPage_RangeContainsColumnLabels; +import static testlib.gui.UIMap.SortPage; +import static testlib.gui.UIMap.SortPage_Ascending1; +import static testlib.gui.UIMap.SortPage_By1; +import static testlib.gui.UIMap.app; +import static testlib.gui.UIMap.*; + +import java.io.FileOutputStream; +import java.io.PrintStream; +import java.util.HashMap; + +import org.junit.After; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.openoffice.test.OpenOffice; +import org.openoffice.test.common.SystemUtil; +import static org.openoffice.test.common.Testspace.prepareData; +import org.openoffice.test.common.*; + +import testlib.gui.CalcUtil; +import testlib.gui.Log; +import static testlib.gui.AppUtil.submitSaveDlg; + +public class OperationOnNewSC { + @Rule + public Log LOG = new Log(); + + private PrintStream result = null; + + private String pid = null; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + OpenOffice.killAll(); + app.start(); + result = new PrintStream(new FileOutputStream(Testspace.getFile("output/svt_sc_new.csv"))); + HashMap<String, Object> proccessInfo = SystemUtil.findProcess(".*(soffice\\.bin|soffice.*-env).*"); + pid = (String)proccessInfo.get("pid"); + result.println("Iterator,Time,Memory(KB),CPU(%)"); + LOG.info("Result will be saved to " + Testspace.getPath("output/svt_sc_new.csv")); + } + + @After + public void tearDown() throws Exception { + app.close(); + result.close(); + } + + @Test + public void operationOnNewSC() throws Exception { + String[][] inputStr = {{"3"},{"2"}, {"5"}, {"1"}, {"6"},{"4"}, {"10"}, {"8"}, {"9"}, {"7"}}; + String[][] inputStr_InstantFilter = {{ "A" }, { "1" }, { "2" }, { "3" }, { "1" }, + { "2" }, { "3" }, { "1" }, { "2" }, { "3" } }; + String pic = prepareData("svt/Sunset.jpg"); + + for(int i = 0; i < 1000; i++) + { + // Data Sort + app.dispatch("private:factory/scalc"); + CalcUtil.selectRange("A1"); + typeKeys("3<down>2<down>5<down>1<down>6<down>4<down>10<down>8<down>9<down>7"); + sleep(1); + app.dispatch(".uno:DataSort"); + SortOptionsPage.select(); + SortOptionsPage_RangeContainsColumnLabels.uncheck(); + SortPage.select(); + SortPage_By1.select(1); // "Column A" + SortPage_Ascending1.check(); + SortPage.ok(); + sleep(5); + + //Insert Sheet + app.dispatch(".uno:Insert"); + SCAfterCurrentSheet.check(); + SCNewSheetName.setText("Instant Filter"); + SCInsertSheetDlg.ok(); + sleep(5); + + //Standard Filter + CalcUtil.selectRange("A1"); + typeKeys("A<down>1<down>2<down>3<down>1<down>2<down>3<down>1<down>2<down>3"); + sleep(1); + CalcUtil.selectRange("A1"); + app.dispatch(".uno:DataFilterStandardFilter"); + sleep(2); + FilterValue1.setText("1"); + StandardFilterDlg.ok(); + sleep(5); + + //Data Validate + app.dispatch(".uno:Insert"); + SCAfterCurrentSheet.check(); + SCNewSheetName.setText("Data Validate"); + SCInsertSheetDlg.ok(); + sleep(5); + CalcUtil.selectRange("B2:E5"); + sleep(2); + + app.dispatch(".uno:Validation"); + SC_ValidityCriteriaTabpage.select(); + SC_ValidityCriteriaAllowList.select("Whole Numbers"); + SC_ValidityDecimalCompareOperator.select("greater than"); + SC_ValiditySourceInput.setText("1"); + SC_ValidityErrorAlertTabPage.select(); + SC_ValidityShowErrorMessage.check(); + SC_ValidityErrorMessageTitle.setText("Error"); + SC_ValidityErrorMessage.setText("Must greater than 1"); + SC_ValidityErrorAlertTabPage.ok(); + + CalcUtil.selectRange("B2"); + typeKeys("0<enter>"); + ActiveMsgBox.ok(); + sleep(1); + + CalcUtil.selectRange("E5"); + typeKeys("1<enter>"); + ActiveMsgBox.ok(); + sleep(1); + + CalcUtil.selectRange("E2"); + typeKeys("2<enter>"); + sleep(5); + + //Input cells, insert pics and chart + app.dispatch(".uno:Insert"); + SCBeforeCurrentSheet.check(); + SCNewSheetName.setText("InsertObjects"); + SCInsertSheetDlg.ok(); + sleep(5); + calc.menuItem("Insert->Picture->From File...").select(); + sleep(2); + FilePicker_Path.setText(pic); + sleep(1); + FilePicker_Open.click(); + sleep(5); + typeKeys("<esc>"); + sleep(5); + + //Save file and close + String saveTo = "tempSC_New" + i + ".ods"; + calc.menuItem("File->Save As...").select(); + FileUtil.deleteFile(saveTo); + submitSaveDlg(saveTo); + if(ActiveMsgBox.exists()) + { + ActiveMsgBox.yes(); + sleep(2); + } + calc.menuItem("File->Close").select(); + + HashMap<String, Object> perfData = SystemUtil.getProcessPerfData(pid); + String record = i + "," + System.currentTimeMillis() + "," + perfData.get("rss") + "," + perfData.get("pcpu"); + LOG.info("Record: " + record); + result.println(record); + result.flush(); + + sleep(3); + } + } + +} diff --git a/test/testgui/source/testlib/gui/UIMap.java b/test/testgui/source/testlib/gui/UIMap.java index b7e8c5fff464..de43974ee15d 100644 --- a/test/testgui/source/testlib/gui/UIMap.java +++ b/test/testgui/source/testlib/gui/UIMap.java @@ -462,6 +462,10 @@ public class UIMap { public static final VclButton SlideAutoAfter = button("SD_HID_SD_SLIDETRANSITIONPANE_RB_ADVANCE_AUTO"); public static final VclButton ApplyToAllSlides = button("SD_HID_SD_SLIDETRANSITIONPANE_PB_APPLY_TO_ALL"); + //Spreadsheet: Standard Filter Dialog + public static final VclComboBox FilterValue1 = combobox("sc:ComboBox:RID_SCDLG_FILTER:ED_VAL1"); + public static final VclDialog StandardFilterDlg = dialog(".uno:DataFilterStandardFilter"); + |