From 8e1262e7cc420ab91fa1b060e84450cfae160f1e Mon Sep 17 00:00:00 2001 From: liawsy Date: Wed, 23 Oct 2019 12:31:52 +0800 Subject: [PATCH 1/6] Add maximum limit for quantity --- src/main/java/io/xpire/model/item/Quantity.java | 8 ++++++-- src/test/java/io/xpire/model/item/QuantityTest.java | 6 ++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/io/xpire/model/item/Quantity.java b/src/main/java/io/xpire/model/item/Quantity.java index 58d85842ee5..12bd9742fe6 100644 --- a/src/main/java/io/xpire/model/item/Quantity.java +++ b/src/main/java/io/xpire/model/item/Quantity.java @@ -17,6 +17,7 @@ public class Quantity { public static final String DEFAULT_QUANTITY = "1"; public static final String MESSAGE_CONSTRAINTS = "Quantity added should be a positive integer and should not be blank"; + public static final int MAX_VALUE = 100000; private static final String INTERNAL_MESSAGE_CONSTRAINTS = "Quantity added should be a non-negative integer and should not be blank"; private int quantity; @@ -56,13 +57,16 @@ private Quantity(int quantity) throws ParseException { } public static boolean isValidQuantity(String test) { - return StringUtil.isNonNegativeInteger(test); + return StringUtil.isNonNegativeInteger(test) && Integer.parseInt(test) <= MAX_VALUE; } /** * Returns true if a given input string is a valid quantity. */ + /** + * Returns true if a given input string is a valid quantity and lies below the maximum value. + */ public static boolean isValidInputQuantity(String test) { - return StringUtil.isNonZeroUnsignedInteger(test); + return StringUtil.isNonZeroUnsignedInteger(test) && Integer.parseInt(test) <= MAX_VALUE; } /** diff --git a/src/test/java/io/xpire/model/item/QuantityTest.java b/src/test/java/io/xpire/model/item/QuantityTest.java index 987771fb067..c53a910a57d 100644 --- a/src/test/java/io/xpire/model/item/QuantityTest.java +++ b/src/test/java/io/xpire/model/item/QuantityTest.java @@ -46,6 +46,9 @@ public void isValidInputQuantity() { //input is a character -> returns false assertFalse(Quantity.isValidInputQuantity("a")); + + //input is greater than maximum allowed value + assertFalse(Quantity.isValidInputQuantity("100001")); } @Test @@ -64,6 +67,9 @@ public void isValidQuantity() { //input is a character -> returns false assertFalse(Quantity.isValidQuantity("a")); + + //input is greater than maximum allowed value + assertFalse(Quantity.isValidQuantity("100001")); } @Test From 0fe7135e2531ada6545fcbf653d120cb7d785f82 Mon Sep 17 00:00:00 2001 From: liawsy Date: Wed, 23 Oct 2019 17:54:58 +0800 Subject: [PATCH 2/6] Update delete command parser --- .../java/io/xpire/logic/parser/DeleteCommandParser.java | 3 +++ .../io/xpire/logic/parser/DeleteCommandParserTest.java | 8 +++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/io/xpire/logic/parser/DeleteCommandParser.java b/src/main/java/io/xpire/logic/parser/DeleteCommandParser.java index 82fcfc990bc..140849d7ee5 100644 --- a/src/main/java/io/xpire/logic/parser/DeleteCommandParser.java +++ b/src/main/java/io/xpire/logic/parser/DeleteCommandParser.java @@ -32,6 +32,9 @@ public DeleteCommand parse(String args) throws ParseException { return deleteTagsCommand(index, splitArgs[1]); } else if (containsQuantity(splitArgs)) { return deleteQuantityCommand(index, splitArgs[1]); + } else if (splitArgs.length > 1) { + throw new ParseException( + String.format(Messages.MESSAGE_INVALID_COMMAND_FORMAT, DeleteCommand.MESSAGE_USAGE)); } else { return deleteItemCommand(index); } diff --git a/src/test/java/io/xpire/logic/parser/DeleteCommandParserTest.java b/src/test/java/io/xpire/logic/parser/DeleteCommandParserTest.java index c8cb4259490..a2057b99719 100644 --- a/src/test/java/io/xpire/logic/parser/DeleteCommandParserTest.java +++ b/src/test/java/io/xpire/logic/parser/DeleteCommandParserTest.java @@ -30,15 +30,17 @@ public class DeleteCommandParserTest { @Test public void parse_validArgs_returnsDeleteCommand() { assertEqualsParseSuccess(parser, "1", new DeleteCommand(INDEX_FIRST_ITEM)); - - //trailing bars and arguments behind trailing bars will be trimmed - assertEqualsParseSuccess(parser, "1||||||1", new DeleteCommand(INDEX_FIRST_ITEM)); } @Test public void parse_invalidArgs_throwsParseException() { + assertParseFailure(parser, "a", String.format(MESSAGE_INVALID_COMMAND_FORMAT, DeleteCommand.MESSAGE_USAGE)); + + //invalid trailing arguments + assertParseFailure(parser, "1||||||1", String.format(MESSAGE_INVALID_COMMAND_FORMAT, + DeleteCommand.MESSAGE_USAGE)); } @Test From 4a66871ca3bd4a4142a28e109bae6dd8ad9128c1 Mon Sep 17 00:00:00 2001 From: liawsy Date: Wed, 23 Oct 2019 23:45:37 +0800 Subject: [PATCH 3/6] Update DG --- docs/DeveloperGuide.adoc | 47 ++++++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/docs/DeveloperGuide.adoc b/docs/DeveloperGuide.adoc index 0507a7ff7d7..2eeac4bf345 100644 --- a/docs/DeveloperGuide.adoc +++ b/docs/DeveloperGuide.adoc @@ -153,6 +153,45 @@ Classes used by multiple components are in the `seedu.addressbook.commons` packa This section describes some noteworthy details on how certain features are implemented. +// tag:tobuylist[] +=== [Proposed] Replenish List +==== Implementation +//{Explain here how the ToReplenish/ToBuy List is implemented}_ +Items are added to the replenish list by the user using the replenish command. +When an item expires, the item is automatically tagged as "expired". +This enables the user to search for a list of expired items by searching for the "expired" tag. +With this, the user is able to view the list of expired items and decide which items to add to the replenish list. +On the other hand, when an item has run out, the user is prompted to replenish the item using the replenish command. + +//Given below is an example usage scenario and how the mechanism behaves at each step. + +//The following sequence diagram shows how the operation works: + +//The following activity diagram summarizes what happens when a user executes a new command: + +==== Design Considerations + +===== Aspect: How item is added to the replenish list + +* **Alternative 1 (current choice): Once an item expires or runs out, +the user is prompted to shift the item to the replenish list by typing the replenish command and item index.** +** Pros: User has flexibility in deciding what to add to the replenish list. +** Cons: User has to manually type in a short command to add an item to the replenish list. + +* **Alternative 2: Once an item expires or runs out, item is transferred to the replenish list.** +** Pros: User need not manually key in item details to transfer it to the replenish list. +** Cons: User may not want the item in the list and as such would expect a delete functionality for the to-replenish list. +// +//===== Aspect: Data structure to store the items +//* **Alternative 1 (current choice):** +//** Pros: +//** Cons: +// +//* **Alternative 2:** +//** Pros: +//** Cons: + +=== [Proposed] // tag::undoredo[] === [Proposed] Undo/Redo feature ==== Proposed Implementation @@ -588,14 +627,14 @@ _{More to be added}_ |FXML |XML-based user interface markup language for defining user interface of a JaxaFX application -|JavaFX |Software platform for creating and delivering desktop applications and rich Internet applications - -|JSON |An open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types - |ItemCard |UI component that displays information on an item |ItemListPanel |UI component that displays list of items +|JavaFX |Software platform for creating and delivering desktop applications and rich Internet applications + +|JSON |An open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types + |Logic |Handles user input for the application and returns the application's output |MainWindow |Provides the basic application layout containing a menu bar and space where other JavaFX elements can be placed From f0f658e71d6041f5d7c89bbe785e629c30fdb56a Mon Sep 17 00:00:00 2001 From: liawsy Date: Thu, 24 Oct 2019 21:15:22 +0800 Subject: [PATCH 4/6] Add class diagram to DG --- docs/DeveloperGuide.adoc | 2 ++ docs/diagrams/ItemManagerClassDiagram.puml | 41 ++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 docs/diagrams/ItemManagerClassDiagram.puml diff --git a/docs/DeveloperGuide.adoc b/docs/DeveloperGuide.adoc index d804ea03ad7..ded8afd8976 100644 --- a/docs/DeveloperGuide.adoc +++ b/docs/DeveloperGuide.adoc @@ -164,6 +164,8 @@ This enables the user to search for a list of expired items by searching for the With this, the user is able to view the list of expired items and decide which items to add to the replenish list. On the other hand, when an item has run out, the user is prompted to replenish the item using the replenish command. +image::ItemManagerClassDiagram.png[] + //Given below is an example usage scenario and how the mechanism behaves at each step. //The following sequence diagram shows how the operation works: diff --git a/docs/diagrams/ItemManagerClassDiagram.puml b/docs/diagrams/ItemManagerClassDiagram.puml new file mode 100644 index 00000000000..b0995c54ebe --- /dev/null +++ b/docs/diagrams/ItemManagerClassDiagram.puml @@ -0,0 +1,41 @@ +@startuml + +class ItemManager { +- model: Model +- storage: Storage +~ void updateItemTags() +} +interface Storage { ++ void saveXpire(ReadOnlyXpire) ++ void saveXpire(ReadOnlyXpire, Path) +} +interface Model { +~ void updateItemTags() ++ getXpire(): ReadOnlyXpire +} +class StorageManager { +- xpireStorage: XpireStorage +} +class ModelManager { +- xpire: Xpire +} +class Xpire { +- items: SortedUniqueItemList +~ void checkExpiryDates() +} +class SortedUniqueItemList { ++ Iterator iterator() +} +class Item { +- tags: Set ++ boolean isItemExpired() +- void addTag(Tag) +} +ItemManager --> Model +ItemManager --> Storage +Storage <|.. StorageManager +Model <|.. ModelManager +ModelManager --> Xpire +Xpire --> SortedUniqueItemList +SortedUniqueItemList --> Item +@enduml \ No newline at end of file From 534325be532131da7b4d85c1e20b72aab11c98ef Mon Sep 17 00:00:00 2001 From: liawsy Date: Thu, 24 Oct 2019 21:25:30 +0800 Subject: [PATCH 5/6] Add class diagram --- docs/images/ItemManagerClassDiagram.png | Bin 0 -> 74604 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/images/ItemManagerClassDiagram.png diff --git a/docs/images/ItemManagerClassDiagram.png b/docs/images/ItemManagerClassDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..599269e74f987a72616a17521bcd4a920cd03dab GIT binary patch literal 74604 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 AfB*mh literal 0 HcmV?d00001 From 57411c4dcc7bac310e90e8f797e634e87b675a45 Mon Sep 17 00:00:00 2001 From: liawsy Date: Thu, 24 Oct 2019 21:30:22 +0800 Subject: [PATCH 6/6] Fix CheckStyle --- docs/diagrams/ItemManagerClassDiagram.puml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/diagrams/ItemManagerClassDiagram.puml b/docs/diagrams/ItemManagerClassDiagram.puml index b0995c54ebe..78a824ba6f2 100644 --- a/docs/diagrams/ItemManagerClassDiagram.puml +++ b/docs/diagrams/ItemManagerClassDiagram.puml @@ -38,4 +38,4 @@ Model <|.. ModelManager ModelManager --> Xpire Xpire --> SortedUniqueItemList SortedUniqueItemList --> Item -@enduml \ No newline at end of file +@enduml