diff options
author | premkumar <premkumar> | 2005-08-18 04:25:40 +0000 |
---|---|---|
committer | premkumar <premkumar> | 2005-08-18 04:25:40 +0000 |
commit | 3669f13560453d529f72f00819cb68f24e87bd41 (patch) | |
tree | eb0a076b0b37b4eac153bfe09249599387ac7d58 | |
parent | 0c6f749159414df31f66904c7a012618aa70d379 (diff) |
Updated sanity scripts for Evolution 2.3.7 mailer and calendar
27 files changed, 944 insertions, 266 deletions
diff --git a/evolution/IMAGES/attachment_refimg.png b/evolution/IMAGES/attachment_refimg.png Binary files differnew file mode 100644 index 0000000..bd26d0f --- /dev/null +++ b/evolution/IMAGES/attachment_refimg.png diff --git a/evolution/IMAGES/composemail_refimg.png b/evolution/IMAGES/composemail_refimg.png Binary files differnew file mode 100644 index 0000000..9c6f72b --- /dev/null +++ b/evolution/IMAGES/composemail_refimg.png diff --git a/evolution/IMAGES/forwardmail_refimg.png b/evolution/IMAGES/forwardmail_refimg.png Binary files differnew file mode 100644 index 0000000..84d46f1 --- /dev/null +++ b/evolution/IMAGES/forwardmail_refimg.png diff --git a/evolution/IMAGES/replymail_refimg.png b/evolution/IMAGES/replymail_refimg.png Binary files differnew file mode 100644 index 0000000..3cf3252 --- /dev/null +++ b/evolution/IMAGES/replymail_refimg.png diff --git a/evolution/README b/evolution/README index 0f6ce72..60182ec 100644 --- a/evolution/README +++ b/evolution/README @@ -1,6 +1,6 @@ -+ In this release we have provided test scripts for Evolution-2.3.4 mailer automated testing ++ In this release we have provided test scripts for Evolution-2.3.7 mailer automated testing -+ For all the verifications involving image comparision it is necessary to replace the following files with those images taken in the testing scenario. ++ For all the verifications involving image comparision it is necessary to replace the following files with those images taken in the testing scenario. Please save these file in the <LDTP-HOME>/pyautosuite/evolution/IMAGES * composemail_refimg.png * attachmail_refimg.png * forwardmail_refimg.png @@ -8,4 +8,16 @@ + Please make sure that all the image files are in .png format. -+ Please make sure that all tha .dat files contain the correct data for the scenario in which the testing is undertaken.
\ No newline at end of file ++ Please make sure that all tha .dat files contain the correct data for the scenario in which the testing is undertaken. + ++ We have provided test scripts for Evolution-2.3.7 Calendar automated testing of the following actions + * Create and verify meeting + * Create and verify appointment + * Create and configure a web calendar + ++ Please make sure that the test cases used are not present already in the calendar + ++ Please make sure that all the .dat files contain the correct data for the scenario in which the testing is undertaken. + For example: The entry 'nags@dell.net' should be replaced with the test account using which testing is undertaken, in + all .dat files. ++ Please note that if a field in a .dat file is optional it is necessary to include '$' as placeholder for that value.
\ No newline at end of file diff --git a/evolution/compose-mail-w-attachment.dat b/evolution/compose-mail-w-attachment.dat index d7ad9cc..ccea0d1 100644 --- a/evolution/compose-mail-w-attachment.dat +++ b/evolution/compose-mail-w-attachment.dat @@ -1,5 +1,5 @@ -jpremkumar@novell.com -jpremkumar@novell.com +nags@dell.net +nags@dell.net this is subject this is body resume-Vishu.doc
\ No newline at end of file diff --git a/evolution/compose-mail-w-attachment.py b/evolution/compose-mail-w-attachment.py index 94f8abc..d779549 100644 --- a/evolution/compose-mail-w-attachment.py +++ b/evolution/compose-mail-w-attachment.py @@ -27,8 +27,9 @@ #To compose a new mail message through File menu def compose_mail_w_attachment ( to, subject, body,filename ,cc=''): try: - selectmenuitem ('evolution', 'mnuTools;mnuMail') - time.sleep(3) + time.sleep (10) + selectmenuitem ('evolution', 'mnuView;mnuWindow;mnuMail') + time.sleep (10) selectmenuitem ('evolution', 'mnuFile;mnuFileNew;mnuMailMessage') time.sleep(3) if guiexist ('Composeamessage') == 0: @@ -42,7 +43,6 @@ def compose_mail_w_attachment ( to, subject, body,filename ,cc=''): log ('Select file dialog does not appear','error') raise LdtpExecutionError (0) else: - #setcontext (subject,'dlgAttachfile') selectrow ('dlgAttachfile','tblFiles',filename) click ('dlgAttachfile','btnAttach') time.sleep(5) @@ -50,7 +50,6 @@ def compose_mail_w_attachment ( to, subject, body,filename ,cc=''): log ('Select file dialog does not close after clicking attach button','error') raise LdtpExecutionError (0) else: - #setcontext ('dlgAttachfile',subject) click ('Composeamessage', 'btnSend') time.sleep(3) if guiexist ('Composeamessage') == 1: diff --git a/evolution/compose-mail.dat b/evolution/compose-mail.dat index e096b3c..00e8342 100644 --- a/evolution/compose-mail.dat +++ b/evolution/compose-mail.dat @@ -1,4 +1,4 @@ -jpremkumar@novell.com -jpremkumar@novell.com +nags@dell.net +nags@dell.net this is subject this is body
\ No newline at end of file diff --git a/evolution/compose-mail.py b/evolution/compose-mail.py index a6366ab..41bf33e 100644 --- a/evolution/compose-mail.py +++ b/evolution/compose-mail.py @@ -28,7 +28,7 @@ #To compose a new mail message through File menu def compose_mail ( to, subject, body, cc=''): try: - selectmenuitem ('evolution', 'mnuTools;mnuMail') + selectmenuitem ('evolution', 'mnuView;mnuWindow;mnuMail') time.sleep(3) selectmenuitem ('evolution', 'mnuFile;mnuFileNew;mnuMailMessage') time.sleep(3) @@ -38,7 +38,7 @@ def compose_mail ( to, subject, body, cc=''): else: populate_mail_header (to, subject, body, cc) click ('Composeamessage', 'btnSend') - time.sleep(3) + time.sleep(15) if guiexist ('Composeamessage') == 1: log ('Failed during clicking the send button','error') raise LdtpExecutionError (0) @@ -58,13 +58,13 @@ cc = record[1].strip() subject = record[2].strip() body = record[3].strip() -log ('Compose new message','Start') +log ('Compose new message','teststart') time.sleep(3) compose_mail (to,subject,body,cc) time.sleep(3) -log ('Compose new message','end') -log ('Compose new message Verification','Start') +log ('Compose new message','testend') +log ('Compose new message Verification','teststart') time.sleep(3) -verifymailwithimage ('Sent Items',-9,'composemail_refimage.png') +verifymailwithimage ('Sent Items',-1,'composemail_refimage.png') time.sleep(3) -log ('Compose new message Verification','end') +log ('Compose new message Verification','testend') diff --git a/evolution/copymail.dat b/evolution/copymail.dat index 3c9828d..83b433d 100644 --- a/evolution/copymail.dat +++ b/evolution/copymail.dat @@ -1,2 +1,3 @@ Inbox -bugs
\ No newline at end of file +bugs +$
\ No newline at end of file diff --git a/evolution/copymail.py b/evolution/copymail.py index 74ff9fd..e185a80 100644 --- a/evolution/copymail.py +++ b/evolution/copymail.py @@ -27,58 +27,57 @@ #Copying an existing Mail # Section to select and copy mail -def copy_mail (from_fldr,to_fldr): - #TODO: Current implementation supports copying only the last mail. - #It should be extended to copy any arbitary mail like i. +def copy_mail (from_fldr,to_fldr, mail_index): try: + time.sleep (10) selectrowpartialmatch ('evolution', 'ttblMailFolderTree', to_fldr) - row_before = getrowcount('evolution', 'ttblMessageList') + row_before = getrowcount('evolution', 'ttblMessageList') + time.sleep (2) selectrowpartialmatch ('evolution', 'ttblMailFolderTree', from_fldr) rowcount = getrowcount('evolution', 'ttblMessageList') if rowcount > 0: - #selectlastrow ('evolution', 'ttblMessageList') - selectrowindex ('evolution', 'ttblMessageList', - rowcount-3) - selectmenuitem ('evolution', - 'mnuMessage;mnuCopyToFolder') - selectrowpartialmatch ('dlgSelectfolder', - 'ttblMailFolderTree',to_fldr ) - click ('dlgSelectfolder','btnCopy') + if mail_index == -1: + mail_index = getrowcount ('evolution','ttblMessageList') -1 + selectrowindex ('evolution', 'ttblMessageList', mail_index) + selectmenuitem ('evolution', 'mnuMessage;mnuCopyToFolder') + time.sleep (2) + selectrowpartialmatch ('dlgSelectfolder','ttblMailFolderTree', to_fldr ) + click ('dlgSelectfolder', 'btnCopy') + time.sleep (2) if guiexist('dlgSelectfolder') == 0: - log ('Select folder dialog not closed', - 'error') - raise LdtpexecutionError(0) + log ('Select folder dialog not closed', 'error') + raise LdtpExecutionError(0) else: - selectrowpartialmatch ('evolution', - 'ttblMailFolderTree',to_fldr) - wait (5) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', to_fldr) + time.sleep (5) row_after = getrowcount('evolution', 'ttblMessageList') selectmenuitem ('evolution', 'mnuFile;mnuClose') if row_after > row_before: - log ('Copying a mail passed successfully', - 'pass') + log ('Copying a mail passed successfully','pass') else : - log ('Copying a mail failed', - 'fail') + log ('Copying a mail failed', 'fail') else: log ('From folder empty!', 'Warning') - log ('Did not move any mails to other folder', - 'Pass') + log ('Did not move any mails to other folder', 'Pass') except ldtp.error,msg: print 'Copying mail between folders failed',str(msg) log ('Copying mail failed','fail') #Read input from file file = open ('copymail.dat', 'r') -argmts = file.readlines() -from_fldr = argmts[0].strip( ) -to_fldr = argmts[1].strip( ) +argmts = file.readlines () +from_fldr = argmts[0].strip () +to_fldr = argmts[1].strip () +mail_index = argmts[2].strip () + +if mail_index == '$': + mail_index = -1; # Call the function log ('copyingmail', 'teststart') -copy_mail (from_fldr,to_fldr) +copy_mail (from_fldr, to_fldr, mail_index) log ('copyingmail', 'testend') -log ('Cppying mail succeded', 'pass') + diff --git a/evolution/create-calendar.py b/evolution/create-calendar.py index 973c8ff..02e51a9 100644 --- a/evolution/create-calendar.py +++ b/evolution/create-calendar.py @@ -75,6 +75,12 @@ try: log ('Failed to close new calendar dialog', 'error') raise LdtpExecutionError (0) else: + time.sleep (5) + #Fixme: Just a workaround for verifying the calendar + #If there is any better way please replace the following code with that :) + if seletecrowpartialmatch ('evolution', 'tbl0', 'Independance Day') == 0: + log ('Configuratoin of web calendar failed', 'cause') + raise LdtpExecutionError (0) log ('Calendar creation', 'Pass') except error,msg: print 'Creation of Calendar failed' + str(msg) diff --git a/evolution/create-meeting.dat b/evolution/create-meeting.dat new file mode 100644 index 0000000..df555b9 --- /dev/null +++ b/evolution/create-meeting.dat @@ -0,0 +1,10 @@ +this is sample summary +this is sample location +this is sample description +$ +$ +$ +$ +$ +$ +$
\ No newline at end of file diff --git a/evolution/create-meeting.py b/evolution/create-meeting.py new file mode 100644 index 0000000..d604076 --- /dev/null +++ b/evolution/create-meeting.py @@ -0,0 +1,115 @@ +# +# Linux Desktop Testing Project http://www.gnomebangalore.org/ldtp +# +# Author: +# Sheetal <svnayak18@yahoo.com> +# Prem <jpremkumar@novell.com> +# +# Copyright 2004 Novell, Inc. +# +# This test script is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library 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 +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this library; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. +# +#To create a Meeting + +#Reading inputs from file +file = open ('create-meeting.dat','r') +data = file.readlines () +summary = data[0].strip () +location = data[1].strip () +description = data[2].strip () +classification = data[3].strip () +categories = data[4].strip () +moncount = data[5].strip () +on = data[6].strip () +day = data[7].strip () +occurences = data[8].strip () +exception = data[9].strip () + +#TODO: INCLUDE actual date values after fixing the problem in insert_appointment +date0 = 0 +time0 = 0 +date1 = 0 +time1 = 0 + +#setting up default values +if classification == '$': + classification = 'Public' +if categories == '$': + categories = 'Business' +if moncount == '$': + moncount = '3' +if on == '$': + on = 'First' +if day == '$': + day = 'Monday' +if occurences == '$': + occurences = '5' +if exception =='$' or exception > occurences: + if exception > occurences: + log ('Setting exception to default value since given value is inappropriate', 'warning') + exception = 2 + +#creation fo meeting +log ('Meeting Creation', 'teststart') + +try: + windowname = 'dlgMeeting-Nosummary' + ptlistname = 'ptlMeeting-Nosummary0' + selectmenuitem ('evolution', 'mnuView;mnuWindow;mnuCalendars') + time.sleep (2) + selectmenuitem ('evolution', 'mnuFile;mnuFileNew;mnuMeeting') + time.sleep (2) + if guiexist (windowname) == 0: + log ('Failed to open new meeting window', 'cause') + raise LdtpExecutionError (0) + else: + log ('Insertion of Appointment values', 'teststart') + insert_appointment (windowname, ptlistname, summary, location, description, date0, + time0, date1, time1, classification, categories) + log ('Insertion of Appointment values', 'testend') + time.sleep (2) + log ('Insertion of recurrence values', 'teststart') + insert_recurrence (windowname, ptlistname, moncount, on, day, occurences, exception) + log ('Insertion of recurrence values', 'testend') + time.sleep (2) + + #TODO: include insert invitation + + click ('dlgMeeting-Nosummary', 'btnOK') + time.sleep (3) + if guiexist ('dlgEvolutionQuery') == 0: + log ('Failed to open evolution query dialog' ,'cause') + raise LdtpExecutionError (0) + else: + click ('dlgEvolutionQuery', 'btnDon\'tSend') + time.sleep (3) + log ('Ignore the following error message, Because of Guiexist usage', 'info') + if guiexist ('dlgEvolutionQuery') == 1: + log ('Failed to close evolution query dialog' ,'cause') + raise LdtpExecutionError (0) + time.sleep (2) + log ('Ignore the following error message, Because of Guiexist usage', 'info') + if guiexist ('dlgMeeting-Nosummary') == 1: + log ('Failed to close meeting dialog' ,'cause') + raise LdtpExecutionError (0) + releasecontext () + log ('Creation of meeting succeeded', 'Pass') +except error,msg: + releasecontext () + print 'Creation of meeting failed' + str(msg) + log ('Creation of meeting failed', 'error') + +log ('Meeting Creation', 'testend') diff --git a/evolution/deletemail.dat b/evolution/deletemail.dat index b4f64fc..cc70211 100644 --- a/evolution/deletemail.dat +++ b/evolution/deletemail.dat @@ -1 +1,2 @@ -bugs
\ No newline at end of file +Inbox +$
\ No newline at end of file diff --git a/evolution/deletemail.py b/evolution/deletemail.py index 037ba93..8377276 100644 --- a/evolution/deletemail.py +++ b/evolution/deletemail.py @@ -27,47 +27,45 @@ #Moving an existing Mail # Section to select and move mail -def delete_mail (source_fldr): - #TODO: Currently deletes only the last mail. Should be extended to delete - #any arbitary mail +def delete_mail (source_fldr, mail_index): try: + time.sleep (10) selectrowpartialmatch ('evolution', 'ttblMailFolderTree', source_fldr) rowcount = getrowcount('evolution', 'ttblMessageList') if rowcount > 0: - #selectlastrow ('evolution', 'ttblMessageList') - selectrowindex ('evolution', 'ttblMessageList', - rowcount-3) - selectmenuitem ('evolution', - 'mnuEdit;mnuDeleteMessage') + if mail_index == -1: + mail_index = rowcount - 1 + selectrowindex ('evolution', 'ttblMessageList', mail_index) + selectmenuitem ('evolution', 'mnuEdit;mnuDeleteMessage') time.sleep (3) - selectrowpartialmatch ('evolution', - 'ttblMailFolderTree',to_fldr) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree',source_fldr) time.sleep (5) - row_after = getrowcount('evolution', - 'ttblMessageList') - selectmenuitem ('evolution', 'mnuFile;mnuClose') + row_after = getrowcount('evolution','ttblMessageList') + #selectmenuitem ('evolution', 'mnuFile;mnuClose') if row_after < rowcount: - log ('Deleting a mail passed successfully', - 'pass') + log ('Deleting a mail passed successfully', 'pass') else: - log ('Deleting a mail failed','fail') + log ('Deleting a mail failed', 'fail') else: log ('From folder empty!', 'Warning') - log ('Did not Delete any mail from source folder', - 'Pass') + log ('Did not Delete any mail from source folder', 'Pass') except ldtp.error,msg: - print 'Deleting mail between folders failed',str(msg) - log ('Moving mail failed','fail') + print 'Deleting mail between folders failed', str(msg) + log ('Moving mail failed', 'fail') #Read input from file file = open ('deletemail.dat', 'r') argmts = file.readlines() -source_fldr = argmts[0].strip( ) +source_fldr = argmts[0].strip () +mail_index = argmts[1].strip () +if mail_index == '$': + mail_index = -1 + # Call the function log ('deletemail', 'teststart') -delete_mail (source_fldr) +delete_mail (source_fldr, mail_index) log ('deletemail', 'testend') log ('Deleting mail succeeded', 'pass') diff --git a/evolution/evolution.map b/evolution/evolution.map index 7ba4b86..af2c9cc 100644 --- a/evolution/evolution.map +++ b/evolution/evolution.map @@ -17,7 +17,7 @@ mnuTask={class=menu_item, label=Task, parent=mnuFileNew} mnuAddressBook={class=menu_item, label=Address Book, parent=mnuFileNew} mnuCalendar={class=menu_item, label=Calendar, parent=mnuFileNew} mnuTasklist={class=menu_item, label=Task list, parent=mnuFileNew} -mnuNewWindow={class=menu_item, label=New Window, parent=mnuFile} +mnuFileNewWindow={class=menu_item, label=New Window, parent=mnuFile} mnuSend/Receive={class=menu_item, label=Send / Receive, parent=mnuFile} mnuSaveMessage={class=menu_item, label=Save Message..., parent=mnuFile} mnuImport={class=menu_item, label=Import..., parent=mnuFile} @@ -37,7 +37,6 @@ mnuFindinMessage={class=menu_item, label=Find in Message..., parent=mnuEdit} mnuSynchronizationOptions={class=menu_item, label=Synchronization Options..., parent=mnuEdit} mnuMessageFilters={class=menu_item, label=Message Filters, parent=mnuEdit} mnuSearchFolders={class=menu_item, label=Search Folders, parent=mnuEdit} -mnuPlugins={class=menu_item, label=Plugins, parent=mnuEdit} mnuPreferences={class=menu_item, label=Preferences, parent=mnuEdit} mnuView={class=menu, label=View} mnuCurrentView={class=menu, label=Current View} @@ -50,6 +49,11 @@ mnuByFollowUpFlag={class=radio_menu_item, label=By Follow Up Flag, parent=mnuByF mnuCustomView={class=radio_menu_item, label=Custom View, parent=mnuCustomView} mnuSaveCustomView={class=menu_item, label=Save Custom View..., parent=mnuSaveCustomView...} mnuDefineViews={class=menu_item, label=Define Views..., parent=mnuDefineViews...} +mnuWindow={class=menu, label=Window} +mnuMail={class=menu_item, label=Mail, parent=mnuWindow} +mnuContacts={class=menu_item, label=Contacts, parent=mnuWindow} +mnuCalendars={class=menu_item, label=Calendars, parent=mnuWindow} +mnuTasks={class=menu_item, label=Tasks, parent=mnuWindow} mnuToolbar={class=check_menu_item, label=Toolbar, parent=mnuView} mnuMessagePreview={class=check_menu_item, label=Message Preview, parent=mnuView} mnuSwitcherAppearance={class=menu, label=Switcher Appearance} @@ -58,11 +62,11 @@ mnuIconsonly={class=radio_menu_item, label=Icons only, parent=mnuIconsonly} mnuTextonly={class=radio_menu_item, label=Text only, parent=mnuTextonly} mnuToolbarstyle={class=radio_menu_item, label=Toolbar style, parent=mnuToolbarstyle} mnuHidebuttons={class=check_menu_item, label=Hide buttons, parent=mnuHidebuttons} -mnuShowMessages={class=menu, label=Show Messages} -mnuAll={class=radio_menu_item, label=All, parent=mnuAll} -mnuUnreadMessages={class=radio_menu_item, label=Unread Messages, parent=mnuUnreadMessages} mnuGroupByThreads={class=check_menu_item, label=Group By Threads, parent=mnuView} mnuHideDeletedMessages={class=check_menu_item, label=Hide Deleted Messages, parent=mnuView} +mnuHideSelectedMessages={class=menu_item, label=Hide Selected Messages, parent=mnuView} +mnuHideReadMessages={class=menu_item, label=Hide Read Messages, parent=mnuView} +mnuShowHiddenMessages={class=menu_item, label=Show Hidden Messages, parent=mnuView} mnuLoadImages={class=menu_item, label=Load Images, parent=mnuView} mnuAllMessageHeaders={class=check_menu_item, label=All Message Headers, parent=mnuView} mnuCaretMode={class=check_menu_item, label=Caret Mode, parent=mnuView} @@ -147,18 +151,6 @@ mnuVFolderonSubject={class=menu_item, label=VFolder on Subject..., parent=mnuVFo mnuVFolderonSender={class=menu_item, label=VFolder on Sender..., parent=mnuVFolderonSender...} mnuVFolderonRecipients={class=menu_item, label=VFolder on Recipients..., parent=mnuVFolderonRecipients...} mnuVFolderonMailingList={class=menu_item, label=VFolder on Mailing List..., parent=mnuVFolderonMailingList...} -mnuMailingList={class=menu, label=Mailing List} -mnuGetlistusageinformation={class=menu_item, label=Get list usage information, parent=mnuGetlistusageinformation} -mnuSubscribetolist={class=menu_item, label=Subscribe to list, parent=mnuSubscribetolist} -mnuUn-subscribetolist={class=menu_item, label=Un-subscribe to list, parent=mnuUn-subscribetolist} -mnuPostmessagetolist={class=menu_item, label=Post message to list, parent=mnuPostmessagetolist} -mnuContactlistowner={class=menu_item, label=Contact list owner, parent=mnuContactlistowner} -mnuGetlistarchive={class=menu_item, label=Get list archive, parent=mnuGetlistarchive} -mnuTools={class=menu, label=Tools} -mnuMail={class=menu_item, label=Mail, parent=mnuTools} -mnuContacts={class=menu_item, label=Contacts, parent=mnuTools} -mnuCalendars={class=menu_item, label=Calendars, parent=mnuTools} -mnuTasks={class=menu_item, label=Tasks, parent=mnuTools} mnuSearch={class=menu, label=Search} mnuFindNow={class=menu_item, label=Find Now, parent=mnuSearch} mnuClear={class=menu_item, label=Clear, parent=mnuSearch} @@ -217,7 +209,7 @@ ptl0={class=page_tab_list, instance_index=0} ptb0={class=page_tab, instance_index=0} pnl30={class=panel, instance_index=30,parent=Evolution-Mail} pnl31={class=panel, instance_index=31,parent=Evolution-Mail} -lbl82total={class=label, label=82 total} +lbl118total={class=label, label=118 total} ttblMailFolderTree={class=tree_table, label=Mail Folder Tree} tbtnMail={class=toggle_button, label=Mail} tbtnContacts={class=toggle_button, label=Contacts} @@ -242,13 +234,54 @@ btnFindNow={class=push_button, label=Find Now} pnl35={class=panel, instance_index=35,parent=Evolution-Mail} btnClear={class=push_button, label=Clear} ttblMessageList={class=tree_table, label=Message List} +pnlPanelcontainingHTML={class=panel} +pnl37={class=panel, instance_index=37,parent=pnlPanelcontainingHTML} +tbl0={class=table, instance_index=0} +pnl38={class=panel, instance_index=38,parent=pnlPanelcontainingHTML} +tbl1={class=table, instance_index=1,parent=pnlPanelcontainingHTML} +pnl39={class=panel, instance_index=39,parent=pnlPanelcontainingHTML} +txt1={class=text, instance_index=1,parent=pnlPanelcontainingHTML} +pnl40={class=panel, instance_index=40,parent=pnlPanelcontainingHTML} +txt2={class=text, instance_index=2,parent=pnlPanelcontainingHTML} +pnl41={class=panel, instance_index=41,parent=pnlPanelcontainingHTML} +txt3={class=text, instance_index=3,parent=pnlPanelcontainingHTML} +pnl42={class=panel, instance_index=42,parent=pnlPanelcontainingHTML} +txt4={class=text, instance_index=4,parent=pnlPanelcontainingHTML} +pnl43={class=panel, instance_index=43,parent=pnlPanelcontainingHTML} +txt5={class=text, instance_index=5,parent=pnlPanelcontainingHTML} +pnl44={class=panel, instance_index=44,parent=pnlPanelcontainingHTML} +txt6={class=text, instance_index=6,parent=pnlPanelcontainingHTML} +pnl45={class=panel, instance_index=45,parent=pnlPanelcontainingHTML} +txt7={class=text, instance_index=7,parent=pnlPanelcontainingHTML} +pnl46={class=panel, instance_index=46,parent=pnlPanelcontainingHTML} +txt8={class=text, instance_index=8,parent=pnlPanelcontainingHTML} +pnl47={class=panel, instance_index=47,parent=pnlPanelcontainingHTML} +pnl48={class=panel, instance_index=48,parent=pnlPanelcontainingHTML} +pnl49={class=panel, instance_index=49,parent=pnlPanelcontainingHTML} +btn17={class=push_button, instance_index=17,parent=pnlPanelcontainingHTML} +lblNoAttachment={class=label, label=No Attachment} +btnSaveAll={class=push_button, label=Save All} +paneAttachmentBar={class=layered_pane, label=Attachment Bar} +pnl50={class=panel, instance_index=50,parent=pnlPanelcontainingHTML} +tbl2={class=table, instance_index=2,parent=pnlPanelcontainingHTML} +pnl51={class=panel, instance_index=51,parent=pnlPanelcontainingHTML} pnlPanelcontainingHTML={class=panel, label=Panel containing HTML} -btn17={class=push_button, instance_index=17,parent=Evolution-Mail} -lblComposeanewmailmessage={class=label, label=Compose a new mail message} +pnl53={class=panel, instance_index=53,parent=pnlPanelcontainingHTML} +txt9={class=text, instance_index=9,parent=pnlPanelcontainingHTML} +pnl54={class=panel, instance_index=54,parent=pnlPanelcontainingHTML} +txt10={class=text, instance_index=10,parent=pnlPanelcontainingHTML} +pnl55={class=panel, instance_index=55,parent=pnlPanelcontainingHTML} +txt11={class=text, instance_index=11,parent=pnlPanelcontainingHTML} +pnl56={class=panel, instance_index=56,parent=pnlPanelcontainingHTML} +txt12={class=text, instance_index=12,parent=pnlPanelcontainingHTML} +pnl57={class=panel, instance_index=57,parent=pnlPanelcontainingHTML} +txt13={class=text, instance_index=13,parent=pnlPanelcontainingHTML} +btn19={class=push_button, instance_index=19,parent=Evolution-Mail} +lbl2={class=label, instance_index=2,parent=Evolution-Mail} ptl2={class=page_tab_list, instance_index=2} ptb2={class=page_tab, instance_index=2} -pnl37={class=panel, instance_index=37,parent=Evolution-Mail} -pnl38={class=panel, instance_index=38,parent=Evolution-Mail} +pnl58={class=panel, instance_index=58,parent=Evolution-Mail} +pnl59={class=panel, instance_index=59,parent=Evolution-Mail} [Composeamessage] Composeamessage={class=frame, app_name=evolution, label=Compose a message} @@ -660,3 +693,415 @@ pnl33={class=panel, instance_index=33,parent=pnlPanelcontainingHTML} pnlPanelcontainingHTML={class=panel, label=Panel containing HTML} pnl35={class=panel, instance_index=35,parent=pnlPanelcontainingHTML} txt8={class=text, instance_index=8,parent=pnlPanelcontainingHTML} + +[dlgMeeting-Nosummary] +dlgMeeting-Nosummary={class=dialog, label=Meeting - No summary, app_name=evolution} +ptlMeeting-Nosummary0={class=page_tab_list, instance_index=0} +ptabAppointment={class=page_tab, label=Appointment} +lblBasics={class=label, label=Basics} +lbl1={class=label, instance_index=1,parent=ptabAppointment} +pnl0={class=panel, instance_index=0,parent=ptabAppointment} +lblDescription={class=label, label=Description:} +txt0={class=text, instance_index=0,parent=ptabAppointment} +btnCategories={class=push_button, label=Categories...} +cboPublic={class=combo_box, label=Public} +mnuPublic={class=menu_item, label=Public, parent=mnuPublic} +mnuPrivate={class=menu_item, label=Private, parent=mnuPublic} +mnuConfidential={class=menu_item, label=Confidential, parent=mnuPublic} +lblCalendar={class=label, label=Calendar:} +cboPersonal={class=combo_box, label= Personal} +mnuOnThisComputer={class=menu_item, label=On This Computer, parent=mnuOnThisComputer} +mnuPersonal={class=menu_item, label= Personal, parent=mnuPersonal} +mnuOnTheWeb={class=menu_item, label=On The Web, parent=mnuOnTheWeb} +mnunewcalendar={class=menu_item, label= new calendar, parent=mnunewcalendar} +mnuContacts={class=menu_item, label=Contacts, parent=mnuContacts} +mnuBirthdays&Anniversaries={class=menu_item, label= Birthdays & Anniversaries, parent=mnuBirthdays&Anniversaries} +mnuWeather={class=menu_item, label=Weather, parent=mnuWeather} +lblClassification={class=label, label=Classification:} +txtEventDescription={class=text, label=Event Description} +txt2={class=text, instance_index=2,parent=ptabAppointment} +txtLocation={class=text, label_by=Location:} +lblLocation={class=label, label=Location:} +txt3={class=text, instance_index=3,parent=ptabAppointment} +lblSummary={class=label, label=Summary:} +lblDateandTime={class=label, label=Date and Time} +lbl8={class=label, instance_index=8,parent=ptabAppointment} +pnl1={class=panel, instance_index=1,parent=ptabAppointment} +lblThisappointmenthascustomizedalarms={class=label, label=This appointment has customized alarms} +cbo15minutesbeforeappointment={class=combo_box, label=15 minutes before appointment} +mnu15minutesbeforeappointment={class=menu_item, label=15 minutes before appointment, parent=mnu15minutesbeforeappointment} +mnu1hourbeforeappointment={class=menu_item, label=1 hour before appointment, parent=mnu1hourbeforeappointment} +mnu1daybeforeappointment={class=menu_item, label=1 day before appointment, parent=mnu1daybeforeappointment} +btnCustomize={class=push_button, label=Customize...} +chkAlarm={class=check_box, label=Alarm} +chkShowtimeasbusy={class=check_box, label=Show time as busy} +txt4={class=text, instance_index=4,parent=ptabAppointment} +btnTimezoneButton={class=push_button, label=Timezone Button} +chkAlldayevent={class=check_box, label=All day event} +lblEndtime={class=label, label=End time:} +lblStarttime={class=label, label=Start time:} +txt5={class=text, instance_index=5,parent=ptabAppointment} +btnTimezoneButton={class=push_button, label=Timezone Button} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtEndtime={class=text, label_by=End time:} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtStarttime={class=text, label_by=Start time:} +pnlSendOptions={class=panel, label=Send Options} +pnl3={class=panel, instance_index=3,parent=pnlSendOptions} +btnAdvancedsendoptions={class=push_button, label=Advanced send options} +lblSendOptions={class=label, label=Send Options} +ptabRecurrence={class=page_tab, label=Recurrence} +lblRecurrence={class=label, label=Recurrence} +lbl14={class=label, instance_index=14,parent=ptabRecurrence} +chkThisappointmentrecurs={class=check_box, label=This appointment recurs} +lblEvery={class=label, label=Every} +sbtn0={class=spin_button, instance_index=0,parent=ptabRecurrence} +cboday={class=combo_box, label=day,parent=ptabRecurrence} +mnuday={class=menu_item, label=day(s), parent=mnuday(s)} +mnuweek={class=menu_item, label=week(s), parent=mnuday(s)} +mnumonth={class=menu_item, label=month(s), parent=mnuday(s)} +mnuyear={class=menu_item, label=year(s), parent=mnuday(s)} +pnl4={class=panel, instance_index=4,parent=ptabRecurrence} +lblonthe={class=label, label=on the} +cbo1st={class=combo_box, label=1st} +mnufirst={class=menu_item, label=first, parent=mnu1st} +mnusecond={class=menu_item, label=second, parent=mnu1st} +mnuthird={class=menu_item, label=third, parent=mnu1st} +mnufourth={class=menu_item, label=fourth, parent=mnu1st} +mnulast={class=menu_item, label=last, parent=mnu1st} +mnu1st={class=menu_item, label=1st, parent=mnu1st} +mnuOtherDate={class=menu, label=Other Date} +mnu1stto10th={class=menu, label=1st to 10th} +mnu1st={class=menu_item, label=1st, parent=mnu1st} +mnu2nd={class=menu_item, label=2nd, parent=mnu2nd} +mnu3rd={class=menu_item, label=3rd, parent=mnu3rd} +mnu4th={class=menu_item, label=4th, parent=mnu4th} +mnu5th={class=menu_item, label=5th, parent=mnu5th} +mnu6th={class=menu_item, label=6th, parent=mnu6th} +mnu7th={class=menu_item, label=7th, parent=mnu7th} +mnu8th={class=menu_item, label=8th, parent=mnu8th} +mnu9th={class=menu_item, label=9th, parent=mnu9th} +mnu10th={class=menu_item, label=10th, parent=mnu10th} +mnu11thto20th={class=menu, label=11th to 20th} +mnu11th={class=menu_item, label=11th, parent=mnu11th} +mnu12th={class=menu_item, label=12th, parent=mnu12th} +mnu13th={class=menu_item, label=13th, parent=mnu13th} +mnu14th={class=menu_item, label=14th, parent=mnu14th} +mnu15th={class=menu_item, label=15th, parent=mnu15th} +mnu16th={class=menu_item, label=16th, parent=mnu16th} +mnu17th={class=menu_item, label=17th, parent=mnu17th} +mnu18th={class=menu_item, label=18th, parent=mnu18th} +mnu19th={class=menu_item, label=19th, parent=mnu19th} +mnu20th={class=menu_item, label=20th, parent=mnu20th} +mnu21stto31st={class=menu, label=21st to 31st} +mnu21st={class=menu_item, label=21st, parent=mnu21st} +mnu22nd={class=menu_item, label=22nd, parent=mnu22nd} +mnu23rd={class=menu_item, label=23rd, parent=mnu23rd} +mnu24th={class=menu_item, label=24th, parent=mnu24th} +mnu25th={class=menu_item, label=25th, parent=mnu25th} +mnu26th={class=menu_item, label=26th, parent=mnu26th} +mnu27th={class=menu_item, label=27th, parent=mnu27th} +mnu28th={class=menu_item, label=28th, parent=mnu28th} +mnu29th={class=menu_item, label=29th, parent=mnu29th} +mnu30th={class=menu_item, label=30th, parent=mnu30th} +mnu31st={class=menu_item, label=31st, parent=mnu31st} +cboday={class=combo_box, label=day} +mnuday={class=menu_item, label=day, parent=mnuday} +mnuMonday={class=menu_item, label=Monday, parent=mnuday} +mnuTuesday={class=menu_item, label=Tuesday, parent=mnuday} +mnuWednesday={class=menu_item, label=Wednesday, parent=mnuday} +mnuThursday={class=menu_item, label=Thursday, parent=mnuday} +mnuFriday={class=menu_item, label=Friday, parent=mnuday} +mnuSaturday={class=menu_item, label=Saturday, parent=mnuday} +mnuSunday={class=menu_item, label=Sunday, parent=mnuday} +cboforever={class=combo_box, label=forever} +mnufor={class=menu_item, label=for, parent=mnuforever} +mnuuntil={class=menu_item, label=until, parent=mnuforever} +mnuforever={class=menu_item, label=forever, parent=mnuforever} +pnl5={class=panel, instance_index=5,parent=ptabRecurrence} +sbtn1={class=spin_button, instance_index=1,parent=ptabRecurrence} +lbloccurrences={class=label, label=occurrences} +pnl6={class=panel, instance_index=6,parent=ptabRecurrence} +lblExceptions={class=label, label=Exceptions} +lbl19={class=label, instance_index=19,parent=ptabRecurrence} +tbl0={class=table, instance_index=0,parent=ptabRecurrence} +btnAdd={class=push_button, label=Add} +btnEdit={class=push_button, label=Edit} +btnRemove={class=push_button, label=Remove} +lblPreview={class=label, label=Preview} +lbl21={class=label, instance_index=21,parent=ptabRecurrence} +pnl7={class=panel, instance_index=7,parent=ptabRecurrence} +paneMonthCalendar={class=layered_pane, label=Month Calendar} +pnl8={class=panel, instance_index=8,parent=paneMonthCalendar} +pnl9={class=panel, instance_index=9,parent=paneMonthCalendar} +btnPreviousButton={class=push_button, label=Previous Button} +pnl10={class=panel, instance_index=10,parent=paneMonthCalendar} +btnPreviousButton={class=push_button, label=Previous Button} +ptabScheduling={class=page_tab, label=Scheduling} +pnl11={class=panel, instance_index=11,parent=ptabScheduling} +pnl12={class=panel, instance_index=12,parent=ptabScheduling} +pnl13={class=panel, instance_index=13,parent=ptabScheduling} +lblEndtime={class=label, label=End time:} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtStarttime={class=text, label_by=Start time:} +lblStarttime={class=label, label=Start time:} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtAutopick={class=text, label_by=Autopick} +btn<<={class=push_button, label=<<} +btnAutopick={class=push_button, label=Autopick} +btn>>={class=push_button, label=>>} +btnContacts={class=push_button, label=Contacts...} +btnOptions={class=push_button, label=Options} +lblTentative={class=label, label=Tentative} +lblBusy={class=label, label=Busy} +lblOutofOffice={class=label, label=Out of Office} +lblNoInformation={class=label, label=No Information} +pane1={class=layered_pane, instance_index=1,parent=ptabScheduling} +pnl14={class=panel, instance_index=14,parent=ptabScheduling} +pane2={class=layered_pane, instance_index=2,parent=ptabScheduling} +pnl15={class=panel, instance_index=15,parent=ptabScheduling} +tbl1={class=table, instance_index=1,parent=ptabScheduling} +ptabInvitations={class=page_tab, label=Invitations} +lblOrganizer={class=label, label=Organizer:} +cboOrganizer={class=combo_box, label=Organizer} +txt14={class=text, instance_index=14,parent=cboOrganizer} +lblOrganizer={class=label, label=Organizer:} +lblNone={class=label, label=None} +btnChangeOrganizer={class=push_button, label=Change Organizer} +lblAttendees={class=label, label=Attendees} +lbl32={class=label, instance_index=32,parent=ptabInvitations} +tbl2={class=table, instance_index=2,parent=ptabInvitations} +btnAdd={class=push_button, label=Add, parent=ptabInvitations} +btnRemove={class=push_button, label=Remove} +btnContacts={class=push_button, label=Contacts...} +lblAttachmentBar={class=label, label=Attachment Bar (drop attachments here)} +lbl34={class=label, instance_index=34,parent=dlgMeeting-Nosummary} +paneAttachmentBar={class=layered_pane, label=Attachment Bar} +btnHelp={class=push_button, label=Help} +btnOK={class=push_button, label=OK} +btnCancel={class=push_button, label=Cancel} + +[dlgCategories] +dlgCategories={class=dialog, label=Categories, app_name=evolution} +pnl0={class=panel, instance_index=0,parent=dlgCategories} +btnNew={class=push_button, label=New} +btnEdit={class=push_button, label=Edit} +btnDelete={class=push_button, label=Delete} +tbl0={class=table, instance_index=0} +lblAvailableCategories={class=label, label=Available Categories:} +lblItem={class=label, label=Item(s) belong to these categories:} +txt0={class=text, instance_index=0} +btnOK={class=push_button, label=OK} +btnCancel={class=push_button, label=Cancel} + +[dlgAddexception] +dlgAddexception={class=dialog, label=Add exception, app_name=evolution} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txt1={class=text, instance_index=1,parent=cboTimeComboBox} +btnOK={class=push_button, label=OK} +btnCancel={class=push_button, label=Cancel} + +[dlgEvolutionQuery] +dlgEvolutionQuery={class=dialog, label=Evolution Query, app_name=evolution} +lblWouldyouliketosendmeetinginvitationstoparticipants? + +EmailinvitationswillbesenttoallparticipantsandallowthemtoRSVP.={class=label, label=Would you like to send meeting invitations to participants? + +Email invitations will be sent to all participants and allow them to RSVP.} +btnSend={class=push_button, label=Send} +btnDon'tSend={class=push_button, label=Don't Send} + +[dlgNewCalendar] +dlgNewCalendar={class=dialog, label=New Calendar, app_name=evolution} +ptlNewCalendar0={class=page_tab_list, instance_index=0, parent=NewCalendar} +ptb0={class=page_tab, instance_index=0, parent=NewCalendar } +pnlCalendar={class=panel, label=Calendar} +pnl1={class=panel, instance_index=1,parent=pnlCalendar} +pnl2={class=panel, instance_index=2,parent=pnlCalendar} +sbtn0={class=spin_button, instance_index=0,parent=pnlCalendar} +cbominutes={class=combo_box, label=minutes} +mnuminutes={class=menu_item, label=minutes, parent=mnuminutes} +mnuhours={class=menu_item, label=hours, parent=mnuminutes} +mnudays={class=menu_item, label=days, parent=mnuminutes} +mnuweeks={class=menu_item, label=weeks, parent=mnuminutes} +lblRefresh={class=label, label=Refresh:} +txt0={class=text, instance_index=0,parent=pnlCalendar} +lblURL={class=label, label=URL:} +chkMarkasdefaultfolder={class=check_box, label=Mark as default folder} +chkCopycalendarcontentslocallyforofflineoperation={class=check_box, label=Copy calendar contents locally for offline operation} +btn0={class=push_button, instance_index=0,parent=pnlCalendar} +lblColor={class=label, label=Color:} +txt1={class=text, instance_index=1,parent=pnlCalendar} +lblName={class=label, label=Name:} +lblType={class=label, label=Type:} +cboOnThisComputer={class=combo_box, label=On This Computer} +mnuOnThisComputer={class=menu_item, label=On This Computer, parent=mnuOnThisComputer} +mnuOnTheWeb={class=menu_item, label=On The Web, parent=mnuOnTheWeb} +mnuContacts={class=menu_item, label=Contacts, parent=mnuContacts} +mnuWeather={class=menu_item, label=Weather, parent=mnuWeather} +lblCalendar={class=label, label=Calendar} +btnOK={class=push_button, label=OK} +btnCancel={class=push_button, label=Cancel} + +[dlgAppointment-Nosummary] +dlgAppointment-Nosummary={class=dialog, label=Appointment - No summary, app_name=evolution} +ptlAppointment-Nosummary0={class=page_tab_list, instance_index=0} +ptabAppointment={class=page_tab, label=Appointment} +lblBasics={class=label, label=Basics} +lbl1={class=label, instance_index=1,parent=ptabAppointment} +pnl0={class=panel, instance_index=0,parent=ptabAppointment} +lblDescription={class=label, label=Description:} +txt0={class=text, instance_index=0,parent=ptabAppointment} +btnCategories={class=push_button, label=Categories...} +cboPublic={class=combo_box, label=Public} +mnuPublic={class=menu_item, label=Public, parent=mnuPublic} +mnuPrivate={class=menu_item, label=Private, parent=mnuPublic} +mnuConfidential={class=menu_item, label=Confidential, parent=mnuPublic} +lblCalendar={class=label, label=Calendar:} +cboPersonal={class=combo_box, label= Personal} +mnuOnThisComputer={class=menu_item, label=On This Computer, parent=mnuOnThisComputer} +mnuPersonal={class=menu_item, label= Personal, parent=mnuPersonal} +mnuOnTheWeb={class=menu_item, label=On The Web, parent=mnuOnTheWeb} +mnuContacts={class=menu_item, label=Contacts, parent=mnuContacts} +mnuBirthdays&Anniversaries={class=menu_item, label= Birthdays & Anniversaries, parent=mnuBirthdays&Anniversaries} +mnuWeather={class=menu_item, label=Weather, parent=mnuWeather} +lblClassification={class=label, label=Classification:} +txtEventDescription={class=text, label=Event Description} +txt2={class=text, instance_index=2,parent=ptabAppointment} +lblLocation={class=label, label=Location:} +txtLocation={class=text, label_by=Location:} +txt3={class=text, instance_index=3,parent=ptabAppointment} +lblSummary={class=label, label=Summary:} +lblDateandTime={class=label, label=Date and Time} +lbl8={class=label, instance_index=8,parent=ptabAppointment} +pnl1={class=panel, instance_index=1,parent=ptabAppointment} +lblThisappointmenthascustomizedalarms={class=label, label=This appointment has customized alarms} +cbo15minutesbeforeappointment={class=combo_box, label=15 minutes before appointment} +mnu15minutesbeforeappointment={class=menu_item, label=15 minutes before appointment, parent=mnu15minutesbeforeappointment} +mnu1hourbeforeappointment={class=menu_item, label=1 hour before appointment, parent=mnu1hourbeforeappointment} +mnu1daybeforeappointment={class=menu_item, label=1 day before appointment, parent=mnu1daybeforeappointment} +btnCustomize={class=push_button, label=Customize...} +chkAlarm={class=check_box, label=Alarm} +chkShowtimeasbusy={class=check_box, label=Show time as busy} +txt4={class=text, instance_index=4,parent=ptabAppointment} +btnTimezoneButton={class=push_button, label=Timezone Button} +chkAlldayevent={class=check_box, label=All day event} +lblEndtime={class=label, label=End time:} +lblStarttime={class=label, label=Start time:} +txt5={class=text, instance_index=5,parent=ptabAppointment} +btnTimezoneButton={class=push_button, label=Timezone Button} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtEndtime={class=text, label_by=End time:} +txtTextDateEntry={class=text, label=Text Date Entry} +btnDateButton={class=push_button, label=Date Button} +cboTimeComboBox={class=combo_box, label=Time Combo Box} +txtStarttime={class=text, label_by=Start time:} +pnlSendOptions={class=panel, label=Send Options} +pnl3={class=panel, instance_index=3,parent=pnlSendOptions} +btnAdvancedsendoptions={class=push_button, label=Advanced send options} +lblSendOptions={class=label, label=Send Options} +ptabRecurrence={class=page_tab, label=Recurrence} +lblRecurrence={class=label, label=Recurrence} +lbl14={class=label, instance_index=14,parent=ptabRecurrence} +chkThisappointmentrecurs={class=check_box, label=This appointment recurs} +lblEvery={class=label, label=Every} +sbtn0={class=spin_button, instance_index=0,parent=ptabRecurrence} +cbomonth={class=combo_box, label=month(s)} +mnuday={class=menu_item, label=day(s), parent=mnumonth(s)} +mnuweek={class=menu_item, label=week(s), parent=mnumonth(s)} +mnumonth={class=menu_item, label=month(s), parent=mnumonth(s)} +mnuyear={class=menu_item, label=year(s), parent=mnumonth(s)} +pnl4={class=panel, instance_index=4,parent=ptabRecurrence} +lblonthe={class=label, label=on the} +cbo1st={class=combo_box, label=1st} +mnufirst={class=menu_item, label=first, parent=mnu1st} +mnusecond={class=menu_item, label=second, parent=mnu1st} +mnuthird={class=menu_item, label=third, parent=mnu1st} +mnufourth={class=menu_item, label=fourth, parent=mnu1st} +mnulast={class=menu_item, label=last, parent=mnu1st} +mnu1st={class=menu_item, label=1st, parent=mnu1st} +mnuOtherDate={class=menu, label=Other Date} +mnu1stto10th={class=menu, label=1st to 10th} +mnu1st={class=menu_item, label=1st, parent=mnu1st} +mnu2nd={class=menu_item, label=2nd, parent=mnu2nd} +mnu3rd={class=menu_item, label=3rd, parent=mnu3rd} +mnu4th={class=menu_item, label=4th, parent=mnu4th} +mnu5th={class=menu_item, label=5th, parent=mnu5th} +mnu6th={class=menu_item, label=6th, parent=mnu6th} +mnu7th={class=menu_item, label=7th, parent=mnu7th} +mnu8th={class=menu_item, label=8th, parent=mnu8th} +mnu9th={class=menu_item, label=9th, parent=mnu9th} +mnu10th={class=menu_item, label=10th, parent=mnu10th} +mnu11thto20th={class=menu, label=11th to 20th} +mnu11th={class=menu_item, label=11th, parent=mnu11th} +mnu12th={class=menu_item, label=12th, parent=mnu12th} +mnu13th={class=menu_item, label=13th, parent=mnu13th} +mnu14th={class=menu_item, label=14th, parent=mnu14th} +mnu15th={class=menu_item, label=15th, parent=mnu15th} +mnu16th={class=menu_item, label=16th, parent=mnu16th} +mnu17th={class=menu_item, label=17th, parent=mnu17th} +mnu18th={class=menu_item, label=18th, parent=mnu18th} +mnu19th={class=menu_item, label=19th, parent=mnu19th} +mnu20th={class=menu_item, label=20th, parent=mnu20th} +mnu21stto31st={class=menu, label=21st to 31st} +mnu21st={class=menu_item, label=21st, parent=mnu21st} +mnu22nd={class=menu_item, label=22nd, parent=mnu22nd} +mnu23rd={class=menu_item, label=23rd, parent=mnu23rd} +mnu24th={class=menu_item, label=24th, parent=mnu24th} +mnu25th={class=menu_item, label=25th, parent=mnu25th} +mnu26th={class=menu_item, label=26th, parent=mnu26th} +mnu27th={class=menu_item, label=27th, parent=mnu27th} +mnu28th={class=menu_item, label=28th, parent=mnu28th} +mnu29th={class=menu_item, label=29th, parent=mnu29th} +mnu30th={class=menu_item, label=30th, parent=mnu30th} +mnu31st={class=menu_item, label=31st, parent=mnu31st} +cboday={class=combo_box, label=day(s)} +mnuday={class=menu_item, label=day, parent=mnuday} +mnuMonday={class=menu_item, label=Monday, parent=mnuday} +mnuTuesday={class=menu_item, label=Tuesday, parent=mnuday} +mnuWednesday={class=menu_item, label=Wednesday, parent=mnuday} +mnuThursday={class=menu_item, label=Thursday, parent=mnuday} +mnuFriday={class=menu_item, label=Friday, parent=mnuday} +mnuSaturday={class=menu_item, label=Saturday, parent=mnuday} +mnuSunday={class=menu_item, label=Sunday, parent=mnuday} +cboforever={class=combo_box, label=forever} +mnufor={class=menu_item, label=for, parent=mnuforever} +mnuuntil={class=menu_item, label=until, parent=mnuforever} +mnuforever={class=menu_item, label=forever, parent=mnuforever} +pnl5={class=panel, instance_index=5,parent=ptabRecurrence} +sbtn1={class=spin_button, instance_index=1,parent=ptabRecurrence} +lbloccurrences={class=label, label=occurrences} +pnl6={class=panel, instance_index=6,parent=ptabRecurrence} +lblExceptions={class=label, label=Exceptions} +lbl18={class=label, instance_index=18,parent=ptabRecurrence} +tbl0={class=table, instance_index=0,parent=ptabRecurrence} +btnAdd={class=push_button, label=Add} +btnEdit={class=push_button, label=Edit} +btnRemove={class=push_button, label=Remove} +lblPreview={class=label, label=Preview} +lbl20={class=label, instance_index=20,parent=ptabRecurrence} +pnl7={class=panel, instance_index=7,parent=ptabRecurrence} +paneMonthCalendar={class=layered_pane, label=Month Calendar} +pnl8={class=panel, instance_index=8,parent=paneMonthCalendar} +pnl9={class=panel, instance_index=9,parent=paneMonthCalendar} +btnPreviousButton={class=push_button, label=Previous Button} +pnl10={class=panel, instance_index=10,parent=paneMonthCalendar} +btnPreviousButton={class=push_button, label=Previous Button} +lblAttachmentBar={class=label, label=Attachment Bar (drop attachments here)} +lbl22={class=label, instance_index=22,parent=dlgAppointment-Nosummary} +paneAttachmentBar={class=layered_pane, label=Attachment Bar} +btnHelp={class=push_button, label=Help} +btnOK={class=push_button, label=OK} +btnCancel={class=push_button, label=Cancel} diff --git a/evolution/evolution.py b/evolution/evolution.py index 2e5319d..880a566 100644 --- a/evolution/evolution.py +++ b/evolution/evolution.py @@ -1,25 +1,112 @@ #!/usr/bin/python +# +# Linux Desktop Testing Project http://www.gnomebangalore.org/ldtP +# +# Author: +# Premkumar <jpremkumar@novell.com> +# +# Copyright 2004 Novell, Inc. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Library General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library 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 +# Library General Public License for more details. +# +# You should have received a copy of the GNU Library General Public +# License along with this library; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. +# from ldtp import * -import string, sys, os +from ldtputils import * +from evoutils.mail import * +from evoutils.calendar import * +import string, sys, os, time + +startlog('evolution.log',1) appmap_path = '' if len (sys.argv) == 1: - if os.access ('./evolution-2.2.map', os.F_OK | os.R_OK) == 0: - print 'Appmap path missing' + if os.access ('./evolution.map', os.F_OK | os.R_OK) == 0: + log ('Appmap path missing','error') + stoplog () sys.exit(0); else: appmap_path = '.' else: appmap_path = sys.argv[1] -initappmap (appmap_path + '/evolution-2.2.map') +initappmap (appmap_path + '/evolution.map') + +launchapp ('evolution') + +log ('Evolution Mailer Suite', 'begin') + +## MAIL ## +#Compose mail +execfile ('compose-mail.py') +time.sleep (60) + +#Reply to a mail +execfile ('reply-mail.py') +time.sleep (60) + +#Forward a mail +execfile ('forward-mail.py') +time.sleep (60) + +#Compose mail with attachment +execfile('compose-mail-w-attachment.py') +time.sleep (60) + +#TODO: Test script for sending html has to be written +#To send an HTML file and verify the same. +#execfile ('sendhtmlmail.py') + +#To view a plain text mail +execfile ('view-mail.py') +time.sleep (60) + +#To move a mail from one directory to another +execfile ('movemail.py') +time.sleep (60) + +#To copy a mail from one directory to another +execfile ('copymail.py') +time.sleep (60) + +#To delete a mail from a given directory +execfile ('deletemail.py') +time.sleep (60) + +log ('Evolution Mailer Suite', 'end') + +log ('Evolution Calendar Suite', 'begin') + +## MEETING ## +time.sleep (3) +execfile ('create-meeting.py') +time.sleep (3) +execfile ('verify-meeting.py') + +## APPOINTMENT ## +time.sleep (3) +execfile ('create-appointment.py') +time.sleep (3) +execfile ('verify-appointment.py') + +## CALENDAR ## +time.sleep (3) +execfile ('create-calendar.py') +time.sleep (3) -#launchapp ('evolution-2.2') +log ('Evolution Calendar Suite', 'end') -setcontext ('Compose a message', 'test mail') -settextvalue ('Composeamessage', 'txtTo', 'nagappan@ldg.net') -settextvalue ('Composeamessage', 'txtSubject', '') -releasecontext () -settextvalue ('Composeamessage', 'txtCc', 'nagappan@ldg.net') +stoplog () diff --git a/evolution/evoutils/mail.py b/evolution/evoutils/mail.py index d27a15c..bf8b003 100644 --- a/evolution/evoutils/mail.py +++ b/evolution/evoutils/mail.py @@ -50,7 +50,7 @@ def populate_mail_header (to, subject,body, #Note: I have edited the evolution.map to change 'txt0' #to 'txtSubject' - #switching is involved + #cant use set and verify since context switching is involved if subject!='': settextvalue ('Composeamessage', 'txtSubject', subject) setcontext ('Compose a message', subject) @@ -72,24 +72,26 @@ def populate_mail_header (to, subject,body, log ('Compose new message failed', 'Fail' ) #To capture image of the ith mail in the given folder -def capturemailimage (folder_name,i,filename): +def capturemailimage (folder_name, i, filename): try: - selectmenuitem ('evolution','mnuTools;mnuMail') - selectrowpartialmatch ('evolution','ttblMailFolder',folder_name) - if i==-9: - i = getrowcount ('evolution','ttblMessageList') - 3 - selectrowindex ('evolution','ttblMessageList',i) + selectmenuitem ('evolution','mnuView;mnuWindow;mnuMail') + time.sleep (3) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', folder_name) + if i == -1: + i = getrowcount ('evolution', 'ttblMessageList') - 1 + print 'The obtained index is i' + i + selectrowindex ('evolution', 'ttblMessageList', i) time.sleep(3) - subject = getcellvalue ('evolution','ttblMessageList',i+1,4) - time.sleep (1) - selectmenuitem ('evolution','mnuMessage;mnuOpeninNewWindow') - setcontext ('Readonlyframe',subject) - time.sleep (5) - imagecapture (subject,filename) - selectmenuitem ('Readonlyframe','mnuFile;mnuClose') - time.sleep(1) + subject = getcellvalue ('evolution', 'ttblMessageList', i, 4) + time.sleep (2) + selectmenuitem ('evolution', 'mnuMessage;mnuOpeninNewWindow') + setcontext ('Readonlyframe', subject) + time.sleep (3) + imagecapture ('Readonlyframe', 'IMAGES/'+filename) + selectmenuitem ('Readonlyframe', 'mnuFile;mnuClose') + time.sleep(2) if guiexist ('Readonlyframe') == 1: - log ('Message Window is not close after capturing','warning') + log ('Message Window is not close after capturing', 'warning') raise LdtpExecutionError (0) releasecontext () return 1 @@ -97,17 +99,18 @@ def capturemailimage (folder_name,i,filename): log ('Capturing of mail failed','warning') LdtpExecutionError(0) - #To verify the ith mail in the given folder with the given image -def verifymailwithimage (folder_name,mail_index,refimg_filename): +def verifymailwithimage (folder_name, mail_index, refimg_filename): try: - capturemailimage (folfer_name,mail_index,'cur_mail.png') - if imagecompare ('cur_mail.png',refimg_filename) == 0.0: + capturemailimage (folder_name, mail_index, 'IMAGES/cur_mail.png') + print 'The difference in image is:' + str (imagecompare ('IMAGES/cur_mail.png', refimg_filename)) + if imagecompare ('cur_mail.png', refimg_filename) == 0.0: return 1 else: return 0 - except: - log ('Comparision of mail images failed - ref image: ' + refimg_filename ,'error') + except ldtp.error, msg: + print 'Comparision failed due to the following error -' + str (msg) + log ('Comparision of mail images failed - ref image: ' + refimg_filename , 'error') LdtpExecutionError (0) diff --git a/evolution/forward-mail.dat b/evolution/forward-mail.dat index b385745..7bed135 100644 --- a/evolution/forward-mail.dat +++ b/evolution/forward-mail.dat @@ -1,4 +1,6 @@ -jpremkumar@novell.com -~ -~ -~ +nags@dell.net +$ +$ +$ +$ +$ diff --git a/evolution/forward-mail.py b/evolution/forward-mail.py index 0c1ceb0..af71e9c 100644 --- a/evolution/forward-mail.py +++ b/evolution/forward-mail.py @@ -28,34 +28,27 @@ from evoutils.mail import * #To Forward mail -def forward_mail (to,body,subject_new='',cc=''): +def forward_mail (source_fldr, mail_index, to, body, subject_new='', cc=''): try: - selectmenuitem('evolution','mnuTools;mnuMail') - time.sleep(3) - - #TODO: Write additional code to select the particular - #folder from Folder tree before moving to the next statement + time.sleep (3) + selectmenuitem ('evolution', 'mnuView;mnuWindow;mnuMail') + time.sleep (3) + time.sleep (10) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', source_fldr) + if mail_index == -1: + mail_index = getrowcount ('evolution', 'ttblMessageList') - 1 - #TODO: Uncomment the following when getrowcount bug - #is fixed in evolution/accessibility - #selectlastrow ('evolution', 'ttblMessageList') - - cur_index=getrowcount ('evolution','ttblMessageList')-3; - - #TOOD: When Uncommenting the previous statement remove - #the following statement - selectrowindex ('evolution','ttblMessageList',cur_index) + selectrowindex ('evolution', 'ttblMessageList', mail_index) - subject = getcellvalue('evolution','ttblMessageList',cur_index+1,4) - click('evolution','btnForward') + subject = getcellvalue ('evolution', 'ttblMessageList', mail_index, 4) + click ('evolution','btnForward') time.sleep(3) - setcontext ('Compose a message','[Fwd: '+subject+']') - if guiexist('Composeamessage') == 0: - log ('Failed to open forward frame','error') + setcontext ('Compose a message', '[Fwd: '+subject+']') + if guiexist ('Composeamessage') == 0: + log ('Failed to open forward frame', 'error') raise LdtpExecutionError(0) else: - if populate_mail_header (to,subject_new, - body,cc) == 0: + if populate_mail_header (to, subject_new, body, cc) == 0: log ('Failed to populate mail header', 'error') raise LdtpExecutionError (0) @@ -65,34 +58,38 @@ def forward_mail (to,body,subject_new='',cc=''): log ('Failed to close Compose dialog after sending','error') raise LdtpExecutionError(0) else: - click('evolution','btnSend/Receive') - log('Forward-message-Success','pass') + click('evolution', 'btnSend/Receive') + log('Forward-message-Success', 'pass') releasecontext() except error: print 'Forward messsage Failed' - log('Forward-Mail-Failed','fail') + log ('Forward-Mail-Failed', 'fail') #Trying to read from the file inpfile = open('forward-mail.dat', 'r') -argmts = inpfile.readlines() -to_mailid = argmts[0].strip( ) -Bodytxt_Mail = argmts[1].strip( ) -if Bodytxt_Mail == '~': +argmts = inpfile.readlines () +to_mailid = argmts[0].strip () +Bodytxt_Mail = argmts[1].strip () +if Bodytxt_Mail == '$': Bodytxt_Mail = '' -Subjecttxt = argmts[2].strip( ) -if Subjecttxt == '~': +Subjecttxt = argmts[2].strip () +if Subjecttxt == '$': Subjecttxt = '' -Cc_mailid = argmts[3].strip( ) -if Cc_mailid == '~': +Cc_mailid = argmts[3].strip () +if Cc_mailid == '$': Cc_mailid = '' +source_fldr = argmts[4].strip () +if source_fldr == '$': + source_fldr = 'Inbox' +mail_index = argmts[5].strip () +if mail_index == '$': + mail_index = -1 # Call the function +log ('Forward Mail' , 'teststart') +forward_mail (source_fldr, mail_index, to_mailid, Bodytxt_Mail, Subjecttxt, Cc_mailid) +log ('Forward Mail', 'testend') +log ('Forward Mail - Verification', 'teststart') +verifymailwithimage ('Sent Items', -9, 'forwardmail_refimage.png') +log ('Forward Mail - Verification', 'testend') -log('Forward Mail and verify','teststart') -log('Forward Mail' ,'teststart') -forward_mail (to_mailid,Bodytxt_Mail,Subjecttxt,Cc_mailid) -log('Forward Mail' ,'testend') -log('Forward Mail - Verification','teststart') -verifymailwithimage ('Sent Items',-9,'forwardmail_refimage.png') -log('Forward Mail - Verification' ,'testend') -log('Forward Mail and verify','testend') diff --git a/evolution/movemail.dat b/evolution/movemail.dat index 3c9828d..83b433d 100644 --- a/evolution/movemail.dat +++ b/evolution/movemail.dat @@ -1,2 +1,3 @@ Inbox -bugs
\ No newline at end of file +bugs +$
\ No newline at end of file diff --git a/evolution/movemail.py b/evolution/movemail.py index d63fe4f..f93e4e3 100644 --- a/evolution/movemail.py +++ b/evolution/movemail.py @@ -27,57 +27,57 @@ #Moving an existing Mail # Section to select and move mail -def move_mail (from_fldr,to_fldr): +def move_mail (from_fldr, to_fldr, mail_index): try: - selectrowpartialmatch ('evolution', 'ttblMailFolderTree', - to_fldr) - row_before = getrowcount('evolution', 'ttblMessageList') - selectrowpartialmatch ('evolution', 'ttblMailFolderTree', - from_fldr) + time.sleep (10) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', to_fldr) + time.sleep (2) + row_before = getrowcount('evolution', 'ttblMessageList') + time.sleep (2) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', from_fldr) + time.sleep (2) rowcount = getrowcount('evolution', 'ttblMessageList') if rowcount > 0: - #selectlastrow ('evolution', 'ttblMessageList') - selectrowindex ('evolution', 'ttblMessageList', - rowcount-3) - selectmenuitem ('evolution', - 'mnuMessage;mnuMoveToFolder') - selectrowpartialmatch ('dlgSelectfolder', - 'ttblMailFolderTree',to_fldr ) - click ('dlgSelectfolder','btnMove') - if guiexist('dlgSelectfolder') == 0: - log ('Select folder dialog not closed', - 'error') - raise LdtpexecutionError(0) + if mail_index == -1: + mail_index = rowcount - 1 + selectrowindex ('evolution', 'ttblMessageList', mail_index) + selectmenuitem ('evolution', 'mnuMessage;mnuMoveToFolder') + selectrowpartialmatch ('dlgSelectfolder', 'ttblMailFolderTree',to_fldr ) + click ('dlgSelectfolder', 'btnMove') + time.sleep (3) + if guiexist('dlgSelectfolder') == 1: + log ('Select folder dialog not closed', 'error') + raise LdtpExecutionError(0) else: - selectrowpartialmatch ('evolution', - 'ttblMailFolderTree',to_fldr) - wait (5) - row_after = getrowcount('evolution', 'ttblMessageList') + selectrowpartialmatch ('evolution', 'ttblMailFolderTree',to_fldr) + time.sleep (5) + row_after = getrowcount ('evolution', 'ttblMessageList') selectmenuitem ('evolution', 'mnuFile;mnuClose') time.sleep(3) if row_after > row_before: - log ('Moving a mail passed successfully', - 'pass') - else : - log ('Moving a mail failed', - 'fail') + log ('Moving a mail passed successfully', 'pass') + else: + log ('Moving a mail failed', 'fail') else: log ('From folder empty!', 'Warning') - log ('Did not move any mails to other folder', - 'Pass') + log ('Did not move any mails to other folder', 'Pass') except ldtp.error,msg: - print 'Moving mail between folders failed',str(msg) - log ('Moving mail failed','fail') + print 'Moving mail between folders failed', str(msg) + log ('Moving mail failed', 'fail') #Read input from file file = open ('movemail.dat', 'r') argmts = file.readlines() -from_fldr = argmts[0].strip( ) -to_fldr = argmts[1].strip( ) +from_fldr = argmts[0].strip () +to_fldr = argmts[1].strip () +mail_index = argmts[2].strip () + +if mail_index == '$': + mail_index = -1; # Call the function log ('Move mail', 'teststart') -move_mail (from_fldr,to_fldr) +move_mail (from_fldr, to_fldr, mail_index) log ('Move mail', 'testend') -log ('Moving mail succeeded', 'pass') + diff --git a/evolution/reply-mail.dat b/evolution/reply-mail.dat index 7db2a3a..bb417cc 100644 --- a/evolution/reply-mail.dat +++ b/evolution/reply-mail.dat @@ -1,2 +1,4 @@ thanks for the mail -jpremkumar@novell.com
\ No newline at end of file +nags@dell.net +$ +$
\ No newline at end of file diff --git a/evolution/reply-mail.py b/evolution/reply-mail.py index 46d8842..88e86d6 100644 --- a/evolution/reply-mail.py +++ b/evolution/reply-mail.py @@ -27,73 +27,72 @@ # To Reply a Mail using args supplied by a text file #To reply mail -def reply_mail (body,cc=''): +def reply_mail (source_fldr, mail_index, body, cc=''): try: - selectmenuitem('evolution','mnuTools;mnuMail') - time.sleep(3) + time.sleep (3) + selectmenuitem('evolution','mnuView;mnuWindow;mnuMail') + time.sleep (15) - #TODO: Write additional code to select the particular - #folder from Folder tree before moving to the next statement - - #TODO: Uncomment the following when get rowcount bug - #is fixed in evolution/accessibility - #selectlastrow ('evolution', 'ttblMessageList') - - cur_index=getrowcount ('evolution','ttblMessageList')-3; - - #TOOD: When Uncommenting the previous statement remove - #the following statement - selectrowindex ('evolution','ttblMessageList',cur_index) - - subject = getcellvalue('evolution','ttblMessageList',cur_index+1,4) - click('evolution','btnReply') - time.sleep(3) - setcontext ('Compose a message','Re: '+subject) - if guiexist('Composeamessage') == 0: - log ('Failed to open reply frame','error') - raise LdtpExecutionError(0) + selectrowpartialmatch ('evolution', 'ttblMailFolderTree', source_fldr) + time.sleep (3) + if mail_index == -1: + mail_index = getrowcount ('evolution', 'ttblMessageList') - 1 + selectrowindex ('evolution', 'ttblMessageList', mail_index) + subject = getcellvalue ('evolution', 'ttblMessageList', mail_index, 4) + click ('evolution', 'btnReply') + time.sleep (3) + if subject.startswith ('Re:') == False: + setcontext ('Compose a message', 'Re: '+subject) + else: + setcontext ('Compose a message', subject) + time.sleep (5) + if guiexist ('Composeamessage') == 0: + log ('Failed to open reply frame', 'error') + raise LdtpExecutionError (0) else: new_context = 'Re: '+subject - if cc!='' and setandverify('Composeamessage', - 'txtCc',cc) == 0: - log ('Failed to insert into Cc field', - 'error') - raise LdtpExecutionError(0) + if cc!='' and setandverify ('Composeamessage', 'txtCc', cc) == 0: + log ('Failed to insert into Cc field', 'error') + raise LdtpExecutionError (0) else: - if setandverify('Composeamessage', - 'txt6',body) == 0: - log ('Failed to insert body text', - 'error') - raise LdtpExecutionError(0) + if setandverify ('Composeamessage', 'txt6', body) == 0: + log ('Failed to insert body text', 'error') + raise LdtpExecutionError (0) else: click ('Composeamessage', 'btnSend') - if guiexist ('Composeamessage') == 0: - log ('Failed to close Compose dialog after sending','error') - raise LdtpExecutionError(0) + time.sleep (5) + if guiexist ('Composeamessage') == 1: + log ('Failed to close Compose dialog after sending', 'error') + raise LdtpExecutionError (0) else: - click('evolution','btnSend/Receive') - log('Reply-message-Success','pass') + click ('evolution', 'btnSend/Receive') + time.sleep (3) + log ('Reply-message-Success', 'pass') except error: + releasecontext () print 'Reply messsage Failed' log('Reply-Mail-Failed','fail') -#TODO: Implement replytoall if necessary -#def reply_all_mail (to, subjecttxt, mailbodytxt): - #Trying to read from the file file = open('reply-mail.dat', 'r') -argmts = file.readlines() -Bodytxt_Mail = argmts[0].strip( ) -Cc_mailid = argmts[1].strip( ) +argmts = file.readlines () +Bodytxt_Mail = argmts[0].strip () +Cc_mailid = argmts[1].strip () +source_fldr = argmts[2].strip () +mail_index = argmts[3].strip () +if source_fldr == '$': + source_fldr = 'Inbox' +if mail_index == '$': + mail_index = -1 # Call the function log('Reply and Verification of Mail','teststart') -log('Reply Mail' ,'teststart') -reply_mail (Bodytxt_Mail, Cc_mailid) -log('Reply Mail' ,'testend') -log('Reply Mail - Verification' ,'teststart') -verifymailwithimage ('Sent Items',-9,'replymail_refimg.png') -log('Reply Mail - Verification' ,'testend') -log('ReplyandVerificationofMail','testend') +log('Reply Mail', 'teststart') +reply_mail (source_fldr, mail_index, Bodytxt_Mail, Cc_mailid) +log('Reply Mail','testend') +log('Reply Mail - Verification', 'teststart') +verifymailwithimage ('Sent Items', -1,'replymail_refimg.png') +log('Reply Mail - Verification', 'testend') +log('ReplyandVerificationofMail', 'testend') diff --git a/evolution/view-mail.dat b/evolution/view-mail.dat index 47f7cf7..e76c451 100644 --- a/evolution/view-mail.dat +++ b/evolution/view-mail.dat @@ -1,3 +1,3 @@ -Sent Items --9 -viewmail_refimg.png
\ No newline at end of file +Inbox +-1 +IMAGES/viewmail_refimg.png
\ No newline at end of file diff --git a/evolution/view-mail.py b/evolution/view-mail.py index 9766157..7e89a99 100644 --- a/evolution/view-mail.py +++ b/evolution/view-mail.py @@ -25,13 +25,14 @@ # #To view mail -def view_mail (folder_name,i,ref_image): +def view_mail (folder_name, i, ref_image): try: - verifymailwithimage (folder_name,i,ref_image) + time.sleep (5) + verifymailwithimage (folder_name, i, ref_image) except: - log ('View mail failed','error') + log ('View mail failed', 'error') raise LdtpExecutionError (0) - + #Reading inputs from file file = open ('view-mail.dat','r') argmts = file.readlines() @@ -41,6 +42,6 @@ ref_image = argmts[2].strip() log ('View mail verification','teststart') time.sleep(2) -view_mail (folder_name,i,ref_image) +view_mail (folder_name, i, ref_image) time.sleep(2) log ('View mail verification','testend') |