1deb45f49SLiu Zhe /************************************************************** 2deb45f49SLiu Zhe * 3deb45f49SLiu Zhe * Licensed to the Apache Software Foundation (ASF) under one 4deb45f49SLiu Zhe * or more contributor license agreements. See the NOTICE file 5deb45f49SLiu Zhe * distributed with this work for additional information 6deb45f49SLiu Zhe * regarding copyright ownership. The ASF licenses this file 7deb45f49SLiu Zhe * to you under the Apache License, Version 2.0 (the 8deb45f49SLiu Zhe * "License"); you may not use this file except in compliance 9deb45f49SLiu Zhe * with the License. You may obtain a copy of the License at 10deb45f49SLiu Zhe * 11deb45f49SLiu Zhe * http://www.apache.org/licenses/LICENSE-2.0 12deb45f49SLiu Zhe * 13deb45f49SLiu Zhe * Unless required by applicable law or agreed to in writing, 14deb45f49SLiu Zhe * software distributed under the License is distributed on an 15deb45f49SLiu Zhe * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16deb45f49SLiu Zhe * KIND, either express or implied. See the License for the 17deb45f49SLiu Zhe * specific language governing permissions and limitations 18deb45f49SLiu Zhe * under the License. 19deb45f49SLiu Zhe * 20deb45f49SLiu Zhe *************************************************************/ 21*eba4d44aSLiu Zhe package fvt.uno.sw.page; 22deb45f49SLiu Zhe 23deb45f49SLiu Zhe import static org.openoffice.test.common.Testspace.*; 24deb45f49SLiu Zhe 25deb45f49SLiu Zhe import java.io.File; 26deb45f49SLiu Zhe import java.util.Arrays; 27deb45f49SLiu Zhe import java.util.Collection; 28deb45f49SLiu Zhe import java.lang.Enum; 29deb45f49SLiu Zhe 30deb45f49SLiu Zhe import org.junit.After; 31deb45f49SLiu Zhe import org.junit.Before; 32deb45f49SLiu Zhe import org.junit.Test; 33deb45f49SLiu Zhe import org.junit.Ignore; 34deb45f49SLiu Zhe import org.junit.Assert; 35deb45f49SLiu Zhe import org.junit.runner.RunWith; 36deb45f49SLiu Zhe import org.junit.runners.Parameterized; 37deb45f49SLiu Zhe import org.junit.runners.Parameterized.Parameters; 38deb45f49SLiu Zhe 39deb45f49SLiu Zhe import org.openoffice.test.common.FileUtil; 40deb45f49SLiu Zhe import org.openoffice.test.uno.UnoApp; 41deb45f49SLiu Zhe 42deb45f49SLiu Zhe import testlib.uno.SWUtil; 43deb45f49SLiu Zhe import com.sun.star.text.XTextDocument; 44deb45f49SLiu Zhe import com.sun.star.uno.UnoRuntime; 45deb45f49SLiu Zhe import com.sun.star.lang.XComponent; 46deb45f49SLiu Zhe import com.sun.star.table.BorderLine; 47deb45f49SLiu Zhe import com.sun.star.style.PageStyleLayout; 48deb45f49SLiu Zhe 49deb45f49SLiu Zhe /** 50deb45f49SLiu Zhe * test page's layout settings 51deb45f49SLiu Zhe * 52deb45f49SLiu Zhe */ 53deb45f49SLiu Zhe @RunWith(Parameterized.class) 54deb45f49SLiu Zhe public class CheckPageLayout { 55deb45f49SLiu Zhe UnoApp unoApp = new UnoApp(); 56deb45f49SLiu Zhe XTextDocument textDocument = null; 57deb45f49SLiu Zhe File temp = null; 58deb45f49SLiu Zhe String tempFilePathODT = ""; 59deb45f49SLiu Zhe String tempFilePathDOC = ""; 60deb45f49SLiu Zhe 61deb45f49SLiu Zhe private String pageStyleLayoutProperty = "PageStyleLayout"; 62deb45f49SLiu Zhe 63deb45f49SLiu Zhe private PageStyleLayout pageStyleLayout = PageStyleLayout.getDefault(); 64deb45f49SLiu Zhe 65deb45f49SLiu Zhe CheckPageLayout(int styleValue)66deb45f49SLiu Zhe public CheckPageLayout(int styleValue){ 67deb45f49SLiu Zhe this.pageStyleLayout = PageStyleLayout.fromInt(styleValue); 68deb45f49SLiu Zhe } 69deb45f49SLiu Zhe /** 70deb45f49SLiu Zhe * 0:ALL 71deb45f49SLiu Zhe * 1:LEFT 72deb45f49SLiu Zhe * 2:RIGHT 73deb45f49SLiu Zhe * 3:MIRRORED 74deb45f49SLiu Zhe * @return 75deb45f49SLiu Zhe */ 76deb45f49SLiu Zhe @Parameters data()77deb45f49SLiu Zhe public static Collection<Object[]> data(){ 78deb45f49SLiu Zhe Object[][] params = new Object[][]{ 79deb45f49SLiu Zhe {0}, 80deb45f49SLiu Zhe {1}, 81deb45f49SLiu Zhe {2}, 82deb45f49SLiu Zhe {3} 83deb45f49SLiu Zhe }; 84deb45f49SLiu Zhe return Arrays.asList(params); 85deb45f49SLiu Zhe } 86deb45f49SLiu Zhe 87deb45f49SLiu Zhe /** 88deb45f49SLiu Zhe * test page's layout settings 89deb45f49SLiu Zhe * @throws Exception 90deb45f49SLiu Zhe */ 91deb45f49SLiu Zhe @Ignore("#120964 - page layout 'only left' and 'only right' all changed to default value 'right and left' after export to doc format in AOO") 92deb45f49SLiu Zhe @Test testPageStyleLayout()93deb45f49SLiu Zhe public void testPageStyleLayout() throws Exception 94deb45f49SLiu Zhe { 95deb45f49SLiu Zhe XComponent xComponent = unoApp.newDocument("swriter"); 96deb45f49SLiu Zhe SWUtil.setDefaultPageStyleProperty(xComponent, this.pageStyleLayoutProperty, this.pageStyleLayout); 97deb45f49SLiu Zhe 98deb45f49SLiu Zhe //save as ODT and reopen, get border 99deb45f49SLiu Zhe unoApp.saveDocument(xComponent, tempFilePathODT); 100deb45f49SLiu Zhe unoApp.closeDocument(xComponent); 101deb45f49SLiu Zhe xComponent = unoApp.loadDocument(tempFilePathODT); 102deb45f49SLiu Zhe 103deb45f49SLiu Zhe PageStyleLayout actualPageStyleLayout = (PageStyleLayout)SWUtil.getDefaultPageStyleProperty(xComponent, this.pageStyleLayoutProperty); 104deb45f49SLiu Zhe 105deb45f49SLiu Zhe this.compare("ODT", actualPageStyleLayout); 106deb45f49SLiu Zhe 107deb45f49SLiu Zhe //save as DOC and reopen, get properties 108deb45f49SLiu Zhe SWUtil.saveAsDoc(xComponent, FileUtil.getUrl(tempFilePathDOC)); 109deb45f49SLiu Zhe unoApp.closeDocument(xComponent); 110deb45f49SLiu Zhe xComponent = unoApp.loadDocument(tempFilePathDOC); 111deb45f49SLiu Zhe 112deb45f49SLiu Zhe actualPageStyleLayout = (PageStyleLayout)SWUtil.getDefaultPageStyleProperty(xComponent, this.pageStyleLayoutProperty); 113deb45f49SLiu Zhe 114deb45f49SLiu Zhe this.compare("DOC", actualPageStyleLayout); 115deb45f49SLiu Zhe 116deb45f49SLiu Zhe unoApp.closeDocument(xComponent); 117deb45f49SLiu Zhe 118deb45f49SLiu Zhe } 119deb45f49SLiu Zhe compare(String preDescription, PageStyleLayout actual)120deb45f49SLiu Zhe private void compare(String preDescription, PageStyleLayout actual){ 121deb45f49SLiu Zhe Assert.assertEquals(preDescription + ":" + this.pageStyleLayoutProperty,this.pageStyleLayout.getValue(), actual.getValue()); 122deb45f49SLiu Zhe } 123deb45f49SLiu Zhe 124deb45f49SLiu Zhe /** 125deb45f49SLiu Zhe * @throws java.lang.Exception 126deb45f49SLiu Zhe */ 127deb45f49SLiu Zhe @Before setUp()128deb45f49SLiu Zhe public void setUp() throws Exception { 129deb45f49SLiu Zhe unoApp.start(); 130deb45f49SLiu Zhe 131deb45f49SLiu Zhe FileUtil.deleteFile(getPath("temp")); 132deb45f49SLiu Zhe temp = new File(getPath("temp")); 133deb45f49SLiu Zhe temp.mkdirs(); 134deb45f49SLiu Zhe 135deb45f49SLiu Zhe tempFilePathODT = temp + "/tempFilePathODT.odt"; 136deb45f49SLiu Zhe tempFilePathDOC = temp + "/tempFilePathDOC.doc"; 137deb45f49SLiu Zhe } 138deb45f49SLiu Zhe 139deb45f49SLiu Zhe @After tearDown()140deb45f49SLiu Zhe public void tearDown() throws Exception { 141deb45f49SLiu Zhe unoApp.close(); 142deb45f49SLiu Zhe } 143deb45f49SLiu Zhe 144deb45f49SLiu Zhe 145deb45f49SLiu Zhe } 146