summaryrefslogtreecommitdiffstats
path: root/QtMobility
diff options
context:
space:
mode:
authorKeith Isdale <keith.isdale@nokia.com>2010-11-16 16:03:18 +1000
committerKeith Isdale <keith.isdale@nokia.com>2010-11-16 16:03:18 +1000
commit33f26dea28b4cb8db37f0bb5e99083be2c5ba2f8 (patch)
treed014479d88fe81dd975202b5972cf7a01e9a8b40 /QtMobility
parenta0fa2a6dc917c53c7ddd5e19d83e1b70c70a3497 (diff)
Update the organizer related tests
* re-write of most organizer tests * renamed sys_calendar to sys_organizer to match the naming conventions of test cases verses the components they test.
Diffstat (limited to 'QtMobility')
-rw-r--r--QtMobility/sys_calendar/sys_calendar.qtt262
-rw-r--r--QtMobility/sys_organizer/sys_organizer.pro (renamed from QtMobility/sys_calendar/sys_calendar.pro)2
-rw-r--r--QtMobility/sys_organizer/sys_organizer.qtt629
-rw-r--r--QtMobility/sys_versitorganizer/sys_versitorganizer.qtt128
4 files changed, 728 insertions, 293 deletions
diff --git a/QtMobility/sys_calendar/sys_calendar.qtt b/QtMobility/sys_calendar/sys_calendar.qtt
deleted file mode 100644
index e5b6709..0000000
--- a/QtMobility/sys_calendar/sys_calendar.qtt
+++ /dev/null
@@ -1,262 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of QtUiTest.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** No Commercial Usage
-** This file contains pre-release code and may not be distributed.
-** You may use this file in accordance with the terms and conditions
-** contained in the Technology Preview License Agreement accompanying
-** this package.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** If you have questions regarding the use of this file, please contact
-** Nokia at qt-info@nokia.com.
-**
-**
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-//TESTED_COMPONENT=src/calendar
-
-testcase = {
-
- initTestCase: function()
- {
- prompt(twiki('*Preconditions to the Organizer tests*
-
- 1. Make sure devices system time is correct
- 1. Make sure appropriate backend is listed in the backend list for given device'));
- },
-
- select_backends: function()
- {
- prompt(twiki('*Various backends can be selected*
-
- 1. Launch calendardemo application
- 1. For each item in the backend combo box
- 1. Choose as current backend
- 1. Verify that bBackend can be selected without any error or crash
-
- add_event: function()
- {
- prompt(twiki('*Add Calendar Event*
-
- 1. Launch calendardemo application
- 1. Verify the layout and UI of the application is apropriate for device
- 1. Verify the correct day and month is shown.
- 1. Verify that todays date is higlighted
- 1. Select appropriate backend
- 1. In the application menu, select: Add event
- 1. Enter event detail: Subject, Start time, End time (eg: "Event 1", today's date), select Alarm option, leave Repeat as: None. Click Save
- 1. Verify that you are presented with the day view for today and that Evenet 1 is listed with start time shown
- 1. Click View Month
- 1. Verify that you are in the Month View with todays date underlined.
- 1. As in previous steps, add "Event Invalid" with todays Start date, but Yesterdays End date
- 1. Verify that you are presented with an error: "Failed! Start date is not before due date". Click Done, click Cancel
- 1. Verify that "Event Invalid" is not listed in either Todays, or Yesterdays date.
- 1. As in previous steps, add "Event 2" with same date as "Event 1", but with letter start time
- 1. Verify that "Event 1" and "Event 2" are listed for todays date in both Day View and Month View
- 1. Create "Event 3" by clicking a date 2 days in the future, click Add Event, add Subject, Click OK
- 1. Close and reopen Calendardemo, and select the abovementoned backend again.
- 1. Verify that Today has "Event 1" and "Event 2" listed with correct details
- 1. Verify that "Event 3" is listed for the day after tomorrow.'));
- },
-
- delete_event: function()
- {
- prompt(twiki('*Delete Calendar Event*
-
- 1. Re-launch calendardemo application
- 1. Select appropriate backend
- 1. Select todays date
- 1. Verify that "Event 1" and "Event 2" are listed
- 1. Without selecting any events (no events highlighted), click Remove
- 1. Verify that no event has been removed from list.
- 1. Return back to Month View, and reselect todays date.
- 1. Verify that "Event 1" and "Event 2" are still listed
- 1. Select "Event 1", click Remove
- 1. Verify that "Event 1" has been removed from list.'));
- 1. Re-launch Calendardemo application
- 1. Verify that "Event 1" is not listed in the list of todays events
- },
-
- edit_event: function()
- {
- prompt(twiki('*Edit Calendar Event*
-
- 1. Re-launch calendardemo application
- 1. Select appropriate backend
- 1. Select today's date
- 1. Verify that "Event 2" is listed
- 1. Highlight "Event 2" and click Edit
- 1. Verify that all the listed details are correct
- 1. Edit the Event Subject to "Event 2 Edited"
- 1. Change date of "Event 2 Edited" to tomorrows date for Start time and End time
- 1. Verify that "Event 2 Edited" is now listed under tomorrow's date
- 1. Select "Event 2 Edited" and click Edit
- 1. Change End time of event to todays date, leaving Start date to point to tomorrow's date
- 1. Verify that you are presented with an error: "Failed! Start date is not before end date". Click Done then Cancel
- 1. Verify that "Event 2 Edited" has not been edited
- 1. Highlight "Event 2 Edited" and click Edit
- 1. Change both Start time and End time to today's date with a valid range
- 1. Verify that "Event 2 Edited" is now listed under events for today.'));
- },
-
- event_recurrence: function()
- {
- prompt(twiki('*Event Recurrence*
-
- 1. Re-launch calendardemo application
- 1. Select appropriate backend
- 1. Select today's date
- 1. Select Add Event
- 1. For Number of entries, accept default of 1
- 1. Enter subject: "Recurring Event"
- 1. Enter a time for the event (todays date, 30 min in the future, lasting 30 min)
- 1. Select Repeat, and choose Weekly
- 1. Select: Set count, select 5, and click OK
- 1. Verify that created event is listed in event list
- 1. Select date 7 days from today
- 1. Verify that "Recurring Event" is listed on that day
- 1. Select a date a futher 21 days in the future
- 1. Verify that "Reacurring Event" is listed on that day
- 1. Select a date a futher 14 days in the future
- 1. Verify that "Reacurring Event" is ont present on that day
- 1. Select a date 1 year in the future on the given day of the week for "Reacurring Event"
- 1. Verify that "Recurring Event" is not listed on that day
-'));
- },
-
- add_todo: function()
- {
- prompt(twiki('*Add Calendar Todo*
-
- 1. Launch calendardemo application
- 1. Select appropriate backend
- 1. In the application menu, select: Add Todo
- 1. Enter Todo detail: Subject, Start time, End time (eg: "Todo 1", tomorrows date), Priority, Status, select Alarm option. Click Save
- 1. Verify that you are presented with the day view for tomorrow and that Todo 1 is listed with start time shown
- 1. Click View Month
- 1. Verify that you are in the Month View with today's date underlined, and that tomorrows date is highlighted in green.
- 1. As in previous steps, add new Todo as: "Todo Invalid" with todays Start date, but Yesterdays End date
- 1. Verify that you are presented with an error: "Failed! Start date is not before due date." Click Done, then Cancel.
- 1. Verify that "Todo Invalid" is not listed in either Todays, or Yesterdays date.
- 1. As in previous steps, add "Todo 2" with same date as "Todo 1", but with different start time
- 1. Verify that "Todo 1" and "Todo 2" are listed for today's date in Day View
- 1. Create "Todo 3" by clicking a date 2 days in the future, select menu, Add Todo, add Subject, Click OK
- 1. Close and reopen Calendardemo, and select the abovementoned backend again.
- 1. Verify that Today has "Todo 1" and "Todo 2" listed with correct details
- 1. Verify that "Todo 3" is listed for the day after tomorrow.'));
- },
-
- search_items_by_time: function()
- {
- prompt(twiki('---++ Search Items By Time
-Access all organizer items corresponding to a particular period. For example, an application that shows all organizer items occurring on the current day.'));
- },
-
- search_items_any_attribute: function()
- {
- prompt(twiki('---++ Search Items Using Any Attribute
- * Access organizer items corresponding to one or more attribute values.
- * For example a user may search for all items that occurred January to March 2009, at Brisbane where the description contains "birthday party".
-'));
- },
-
- online_calendar: function()
- {
- prompt(twiki('---++ Search Items Using Any Attribute
- * Access organizer items corresponding to one or more attribute values.
- * For example a user may search for all items that occurred January to March 2009, at Brisbane where the description contains "birthday party".'));
- },
-
- custom_data: function()
- {
- prompt(twiki('---++Custom Data
- * Add custom data to an organizer item.
- * For example a travel organizer application may want to add non-standard new fields to an organizer item representing travel information.'));
- },
-
- multiple_stores: function()
- {
- prompt(twiki('---++ Supporting Multiple Stores
- * Application may want to choose between the internal calendar store and an online calendar store.
- * It is possible for there to be more than one store on the local device.
-'));
- },
-
- change_notification: function()
- {
- prompt(twiki('---++ Notifications of Changes in Data
- * An application can use the API to be notified of changed in the underlying data.
- * For example an application that shows the coming weeks organizer items would want to be notified when the underlying calendar data changes so it can check if it needs to update the displayed organizer items.'));
- },
-
- access_control: function()
- {
- prompt(twiki('---++ Access Control
- * Control who can and who cannot view organizer items.'));
- },
-
- export_ical: function()
- {
- prompt(twiki('*Export iCalendar items*
- 1. Open Calendardemo application
- 1. If not already populated by events and todos, enter some test items
- 1. In app menu, select: "Export items"
- 1. Select name, Location and Type (iCalendar files) for export
- 1. Verify that file is saved at intended location.
- '));
-
- import_ical: function()
- {
- prompt(twiki('*Import iCalendar items*
-
- 1. Open Calendardemo application
- 1. On app menu, select "Delete all items" to insure you are dealing with a pristine calendar
- 1. On app menu, select "Import items", then navigate to a saved instance of an iCalendar file
- 1. Click on file
- 1. Verify that calendar items have populated the dates in the calendar.
- '));
- },
-
- import_vcal: function()
- {
- prompt(twiki('*Import vCal items*
-
- 1. Open Calendardemo application
- 1. On app menu, select "Delete all items" to insure you are dealing with a pristine calendar
- 1. On app menu, select "Import items", then navigate to a saved instance of an vCal file
- 1. Click on file
- 1. Verify that calendar items have populated the dates in the calendar.
- }
-
-}
-
-/*
----++ Access Online Calendar Store
-Work with entries in an online organizer item store such as Google Calendar.
-*/
diff --git a/QtMobility/sys_calendar/sys_calendar.pro b/QtMobility/sys_organizer/sys_organizer.pro
index 41d6f77..65cf6c8 100644
--- a/QtMobility/sys_calendar/sys_calendar.pro
+++ b/QtMobility/sys_organizer/sys_organizer.pro
@@ -1,4 +1,4 @@
-SOURCES=sys_calendar.qtt
+SOURCES=sys_organizer.qtt
CONFIG+=systemtest
unix:!symbian {
diff --git a/QtMobility/sys_organizer/sys_organizer.qtt b/QtMobility/sys_organizer/sys_organizer.qtt
new file mode 100644
index 0000000..c1a5274
--- /dev/null
+++ b/QtMobility/sys_organizer/sys_organizer.qtt
@@ -0,0 +1,629 @@
+/****************************************************************************
+**
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** This file is part of QtUiTest.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** No Commercial Usage
+** This file contains pre-release code and may not be distributed.
+** You may use this file in accordance with the terms and conditions
+** contained in the Technology Preview License Agreement accompanying
+** this package.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** If you have questions regarding the use of this file, please contact
+** Nokia at qt-info@nokia.com.
+**
+**
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+//TESTED_COMPONENT=src/organizer
+
+// Note: for test casess relating to functions such as import iCalendar entries see src/versitorganiser tests
+
+testcase = {
+
+ initTestCase: function()
+ {
+ prompt(twiki('---++ Preconditions to the Organizer tests
+
+ 1. Verify that the devices system time is correct
+ 1. Verify that the appropriate backend is listed in the backend list for given device
+ '));
+ },
+
+ select_backends: function()
+ {
+ prompt(twiki('---++ Various backends can be selected
+
+ 1. Launch the *calendardemo* application
+ 1. For each item in the backend ( combo box at top of dialog )
+ 1. Choose as current backend
+ 1. Verify that the backend can be selected without any error or crash
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ add_event: function()
+ {
+ prompt(twiki('---++ Add Calendar Event
+
+ 1. Launch the *calendardemo* application
+ 1. Verify the layout and UI of the application is appropriate for device
+ 1. Verify the correct day and month is shown.
+ 1. Verify that todays date is highlighted
+ 1. Verify that no events are listed. If events are listed then
+ 1. Remove the events
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Verify that the current backend is the best to suit device
+ 1. Add a *valid* event:
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 1\' |
+ | Start time | today\'s date, 08:00 AM |
+ | End time | today\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Verify that you are presented with the day view for today and that \'Event 1\' is listed with start time shown
+ 1. Click \'View Month\' button
+ 1. Verify that you are in the Month View with todays date underlined.
+ 1. Add an *invalid* event:
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Invalid Event\' |
+ | Start time | today\'s date, 08:00 AM |
+ | End time | yesterday\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Verify that you are presented with an error: \'Failed! Start date is not before due date\'.
+ 1. Click \'Done\'(or \'OK\') button
+ 1. Click \'Cancel\' button
+ 1. Verify that \'Event Invalid\' is not listed in either Today\'s, nor Yesterday\'s date.
+ 1. Add a *valid* event for later today:
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 2\' |
+ | Start time | today\'s date at 02:00 PM |
+ | End time | today\'s date at 03:00 PM |
+ | Alarm | \'15 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Verify that events \'Event 1\' and \'Event 2\' are listed against today\'s date
+ 1. Click \'View Month\' button
+ 1. Verify that events \'Event 1\' and \'Event 2\' are listed for today\'s date
+ 1. Add *valid* event for 2 days into the future:
+ 1. Clicking date 2 days into the future in the Calendar View
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 3\' |
+ | Start time | future date, 06:00 PM |
+ | End time | future date, 07:00 PM |
+ | Alarm | \'05 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. If \'Memory\' backend is not being used
+ 1. Close the *calendardemo* application
+ 1. Launch the *calendardemo* application
+ 1. Verify that today\'s date has events \'Event 1\' and \'Event 2\' listed with correct details
+ 1. Verify that the day after tomorrow has the event \'Event 3\'
+ 1. Delete events \'Event 1\', \'Event 2\', \'Event 3\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ delete_event: function()
+ {
+ prompt(twiki('---++ Delete Calendar Event
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no events are listed. If events are listed then
+ 1. Remove the events
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Add the event \'Event 1\':
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 1\' |
+ 1. Click \'Save\' button
+ 1. Add the event \'Event 2\':
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 2\' |
+ 1. Click \'Save\' button
+ 1. Verify that \'Event 1\' and \'Event 2\' are listed
+ 1. Without selecting any events (no events highlighted), click \'Remove\' button
+ 1. Verify that no event has been removed from list.
+ 1. Return back to Month View, and reselect todays date.
+ 1. Verify that \'Event 1\' and \'Event 2\' are still listed
+ 1. Select \'Event 1\'
+ 1. Click \'Remove\' button
+ 1. Verify that \'Event 1\' has been removed from list of events.
+ 1. If \'Memory\' backend is not being used
+ 1. Close the *calendardemo* application
+ 1. Launch the *calendardemo* application
+ 1. Verify that \'Event 1\' is not listed in the list of today\'s events
+ 1. Delete events \'Event 1\'and \'Event 2\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ edit_event: function()
+ {
+ prompt(twiki('---++ Edit Calendar Event
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Select today\'s date
+ 1. Verify that no events are listed. If events are listed then
+ 1. Remove the events
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Add the event \'Event 1\':
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 1\' |
+ | Start time | today\'s date, 08:00 AM |
+ | End time | today\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Add the event \'Event 2\':
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 2\' |
+ | Start time | today\'s date, 08:00 AM |
+ | End time | today\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Verify that \'Event 1\' and \'Event 2\' are listed
+ 1. Edit event \'Event 1\':
+ 1. Click(Highlight) event \'Event 1\'
+ 1. Click \'Edit\' button
+ 1. Enter new details for event \'Event 1\':
+ | Subject | \'Event 1 Edited\' |
+ | Start time | tomorrow\'s date, 08:00 AM |
+ | End time | tomorrow\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Verify that \'Event 1 Edited\' is now listed under tomorrow\'s date
+ 1. Select \'Event 1 Edited\' and click the \'Edit\' button
+ 1. Change \'End time\' of event to today\'s date, leaving \'Start time\' to refer to tomorrow\'s date
+ 1. Verify that you are presented with an error: \'Failed! Start date is not before end date\'.
+ 1. Click \'Done\' (or \'OK\' button)
+ 1. Click \'Cancel\' button
+ 1. Verify that \'Event 1 Edited\' has not been edited
+ 1. Highlight \'Event 1 Edited\' and click the \'Edit\' button
+ 1. Change both \'Start time\' and \'End time\' to today\'s date with a valid range
+ 1. Select in Calendar view today\'s date
+ 1. Verify that \'Event 2 Edited\' is now listed
+ 1. Delete events \'Event 1 Edited\'and \'Event 2\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ event_recurrence: function()
+ {
+ prompt(twiki('---++ Event Recurrence
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no events are listed. If events are listed then
+ 1. Remove the events
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Add events *without* no re-occurance:
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 1\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 2\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Add an event *with* an re-occurance:
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Recurring Event\' |
+ | Start time | today\'s date, 30 min in the future |
+ | End time | today\'s date, 60 min in the future |
+ | Repeat | \'Weekly\' |
+ | Repeat period | \'For a number of occurances\' |
+ | Repeat count | \'5\' |
+ 1. Click \'Save\' button
+ 1. Verify that the \'Recurring Event\' is listed in event list
+ 1. Click \'View Month\' button
+ 1. Select in Calendar View a date 7 days from today
+ 1. Verify that \'Recurring Event\' is listed on that day
+ 1. Verify that \'Event 1\' and \'Event 2\' are *not* listed on that day
+ 1. Select in Calendar View a date a futher *21 days* in the future
+ 1. Verify that \'Reacurring Event\' is listed on that day
+ 1. Select in Calendar View a date a futher *14 days* in the future
+ 1. Verify that \'Reacurring Event\' is ont present on that day
+ 1. Select in Calendar View a date *1 year* in the future on the given day of the week for \'Reacurring Event\'
+ 1. Verify that \'Recurring Event\' is not listed on that day
+ 1. Delete events \'Event 1\', \'Event 2\' and \'Recurring Event\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ add_todo: function()
+ {
+ prompt(twiki('---++ Add Calendar Todo
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no todos are listed. If todos are listed then
+ 1. Remove the todos
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Add a *valid* Todo:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 1\' |
+ | Start time | tomorrow\'s date 08:00 AM |
+ | End time | tomorrow\'s date 04:00 PM |
+ | Priority | \'High\' |
+ | Status | default |
+ | Alarm option | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that you are presented with the day view for tomorrow and that \'Todo 1\' is listed with start time shown
+ 1. Click \'View Month\' button
+ 1. Verify that you are in the Month View with today\'s date underlined, and that tomorrow\'s date is highlighted in green.
+ 1. Add an *invalid* Todo:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo Invalid\' |
+ | Start time | today\'s date 08:00 AM |
+ | End time | yesterday\'s date 04:00 PM |
+ | Priority | \'High\' |
+ | Status | \'In progress\' |
+ | Alarm option | \'5 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that you are presented with an error: \'Failed! Start date is not before due date.\'
+ 1. Click \'Done\' (or \'OK\') button
+ 1. Click \'Cancel\' button
+ 1. Verify that \'Todo Invalid\' is not listed in either today\'s, nor yesterday\'s date.
+ 1. Add a *valid* Todo with later start time:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 2\' |
+ | Start time | tomorrow\'s date 05:00 PM |
+ | End time | tomorrow\'s date 06:00 PM |
+ | Priority | \'Low\' |
+ | Status | default |
+ | Alarm option | \'15 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that \'Todo 1\' and \'Todo 2\' are listed for today\'s date in Day View
+ 1. Click \'View Month\' button
+ 1. Clicking a date 2 days into the future in the Calendar View
+ 1. Add a *valid* Todo:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 3\' |
+ 1. Click \'Save\' button
+ 1. If \'Memory\' backend is not being used
+ 1. Close the *calendardemo* application
+ 1. Launch the *calendardemo* application
+ 1. Select the above mentioned backend again.
+ 1. Verify that today\s date has \'Todo 1\' and \'Todo 2\' listed with correct details
+ 1. Verify that \'Todo 3\' is listed for 2 days in the future
+ 1. Delete events \'Todo 1\', \'Todo 2\' and \'Todo 3\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ edit_todo: function()
+ {
+ prompt(twiki('---++ Edit Calendar Todo
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no todos are listed. If todos are listed then
+ 1. Remove the todos
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Add a Todo:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 1\' |
+ | Start time | tomorrow\'s date 08:00 AM |
+ | End time | tomorrow\'s date 04:00 PM |
+ | Priority | \'High\' |
+ | Status | default |
+ | Alarm option | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Add a Todo with later start time:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 2\' |
+ | Start time | tomorrow\'s date 05:00 PM |
+ | End time | tomorrow\'s date 06:00 PM |
+ | Priority | \'Low\' |
+ | Status | default |
+ | Alarm option | \'15 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Add a Todo:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo details:
+ | Subject | \'Todo 3\' |
+ | Start time | today\'s date 05:00 PM |
+ | End time | today\'s date 06:00 PM |
+ | Priority | \'Medium\' |
+ | Status | default |
+ | Alarm option | \'5 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Click \'View Month\' button
+ 1. Click todo entry \'Todo 2\'
+ 1. Click \'Edit\' menu entry
+ 1. Enter new Todo details:
+ | Subject | \'Todo 2 Edited\' |
+ | Start time | tomorrow\'s date 02:00 PM |
+ | End time | tomorrow\'s date 03:00 PM |
+ | Priority | \'Medium\' |
+ | Status | default |
+ | Alarm option | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that todo \'Todo 2 Edited\' exists and has details:
+ | Subject | \'Todo 2 Edited\' |
+ | Start time | tomorrow\'s date 02:00 PM |
+ | End time | tomorrow\'s date 03:00 PM |
+ | Priority | \'Medium\' |
+ | Status | default |
+ | Alarm option | \'30 minutes before\' |
+ 1. Verify that \'Todo 1\' and \'Todo3\' are unchanged
+ 1. Delete events \'Todo 1\', \'Todo 2 Edited\' and \'Todo 3\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ add_journal: function()
+ {
+ prompt(twiki('---++ Add Journal Entry
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no journal entries are listed. If journal entries are listed then
+ 1. Remove the journal entries
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. Verify that the current backend is the best to suit device
+ 1. If platform(backend) does not support Journal entries then skip all steps in this test.
+ 1. Add a Journal entry:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 1\' |
+ | Time | today\'s date, 08:00 AM |
+ | Alarm | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that you are presented with the day view for today and that \'Journal 1\' is listed with start time shown
+ 1. Click \'View Month\' button
+ 1. Verify that you are in the Month View with todays date underlined.
+ 1. Add a journal entry for later today:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 2\' |
+ | Time | today\'s date at 02:00 PM |
+ | Alarm | \'15 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify that events \'Journal 1\' and \'Journal 2\' are listed against today\'s date
+ 1. Click \'View Month\' button
+ 1. Verify that events \'Journal 1\' and \'Journal 2\' are listed for today\'s date
+ 1. Add Journal for 2 days in the future:
+ 1. Clicking date 2 days into the future in the Calendar View
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 3\' |
+ | Time | future date, 06:00 PM |
+ | Alarm | \'05 minutes before\' |
+ 1. Click \'Save\' button
+ 1. If \'Memory\' backend is not being used
+ 1. Close the *calendardemo* application
+ 1. Launch the *calendardemo* application
+ 1. Verify that today\'s date has Journal entries \'Journal 1\' and \'Journal 2\' listed with correct details
+ 1. Verify that the day after tomorrow has the Journal entry \'Journal 3\'
+ 1. Delete Journal entries \'Journal 1\', \'Journal 2\', \'Journal 3\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+ edit_journal: function()
+ {
+ prompt(twiki('---++ Edit Journal Entry
+
+ 1. Launch the *calendardemo* application
+ 1. Select appropriate backend
+ 1. Verify that no journal entries are listed. If journal entries are listed then
+ 1. Remove the journal entries
+ 1. Close the *calendardemo* application
+ 1. Restart this test case
+ 1. If platform(backend) does not support Journal entries then skip all steps in this test.
+ 1. Add a Journal entry:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 1\' |
+ | Time | today\'s date, 08:00 AM |
+ | Alarm | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Add a journal entry for later today:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 2\' |
+ | Time | today\'s date at 02:00 PM |
+ | Alarm | \'15 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Add Journal for 2 days in the future:
+ 1. Clicking date 2 days into the future in the Calendar View
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 3\' |
+ | Time | future date, 06:00 PM |
+ | Alarm | \'05 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Click Journal Entry \'Journal 2\'
+ 1. Click \'Edit\' menu entry
+ 1. Enter new details for \'Journal 2\':
+ | Subject | \'Journal 2 Edited\' |
+ | Time | today\'s date at 02:00 PM |
+ | Alarm | \'5 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Verify details of \'Journal 2 Edited\', eg
+ 1. Click \'Edit\' menu entry
+ 1. Verify Journal details seen with:
+ | Subject | \'Journal 2 Edited\' |
+ | Time | today\'s date at 02:00 PM |
+ | Alarm | \'5 minutes before\' |
+ 1. Click \'Cancel\' button
+ 1. Verify that the details of \'Journal 1\' and \'Journal 3\' have not changed
+ 1. Delete Journal entries \'Journal 1\', \'Journal 2 Edited\', \'Journal 3\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ search_items_by_time: function()
+ {
+ prompt(twiki('---++ Search Items By Time
+
+ 1. Launch the *calendardemo* application
+ 1. Access all organizer items corresponding to a particular period. For example, an application that shows all organizer items occurring on the current day.
+ 1. Close the *calendardemo* application
+ '));
+ },
+*/
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ search_items_any_attribute: function()
+ {
+ prompt(twiki('---++ Search Items Using Any Attribute
+
+ 1. Launch the *calendardemo* application
+ 1. Access organizer items corresponding to one or more attribute values.
+ 1. For example a user may search for all items that occurred January to March 2009, at Brisbane where the description contains \'birthday party\' .
+ 1. Close the *calendardemo* application
+ '));
+ },\'Event 1\'
+ */
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ online_calendar: function()
+ {
+ prompt(twiki('---++ Search Items Using Any Attribute
+
+ 1. Launch the *calendardemo* application
+ 1. Access organizer items corresponding to one or more attribute values.
+ 1. For example a user may search for all items that occurred January to March 2009, at Brisbane where the description contains \'birthday party\'.
+ 1. Close the *calendardemo* application
+ '));
+ },
+ */
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ custom_data: function()
+ {
+ prompt(twiki('---++ Custom Data
+
+ 1. Launch the *calendardemo* application
+ 1. Add custom data to an organizer item.
+ 1. For example a travel organizer application may want to add non-standard new fields to an organizer item representing travel information.
+ 1. Close the *calendardemo* application
+ '));
+ },
+ */
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ multiple_stores: function()
+ {
+ prompt(twiki('---++ Supporting Multiple Stores
+
+ 1. Launch the *calendardemo* application
+ 1. Application may want to choose between the internal calendar store and an online calendar store.
+ 1. It is possible for there to be more than one store on the local device.
+ 1. Close the *calendardemo* application
+ '));
+ },
+ */
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ change_notification: function()
+ {
+ prompt(twiki('---++ Notifications of Changes in Data
+
+ 1. Launch the *calendardemo* application
+ 1. An application can use the API to be notified of changed in the underlying data.
+ 1. For example an application that shows the coming weeks organizer items would want to be notified when the underlying calendar data changes so it can check if it needs to update the displayed organizer items.
+ 1. Close the *calendardemo* application
+ '));
+ },
+ */
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ access_control: function()
+ {
+ prompt(twiki('---++ Access Control
+
+ 1. Launch the *calendardemo* application
+ 1. Control who can and who cannot view organizer items.
+ 1. Close the *calendardemo* application
+ '));
+ },
+ */
+
+
+// Candidate for future fully described tests, disable for the moment.
+/*
+ import_vcal: function()
+ {
+ prompt(twiki('---++ Import vCal items
+
+ 1. Launch the *calendardemo* application
+ 1. On app menu, select \'Delete all items\' to insure you are dealing with a pristine calendar
+ 1. On app menu, select \'Import items\', then navigate to a saved instance of an vCal file
+ 1. Click on file
+ 1. Verify that calendar items have populated the dates in the calendar.
+ 1. Close the *calendardemo* application
+ '));
+ }
+ */
+}
+
+/*
+---++ Access Online Calendar Store
+Work with entries in an online organizer item store such as Google Calendar.
+*/
diff --git a/QtMobility/sys_versitorganizer/sys_versitorganizer.qtt b/QtMobility/sys_versitorganizer/sys_versitorganizer.qtt
index ad35294..dc5424a 100644
--- a/QtMobility/sys_versitorganizer/sys_versitorganizer.qtt
+++ b/QtMobility/sys_versitorganizer/sys_versitorganizer.qtt
@@ -41,39 +41,107 @@
//TESTED_COMPONENT=src/versitorganizer
+// Note for test cases relating to functionality such as add event see test relating to src/organizer
testcase = {
- importICalendarItems: function()
- {
- prompt(twiki('*Import iCalendar Items*
+ import_ical: function()
+ {
+ prompt(twiki('---++ Import iCalendar items
- 1. save sample iCalendar (eg testdata/exampleEvents.ics) into users \"Home\" directory on target
- 1. start application *calendardemo*
- 1. using menu entries select *Import Items...*
- 1. select iCalendar to load as saves in step 1.
- 1. verify that the expected events are seen. In the case of the exampleEvents.ics there should be the following events
- | *Bastille Day Party* | event which occurs July 14, 1997 17:00 (UTC) through July 15, 1997 03:59:59 (UTC) |
- | *Submit Income Taxes* | todo which occurs on April 15, 1998 |
- | *Project Report* | journal entry which occurs on March 24, 1997 |
- '));
+ 1. Launch the *calendardemo* application
+ 1. On app menu, select \'Delete all items\' to insure you are dealing with a pristine calendar
+ 1. As required transfer exampleEvents.ics onto a location on the target
+ 1. On app menu, select \'Import items\' menu entry
+ 1. In file dialog that presents select the exampleEvents.ics that was transfer to the target
+ 1. Click \'Open\'
+ 1. In the case of the importing exampleEvents.ics:
+ 1. Verify there is now the following event:
+ | Subject | \'Bastille Day Party\' |
+ | Start time | July 14, 1997 17:00 (UTC) |
+ | End time | July 15, 1997 03:59:59 (UTC) |
+ 1. Verify there is the following Todo:
+ | Subject | \'Submit Income Taxes\' |
+ | Time | April 15, 1998 |
+ 1. if the platform(backend) supports journal entries:
+ | Subject | \'Project Report\' |
+ | Time | March 24, 1997 |
+ * *Hint:* Possibly using the target system\'s Todo, Calendar and Journal applications will be easiest to verify above details
+ 1. On app menu, select \'Delete all items\'
+ 1. Close the *calendardemo* application
+ '));
+ },
- },
+ export_ical: function()
+ {
+ prompt(twiki('---++ Export iCalendar items
- exportICalendarItems: function()
- {
- prompt(twiki('*Export iCalendar Items*
-
- 1. start application *calendardemo*
- 1. Enter at least one of each support iCalendar item types: event, joural and todo using the the *Add Event*, *Add Journal* and *Add Todo* menu entry
- 1. Using the *Add Event* menu item add at least one event, eg using yesterdays date
- 1. Using the *Add Journal* menu item add at least one Journal entry, eg using todays date
- 1. Using the *Add Todo* menu item add at least one Todo entry, eg using tomorrows date
- 1. Using the "Export Items..* menu item export these events and save to exportTest.ics
- 1. Using the "Remove* menu item, delete entered events
- 1. Verify that no event are present
- 1. Using the "Import Items..* menu item import events in exportTest.ics
- 1. Verify that the entered events are now restored.
- '));
-
- }
+ 1. Launch the *calendardemo* application
+ 1. On app menu, select \'Delete all items\' to insure you are dealing with a pristine calendar
+ 1. Verify that the current backend is the best to suit device
+ 1. Add *valid* events
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 1\' |
+ | Start time | today\'s date, 08:00 AM |
+ | End time | today\'s date, 01:00 PM |
+ | Alarm | \'30 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Select \'Add Event\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Event 2\' |
+ | Start time | tomorrow\'s date, 02:00 PM |
+ | End time | tomorrow\'s date, 01:00 PM |
+ | Alarm | \'15 minutes before\' |
+ | Repeat | \'None\' |
+ 1. Click \'Save\' button
+ 1. Add a *valid* Todos:
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo detail:
+ | Subject | \'Todo 1\' |
+ | Start time | today\'s date 08:00 AM |
+ | End time | today\'s date 04:00 PM |
+ | Priority | \'High\' |
+ | Status | default |
+ | Alarm option | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. Select: \'Add Todo\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter Todo detail:
+ | Subject | \'Todo 2\' |
+ | Start time | tomorrow\'s date 03:00 PM |
+ | End time | tomorrow\'s date 04:00 PM |
+ | Priority | \'Low\' |
+ | Status | default |
+ | Alarm option | \'5 minutes before\' |
+ 1. Click \'Save\' button
+ 1. If platform(backend) supports Journal entries then add a Journal entry:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 1\' |
+ | Time | today\'s date, 08:00 AM |
+ | Alarm | \'30 minutes before\' |
+ 1. Click \'Save\' button
+ 1. If platform(backend) supports Journal entries then add a journal entry for later today:
+ 1. Select \'Add Journal\' menu entry (maybe listed under \'Options\' menu)
+ 1. Enter event details:
+ | Subject | \'Journal 2\' |
+ | Time | today\'s date at 02:00 PM |
+ | Alarm | \'15 minutes before\' |
+ 1. Click \'Save\' button
+ 1. On app menu, select \'Export items\' menu entry
+ 1 Enter/select suitable location saving as testcalendar.ics
+ 1. Click on \'Save\'
+ 1. Ideally the testcalendar.ics be opened on a separate system and its contents validated, if that is not possible then ..
+ 1. On app menu, select \'Delete all items\' to remove all calendar items
+ 1. Close the *calendardemo* application
+ 1. Launch the *calendardemo* application
+ 1. On app menu, select menu entry \'Import items\'
+ 1. Select location for testcalendar.ics entered earlier
+ 1. Click \'Select\' button
+ 1. Verify that calendar items \'Event 1\', \'Event 2\', \'Todo 1\' and \'Todo 2\' are present and have expected details
+ 1. If platform(backend) supports Journal entries then Verify that calendar items \'Journal 1\' and \'Journal 2\' are present and have expected details
+ 1. Delete events \'Event 1\', \'Event 2\', \'Todo 1\', \'Todo 2\', \'Journal 1\' and \'Journal 2\' (using native calendar application if neccessary)
+ 1. Close the *calendardemo* application
+ '));
+ },
}