From fae600fc554d4e898495b2da00f4c20199a9f899 Mon Sep 17 00:00:00 2001 From: ziyi105 Date: Tue, 14 Nov 2023 10:46:29 +0800 Subject: [PATCH 1/3] Add manual testing for edit price --- docs/DeveloperGuide.md | 44 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 20f2d9d09..1d26b3fc7 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -37,6 +37,9 @@ * [Non-functional requirements](#non-functional-requirements) * [User stories](#user-stories) * [**Glossary**](#glossary) + * [**Instruction for manual testing**](#instruction-for-manual-testing) + * [Launch and shutdown](#launch-and-shutdown) + * [Editing the price of a dish](#editing-the-price-of-a-dish) ## **Acknowledgements** @@ -441,4 +444,43 @@ Our product aims to optimize managing of inventory and cash flow in a restaurant -------------------------------------------------------------------------------------------------------------------- ## **Glossary** -- **Mainstream OS**: Windows, Linux, Unix, OS-X \ No newline at end of file +- **Mainstream OS**: Windows, Linux, Unix, OS-X +- **Qty**: Quantity +- **CLI**: Command Line Interface + +-------------------------------------------------------------------------------------------------------------------- +## **Instruction for manual testing** +**Note:** These instructions only provide a starting point for testers to work on; testers are expected to do more exploratory testing. + +### Launch and shutdown +1. Initial launch + 1. Download the jar file and copy into an empty folder + 2. Double-click the jar file Expected: + ``` + Hello! Welcome to + _/_/_/ _/_/ _/_/_/ _/ _/ + _/ _/_/_/ _/ _/_/ _/ _/_/_/_/ _/ _/_/ _/ + _/ _/ _/ _/_/_/_/ _/_/_/_/ _/ _/ _/_/ _/ + _/ _/ _/ _/ _/ _/ _/ _/ _/ + _/_/_/ _/_/_/ _/ _/_/_/ _/_/_/ _/_/ _/ _/ + ------------------------------------------------------------------------ + > + ``` +2. To exit the application, input `bye` in the CLI + +### Editing the price of a dish +1. Prerequisites: Have at least one dish in the menu. Dish can be added with the following command:
+ ```add name/chicken rice price/3.00 ingredient/rice qty/200g, ingredient/chicken qty/100g``` +2. Edit price of the dish by using the following command:
+ ```edit_price dish/1 price/4.50``` +3. Expected outcome:
+ ``` + Price modified for the following dish: + chicken rice $4.50 + ``` +3. Exit the application with command:
+ ```bye``` +4. In the menu.txt file under data folder, the following data can be found:
+ ``` + chicken rice | 4.5 | rice - 50 - g | chicken - 100 - g + ``` \ No newline at end of file From 7f0ddcf8c83acfb3ea3a25d4d5f00cbb59191548 Mon Sep 17 00:00:00 2001 From: ziyi105 Date: Tue, 14 Nov 2023 10:49:21 +0800 Subject: [PATCH 2/3] Adjust position of imagein PPP --- docs/team/ziyi105.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/team/ziyi105.md b/docs/team/ziyi105.md index 22136ca32..9fff4b0d6 100644 --- a/docs/team/ziyi105.md +++ b/docs/team/ziyi105.md @@ -110,7 +110,7 @@ Café proprietors who prefer typing on CLI than any other interaction method and ![Relevant Telegram screenshot 1](../images_PPP/ziyi/telegram_chef_text.png) ![Relevant Telegram screenshot 2](../images_PPP/ziyi/relevant_telegram_screenshot_2.png) ![Relevant Telegram screenshot 3](../images_PPP/ziyi/relevant_telegram_screenshot_3.png) -4. Read and compile important information on course website +4. Read and compile important information on course website
![Relevant Telegram screenshot 4](../images_PPP/ziyi/relevant_telagram_screenshot_4.png) ### Contributions beyond the Project Team From 9c6bbb529e88e7649ec189afdcb14148bc151fcf Mon Sep 17 00:00:00 2001 From: ziyi105 Date: Tue, 14 Nov 2023 10:54:22 +0800 Subject: [PATCH 3/3] Decrease length of PPP --- docs/team/ziyi105.md | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/docs/team/ziyi105.md b/docs/team/ziyi105.md index 9fff4b0d6..afbb6fd91 100644 --- a/docs/team/ziyi105.md +++ b/docs/team/ziyi105.md @@ -9,9 +9,6 @@ CaféCTRL is a software engineering project for CS2113. The user interacts with ## **Value Proposition** CaféCRTL aims to optimize managing of inventory and cash flow in a restaurant. Our CLI platform empowers Café proprietors to streamline inventory and menu management. -## **Target User** -Café proprietors who prefer typing on CLI than any other interaction method and are seeking for a software solution to optimize the management of their café's operations. - ----------------------------------------------------------------------------------------------- ## **Summary of Contributions** @@ -26,14 +23,13 @@ Café proprietors who prefer typing on CLI than any other interaction method and 1. **Edit Price**
Function: Allow user to edit price of the dish on the menu Command Format: `edit_price dish/DISH_INDEX price/NEW_PRICE`
- Error Handling: This command is able to detect missing argument tag, missing argument, wrong argument type, empty argument type and same price. It will then output specific error message to give user hint. -

+ Error Handling: This command is able to detect missing argument tag, argument, wrong argument type, empty argument and same price. Specific error message will be shown to give user hint. +
2. **Help**
Function: Print out a list of commands and their usages to the user
Extra info: This feature requires constant updating whenever a new feature is added. It is also very tedious to implement Junit test as the output is very long and keeps changing. Hence, I removed the Junit test in the last iteration as I feel that it is not necessary to have Junit test for a trivial `help` command.

3. **Encoding & Decoding of Pantry Stock Storage File**
- Function: When the user calls bye command, all the ingredients stored in pantry will be encoded into format of `INGREDIENT_NAME | QUANTITY | UNIT`. The encoded data will be written in pantry_stock.txt file. When the user starts a new session, the data in the text file will be extracted out and be decoded to load the ingredients back to PantryStock class.
Error Handling: This command will still check for the validity of each argument (e.g., length of ingredient name, type of unit), and skip the particular ingredient if any of the arguments is not valid. This can prevent the user from accidentally adding invalid ingredients to the text file. ### Enhancements @@ -41,13 +37,13 @@ Café proprietors who prefer typing on CLI than any other interaction method and [Relevant PR](https://github.com/AY2324S1-CS2113-T17-2/tp/pull/143)
- Read and learned from the storage system in addressbook level 3 and adopted it in our project. - Implemented `Encoder.java`, `Decoder.java` and `Storage.java` with skeleton methods for my teammates to implement. -

+
2. **Parser**
Created `Parser.java` for other teammates to use. Implemented ParserUtil interface to reduce coupling of Parser.java and CafeCRTL.java. -

+
3. **Messages & ErrorMessages**
Created classes to store all messages to the user as static constant. -

+
4. **Parser Regex**
[Relevant PR](https://github.com/AY2324S1-CS2113-T17-2/tp/pull/51)
- Learned `Pattern` and `Matcher` API by referring to addressbook and online documentations. @@ -67,8 +63,6 @@ Café proprietors who prefer typing on CLI than any other interaction method and 3. Known Issues 4. Glossary 5. General formatting - - Ensure consistency of features descriptions and table formatting - - Correct typos and grammar error ### Contributions to DG [DeveloperGuide](https://ay2324s1-cs2113-t17-2.github.io/tp/DeveloperGuide.html) @@ -88,16 +82,15 @@ Café proprietors who prefer typing on CLI than any other interaction method and 7. General formatting - Ensure consistency of features descriptions and diagrams - Correct typos and grammar errors +8. Manual testing guide ### Other Contributions to Team-based Task 1. Maintaining issue tracker with Dexter by labeling issues -2. Adding theme to UG & DG -3. Approving and merging PRs -4. Checking coding standard for most of the classes ([PR #351](https://github.com/AY2324S1-CS2113-T17-2/tp/pull/351)) -5. Reminding team members to use github effectively (although some of my reminders were ignored :") +2. Approving and merging PRs +3. Checking coding standard for most of the classes ([PR #351](https://github.com/AY2324S1-CS2113-T17-2/tp/pull/351)) +4. Reminding team members to use github effectively (although some of my reminders were ignored :") - I encouraged my team members to report bugs using issue tracker on Github instead of using Telegram. (e.g., [#323](https://github.com/AY2324S1-CS2113-T17-2/tp/issues/323)) - - I requested PR reviews from my team members as I noticed they haven't had a chance to do any review. (e.g., [PR #51](https://github.com/AY2324S1-CS2113-T17-2/tp/pull/51)) -6. Testing of features done my other team members +5. Testing of features done my other team members - [#382](https://github.com/AY2324S1-CS2113-T17-2/tp/issues/382), [#381](https://github.com/AY2324S1-CS2113-T17-2/tp/issues/381). [#372](https://github.com/AY2324S1-CS2113-T17-2/tp/issues/372), [#349](https://github.com/AY2324S1-CS2113-T17-2/tp/issues/349) ### Review/Mentoring Contributions