Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
XiaoYunhan committed Nov 12, 2018
2 parents 44b8623 + f9e352b commit 5e9ee5a
Show file tree
Hide file tree
Showing 3 changed files with 177 additions and 22 deletions.
190 changes: 172 additions & 18 deletions docs/DeveloperGuide.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -1408,34 +1408,188 @@ These instructions only provide a starting point for testers to work on; testers

.. Download the jar file and copy into an empty folder
.. Double-click the jar file +
Expected: Shows the GUI with a set of sample contacts. The window size may not be optimum.
Expected: Shows the GUI with a set of sample tasks and expenses.

. Saving window preferences
. Shutdown

.. Resize the window to an optimum size. Move the window to a different location. Close the window.
.. Re-launch the app by double-clicking the jar file. +
Expected: The most recent window size and location is retained.
.. Enter the `exit` command or close the application directly

_{ more test cases ... }_
. Re-launch
.. Double-click the jar file. +
Expected: Any previous changes to to-do list and/or expenditure tracker are automatically saved and will appear as per normal.

=== Deleting a person
=== Adding a task

. Deleting a person while all persons are listed
. Adding a task to the to-do list

.. Prerequisites: List all persons using the `list` command. Multiple persons in the list.
.. Test case: `delete 1` +
Expected: First contact is deleted from the list. Details of the deleted contact shown in the status message. Timestamp in the status bar is updated.
.. Test case: `delete 0` +
Expected: No person is deleted. Error details shown in the status message. Status bar remains the same.
.. Other incorrect delete commands to try: `delete`, `delete x` (where x is larger than the list size) _{give more}_ +
Expected: Similar to previous.
.. Prerequisites: No modifications are done to the sample tasks list.
.. Test case: `TDL_add t/Milestone 3 m/CS2113 d/02-11 p/2` +
Expected: Task is not added. Error details are shown in the status message.
.. Test case: `TDL_add t/Tutorial 5 m/CS2101 d/12-09 p/1` +
Expected: New task is added to the to-do list. Details of the added task is shown in the status message.
.. Other incorrect add commands to try: `TDL_add` (with any missing parameters)

_{ more test cases ... }_
=== Editing a task

. Editing a task in the to-do list

.. Prerequisites: Must have at least 1 task in the list shown
.. Test case: `TDL_edit 1` +
Expected: First task shown in the list is edited with no changes to any parameters. Details of the task is shown in the status message.
.. Test case: `TDL_edit 1 m/CS1231` +
Expected: First task shown in the list is edited with the new module code of `CS1231`. Details of the edited task is shown in the status message.
.. Test case: `TDL_edit 0 m/CS1231` +
Expected: No task is edited. Error details are shown in the status message.
.. Other incorrect edit commands to try: `TDL_edit`, `TDL_edit x` (where x is larger than the list size shown)

=== Deleting a task

. Deleting a task in the to-do list

.. Prerequisites: Must have at least 1 task in the list shown
.. Test case: `TDL_delete 1` +
Expected: First task shown in the list is deleted. Details of the deleted task is shown in the status message.
.. Test case: `TDL_delete 0` +
Expected: No task is deleted. Error details shown in the status message.
.. Other incorrect delete commands to try: `TDL_delete`, `TDL_delete x` (where x is larger than the list size shown)

=== Marking a task as completed

. Marking a task in the to-do list as completed

.. Prerequisites: Task to be marked must have completion status of `uncompleted`. Must have at least 1 task in the list shown.
.. Test case: `TDL_complete 1` +
Expected: Uncompleted task in index 1 shown in the list is marked as completed. Details of the task is shown in the status message.
.. Test case: `TDL_complete 0` +
Expected: No task is marked as completed. Error details shown in the status message.
.. Other incorrect commands to try: `TDL_complete`, `TDL_complete x` (where x is larger than the list size shown)

=== Marking a task as uncompleted

. Marking a task in the to-do list as uncompleted

.. Prerequisites: Task to be marked must have completion status of `completed`. Must have at least 1 task in the list shown.
.. Test case: `TDL_uncomplete 1` +
Expected: Completed task in index 1 shown in the list is marked as uncompleted. Details of the task is shown in the status message.
.. Test case: `TDL_uncomplete 0` +
Expected: No task is marked as uncompleted. Error details shown in the status message.
.. Other incorrect commands to try: `TDL_uncomplete`, `TDL_uncomplete x` (where x is larger than the list size shown)

=== Viewing filtered task list

. Viewing a filtered task list by completion status

.. Prerequisites: Should have at least 1 task of each completion statuses
.. Test case: `TDL_view all` +
Expected: All tasks are displayed in the to-do list regardless of completion status.
.. Test case: `TDL_view uncompleted` +
Expected: All uncompleted tasks are displayed in the to-do list.
.. Test case: `TDL_view completed` +
Expected: All completed tasks are displayed in the to-do list.
.. Incorrect commands to try: `TDL_view`, `TDL_view complete`, `TDL_view uncomplete`, `TDL_view xxx` (where xxx is any string of words not mentioned above) +
Expected: No change in the to-do list. Error detail is shown in the status message.

=== Sorting task list

. Sorting the task list of the to-do list

.. Prerequisites: Should have at least 3 tasks with different parameters
.. Test case: `TDL_sort default` +
Expected: Tasks are now sorted alphabetically by its name.
.. Test case: `TDL_sort module` +
Expected: Module code of the tasks are sorted alphabetically.
.. Test case: `TDL_sort date` +
Expected: Tasks are now sorted by its date, where oldest date comes first.
.. Test case: `TDL_sort priority` +
Expected: Tasks are now sorted by its priority level, where highest priority comes first.
.. Test case: `TDL_sort reverse` +
Expected: Tasks list shown is now in reversed order.
.. Incorrect commands to try: `TDL_sort`, `TDL_sort xxx` (where xxx is any string of words not mentioned above) +
Expected: No change in the to-do list. Error detail is shown in the status message.

=== Adding an expenditure

. Adding an expenditure to the expenditure tracker

.. Prerequisites: No prerequisites are needed
.. Test case: `ET_add e/iPhone7 Plus d/25-12-2017 m/1000 c/Electronics` +
Expected: New expenditure is added to the expenditure tracker. Details of the added expenditure is shown in the status message.
.. Incorrect add commands to try: `ET_add` (with any missing parameters) +
Expected: Expenditure is not added. Error details are shown in the status message.

=== Editing an expenditure

. Editing an expenditure in the expenditure tracker

.. Prerequisites: Must have at least 1 expenditure in the list shown
.. Test case: `ET_edit 1` +
Expected: No expenditure is edited. Error details are shown in the status message.
.. Test case: `ET_edit 1 m/10.50` +
Expected: First expenditure shown in the list is edited with the new spending of `10.50` SGD. Details of the edited expenditure is shown in the status message.
.. Test case: `ET_edit 0 m/10.50` +
Expected: No expenditure is edited. Error details are shown in the status message.
.. Other incorrect edit commands to try: `ET_edit`, `ET_edit x` (where x is larger than the list size shown)

=== Deleting an expenditure

. Deleting an expenditure in the expenditure tracker

.. Prerequisites: Must have at least 1 expenditure in the list shown
.. Test case: `ET_delete 1` +
Expected: First expenditure shown in the list is deleted. Details of the deleted expenditure is shown in the status message.
.. Test case: `ET_delete 0` +
Expected: No expenditure is deleted. Error details are shown in the status message.
.. Other incorrect delete commands to try: `ET_delete`, `ET_delete x` (where x is larger than the list size shown)

=== Viewing filtered expenditure list

. Viewing a filtered expenditure list by various parameters

.. Prerequisites: Should have at least 1 task
.. Test case: `ET_view all` +
Expected: All expenditures are displayed in the expenditure tracker.
.. Test case: `ET_view 01-01-2018` +
Expected: All expenditures on `01-01-2018` are displayed in the expenditure tracker.
.. Test case: `ET_view Electronics` +
Expected: All expenditures are displayed in the expenditure tracker.
.. Incorrect commands to try: `ET_view`, `ET_view xxx` (where xxx is any string of words not mentioned in the User Guide) +
Expected: No change in the expenditure tracker. Error detail is shown in the status message.

=== Checking expenditures

. Checking of all expenditures in a particular time frame

.. Prerequisites: No prerequisites are needed
.. Test case: `ET_check start/01-01-2018 end/01-12-2018` +
Expected: A pop-up window with a pie-chart of all recorded expenditures in this time frame will be shown.
.. Test case: `ET_check start/01-01-2018 end/1-12-2018` +
Expected: No pop-up window will appear. Error detail is shown in the status message.
.. Other incorrect commands to try: `ET_check`

=== Obtaining expenditure advices

. Obtaining expenditure advices based on expenditure history

.. Prerequisites: No prerequisites are needed
.. Test case: `ET_advice m/1000 numofdays/30` +
Expected: A pop-up window with full instructions and details will be shown.
.. Test case: `ET_advice m/1000 numofdays/0` +
Expected: No pop-up window will appear. Error detail is shown in the status message.
.. Other incorrect commands to try: `ET_advice`

=== Viewing of daily summary

. Viewing a daily summary of all due tasks and expenditures on a particular day

.. Prerequisites: No prerequisites are needed
.. Test case: `check d/01-01-2018` +
Expected: A pop-up window with the summary for the day `01-01-2018` will be shown.
.. Test case: `check d/01-1-2018` +
Expected: No pop-up window will appear. Error detail is shown in the status message.
.. Other incorrect commands to try: `check`

=== Saving data

. Dealing with missing/corrupted data files

.. _{explain how to simulate a missing/corrupted file and the expected behavior}_

_{ more test cases ... }_
7 changes: 3 additions & 4 deletions docs/UserGuide.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -448,14 +448,13 @@ There is no need to save manually.
*A*: Unfortunately, we do not support incremental updates right now, so users can only obtain the latest release from our GitHub directly. We are considering to use API from Google to implement over-the-air updating in future release.

*Q*: Since it's a CLI based product, can I use terminal to run it locally or SSH remotely? +
*A*: Although it's a CLI based product, we haven't adapted it to CLI yet, so you may can only run commands by opening the jar file.
*A*: Although it's a CLI based product, we have not adapted it to CLI yet, so you can only run commands by opening the jar file.

*Q*: How big is this software? +
*A*: It's a light product, the jar file only have 20+ M and the source code is only 70+ M.
*A*: It is a light product. The jar file is only 20+ MB and the source code is only 70+ MB.

*Q*: I cannot add CS2113T to the to-do list. +
*A*: Read the user guide carefully. For module codes with an additional character at the end that denotes a variant of
a module, do remember to drop this character. Because you won't take both CS2113 and CS2113T.
*A*: Do refer to the user guide. We currently do not support module codes with an additional character at the end that denotes a variant of a module. In future release, we will include support for it.
// end::FAQ[]

== Command Summary
Expand Down
2 changes: 2 additions & 0 deletions docs/team/arty9.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ This section highlights all of my contributions to the project and the applicati

1. Updated application icon and application name to reflect accurately on our product
2. Modified and polished console messages in the application to enhance user experience
3. Wrote various test files to test different components of the application. This is to ensure the application is functional per component.

* *Code contributed*: [https://nuscs2113-ay1819s1.github.io/dashboard/#=undefined&search=arty9[RepoSense Dashboard]]

Expand All @@ -75,6 +76,7 @@ This section highlights all of my contributions to the project and the applicati
*** Updated class diagrams for model, storage and UI components in the Developer Guide
*** Updated various sequence diagrams in the Developer Guide
*** Wrote the user stories and use cases for the to-do list under the Appendix section of the Developer Guide
*** Wrote the manual testing instructions for the to-do list under the Appendix section of the Developer Guide

** Tools:
*** Set up Travis CI for the team repository
Expand Down

0 comments on commit 5e9ee5a

Please sign in to comment.