r19 - 29 Nov 2004 - 11:02:45 - AparnaKadakiaYou are here: OSAF >  Projects Web  >  DevelopmentHome > ZeroPointFiveTestSpec

Test Specfication for the features in Chandler 0.5 release

Functional/Component Test cases

Calendar Testcases

  • Reviewing my Calendar
    • Navigate to the calendar view using the calendar filter or the mini calendar. Verify that the week view shows up by default in both the cases.
    • Generate calendar items from the test menu. Verify that they show up in calendar app under the All collection.
    • Review the scheduled items on the calendar in Day and Week views. Verify the Month view is not available and the default is Week view. Also verify that the switching buttons between Month, Week and Day views have been removed. When in week view there should be a day menu in the top left portion to switch to day view and vice versa.
    • Click on the event and see the details in the detail view window. The detail view should contain the following fields: From, To, Location, Start date and Time, End date and time, Duration of the event, Reminders, All day event checkbox and Notes. The stamping buttons should also be enabled in the DV toolbar.
    • The following attributes of the calendar retain their value even when different sidebar collections are selected - week view or day view display and visible dates (current dates visible on the calendar view)
    • You should be able to navigate to the day view from the week view by clicking on the day column heading. The week days still appear across the top.
    • When in the day view, click on the "week" button in the top left hand corner of summary view to go back to the week view.
    • Test the navigation arrows to make sure you move by 1 week in both day and week views.
    • To create a new calendar event, you can either use the File menu -> New Item -> Event or double-click on any day and enter the values in the detail window.
    • Click on an event in the day or week view and verify that it shows up in the right hand panel (horizontal layout)
    • Verify that the mini-calendar is visible in all views. It cannot be opened or closed and it persists through all filters.
    • If summary window is not open then selecting a date on the mini calendar should give a preview of the events for that day.
    • Double clicking the date on the mini calendar open's the days's events in week view in the summary table.
    • Preview events in the mini calendar should only display confirmed events.
    • If there are no events then the preview area collapses.
    • Single click on a day should open the date in the week view if week view was open in the summary view.
    • Single click on a day should open the day's events in the day view if day view was open in the summary view.

  • Adding/Editing my calendar
    • Create a new calendar event by specifying To, CC, BCC, Title/Subject, Location, Day and Time, Duration and Notes. Verify that the event shows up correctly in the Day and Week views. The work flow only supports editing the subject inline.
    • Create a new calendar event in the summary view by clicking and dragging to the appropriate time.
    • Drag and Drop events into the calendar.
    • Add event using single-click/drag and double-click (in place editing) in top anytime event area.
    • Edit an existing event in the calendar and verify the updates show up correctly in the Day and Week views.

  • Testing anytime events/tasks in the calendar view
    • Create anytime event by creating a new event by entering month/day/year but without time. This should show up in the top "week" bar under the days.
    • Verify that anytime items(events and tasks) have the following statuses, confirmed(black), fyi(grey), tentative(dotted black line).
    • Show conflicts between confirmed events using a red bar over the overlap time period.
    • For all-day events make sure the bar in the top area is colored (background color)
    • Printing a week prints the expanded version of anytime area. Printing a day prints the expanded version of the anytime area of the day.

  • Testing the mini calendar
    • Mini calendar should always be visible in all views and all filters.
    • Mini calendar always displays the month view.
    • Today should be highlighted in bold and the selected day should be in blue text.
    • Mini calendar should provide preview of events/tasks for a selected(single click) day when the summary view is not open.
    • Mini calendar should also have navigation buttons to move back and forth between months.

  • Event Reminders
    • A pop up dialog should come up as a reminder before some specified time before the event start.

  • Sending Simple Event Invites
    • As user A create an event.
    • Type in users B and C in the To field.
    • Tabbing out of the To field or hitting enter should enable the schedule button. Tabbing out of the To: field should also validate the email address format and pop the question mark next to the email address if it is incorrectly formatted.
    • Clicking on schedule should populate the summary view table area.
    • If users B and C have published their free-busy the information is displayed in the summary view. (Publishing free-busy calendar is not in 0.5)
    • If the users B and C have not published their free busy calendar, N/A should appear next to their names in the summary view.
    • Free-busy should be a combination of all confirmed and tentative events in the All collection. - not in 0.5
    • Stamp the event as a mail and send the mail. The invite should go out to the attendees and it should be a simple text message. There should be no accept button or anything. To accept the invitation the invitee has to manually create the event in it's calendar.
    • Once an invitation has been sent, the invite can be modified and invite sent again. The invitee has to update his calendar manually.

  • Printing calendar events
    • Go to the week view of the calendar and print the week view. The printed page should display all the events correctly on a single page. The details of the event should be correctly displayed on the print out.
    • Go to the day view of the calendar and print the day view. The printed page should display all the events correctly on a single page. The details of the event should be correctly displayed on the print out.

  • Sharing Calendars
    • Share a collection with a user that has only some of your calendar events.
    • Sync a collection from a different user who also has calendar items. Review the sharee's calendar.
    • Find an available time slot on the sharee's calendar and add an event and/or a task and invite attendees.
    • Edit an existing event in the sharee's calendar and sync the changes.
    • Share a collection with only calendar events with a user.
    • A user has 2 options to schedule a meeting with a sharee : First, look at the free-busy schedule on the sharee's shared calendar and schedule the event on it. The sharee might not have shared all the calendar items from the All collection so there is a chance what the sharer is seeing is only partial free busy schedule of the sharee. The second option is the user can schedule an event on his personal calendar by looking at the free busy data on the shared calendar and invite the sharee as an attendee. This will send an email to the sharee that it can accept or reject depending on whether he has a conflict or not. Both the approaches have the side effect that the free busy schedule of the sharee may or may not be accurate depending on whether he has shared partial calendar or complete calendar.

Collection Sharing Testcases

  • Sharing an empty 'All' Collection
    • First, it should prompt the sharer to setup WebDAV account(for sharing) and Email accounts(for sending invitations). If only one of them is setup it should prompt the user to set the other. Sharing cannot proceed till both webDAV and email accounts have been setup.
    • Once accounts are setup, the sharing is initiated and items uploaded to the webDAV server. The status in chandler should reflect uploading items to webDAV and sending notifications.
    • Accept the invitation at the sharee end and verify that the empty collection comes across succesfully. The collection at the sharee's end should show 'Aparna.All' if aparna is the username of the sharee's email address.
  • Sharing a user defined collection of mixed items.
    • Generate a new collection called 'Home Stuff'. Generate events,mail and tasks in this new collection. DnD some items from the All collection to this Home Calendar collection. Also create some mail and task items and stamp them as events, mail and tasks.
    • Share the collections with 1 sharee and verify the statuses once it is successfully shared.
    • Verify the Uploaded status for the sharer and Downloaded status for the sharee once the sync is successful.
    • At the sharee's end the collection should come across as 'Sharer.Home Stuff'. As a sharee add mixed items to the shared collection and sync the changes and verify that the changes reflect correctly at the other end.

  • Sharing an event-only or calendar-only collection
    • Generate calendar events in the All collection. Also create some mail and task items and stamp them as events.
    • Select the Calendar app in All collection and share it with 2 sharees.
    • Open 2 seperate instances of chandler with email addresses of the sharees and receive the sharing invitation.
    • For one of the sharees leave the sharing invite unopened. For the second sharee, click on the link in the detail view and download the shared collection.
    • The shared collection should show up as 'Sharer.All' in the sharee's sidebar.
  • Share a mixed item collection
    • Generate content items from the test menu and share the 'All' Collection with a sharee. All collection should contain notes, tasks, events and mail. It should also contain stamped items, events stamped as mail, mail stamped as events and tasks, tasks stamped as events etc.
    • Sync the changes at the sharee's end and sync the changes back.
  • Share multiple subsets of a collection with sharees
    • Can I share All+(Mail app) with one sharee and All+(Event app) with a different sharee and All+(Task app) with a 3rd sharee or maybe the same sharee as the first ===> yes, yes, yes.
    • They would all show up as 'Sharer.All' in everybody's sidebar. They would have to use the appropriate app bar to view their portion of the shared collection. At all costs the sharee's view should be the same as sharer's.
  • Sharing with Read-Only sharees (n/a for 0.5)
    • Share the Home Calendar collection with a sharee who has read-only privileges on the webDAV server.
    • Try and make changes to the events in the shared collection and verify that Chandler doesn't allow making changes by the sharee.
  • Sharing with Read-Only and Editor sharees (n/a for 0.5)
    • Share a collection with 2 sharees one with Read-Only privileges and other with Editor privileges.
    • Verify that the Read-Only sharee cannot make changes to the items in the shared collection but the Editor one can.
  • Sharee removing sharer from the shared collection
    • Sharer's field is uneditable in 0.5. So there is no way to delete a sharer from a shared collection.
  • Sharee removing another sharee from the shared collection
    • A sharee can remove another sharee from a shared collection. At that point, when the other sharee tries to sync it gives him an error saying you have been removed from the sharee list.
  • Sharer removing a sharee from the shared collection
    • Same as above
  • Turn sharee's off
    • Only individuals can turn themselves off using the sync checkbox in the detail window of the shared collection. If the sync checkbox is checked off then that means it should stop syncing this shared collection. This retains copy of the collection from the last update on the sharee's local machine.
  • Removing people from the invitee list
    • You can either remove yourself from the invitee list or someone can remove a person from the invitee list. If you have removed yourself and synced the changes, your collection will stop getting synced and other sharees won't see you on the sharee list. If you someone else removes you, then you would get a pop a message saying you have been removed from the sharee list. In that case you can request to be re-added or stay put.
  • Deleting items in a shared collection
    • As a sharee delete an item from a shared collection and sync the collection. In all the sharers and sharee's collections that item should get wiped away (question for the design team - answer was : yes)
  • Deleting shared collections
    • As a sharee delete the shared collection. This only removes the collection from that sharee's view but the rest of the sharees continue to share the collection. It will also prompt the user to save the items in the shared collection v/s moving those items also to Trash. The user may choose to delete(move everything to trash) or leave the items in the All collections and just remove the collection name from the sidebar.
    • As a sharee delete the shared collection. This deletes the collection from the server. If the other sharees try synching now, it pops them an error saying this collection no longer exists on the server or the sharer has deleted this collection from the server.

Item Removal and Deletion Testcases

  • Deleting items from Library collections
    • Deleting items from the Library collections should move it to Trash. It would delete it from all other collections the item may appear in incl All. There is only a concept of delete for the library collections which means all delete operations move the items to trash. There is no remove which is remove the item from this collection view.
  • Removing items from User Defined collections
    • Removing items from the user defined collections removes the item from that collection only. If the same item appears in a different collection then that is not affected. It only removes from this collection view.
  • UI affordances for delete/remove.
    • Delete an item from a Library collections using toolbar 'Delete' button. The behaviour should be as described above. The Remove should be greyed out for Library collections.
    • Remove an item from a user defined collection using the toolbar 'Remove' button. If you click the 'Delete' button it should move those items to trash. For user defined collections both 'Remove' and 'Delete' buttons are available.
    • Move an item from Library or user defined collections to Trash using 'Move to Trash' menu item.
    • Remove items from user defined collection using 'Remove from Collection' menu item. The menu item should be inactive/greyed out for Library collections.
    • Delete items from Library and User Defined collections using the 'delete' shortcut on the keyboard. Again depending on what collection the item is removed from the behaviour should be same as testcase 1 or 2. (question for the design team on this)
    • Remove items from Library and user defined collections using the cut menu item.It deletes the item from the collection and also puts it in clipboard. (may get dropped out of 0.5)
  • Removing items completely from chandler
    • To remove items completely from chandler, you first move the items to trash and then use 'Empty Trash' menu item to remove the items from the repository. For user defined collections, removing the items only removes it from that view. You can only completely delete items from the Library collections.
  • Reversing the move to trash items
    • From the UI, using a single click you can move the item from trash back to it's original collections (unless they have been deleted). (may get dropped out of 0.5)
  • Deleting Collections
    • Delete a collection using the 'Delete the collection' menu item or right-click on the collection menu option.
    • Deleting a collection should not move it to trash. The user should be prompted with a message asking whether the items should be moved to trash v/s completely removed from the repository?

Sidebar Testcases

  • Application bar
    • The filter buttons should appear on the toolbar. This subset of the toolbar containing the filter buttons is called the Application bar.
  • Listing of Collections on the sidebar
    • The ordering of the sidebar items should be immutable. They appear in the same order no matter what is filter is selected in the Application bar : All, In, Out, Trash followed by user defined collections.
  • Sidebar selections
    • You should not be able to multi-select collections in the sidebar.
    • You should not be able to multi-select filters on the application bar.
    • There should be some visual differentiation between Library collections and User defined collections (pending development decision on what that would be)
  • OOTB View
    • When chandler is launched, by default the All my items collection is selected on the sidebar and the All filter is selected on the Application bar. List View of All items is displayed in the summary view.
    • All, In, Out and Trash collections should have an appropriate icon next to it in the sidebar. Only the user defined collections have no icons.
  • User Defined Collections
    • Create 3 user defined collections from the New menu item.
    • Verify that the collections show up in alphabetical order in the sidebar.
    • The name should appear greyed out if there are no items in the newly created collection.
    • Add an event item to the collection and click on the All or Event app and the collection name should get un-greyed.
    • Try the same by adding event and task items to the collection and selecting the event and task applications.
    • Drag and Drop items from other collections to
  • Creating new Task,Event, Mail and Note items
    • Creating a new task, event, mail or note item should automitically jump to 'All' and 'All my items' view.
    • The exception to this is when a user creates an in-place item. For e.g double clicking in calendar view to create an event.
  • Chaning name of a sidebar collection
    • Changing the name of a sidebar collection changes it all across the app.
  • Drag and Drop items into a sidebar collection
    • DnD items into a kind specific tab automtically stamps it as a item of that kind.

Toolbar Testcases

  • Toolbar Buttons and Behaviour
    • The toolbar has 3 distinct set of toolbar buttons. The first 4 buttons; All, Mail,Events and Tasks belong to The Application toolbar. The next set of buttons Sync, New, Delete and Print belong to the Summary View and finally the Send button belongs to the detail view.
    • The Sidebar is always displayed in 0.5, and so will the toolbar.
    • The look and feel of the buttons should be as shown in the images in ZeroPointFiveToolbarSpec.
    • The text on the Send button should change from 'Send' to 'Send to New' as soon as sharees' email addresses are updated in the detail view of a shared collection.
    • The buttons on the toolbar should be enabled/disabled based on what is displayed in the detail view. For e.g. the 'Send' button should be disabled when the detail view is not displaying a mail item.

Mail Attachments Testcases

  • Attaching files while composing email
    • Compose an email. For the detail view, a toolbar button should be enabled for attaching files to email.
    • Clicking on the button should open a standard File Open dialog box from where you can browse and select the file to be attached.
  • Receiving mail with attachments
    • When we receive email, there should be some indication in the detail and summary views that the email has attachments.
    • Open the email with the attachment. (Attachment viewing is dropped out of 0.5)

-- AparnaKadakia - 22 Nov 2004

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r19 < r18 < r17 < r16 < r15 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.