1*b1cdbd2cSJim Jagielski /************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski /** 23*b1cdbd2cSJim Jagielski * 24*b1cdbd2cSJim Jagielski */ 25*b1cdbd2cSJim Jagielski package fvt.gui.sd.headerandfooter; 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski import static org.junit.Assert.*; 28*b1cdbd2cSJim Jagielski import static org.openoffice.test.common.Testspace.*; 29*b1cdbd2cSJim Jagielski import static org.openoffice.test.vcl.Tester.*; 30*b1cdbd2cSJim Jagielski import static testlib.gui.AppTool.*; 31*b1cdbd2cSJim Jagielski import static testlib.gui.UIMap.*; 32*b1cdbd2cSJim Jagielski 33*b1cdbd2cSJim Jagielski import org.junit.After; 34*b1cdbd2cSJim Jagielski import org.junit.Before; 35*b1cdbd2cSJim Jagielski import org.junit.Rule; 36*b1cdbd2cSJim Jagielski import org.junit.Test; 37*b1cdbd2cSJim Jagielski import org.openoffice.test.common.FileUtil; 38*b1cdbd2cSJim Jagielski import org.openoffice.test.common.Logger; 39*b1cdbd2cSJim Jagielski 40*b1cdbd2cSJim Jagielski import testlib.gui.AppTool; 41*b1cdbd2cSJim Jagielski import testlib.gui.SDTool; 42*b1cdbd2cSJim Jagielski 43*b1cdbd2cSJim Jagielski public class HeaderAndFooterSetting { 44*b1cdbd2cSJim Jagielski 45*b1cdbd2cSJim Jagielski @Rule 46*b1cdbd2cSJim Jagielski public Logger log = Logger.getLogger(this); 47*b1cdbd2cSJim Jagielski 48*b1cdbd2cSJim Jagielski @Before setUp()49*b1cdbd2cSJim Jagielski public void setUp() throws Exception { 50*b1cdbd2cSJim Jagielski app.start(true); 51*b1cdbd2cSJim Jagielski AppTool.newPresentation(); 52*b1cdbd2cSJim Jagielski for (int i = 0; i < 5; i++) { 53*b1cdbd2cSJim Jagielski sdInsertPageButtonOnToolbar.click(); 54*b1cdbd2cSJim Jagielski } 55*b1cdbd2cSJim Jagielski // Pop up navigator panel 56*b1cdbd2cSJim Jagielski if (!sdNavigatorDlg.exists()) { 57*b1cdbd2cSJim Jagielski app.dispatch(".uno:Navigator"); 58*b1cdbd2cSJim Jagielski } 59*b1cdbd2cSJim Jagielski } 60*b1cdbd2cSJim Jagielski 61*b1cdbd2cSJim Jagielski @After tearDown()62*b1cdbd2cSJim Jagielski public void tearDown() throws Exception { 63*b1cdbd2cSJim Jagielski sleep(3); 64*b1cdbd2cSJim Jagielski if (sdNavigatorDlg.exists()) { 65*b1cdbd2cSJim Jagielski app.dispatch(".uno:Navigator"); 66*b1cdbd2cSJim Jagielski } 67*b1cdbd2cSJim Jagielski app.stop(); 68*b1cdbd2cSJim Jagielski } 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim Jagielski /** 71*b1cdbd2cSJim Jagielski * Test Copy slide with Apply Footer to same file and different file 72*b1cdbd2cSJim Jagielski * 73*b1cdbd2cSJim Jagielski * @throws Exception 74*b1cdbd2cSJim Jagielski */ 75*b1cdbd2cSJim Jagielski @Test testCopySlideWithApplyFooter()76*b1cdbd2cSJim Jagielski public void testCopySlideWithApplyFooter() throws Exception { 77*b1cdbd2cSJim Jagielski 78*b1cdbd2cSJim Jagielski // add header and footer 79*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 80*b1cdbd2cSJim Jagielski 81*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 82*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 83*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 84*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 85*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 86*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 87*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 88*b1cdbd2cSJim Jagielski 89*b1cdbd2cSJim Jagielski // Click slide 3 90*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 91*b1cdbd2cSJim Jagielski typeKeys("<up><up><up>"); 92*b1cdbd2cSJim Jagielski sleep(1); 93*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 94*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.uncheck(); 95*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.click(); 96*b1cdbd2cSJim Jagielski 97*b1cdbd2cSJim Jagielski // paste to the same file 98*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 99*b1cdbd2cSJim Jagielski app.dispatch(".uno:Copy"); 100*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 101*b1cdbd2cSJim Jagielski 102*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 103*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 104*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 105*b1cdbd2cSJim Jagielski assertEquals(false, sdSlideNumAsFooterOnSlide.isChecked()); 106*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 107*b1cdbd2cSJim Jagielski 108*b1cdbd2cSJim Jagielski // paste to different file 109*b1cdbd2cSJim Jagielski impress.focus(); 110*b1cdbd2cSJim Jagielski app.dispatch("private:factory/simpress?slot=6686"); 111*b1cdbd2cSJim Jagielski presentationWizard.ok(); 112*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 113*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 114*b1cdbd2cSJim Jagielski typeKeys("<down>"); 115*b1cdbd2cSJim Jagielski sleep(1); 116*b1cdbd2cSJim Jagielski 117*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 118*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 119*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 120*b1cdbd2cSJim Jagielski assertEquals(false, sdSlideNumAsFooterOnSlide.isChecked()); 121*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 122*b1cdbd2cSJim Jagielski 123*b1cdbd2cSJim Jagielski } 124*b1cdbd2cSJim Jagielski 125*b1cdbd2cSJim Jagielski /** 126*b1cdbd2cSJim Jagielski * Test Copy slide with Apply to all Footer to same file and different file 127*b1cdbd2cSJim Jagielski * 128*b1cdbd2cSJim Jagielski * @throws Exception 129*b1cdbd2cSJim Jagielski */ 130*b1cdbd2cSJim Jagielski @Test testCopySlideWithApplyToAllFooter()131*b1cdbd2cSJim Jagielski public void testCopySlideWithApplyToAllFooter() throws Exception { 132*b1cdbd2cSJim Jagielski 133*b1cdbd2cSJim Jagielski // add header and footer 134*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 135*b1cdbd2cSJim Jagielski 136*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 137*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 138*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 139*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 140*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 141*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 142*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 145*b1cdbd2cSJim Jagielski for (int j = 0; j <= 2; j++) { 146*b1cdbd2cSJim Jagielski typeKeys("<up>"); 147*b1cdbd2cSJim Jagielski } 148*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 149*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.uncheck(); 150*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.click(); 151*b1cdbd2cSJim Jagielski 152*b1cdbd2cSJim Jagielski // paste to the same file 153*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 154*b1cdbd2cSJim Jagielski typeKeys("<up>"); 155*b1cdbd2cSJim Jagielski app.dispatch(".uno:Copy"); 156*b1cdbd2cSJim Jagielski typeKeys("<down>"); 157*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 158*b1cdbd2cSJim Jagielski 159*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 160*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 161*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 162*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 163*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 164*b1cdbd2cSJim Jagielski 165*b1cdbd2cSJim Jagielski // paste to different file 166*b1cdbd2cSJim Jagielski app.dispatch("private:factory/simpress?slot=6686"); 167*b1cdbd2cSJim Jagielski presentationWizard.ok(); 168*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 169*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 170*b1cdbd2cSJim Jagielski typeKeys("<down>"); 171*b1cdbd2cSJim Jagielski sleep(1); // If no sleep, error occur 172*b1cdbd2cSJim Jagielski 173*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 174*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 175*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 176*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 177*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 178*b1cdbd2cSJim Jagielski } 179*b1cdbd2cSJim Jagielski 180*b1cdbd2cSJim Jagielski /** 181*b1cdbd2cSJim Jagielski * Test Copy slide with Notes Footer to same file and different file 182*b1cdbd2cSJim Jagielski * 183*b1cdbd2cSJim Jagielski * @throws Exception 184*b1cdbd2cSJim Jagielski */ 185*b1cdbd2cSJim Jagielski @Test testCopySlideWithNotesHeaderFooter()186*b1cdbd2cSJim Jagielski public void testCopySlideWithNotesHeaderFooter() throws Exception { 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim Jagielski // add header and footer 189*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 190*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 191*b1cdbd2cSJim Jagielski sdHeaderTextOnNotes.check(); 192*b1cdbd2cSJim Jagielski sdHeaderTextOnNotesInput.setText("Header Test"); 193*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 194*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 195*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120329"); 196*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 197*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 198*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 199*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 200*b1cdbd2cSJim Jagielski 201*b1cdbd2cSJim Jagielski // paste to the same file 202*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 203*b1cdbd2cSJim Jagielski typeKeys("<up>"); 204*b1cdbd2cSJim Jagielski app.dispatch(".uno:Copy"); 205*b1cdbd2cSJim Jagielski typeKeys("<down>"); 206*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 207*b1cdbd2cSJim Jagielski 208*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 209*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 210*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 211*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 212*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 213*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 214*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 215*b1cdbd2cSJim Jagielski 216*b1cdbd2cSJim Jagielski // paste to different file 217*b1cdbd2cSJim Jagielski impress.focus(); 218*b1cdbd2cSJim Jagielski app.dispatch("private:factory/simpress?slot=6686"); 219*b1cdbd2cSJim Jagielski presentationWizard.ok(); 220*b1cdbd2cSJim Jagielski app.dispatch(".uno:Paste"); 221*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 222*b1cdbd2cSJim Jagielski typeKeys("<down>"); 223*b1cdbd2cSJim Jagielski SDTool.getActiveView().activate(); 224*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 225*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 226*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 227*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 228*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 229*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 230*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 231*b1cdbd2cSJim Jagielski } 232*b1cdbd2cSJim Jagielski 233*b1cdbd2cSJim Jagielski /** 234*b1cdbd2cSJim Jagielski * Test duplicate slide with Apply to all Footer to same file 235*b1cdbd2cSJim Jagielski * 236*b1cdbd2cSJim Jagielski * @throws Exception 237*b1cdbd2cSJim Jagielski */ 238*b1cdbd2cSJim Jagielski @Test testDuplicateSlideWithApplyToAllFooter()239*b1cdbd2cSJim Jagielski public void testDuplicateSlideWithApplyToAllFooter() throws Exception { 240*b1cdbd2cSJim Jagielski 241*b1cdbd2cSJim Jagielski // add header and footer 242*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 243*b1cdbd2cSJim Jagielski 244*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 245*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 246*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 247*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 248*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 249*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 250*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 251*b1cdbd2cSJim Jagielski 252*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 253*b1cdbd2cSJim Jagielski for (int j = 0; j <= 2; j++) { 254*b1cdbd2cSJim Jagielski typeKeys("<up>"); 255*b1cdbd2cSJim Jagielski } 256*b1cdbd2cSJim Jagielski app.dispatch(".uno:DuplicatePage"); 257*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 258*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 259*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 260*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 261*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 262*b1cdbd2cSJim Jagielski } 263*b1cdbd2cSJim Jagielski 264*b1cdbd2cSJim Jagielski /** 265*b1cdbd2cSJim Jagielski * Test footer not show on the first slide. 266*b1cdbd2cSJim Jagielski * 267*b1cdbd2cSJim Jagielski * @throws Exception 268*b1cdbd2cSJim Jagielski */ 269*b1cdbd2cSJim Jagielski @Test testFooterNotShowOn1stSlide()270*b1cdbd2cSJim Jagielski public void testFooterNotShowOn1stSlide() throws Exception { 271*b1cdbd2cSJim Jagielski 272*b1cdbd2cSJim Jagielski // add header and footer 273*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 274*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 275*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 276*b1cdbd2cSJim Jagielski sdFooterNotShowOn1stSlide.check(); 277*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 278*b1cdbd2cSJim Jagielski 279*b1cdbd2cSJim Jagielski // Check slide 1 280*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 281*b1cdbd2cSJim Jagielski // typeKeys("<up><up><up><up><up>"); // Not stable on ubuntu10.04 282*b1cdbd2cSJim Jagielski // sleep(1); // If no sleep, error occur 283*b1cdbd2cSJim Jagielski for (int i = 0; i < 5; i++) { 284*b1cdbd2cSJim Jagielski typeKeys("<up>"); 285*b1cdbd2cSJim Jagielski sleep(1); 286*b1cdbd2cSJim Jagielski } 287*b1cdbd2cSJim Jagielski 288*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 289*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterNotShowOn1stSlide.isChecked()); 290*b1cdbd2cSJim Jagielski assertEquals(false, sdFooterTextOnSlide.isChecked()); 291*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 292*b1cdbd2cSJim Jagielski } 293*b1cdbd2cSJim Jagielski 294*b1cdbd2cSJim Jagielski /** 295*b1cdbd2cSJim Jagielski * Test Insert Footer to focus slide. 296*b1cdbd2cSJim Jagielski * 297*b1cdbd2cSJim Jagielski * @throws Exception 298*b1cdbd2cSJim Jagielski */ 299*b1cdbd2cSJim Jagielski @Test testInsertApplyFooterOnSlide()300*b1cdbd2cSJim Jagielski public void testInsertApplyFooterOnSlide() throws Exception { 301*b1cdbd2cSJim Jagielski 302*b1cdbd2cSJim Jagielski // add header and footer to focus slide. 303*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 304*b1cdbd2cSJim Jagielski 305*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 306*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 307*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 308*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 309*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 310*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 311*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.click(); 312*b1cdbd2cSJim Jagielski 313*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 314*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 315*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 316*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 317*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 318*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 319*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 320*b1cdbd2cSJim Jagielski // close header and footer dialog. 321*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.focus(); 322*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 323*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 324*b1cdbd2cSJim Jagielski // end close 325*b1cdbd2cSJim Jagielski 326*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 327*b1cdbd2cSJim Jagielski typeKeys("<up>"); 328*b1cdbd2cSJim Jagielski sleep(1); // If no sleep, error occur 329*b1cdbd2cSJim Jagielski 330*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 331*b1cdbd2cSJim Jagielski assertEquals("", sdFixedDateAndTimeOnSlideInput.getText()); 332*b1cdbd2cSJim Jagielski assertEquals("", sdFooterTextOnSlideInput.getText()); 333*b1cdbd2cSJim Jagielski assertEquals(false, sdSlideNumAsFooterOnSlide.isChecked()); 334*b1cdbd2cSJim Jagielski // close header and footer dialog. 335*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.focus(); 336*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 337*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 338*b1cdbd2cSJim Jagielski // end close 339*b1cdbd2cSJim Jagielski 340*b1cdbd2cSJim Jagielski sdInsertPageButtonOnToolbar.click(); 341*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 342*b1cdbd2cSJim Jagielski assertEquals("", sdFixedDateAndTimeOnSlideInput.getText()); 343*b1cdbd2cSJim Jagielski assertEquals("", sdFooterTextOnSlideInput.getText()); 344*b1cdbd2cSJim Jagielski assertEquals(false, sdSlideNumAsFooterOnSlide.isChecked()); 345*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 346*b1cdbd2cSJim Jagielski } 347*b1cdbd2cSJim Jagielski 348*b1cdbd2cSJim Jagielski /** 349*b1cdbd2cSJim Jagielski * Test Insert Footer to Notes View 350*b1cdbd2cSJim Jagielski * 351*b1cdbd2cSJim Jagielski * @throws Exception 352*b1cdbd2cSJim Jagielski */ 353*b1cdbd2cSJim Jagielski @Test testInsertApplyToAllFooterOnNotes()354*b1cdbd2cSJim Jagielski public void testInsertApplyToAllFooterOnNotes() throws Exception { 355*b1cdbd2cSJim Jagielski 356*b1cdbd2cSJim Jagielski // add header and footer to focus slide. 357*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 358*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 359*b1cdbd2cSJim Jagielski sdHeaderTextOnNotes.check(); 360*b1cdbd2cSJim Jagielski sdHeaderTextOnNotesInput.setText("Header Test"); 361*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 362*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 363*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 364*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 365*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 366*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 367*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 368*b1cdbd2cSJim Jagielski 369*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 370*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 371*b1cdbd2cSJim Jagielski assertEquals(true, sdHeaderTextOnNotes.isChecked()); 372*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 373*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 374*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 375*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 376*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 377*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 378*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 379*b1cdbd2cSJim Jagielski // close header and footer dialog. 380*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.focus(); 381*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 382*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 383*b1cdbd2cSJim Jagielski // end close 384*b1cdbd2cSJim Jagielski 385*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 386*b1cdbd2cSJim Jagielski typeKeys("<up>"); 387*b1cdbd2cSJim Jagielski 388*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 389*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 390*b1cdbd2cSJim Jagielski assertEquals(true, sdHeaderTextOnNotes.isChecked()); 391*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 392*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 393*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 394*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 395*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 396*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 397*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 398*b1cdbd2cSJim Jagielski // close header and footer dialog. 399*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.focus(); 400*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 401*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 402*b1cdbd2cSJim Jagielski // end close 403*b1cdbd2cSJim Jagielski 404*b1cdbd2cSJim Jagielski sdInsertPageButtonOnToolbar.click(); 405*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 406*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 407*b1cdbd2cSJim Jagielski assertEquals(true, sdHeaderTextOnNotes.isChecked()); 408*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 409*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 410*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 411*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 412*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 413*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 414*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 415*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 416*b1cdbd2cSJim Jagielski } 417*b1cdbd2cSJim Jagielski 418*b1cdbd2cSJim Jagielski /** 419*b1cdbd2cSJim Jagielski * Test Insert Footer to Slide, use Apply to All 420*b1cdbd2cSJim Jagielski * 421*b1cdbd2cSJim Jagielski * @throws Exception 422*b1cdbd2cSJim Jagielski */ 423*b1cdbd2cSJim Jagielski @Test testInsertApplyToAllFooterOnSlide()424*b1cdbd2cSJim Jagielski public void testInsertApplyToAllFooterOnSlide() throws Exception { 425*b1cdbd2cSJim Jagielski 426*b1cdbd2cSJim Jagielski // add header and footer to focus slide. 427*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 428*b1cdbd2cSJim Jagielski 429*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 430*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 431*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120323"); 432*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 433*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 434*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 435*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 436*b1cdbd2cSJim Jagielski 437*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 438*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 439*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 440*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 441*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 442*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 443*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 444*b1cdbd2cSJim Jagielski // close header and footer dialog. 445*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.focus(); 446*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 447*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 448*b1cdbd2cSJim Jagielski // end close 449*b1cdbd2cSJim Jagielski 450*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 451*b1cdbd2cSJim Jagielski typeKeys("<up>"); 452*b1cdbd2cSJim Jagielski 453*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 454*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 455*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 456*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 457*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 458*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 459*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 460*b1cdbd2cSJim Jagielski // close header and footer dialog. 461*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.focus(); 462*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 463*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 464*b1cdbd2cSJim Jagielski // end close 465*b1cdbd2cSJim Jagielski 466*b1cdbd2cSJim Jagielski sdInsertPageButtonOnToolbar.click(); 467*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 468*b1cdbd2cSJim Jagielski assertEquals(true, sdDateAndTimeFooterOnSlide.isChecked()); 469*b1cdbd2cSJim Jagielski assertEquals(true, sdFixedDateAndTimeFooterOnSlide.isChecked()); 470*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120323", sdFixedDateAndTimeOnSlideInput.getText()); 471*b1cdbd2cSJim Jagielski assertEquals(true, sdFooterTextOnSlide.isChecked()); 472*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 473*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 474*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 475*b1cdbd2cSJim Jagielski } 476*b1cdbd2cSJim Jagielski 477*b1cdbd2cSJim Jagielski /** 478*b1cdbd2cSJim Jagielski * Test Insert update automatically time footer to slides. 479*b1cdbd2cSJim Jagielski * 480*b1cdbd2cSJim Jagielski * @throws Exception 481*b1cdbd2cSJim Jagielski */ 482*b1cdbd2cSJim Jagielski @Test testInsertAutoUpdateTimeFooter()483*b1cdbd2cSJim Jagielski public void testInsertAutoUpdateTimeFooter() throws Exception { 484*b1cdbd2cSJim Jagielski 485*b1cdbd2cSJim Jagielski // add header and footer 486*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 487*b1cdbd2cSJim Jagielski sdAutoUpdateTimeFooter.check(); 488*b1cdbd2cSJim Jagielski sdAutoUpdateTimeFooterType.select(7); 489*b1cdbd2cSJim Jagielski String currentTime = sdAutoUpdateTimeFooterType.getItemText(7); 490*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 491*b1cdbd2cSJim Jagielski sleep(1); 492*b1cdbd2cSJim Jagielski 493*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 494*b1cdbd2cSJim Jagielski String updatedTime = sdAutoUpdateTimeFooterType.getItemText(7); 495*b1cdbd2cSJim Jagielski assertNotSame("Time can not update", currentTime, updatedTime); 496*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 497*b1cdbd2cSJim Jagielski } 498*b1cdbd2cSJim Jagielski 499*b1cdbd2cSJim Jagielski /** 500*b1cdbd2cSJim Jagielski * Test Insert update automatically time footer to Notes view. 501*b1cdbd2cSJim Jagielski * 502*b1cdbd2cSJim Jagielski * @throws Exception 503*b1cdbd2cSJim Jagielski */ 504*b1cdbd2cSJim Jagielski @Test testInsertAutoUpdateTimeFooterOnNotes()505*b1cdbd2cSJim Jagielski public void testInsertAutoUpdateTimeFooterOnNotes() throws Exception { 506*b1cdbd2cSJim Jagielski 507*b1cdbd2cSJim Jagielski // add header and footer 508*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 509*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 510*b1cdbd2cSJim Jagielski sdAutoUpdateTimeFooter.check(); 511*b1cdbd2cSJim Jagielski String currentTime = sdAutoUpdateTimeFooterType.getItemText(7); 512*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 513*b1cdbd2cSJim Jagielski sleep(1); 514*b1cdbd2cSJim Jagielski 515*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 516*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 517*b1cdbd2cSJim Jagielski String updatedTime = sdAutoUpdateTimeFooterType.getItemText(7); 518*b1cdbd2cSJim Jagielski 519*b1cdbd2cSJim Jagielski assertNotSame("Time can not update", currentTime, updatedTime); 520*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 521*b1cdbd2cSJim Jagielski } 522*b1cdbd2cSJim Jagielski 523*b1cdbd2cSJim Jagielski /** 524*b1cdbd2cSJim Jagielski * Test Insert Header and Footer to Notes view. Save and ReOpen 525*b1cdbd2cSJim Jagielski * 526*b1cdbd2cSJim Jagielski * @throws Exception 527*b1cdbd2cSJim Jagielski */ 528*b1cdbd2cSJim Jagielski @Test testInsertHeaderFooterOnNotes()529*b1cdbd2cSJim Jagielski public void testInsertHeaderFooterOnNotes() throws Exception { 530*b1cdbd2cSJim Jagielski 531*b1cdbd2cSJim Jagielski // add header and footer 532*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 533*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 534*b1cdbd2cSJim Jagielski sdHeaderTextOnNotes.check(); 535*b1cdbd2cSJim Jagielski sdHeaderTextOnNotesInput.setText("Header Test"); 536*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 537*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 538*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120329"); 539*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 540*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 541*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 542*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 543*b1cdbd2cSJim Jagielski 544*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 545*b1cdbd2cSJim Jagielski typeKeys("<up>"); 546*b1cdbd2cSJim Jagielski 547*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 548*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 549*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 550*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 551*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 552*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 553*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 554*b1cdbd2cSJim Jagielski 555*b1cdbd2cSJim Jagielski // save and reopen this file 556*b1cdbd2cSJim Jagielski String saveTo = getPath("temp/" + "hello.odp"); 557*b1cdbd2cSJim Jagielski FileUtil.deleteFile(saveTo); 558*b1cdbd2cSJim Jagielski saveAs(saveTo); 559*b1cdbd2cSJim Jagielski close(); 560*b1cdbd2cSJim Jagielski open(saveTo); 561*b1cdbd2cSJim Jagielski impress.waitForExistence(10, 2); 562*b1cdbd2cSJim Jagielski 563*b1cdbd2cSJim Jagielski // check after reopen 564*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 565*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.select(); 566*b1cdbd2cSJim Jagielski assertEquals("Header Test", sdHeaderTextOnNotesInput.getText()); 567*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 568*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 569*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 570*b1cdbd2cSJim Jagielski sdHeaderAndFooterOnNotesTabPage.cancel(); 571*b1cdbd2cSJim Jagielski } 572*b1cdbd2cSJim Jagielski 573*b1cdbd2cSJim Jagielski /** 574*b1cdbd2cSJim Jagielski * Test Insert Header and Footer to Slide Save and Reopen 575*b1cdbd2cSJim Jagielski * 576*b1cdbd2cSJim Jagielski * @throws Exception 577*b1cdbd2cSJim Jagielski */ 578*b1cdbd2cSJim Jagielski @Test testInsertHeaderFooterOnSlide()579*b1cdbd2cSJim Jagielski public void testInsertHeaderFooterOnSlide() throws Exception { 580*b1cdbd2cSJim Jagielski 581*b1cdbd2cSJim Jagielski // add header and footer 582*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 583*b1cdbd2cSJim Jagielski sdDateAndTimeFooterOnSlide.check(); 584*b1cdbd2cSJim Jagielski sdFixedDateAndTimeFooterOnSlide.check(); 585*b1cdbd2cSJim Jagielski sdFixedDateAndTimeOnSlideInput.setText("Fix Date: 20120329"); 586*b1cdbd2cSJim Jagielski sdFooterTextOnSlide.check(); 587*b1cdbd2cSJim Jagielski sdFooterTextOnSlideInput.setText("Footer Test"); 588*b1cdbd2cSJim Jagielski sdSlideNumAsFooterOnSlide.check(); 589*b1cdbd2cSJim Jagielski sdApplyToAllButtonOnSlideFooter.click(); 590*b1cdbd2cSJim Jagielski 591*b1cdbd2cSJim Jagielski impressSlideSorter.focus(); 592*b1cdbd2cSJim Jagielski typeKeys("<up>"); 593*b1cdbd2cSJim Jagielski 594*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 595*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 596*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 597*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 598*b1cdbd2cSJim Jagielski 599*b1cdbd2cSJim Jagielski // close header and footer dialog. 600*b1cdbd2cSJim Jagielski sdApplyButtonOnSlideFooter.focus(); 601*b1cdbd2cSJim Jagielski typeKeys("<tab>"); 602*b1cdbd2cSJim Jagielski typeKeys("<enter>"); 603*b1cdbd2cSJim Jagielski 604*b1cdbd2cSJim Jagielski // save this file 605*b1cdbd2cSJim Jagielski String saveTo = getPath("temp/" + "hello.odp"); 606*b1cdbd2cSJim Jagielski FileUtil.deleteFile(saveTo); 607*b1cdbd2cSJim Jagielski saveAs(saveTo); 608*b1cdbd2cSJim Jagielski close(); 609*b1cdbd2cSJim Jagielski open(saveTo); 610*b1cdbd2cSJim Jagielski impress.waitForExistence(10, 2); 611*b1cdbd2cSJim Jagielski 612*b1cdbd2cSJim Jagielski // check after reopen 613*b1cdbd2cSJim Jagielski app.dispatch(".uno:HeaderAndFooter"); 614*b1cdbd2cSJim Jagielski assertEquals("Fix Date: 20120329", sdFixedDateAndTimeOnSlideInput.getText()); 615*b1cdbd2cSJim Jagielski assertEquals("Footer Test", sdFooterTextOnSlideInput.getText()); 616*b1cdbd2cSJim Jagielski assertEquals(true, sdSlideNumAsFooterOnSlide.isChecked()); 617*b1cdbd2cSJim Jagielski sdHeaderAndFooterDlgSlideTab.cancel(); 618*b1cdbd2cSJim Jagielski } 619*b1cdbd2cSJim Jagielski } 620