summaryrefslogtreecommitdiff
path: root/testautomation/dbaccess/required/includes/TableDesign.inc
diff options
context:
space:
mode:
Diffstat (limited to 'testautomation/dbaccess/required/includes/TableDesign.inc')
-rw-r--r--testautomation/dbaccess/required/includes/TableDesign.inc509
1 files changed, 509 insertions, 0 deletions
diff --git a/testautomation/dbaccess/required/includes/TableDesign.inc b/testautomation/dbaccess/required/includes/TableDesign.inc
new file mode 100644
index 000000000000..9da4d602a6d9
--- /dev/null
+++ b/testautomation/dbaccess/required/includes/TableDesign.inc
@@ -0,0 +1,509 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org 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 Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : marc.neumann@oracle.com
+'*
+'* short description : test the Main Table Design Application Window
+'*
+'************************************************************************
+'*
+' #1 tEdit
+' #1 tSave
+' #1 tSaveAs
+' #1 tIndexDesign
+' #1 tCut
+' #1 tCopy
+' #1 tPaste
+' #1 tUndo
+' #1 tRedo
+'*
+'\***********************************************************************************
+sub TableDesign
+
+ printlog "------------------ TableDesign.inc ---------------------"
+
+ printlog "-------------------- main menu -------------------------"
+ call tMainMenuBar
+
+ printlog "--------------------- toolbar --------------------------"
+ call tSave
+ call tIndexDesign
+ call tCut
+ call tCopy
+ call tPaste
+ call tUndo
+ call tRedo
+
+end sub
+'-------------------------------------------------------------------------
+testcase tSave
+
+ '/// open a new table design
+ printlog "open a new table design"
+ initTableDesign
+ sleep(1)
+ '/// insert a fieldname
+ printlog "insert a fieldname"
+ Kontext "TableDesignTable"
+ Fieldname.setText "hello"
+ sleep(1)
+ '/// click on the save button
+ printlog "click on the save button"
+ Kontext "Toolbar"
+ Save.Click
+ sleep(1)
+ '/// check if the save dialog appear
+ printlog "check if the save dialog appear"
+ Kontext "DatabaseTableSaveAs"
+ if ( not DatabaseTableSaveAs.exists(3) ) then
+ warnlog "the save dialog doesn't appear."
+ else
+ '/// cancel the save dialog
+ printlog "cancel the save dialog"
+ DatabaseTableSaveAs.Cancel
+ end if
+ '/// close tables design and the database
+ printlog "close tables design and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+testcase tIndexDesign
+
+ '/// open a new table design
+ printlog "open a new table design"
+ initTableDesign
+ sleep(1)
+ '/// insert a fieldname
+ printlog "insert a fieldname"
+ Kontext "TableDesignTable"
+ Fieldname.setText "hello"
+ sleep(1)
+ '/// click on the save button
+ printlog "click on the save button"
+ Kontext "Toolbar"
+ Save.Click
+ sleep(1)
+
+ Kontext "DatabaseTableSaveAs"
+ if ( not DatabaseTableSaveAs.exists(3) ) then
+ warnlog "the save dialog doesn't appear."
+ goto endsub
+ else
+ '/// save with the default name
+ printlog "save with the default name"
+ Kontext "DatabaseTableSaveAs"
+ TableName.setText("testtable1")
+ DatabaseTableSaveAs.OK
+ end if
+ '/// click on the index design icon
+ printlog "click on the index design icon"
+ Kontext "Toolbar"
+ DBIndexDesign.Click
+ sleep(1)
+
+ '/// close the index design
+ printlog "close the index design"
+ Kontext "DatabaseIndexes"
+ DatabaseIndexesClose.click
+
+ '/// close the table design
+ printlog "close the table design"
+ call fCloseTableDesign
+
+ '/// delete the created table
+ printlog "delete the created table"
+ call fDeleteTable("testtable1")
+
+ '/// close the database
+ printlog "close the database"
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+testcase tCut
+
+ '/// open a new tabledesign
+ printlog "open a new tabledesign"
+ initTableDesign
+ sleep(1)
+ '/// insert a field name
+ printlog "insert a field name"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "hello" , true
+ sleep(1)
+ '/// select the field name with SHIFT HOME
+ printlog "select the field name with SHIFT HOME"
+ TableDesignTable.TypeKeys "<SHIFT HOME>" , true
+ sleep(1)
+
+ '/// click on the cut button
+ printlog "click on the cut button"
+ Kontext "Toolbar"
+ Cut.Click
+ sleep(1)
+
+ '/// check if the text is in the clipboard
+ printlog "check if the text is in the clipboard"
+ if getClipboard <> "hello" then
+ warnlog "The Cut button doesn't work"
+ end if
+
+ '/// check if the fieldname is cutted
+ printlog "check if the fieldname is cutted"
+ Kontext "TableDesignTable"
+ if ( Fieldname.getText <> "" ) then
+ warnlog "the text was not cutted"
+ end if
+
+ '/// close the table design and the database
+ printlog "close the table design and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+testcase tCopy
+ '/// open a new tabledesign
+ printlog "open a new tabledesign"
+ initTableDesign
+ '/// insert a field name
+ printlog "insert a field name"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "hello" , true
+ sleep(1)
+ '/// select the field name with SHIFT HOME
+ printlog "select the field name with SHIFT HOME"
+ TableDesignTable.TypeKeys "<SHIFT HOME>" , true
+ sleep(1)
+
+ '/// click on the copy icon
+ printlog "click on the copy icon"
+ Kontext "Toolbar"
+ Copy.Click
+ sleep(1)
+
+ '/// check if the text is in the clipboard
+ printlog "check if the text is in the clipboard"
+ if getClipboard <> "hello" then
+ warnlog "The Cut button doesn't work"
+ end if
+ '/// close the table design and the database
+ printlog "close the table design and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+testcase tPaste
+
+ '/// opene new table design
+ printlog "opene new table design"
+ initTableDesign
+
+ '/// set a string to the clipboard
+ printlog "set a string to the clipboard"
+ setClipboard "word"
+
+ '/// press the cursor left key
+ printlog "press the cursor left key"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "<LEFT>" , true
+
+ '/// paste the text from the clipbaord
+ printlog "paste the text from the clipbaord"
+ Kontext "Toolbar"
+ Paste.Click
+ sleep(1)
+ '/// check if the text is pasted to the fieldname
+ printlog "check if the text is pasted to the fieldname"
+ Kontext "TableDesignTable"
+ if Fieldname.getText <> "word" then
+ warnlog "the paste button doesn't work"
+ end if
+ '/// close the table design and the database
+ printlog "close the table design and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+testcase tUndo
+
+ '/// opene new table design
+ printlog "opene new table design"
+ initTableDesign
+
+ '/// set a string to the clipboard
+ printlog "set a string to the clipboard"
+ setClipboard "word"
+
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "" , true
+
+ '/// paste the text from the clipbaord
+ printlog "paste the text from the clipbaord"
+ Kontext "Toolbar"
+ Paste.Click
+ sleep(1)
+ '/// check if the text is pasted to the fieldname
+ printlog "check if the text is pasted to the fieldname"
+ Kontext "TableDesignTable"
+ if Fieldname.getText <> "word" then
+ warnlog "the paste button doesn't work"
+ end if
+
+ '/// click the undo icon
+ printlog "click the undo icon"
+ Kontext "Toolbar"
+ Undo.Click
+ sleep(1)
+
+ '/// check if the fieldname is empty again(undo work)
+ printlog "check if the fieldname is empty again(undo work)"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "<LEFT>" , true
+ if Fieldname.getText <> "" then
+ warnlog "the undo button doesn't work"
+ end if
+ '/// close the table design and the database
+ printlog "close the table design and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+
+endcase
+'-------------------------------------------------------------------------
+testcase tRedo
+
+ '/// opene new table design
+ printlog "opene new table design"
+ initTableDesign
+
+ '/// set a string to the clipboard
+ printlog "set a string to the clipboard"
+ setClipboard "word"
+
+ '/// press the cursor left key
+ printlog "press the cursor left key"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "<LEFT>" , true
+
+ '/// paste the text from the clipbaord
+ printlog "paste the text from the clipbaord"
+ Kontext "Toolbar"
+ Paste.Click
+ sleep(1)
+
+ '/// check if the text is pasted to the fieldname
+ printlog "check if the text is pasted to the fieldname"
+ Kontext "TableDesignTable"
+ if Fieldname.getText <> "word" then
+ warnlog "the paste button doesn't work"
+ end if
+
+ '/// click the undo icon
+ printlog "click the undo icon"
+ Kontext "Toolbar"
+ Undo.Click
+ sleep(1)
+
+ '/// press the cursor left key
+ printlog "press the cursor left key"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "<LEFT>" , true
+ if Fieldname.getText <> "" then
+ warnlog "the undo button doesn't work"
+ end if
+
+ '/// click the redo icon
+ printlog "click the redo icon"
+ Kontext "Toolbar"
+ Redo.Click
+ sleep(1)
+
+ '/// press the cursor left key
+ printlog "press the cursor left key"
+ Kontext "TableDesignTable"
+ TableDesignTable.TypeKeys "<LEFT>" , true
+ if Fieldname.getText <> "word" then
+ warnlog "the redo button doesn't work"
+ end if
+
+ '/// close the tabledesign and the database
+ printlog "close the tabledesign and the database"
+ call fCloseTableDesign
+ call fCloseDatabase
+
+
+endcase
+'-------------------------------------------------------------------------
+'-------------------------------------------------------------------------
+testcase tMainMenuBar
+
+ dim iCount as integer ' the numbers of the items in the menu.
+
+ call initTableDesign
+
+ Kontext "TableDesignTable"
+ TableDesignTable.UseMenu
+
+ '/// check if there are between 8 and 12 items in the file menu.
+ printlog "check if there are between 8 and 12 items in the file menu."
+ '/// + there different count related to the file pick list.
+ printlog "+ there different count related to the file pick list."
+ hMenuSelectNr(1) ' the file menu
+ iCount = getMenuItemCount()
+ if ( lcase( gPlatform ) = "osx" ) then
+ if ( iCount <> 7 ) then
+ warnlog( "File menu: 7 items expected, found " & iCount )
+ endif
+ else
+ if (iCount <> 8 ) then
+ warnlog "There should between 8 and 12 items in the file menu but there are " + iCount + " items."
+ end if
+ endif
+
+ '/// check if there are 12 items in the FILE/NEW menu.
+ printlog "check if there are 12 items in the FILE/NEW menu."
+ printlog "check the FILE/NEW"
+ hMenuSelectNr(1) ' FILE/NEW menu
+ iCount = hMenuItemGetCount()
+ if (iCount <> 12) then
+ warnlog "There should 12 items in the FILE/NEW menu but there are " + iCount + " items."
+ end if
+ call hMenuClose() ' close the FILE menu
+
+ '/// check the FILE/AUTOPILOTS
+ printlog "check the FILE/AUTOPILOTS"
+ TableDesignTable.UseMenu
+ hMenuSelectNr(1) ' the file menu
+ hMenuSelectNr(3) ' the autopilots menu
+ iCount = hMenuItemGetCount()
+ if (iCount <> 8) then
+ warnlog "There should 8 items in the FILE/AUTOPILOTS menu but there are " + iCount + " items."
+ endif
+ call hMenuClose()
+
+ '/// check if there are 5 items in the edit menu.
+ printlog "check if there are 5 items in the edit menu."
+ TableDesignTable.UseMenu
+ hMenuSelectNr(2)
+ iCount = hMenuItemGetCount()
+ if (iCount <> 5) then
+ warnlog "There should 5 items in the edit menu but there are " + iCount + " items."
+ end if
+ call hMenuClose()
+
+ '/// check if there are 2 items in the view menu.
+ printlog "check if there are 2 items in the view menu."
+ TableDesignTable.UseMenu
+ hMenuSelectNr(3)
+ iCount = hMenuItemGetCount()
+ if (iCount <> 2) then
+ warnlog "There should 2 items in the edit menu but there are " + iCount + " items."
+ end if
+ call hMenuClose()
+
+ '/// check if there are 5 items in the tools menu.
+ printlog "check if there are 5 items in the tools menu."
+ TableDesignTable.UseMenu
+ hMenuSelectNr(4)
+ iCount = hMenuItemGetCount()
+ if ( lcase( gPlatform ) = "osx" ) then
+ if ( iCount <> 4 ) then
+ warnlog( "Tools menu: 4 items expected, found " & iCount )
+ endif
+ else
+ if (iCount <> 5) then
+ warnlog "There should 5 items in the tools menu but there are " + iCount + " items."
+ end if
+ endif
+ call hMenuClose()
+
+ '/// check if there are 4 items in the TOOLS/MACRO menu.
+ printlog "check if there are 4 items in the TOOLS/MACRO menu."
+ TableDesignTable.UseMenu
+ hMenuSelectNr(4)
+ hMenuSelectNr(2)
+ iCount = hMenuItemGetCount()
+ if (iCount <> 4) then
+ warnlog "There should 4 items in the TOOLS/MACRO menu but there are " + iCount + " items."
+ end if
+ call hMenuClose()
+
+ call fCloseTableDesign
+
+ call fCloseDatabase
+
+endcase
+'-------------------------------------------------------------------------
+'-------------------------------------------------------------------------
+'-------------------------------------------------------------------------
+function getMenuItemCount as Integer
+'use this function becasue this doesn't count the pick list
+ Dim i as Integer
+ Dim j as Integer
+ Dim Ende as Integer
+ Dim nID as Integer
+ Sleep 2
+ j=0
+ for i=1 to MenuGetItemCount
+ if NOT MenuIsSeperator ( i ) then
+ dim s as String
+ s = Mid(MenuGetItemText( MenuGetItemID(i)),3,1)
+ 'printlog "s = " + s
+ 'printlog "MenuGetItemText( MenuGetItemID(i)) = " + MenuGetItemText( MenuGetItemID(i))
+ if s <> ":" then
+ j=j+1
+ endif
+ endif
+ next i
+ getMenuItemCount = j
+end function
+'-------------------------------------------------------------------------
+sub initTableDesign
+
+ hFileOpen( gOfficePath & "user/database/biblio.odb" )
+
+ Kontext "DATABASE"
+
+ Database.MouseDown(50,50)
+ Database.MouseUp(50,50)
+
+ sleep(1)
+
+ ViewTables
+
+ sleep(1)
+
+ NewTableDesign
+
+ sleep(2)
+
+end sub