/************************************************************** | |
* | |
* 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 fvt.gui.sc.sheet; | |
import static org.junit.Assert.*; | |
import static testlib.gui.UIMap.*; | |
import org.junit.After; | |
import org.junit.Before; | |
import org.junit.Rule; | |
import org.junit.Test; | |
import org.openoffice.test.common.Logger; | |
import testlib.gui.AppTool; | |
/** | |
* Before running the testing class, you need specify the AOO location firstly | |
* with system property openoffice.home. | |
* | |
* | |
*/ | |
public class Sheets { | |
@Rule | |
public Logger log = Logger.getLogger(this); | |
@Before | |
public void setUp() throws Exception { | |
app.start(true); | |
AppTool.newSpreadsheet(); | |
} | |
@After | |
public void tearDown() throws Exception { | |
app.stop(); | |
} | |
/** | |
* Insert one sheet in different place | |
* | |
* @throws Exception | |
*/ | |
@Test | |
public void testInsertMultipleSheet() { | |
// Open Insert Sheet dialog via main menu Insert-> Sheet | |
app.dispatch(".uno:Insert"); | |
// Change new sheet number into 3 to insert 3 new sheet one time | |
scSheetNumber.setText("3"); | |
// Click OK button to create sheet with default setting | |
scInsertSheetDlg.ok(); | |
// Verify new sheets have been inserted before Sheet1 | |
app.dispatch(".uno:SelectTables"); | |
// To support multi-language, just verify the number in the sheet name | |
assertTrue("The first sheet name not contain 4",scSheetsList.getItemsText()[0].contains("4")); | |
assertTrue("The second sheet name not contain 5",scSheetsList.getItemsText()[1].contains("5")); | |
assertTrue("The third sheet name not contain 6",scSheetsList.getItemsText()[2].contains("6")); | |
assertTrue("The fourth sheet name not contain 1",scSheetsList.getItemsText()[3].contains("1")); | |
assertTrue("The fifth sheet name not contain 2",scSheetsList.getItemsText()[4].contains("2")); | |
assertTrue("The sixth sheet name not contain 3",scSheetsList.getItemsText()[5].contains("3")); | |
scSelectSheetsDlg.ok(); | |
} | |
/** | |
* Insert one sheet in different place | |
* | |
* @throws Exception | |
*/ | |
@Test | |
public void testInsertOneSheet() { | |
// Open Insert Sheet dialog via main menu Insert-> Sheet | |
app.dispatch(".uno:Insert"); | |
// Click OK button to create sheet with default setting | |
scInsertSheetDlg.ok(); | |
// Verify new sheet has been inserted before Sheet1 | |
app.dispatch(".uno:SelectTables"); | |
// To support multi-language, just verify the number in the sheet name | |
assertTrue(scSheetsList.getItemsText()[0].contains("4")); | |
assertTrue(scSheetsList.getItemsText()[1].contains("1")); | |
assertTrue(scSheetsList.getItemsText()[2].contains("2")); | |
assertTrue(scSheetsList.getItemsText()[3].contains("3")); | |
scSelectSheetsDlg.ok(); | |
} | |
} |