# Qtopia/Todo

When testing, it is important to check that changes are recorded not just when the change is made, but also that it persists after stopping and restarting the application. Check that the application is not fast-loaded prior to testing.

Non-ASCII and non-Latin-1 characters should be tested.

##

## Test cases

### Adding tasks

Test Purpose | Verify that tasks can be appended

Test Description

1. Remove all current tasks Todo list.
2. Append the tasks listed in table 1.
3. Verify that all tasks are in the order of importance (present, budget, car, tax, raise, hat, reports).
4. Tap on the header of the status column (the one with the checkbox icon in it) until the triangle points downwards.
5. Check the left-hand checkbox for the Fix Car item
6. Verify that it moves to the end of the list.
7. Tap the priority field of File Progress Reports and change priority to 2.
8. Verify that it moves to the fifth position.
9. Tap the priority field of the File Progress Reports again and change priority to 5.
10. Verify that it is shown as the last unfinished task (e.g. just above fix car).

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Add empty task

Test Purpose | Verify that you cannot add a task without a description

Test Description

1. Tap on New Task
2. Click OK
3. Verify that no new task is appended.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Editing a task

Test Purpose | Verify that a task can be edited.

Test Description

1. Tap on an existing task.
2. Verify that the Task Details are shown.
3. Tap on the Edit button or select Task > Edit from the menu.
4. Modify the Priority and tap OK.
5. Verify that the Task Details present the correct (modified) values.
6. Repeat the same for the Status field (try different percentages) and the Due field.
7. Repeat again for the Started Date and the Completed Date.
8. Finally edit the Category and verify again that the changes are shown in the Task Details.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Delete Task

Test Purpose | Verify that a task can be deleted.

Test Description

1. Select a task.
2. Tap the Delete button.
3. Verify that the dialog mentiones the selected task.
4. Click No
5. Verify that the task is NOT deleted.
6. Tap the Delete button again.
7. Click Yes
8. Verify that the selected task is deleted.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Find Task

Test Purpose | Verify that a task can be found using the Find function.

Test Description

1. Click Find
2. Type some text that can be found in one of the task descriptions:
3. Verify that a match is found.
4. Tap on the Find next button behind the Find editor line.
5. Verify that a next match is found or that the status bar shows "Find: not found" for a short period.
6. Type some text that is not to be found in one of the task descriptions, e.g. "qxyz":
7. Verify that the status bar shows "Find: not found" for a short period.
8. Try some more text entries to find different tasks.
9. Open a task for editing and add a note to the task: "This is an exclusive_note" and tap OK
10. Enter "Exclusive_note" in the search field and verify that the last edited task is found.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Task Completion

Test Purpose | Verify that a task can be checked as completed.

Test Description

1. Select All Tasks in the left bottom combobox.
2. Tap on an empty checkbox to left of a task.
3. Tap on the task to view the task details.
4. Verify that the task is now recorded as completed.
5. Uncheck the checkbox to the left of the task.
6. Verify that the task is now recorded as not completed.
7. Open the task for editing.
8. Change the status to completed and tap OK
9. Verify that the checkbox in front of the task is checked again.
10. Select Pending Tasks in the left bottom combobox.
11. Verify that only the pending (unfinished tasks) are shown.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Editing Priorities

Test Purpose | Verify that priorities can be quickly edited in the main view

Test Description

1. Tap on the priority number for a task.
2. Choose a new priority.
3. Check that the task is now recorded as having the newly chosen priority.
4. Tap on the Priority header
5. Verify that tasks are sorted according to priority.
6. Edit the Priority of one or more tasks and verify that the tasks are sorted according to their new priorities.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Editing a Category

Test Purpose | Verify that the category for a task can be edited.

Test Description

1. Tap on the Fix car task and open the task for editing.
2. Tap on "..." behind Category.
3. Verify that the Edit Categories dialog is shown.
4. Create a new category named "MyTestCat".
5. Check the checkbox in front of "MyTestCat" in the list, uncheck all other checkboxes and click OK
6. Go back to the Task List view and select the MyTestCat category in the bottom right combobox.
7. Verify that only the Fix car task is shown.
8. Select the All category again in the category combobox (bottom right).
9. Verify that all tasks are shown again.
10. Open Fix car again for editing.
11. Tap on "..." behind Category.
12. Uncheck MyTestCat and check Business and Personal and tap OK
13. Verify that the task Fix car is shown if All, Business or Personal is selected as the category in the bottom right combobox of the Task List.
14. Verify that the task Fix car is NOT shown if any of the other categories is selected in the combobox.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Sorting on Due date

Test Purpose | Verify that tasks are sorted on due date

Test Description

1. Verify that all tasks are entered as specified in table 1
2. Tap on the header of the completed column (the one with the checkbox icon) until the tasks are sorted with the tasks with prio 1 on top.
3. Verify that Submit budget is shown before (above) Fix car (because Submit budget has a Due date and Fix car has not).
4. Verify that Tax return is shown before Ask for a raise (because Tax return has a Due date).
5. Verify that Buy new hat is shown before File progress report (because both don't have a Due date and B comes before F).
6. Edit the description of Buy new hat and change it to: Must buy new hat.
7. Verify that Must buy new hat is now shown after File progress report (because both don't have a Due date and F comes before M).
8. Edit the Due date for Ask boss for raise and set it to April 13th.
9. Verify that the task is now shown before Tax return.
10. Edit the Due date for Ask boss for raise and set it to April 15th.
11. Verify that the task is now shown after Tax return.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Beaming a task to another Qtopia device

Test Purpose | Verify that a task can be beamed to another Qtopia device

Test Description

1. Get a second Qtopia device and enable the IR Receiver for receiving.
2. Position the two devices such that the IR ports can see each other.
3. Select a task.
4. Tap Task > Beam in the menu.
5. Verify that the status bar shows the progress of the beaming.
6. Verify that Todo will retry for maximally 20 times if the beaming failed.
7. Verify that the other Qtopia device has received the task.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Exchanging a task with a Palm OS device

Test Purpose | Verify that you can beam a task to and from a Palm OS device.

Test Description

1. Get a Palm OS device and enable the IR Receiver for receiving (if required).
2. Position the two devices such that the IR ports can see each other.
3. Select a task.
4. Tap Task > Beam in the menu.
5. Verify that the status bar shows the progress of the beaming.
6. Verify that Todo will retry for maximally 20 times if the beaming failed.
7. Verify that the Palm device has received the task.
8. Tap the Qt menu and select IR Receiver
9. Tap On for 5 minutes
10. Select a task on the Palm device and beam it to this Qtopia device.
11. Verify that the task is received.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Exchanging a task with a Pocket PC device

Test Purpose | Verify that you can beam a task to and from a Pocket PC device.

Test Description

1. Get a Pocket PC device and enable the IR Receiver for receiving (if required).
2. Position the two devices such that the IR ports can see each other.
3. Select a task.
4. Tap Task > Beam in the menu.
5. Verify that the status bar shows the progress of the beaming.
6. Verify that Todo will retry for maximally 20 times if the beaming failed.
7. Verify that the Pocket PC device has received the task.
8. Tap the Qt menu and select IR Receiver
9. Tap On for 5 minutes
10. Select a task on the Pocket PC device and beam it to this Qtopia device.
11. Verify that the task is received.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Configure Task list columns

Test Purpose | Verify that you can configure the headers of the Task list

Test Description

1. Tap View > Configure Headers.
2. Tap on an item in the left (available) list (e.g. Percent Completed) and then tap on the Right Arrow button.
3. Verify that the selected item is moved to the right (displayed) list.
4. Tap OK.
5. Tap View > Fit to width.
6. Verify that the new selected column is shown in the Table list
7. Tap View > Configure Headers again.
8. Select an item in the right list and then tap on Move up or Move down to change the order.
9. Tap OK.
10. Verify that the columns are shown in the expected order.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Using Categories

Test Purpose | Verify that tasks can be filtered on a category

Test Description

1. Ensure that the tasks from Table 1 are entered.
2. Select category Business
3. Verify that only the todo items: budget, raise and reports are shown.
4. Select category Personal.
5. Verify that only the todo items: present, car, tax and hat are shown.
6. Select category Kids.
7. Verify that only the todo item: present is shown.
8. Select category All.
9. Verify that all tasks are shown again.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test

### Fit to width

Test Purpose | Verify that you can easily change the width of the headers to fit the width of the screen

Test Description

1. Tap the stylus on the border of a header and drag the header to resize it.
2. Repeat the same for other headers.
3. Tap View > Fit to Width.
4. Verify that the headers are resized again to nicely fit within the screen width.

Expected TestResult | All the verification steps as described in the Test Description must be met.
Testnorm/Criteria | Exact Match
Test Suitability | Manual test