diff --git a/task_manager_app/docs/manual_validation.md b/task_manager_app/docs/manual_validation.md new file mode 100644 index 0000000..0365a86 --- /dev/null +++ b/task_manager_app/docs/manual_validation.md @@ -0,0 +1,85 @@ +# Manual Validation Results - End of Milestone №4 + +Since the end of Milestone №3, our "To-do List" app has had basic functionality. Through these last two weeks on Milestone №4, our team has implemented the following new features: +- Edit a task +- Reorder tasks +- Having multiple lists +- Setting a due date for tasks +- Setting a task priority +- Edit name of a task list +- Rearranging lists + +In the following tests, you'll see the results of testing each of these functionalities. I ran tests on commit 22cf1f4 of the GitHub branch "simon-branch". + +To start up the app, I navigated to the home directory for the project (for me, "Group1Project") and ran the following command: +``` +npm run start +``` +And opened http://localhost:5173/ in a browser. After that, I tested the new features listed above. See the following headings for more detail: + +## Edit a task +After creating a list, you can add one or more tasks. I tested this by creating a task list "Work" and then adding a task "Fix gloves." I then clicked the "📝" button, which let me edit the task name to "Fix gloves with tape". I then clicked 💾 to save changes to the database. + +**Changes persisted after refreshing the page** +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:34:14] "GET /lists HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:34:15] "GET /lists HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:32] "OPTIONS /addList HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:32] "POST /addList HTTP/1.1" 201 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:32] "GET /tasks/92a0dfa8-b008-4d2c-ae3d-26746d1404ea HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:42] "OPTIONS /addTask HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:42] "POST /addTask HTTP/1.1" 201 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:59] "OPTIONS /tasks/2f8181eb-2e19-473c-817f-7e078e6ebd06 HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:35:59] "PATCH /tasks/2f8181eb-2e19-473c-817f-7e078e6ebd06 HTTP/1.1" 200 - +``` +## Reorder tasks +To do this, you must have a task list with multiple tasks. To my task list "Work", I added a second task "Pack lunch", which appeared under the previous task. I then click-and-dragged "Pack lunch" and moved it to the first position. + +**Changes persisted after refreshing the page** +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:38:33] "OPTIONS /addTask HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:38:33] "POST /addTask HTTP/1.1" 201 - +[0] 127.0.0.1 - - [03/Nov/2025 06:38:48] "OPTIONS /reorderTasks HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:38:49] "PATCH /reorderTasks HTTP/1.1" 200 - +``` +## Having multiple lists +To test this, we added another list as we did the first one. Here, I make a new list called "Homework". + +**Changes persisted after refreshing the page** +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:42:11] "OPTIONS /addList HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:42:11] "POST /addList HTTP/1.1" 201 - +[0] 127.0.0.1 - - [03/Nov/2025 06:42:11] "GET /tasks/ec092e74-2d33-42bf-bfac-6aedae17a547 HTTP/1.1" 200 - +``` +## Setting a due date for tasks +Under the "Homework" list, I type the name "Russian Presentation" for a new task, and click on the calendar icon to select the date of October 27th, 2025. A new task "Russian Presentation" appears, with a deadline "2025-10-27: due 7 day(s) ago" + +**Changes persisted after refreshing the page** +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:43:53] "OPTIONS /addTask HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:43:53] "POST /addTask HTTP/1.1" 201 - +``` +## Setting a task priority +Tasks are assigned "Medium" priority by default. To change a task's priority, click on the 📝 icon to edit the task, and then select a priority from the dropdown menu. For the "Russian Presentation" task, I set priority to "High" and then clicked 💾 to save changes to the database. + +**Changes persisted after refreshing the page** +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:48:23] "OPTIONS /tasks/530945c6-55b5-463a-bcfc-3de970c4a20a HTTP/1.1" 200 - +[0] 127.0.0.1 - - [03/Nov/2025 06:48:23] "PATCH /tasks/530945c6-55b5-463a-bcfc-3de970c4a20a HTTP/1.1" 200 - +``` +## Edit name of a task list +To do this, click on the 📝 button under the "My Lists" section, and then 💾 to save changes. For example, I changed the list "Homework" to "University". When I refreshed the page, my list reverted back to "Homework", so **changes to task names do NOT persist**. +``` +[0] 127.0.0.1 - - [03/Nov/2025 06:50:15] "GET /tasks/ec092e74-2d33-42bf-bfac-6aedae17a547 HTTP/1.1" 200 - +``` +## Rearranging lists +Lists can also be rearranged, and stay, but this does not appear to save to the database, since there is no console-logged output. Upon refreshing the page, display reverted to the original order (based on which list was created first). + +**Changes to list arrangement do NOT persist** +``` +(no output) +``` + +## End notes: errors +While trying to save a task, I got pop-up error notification saying "Failed to save task. Please try again." This was because the database schema was updated, but I was using a database.db with the old schema. I had to delete that test database to proceed. + diff --git a/task_manager_app/docs/uml/Class Diagram.png b/task_manager_app/docs/uml/Class Diagram.png index 75f469d..d4f1d3a 100644 Binary files a/task_manager_app/docs/uml/Class Diagram.png and b/task_manager_app/docs/uml/Class Diagram.png differ