From e9f70cebcb8ef314b8e2d636a397e092b368bfb5 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 13:29:51 +0200 Subject: [PATCH 01/28] First test failed --- domainModel.md | 70 +++++++++++++++++++ .../java/com/booleanuk/core/BasketTest.java | 6 ++ 2 files changed, 76 insertions(+) create mode 100644 domainModel.md diff --git a/domainModel.md b/domainModel.md new file mode 100644 index 00000000..eebf5a6c --- /dev/null +++ b/domainModel.md @@ -0,0 +1,70 @@ +### Leo Wahlandt Domain Model + + +``` +1. +As a member of the public, +So I can order a bagel before work, +I'd like to add a specific type of bagel to my basket. +``` + +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------------------------|------------------------------------|-----------------------------------------|---------| +| Basket | HashMap basket | add(int memberId,String bagelType) | Add existing bagel into basket | true | +| | | | Try to add non-existing bagel to basket | false | +| | | | | | + +``` +2. +As a member of the public, +So I can change my order, +I'd like to remove a bagel from my basket. +``` +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------------------------|------------------------------------|--------------------------------------------|---------| +| Basket | HashMap basket | remove(int memberId, String bagel) | Remove existing bagel from basket | true | +| | | | Try to remove non-existing bagel to basket | false | +| | | | | | + + + + +``` +3. +As a member of the public, +So that I can not overfill my small bagel basket +I'd like to know when my basket is full when I try adding an item beyond my basket capacity. +``` +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------------------------|---------------------------------------------|-------------------------------|---------| +| Basket | HashMap basket | checkBasketSize(int memberId, String bagel) | if basket size is not reached | True | +| | | | If basket size is reached | false | +| | | | | | + + + +``` +4. +As a Bob's Bagels manager, +So that I can expand my business, +I’d like to change the capacity of baskets. +``` +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------------------------|------------------------------------------------|---------------------------|----------------------------| +| Basket | HashMap basket | increaseBasketSize(int memberId, String bagel) | Change basket size | BasketSize++ or basketSize | +| | | | If basket size is reached | false | +| | | | | | + + +``` +5. +As a member of the public +So that I can maintain my sanity +I'd like to know if I try to remove an item that doesn't exist in my basket. +``` + +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------------------------|------------------------------------|---------------------------------------------|---------| +| Basket | HashMap basket | remove(int memberId, String bagel) | Try to remove non-existing bagel to basket | false | +| | | | | | +| | | | | | diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index e35771b3..847e733a 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -5,4 +5,10 @@ class BasketTest { + @Test + public void checkAddExistTest() { + Basket basket = new Basket(); + + Assertions.assertTrue(basket.add(1, "Sesam")); + } } From c12cfd77196b3c417201316f4339ac2330853183 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 13:42:51 +0200 Subject: [PATCH 02/28] First test failed --- src/main/java/com/booleanuk/core/Basket.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index df7a20aa..4a7702e3 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -1,5 +1,17 @@ package com.booleanuk.core; +import java.sql.Array; +import java.util.ArrayList; +import java.util.HashMap; + public class Basket { + private ArrayList basket; + + public Basket() { + this.basket = new ArrayList<>(); + } + public boolean add(int memberId, String bagel) { + return false; + } } From fdccd6f01410f8f95ad15dab7cbb8483e0986aae Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 13:57:26 +0200 Subject: [PATCH 03/28] Fixed my Domain model, fixed add bagel, and fixed remove bagel red test --- domainModel.md | 50 +++++++++---------- src/main/java/com/booleanuk/core/Basket.java | 11 +++- .../java/com/booleanuk/core/BasketTest.java | 12 ++++- 3 files changed, 44 insertions(+), 29 deletions(-) diff --git a/domainModel.md b/domainModel.md index eebf5a6c..93c9c738 100644 --- a/domainModel.md +++ b/domainModel.md @@ -8,11 +8,11 @@ So I can order a bagel before work, I'd like to add a specific type of bagel to my basket. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|---------------------------------------------|------------------------------------|-----------------------------------------|---------| -| Basket | HashMap basket | add(int memberId,String bagelType) | Add existing bagel into basket | true | -| | | | Try to add non-existing bagel to basket | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|--------------------------|------------------------------------|-----------------------------------------|---------| +| Basket | ArrayList basket | add(String bagelType) | Add existing bagel into basket | true | +| | | | Try to add non-existing bagel to basket | false | +| | | | | | ``` 2. @@ -20,11 +20,11 @@ As a member of the public, So I can change my order, I'd like to remove a bagel from my basket. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|---------------------------------------------|------------------------------------|--------------------------------------------|---------| -| Basket | HashMap basket | remove(int memberId, String bagel) | Remove existing bagel from basket | true | -| | | | Try to remove non-existing bagel to basket | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|--------------------------|-----------------------------------|--------------------------------------------|---------| +| Basket | ArrayList basket | remove(String bagel) | Remove existing bagel from basket | true | +| | | | Try to remove non-existing bagel to basket | false | +| | | | | | @@ -35,11 +35,11 @@ As a member of the public, So that I can not overfill my small bagel basket I'd like to know when my basket is full when I try adding an item beyond my basket capacity. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|---------------------------------------------|---------------------------------------------|-------------------------------|---------| -| Basket | HashMap basket | checkBasketSize(int memberId, String bagel) | if basket size is not reached | True | -| | | | If basket size is reached | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|----------------------------|-------------------------|-------------------------------|---------| +| Basket | ArrayList basket | checkBasketSize() | if basket size is not reached | True | +| | | | If basket size is reached | false | +| | | | | | @@ -49,11 +49,11 @@ As a Bob's Bagels manager, So that I can expand my business, I’d like to change the capacity of baskets. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|---------------------------------------------|------------------------------------------------|---------------------------|----------------------------| -| Basket | HashMap basket | increaseBasketSize(int memberId, String bagel) | Change basket size | BasketSize++ or basketSize | -| | | | If basket size is reached | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|----------------------------|---------------------------------|---------------------------|-----------------| +| Basket | ArrayList basket | increaseBasketSize(int newSize) | Change basket size | new basket size | +| | | | If basket size is reached | false | +| | | | | | ``` @@ -63,8 +63,8 @@ So that I can maintain my sanity I'd like to know if I try to remove an item that doesn't exist in my basket. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|---------------------------------------------|------------------------------------|---------------------------------------------|---------| -| Basket | HashMap basket | remove(int memberId, String bagel) | Try to remove non-existing bagel to basket | false | -| | | | | | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|---------------------------|-----------------------|---------------------------------------------|------------------------------------| +| Basket | ArrayList basket | remove(String bagel) | Try to remove non-existing bagel to basket | "Cannot remove non-existing bagel" | +| | | | | | +| | | | | | diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 4a7702e3..13d32fc7 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -5,13 +5,20 @@ import java.util.HashMap; public class Basket { - private ArrayList basket; + ArrayList basket; + int basketSize; public Basket() { this.basket = new ArrayList<>(); + this.basketSize = 4; } - public boolean add(int memberId, String bagel) { + public boolean add(String bagel) { + basket.add(bagel); + return basket.contains(bagel); + } + + public boolean remove(String bagel) { return false; } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 847e733a..449090d6 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -6,9 +6,17 @@ class BasketTest { @Test - public void checkAddExistTest() { + public void addBagelTest() { Basket basket = new Basket(); - Assertions.assertTrue(basket.add(1, "Sesam")); + Assertions.assertTrue(basket.add("Sesame")); } + + @Test + public void removeBagelTest() { + Basket basket = new Basket(); + + Assertions.assertTrue(basket.remove("Plain")); + } + } From 93d5de936e746126b5ea837ba64071b4284f6928 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 13:58:33 +0200 Subject: [PATCH 04/28] Red test to remove a non existing bagel --- src/main/java/com/booleanuk/core/Basket.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 13d32fc7..80d746b8 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -19,6 +19,10 @@ public boolean add(String bagel) { } public boolean remove(String bagel) { + if(basket.contains(bagel)) { + basket.remove(bagel); + return true; + } return false; } } From 3da4eb4752e4ac9ae0c47ab57ea2ac96934e153a Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:03:08 +0200 Subject: [PATCH 05/28] Red test of checkBasketSize --- src/test/java/com/booleanuk/core/BasketTest.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 449090d6..f68dfb6a 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -15,8 +15,15 @@ public void addBagelTest() { @Test public void removeBagelTest() { Basket basket = new Basket(); - + basket.add("Plain"); Assertions.assertTrue(basket.remove("Plain")); + + } + + @Test + public void checkBasketSize() { + Basket basket = new Basket(); + Assertions.assertTrue(basket.checkBasketSize()); } } From cf06313e267b6cba3cf13c510282cd7d29b738b6 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:04:14 +0200 Subject: [PATCH 06/28] CheckBasketSize failed when expected true --- src/main/java/com/booleanuk/core/Basket.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 80d746b8..b41bec69 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -25,4 +25,8 @@ public boolean remove(String bagel) { } return false; } + + public boolean checkBasketSize() { + return false; + } } From f51ec9fc3863166d2be8ce9b1007848359222f3b Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:05:47 +0200 Subject: [PATCH 07/28] CheckBasketSize failed when expected true --- src/main/java/com/booleanuk/core/Basket.java | 2 +- src/test/java/com/booleanuk/core/BasketTest.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index b41bec69..72018fa8 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -27,6 +27,6 @@ public boolean remove(String bagel) { } public boolean checkBasketSize() { - return false; + return basket.size() < basketSize; } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index f68dfb6a..6e34272f 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -23,7 +23,7 @@ public void removeBagelTest() { @Test public void checkBasketSize() { Basket basket = new Basket(); - Assertions.assertTrue(basket.checkBasketSize()); + Assertions.assertFalse(basket.checkBasketSize()); } } From ed3d6af87321b962e04d9f7cbe3bbe23921f1fb4 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:06:09 +0200 Subject: [PATCH 08/28] CheckBasketSize succeeded --- src/test/java/com/booleanuk/core/BasketTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 6e34272f..f68dfb6a 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -23,7 +23,7 @@ public void removeBagelTest() { @Test public void checkBasketSize() { Basket basket = new Basket(); - Assertions.assertFalse(basket.checkBasketSize()); + Assertions.assertTrue(basket.checkBasketSize()); } } From 1b6f379dc19068ec4368815c073142174631850f Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:08:28 +0200 Subject: [PATCH 09/28] Tried to overfill basket, it returned false --- src/main/java/com/booleanuk/core/Basket.java | 2 +- src/test/java/com/booleanuk/core/BasketTest.java | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 72018fa8..178811e3 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -27,6 +27,6 @@ public boolean remove(String bagel) { } public boolean checkBasketSize() { - return basket.size() < basketSize; + return basket.size() <= basketSize; } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index f68dfb6a..a01fe40d 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -26,4 +26,15 @@ public void checkBasketSize() { Assertions.assertTrue(basket.checkBasketSize()); } + @Test + public void addBagelToFullBasket() { + Basket basket = new Basket(); + basket.add("Plain"); + basket.add("Sesame"); + basket.add("Mixed"); + basket.add("Everything bagel"); + basket.add("Plain"); + Assertions.assertTrue(basket.checkBasketSize()); + } + } From de2e7796a8285cdfe2744fc094996cb5498ef856 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:11:14 +0200 Subject: [PATCH 10/28] Check if overfilling basket is possible, it is not --- src/main/java/com/booleanuk/core/Basket.java | 10 ++++++++-- src/test/java/com/booleanuk/core/BasketTest.java | 4 +++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 178811e3..15b3140f 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -14,8 +14,14 @@ public Basket() { } public boolean add(String bagel) { - basket.add(bagel); - return basket.contains(bagel); + if(this.basket.size() < this.basketSize) { + basket.add(bagel); + return basket.contains(bagel); + } + else { + return false; + } + } public boolean remove(String bagel) { diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index a01fe40d..44bc124f 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -33,8 +33,10 @@ public void addBagelToFullBasket() { basket.add("Sesame"); basket.add("Mixed"); basket.add("Everything bagel"); - basket.add("Plain"); Assertions.assertTrue(basket.checkBasketSize()); + + // Try to add basket when full + Assertions.assertTrue(basket.add("Plain")); } } From e1298aae342dd76d2fc3455da96d0fe9a3f6bc0c Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:11:45 +0200 Subject: [PATCH 11/28] Test of overfill basket is now working properly --- src/test/java/com/booleanuk/core/BasketTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 44bc124f..24a21e2e 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -34,9 +34,9 @@ public void addBagelToFullBasket() { basket.add("Mixed"); basket.add("Everything bagel"); Assertions.assertTrue(basket.checkBasketSize()); - + // Try to add basket when full - Assertions.assertTrue(basket.add("Plain")); + Assertions.assertFalse(basket.add("Plain")); } } From 63f515b41d572a78b9028100da95789a12634556 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:15:13 +0200 Subject: [PATCH 12/28] Added a faulty test of changeBasketSizeTest --- domainModel.md | 10 +++++----- src/test/java/com/booleanuk/core/BasketTest.java | 7 +++++++ 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/domainModel.md b/domainModel.md index 93c9c738..e7c61593 100644 --- a/domainModel.md +++ b/domainModel.md @@ -49,11 +49,11 @@ As a Bob's Bagels manager, So that I can expand my business, I’d like to change the capacity of baskets. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|----------------------------|---------------------------------|---------------------------|-----------------| -| Basket | ArrayList basket | increaseBasketSize(int newSize) | Change basket size | new basket size | -| | | | If basket size is reached | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|----------------------------|-----------------------------------------------|--------------------------|-----------------| +| Basket | ArrayList basket | increaseBasketSize(int memberId, int newSize) | Owner change basket size | new basket size | +| | | | | | +| | | | | | ``` diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 24a21e2e..ab082206 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -39,4 +39,11 @@ public void addBagelToFullBasket() { Assertions.assertFalse(basket.add("Plain")); } + @Test + public void changeBasketSizeTest(){ + Basket basket = new Basket(); + + Assertions.assertTrue(basket.changeBasketSize(int memberId, int newSize)); + } + } From 332e88915065a7245968bc461c34e2be9b1161e1 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:18:01 +0200 Subject: [PATCH 13/28] Someone else tries to change size of basket --- domainModel.md | 10 +++++----- src/main/java/com/booleanuk/core/Basket.java | 10 ++++++++++ src/test/java/com/booleanuk/core/BasketTest.java | 2 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/domainModel.md b/domainModel.md index e7c61593..b3c0c18f 100644 --- a/domainModel.md +++ b/domainModel.md @@ -49,11 +49,11 @@ As a Bob's Bagels manager, So that I can expand my business, I’d like to change the capacity of baskets. ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|----------------------------|-----------------------------------------------|--------------------------|-----------------| -| Basket | ArrayList basket | increaseBasketSize(int memberId, int newSize) | Owner change basket size | new basket size | -| | | | | | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|----------------------------|-----------------------------------------------|--------------------------------------|---------| +| Basket | ArrayList basket | increaseBasketSize(int memberId, int newSize) | Owner change basket size | true | +| | | | If someone else tries to change size | false | +| | | | | | ``` diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 15b3140f..5ce97e53 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -35,4 +35,14 @@ public boolean remove(String bagel) { public boolean checkBasketSize() { return basket.size() <= basketSize; } + + public boolean changeBasketSize(int memberId, int newSize) { + if(memberId == 0) { + this.basketSize = newSize; + return true; + } + else { + return false; + } + } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index ab082206..6c9b6803 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -43,7 +43,7 @@ public void addBagelToFullBasket() { public void changeBasketSizeTest(){ Basket basket = new Basket(); - Assertions.assertTrue(basket.changeBasketSize(int memberId, int newSize)); + Assertions.assertTrue(basket.changeBasketSize(1, 1)); } } From 2a1b777a51527f882fc7dc642300d7950c076d38 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:18:52 +0200 Subject: [PATCH 14/28] Owner tries to change size but the test is red --- src/test/java/com/booleanuk/core/BasketTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 6c9b6803..f9f7e208 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -43,7 +43,8 @@ public void addBagelToFullBasket() { public void changeBasketSizeTest(){ Basket basket = new Basket(); - Assertions.assertTrue(basket.changeBasketSize(1, 1)); + Assertions.assertFalse(basket.changeBasketSize(1, 1)); + Assertions.assertFalse(basket.changeBasketSize(0, 6)); } } From 2ce95bcb2afea425b78efec14944b6f60841044a Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:19:18 +0200 Subject: [PATCH 15/28] Owner can now change the size of the basket --- src/test/java/com/booleanuk/core/BasketTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index f9f7e208..56d7e271 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -44,7 +44,7 @@ public void changeBasketSizeTest(){ Basket basket = new Basket(); Assertions.assertFalse(basket.changeBasketSize(1, 1)); - Assertions.assertFalse(basket.changeBasketSize(0, 6)); + Assertions.assertTrue(basket.changeBasketSize(0, 6)); } } From 4e31a19b7e4f0d2b81c31a59c53449665b42522f Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:20:59 +0200 Subject: [PATCH 16/28] Tries to add a 5th bagel when its full --- src/test/java/com/booleanuk/core/BasketTest.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 56d7e271..a3f5b510 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -47,4 +47,14 @@ public void changeBasketSizeTest(){ Assertions.assertTrue(basket.changeBasketSize(0, 6)); } + @Test + public void changeBasketSizeWhenFullTest() { + Basket basket = new Basket(); + basket.add("Sesame"); + basket.add("Sesame"); + basket.add("Sesame"); + basket.add("Sesame"); + Assertions.assertTrue(basket.add("Sesame")); + } + } From bd143a7e54decdf51a6157cdce241f9addb81274 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:21:27 +0200 Subject: [PATCH 17/28] Tries to add a 5th bagel when its full but now green --- src/test/java/com/booleanuk/core/BasketTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index a3f5b510..d46401cd 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -54,7 +54,8 @@ public void changeBasketSizeWhenFullTest() { basket.add("Sesame"); basket.add("Sesame"); basket.add("Sesame"); - Assertions.assertTrue(basket.add("Sesame")); + Assertions.assertFalse(basket.add("Sesame")); + } } From 236a39a3d7363c50bfde5bd6cec9968f4b586b18 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:22:15 +0200 Subject: [PATCH 18/28] Tries to change the size of basket but its red test --- src/test/java/com/booleanuk/core/BasketTest.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index d46401cd..c47b8e3d 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -55,6 +55,8 @@ public void changeBasketSizeWhenFullTest() { basket.add("Sesame"); basket.add("Sesame"); Assertions.assertFalse(basket.add("Sesame")); + + Assertions.assertFalse(basket.changeBasketSize(0, 6)); } From 1291e899d2da7511c831bc268faf146ddf5034e9 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:23:25 +0200 Subject: [PATCH 19/28] Tries to add two more bagels after size of basket increased by 2. red test --- src/test/java/com/booleanuk/core/BasketTest.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index c47b8e3d..8f26944b 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -56,8 +56,10 @@ public void changeBasketSizeWhenFullTest() { basket.add("Sesame"); Assertions.assertFalse(basket.add("Sesame")); - Assertions.assertFalse(basket.changeBasketSize(0, 6)); - + Assertions.assertTrue(basket.changeBasketSize(0, 6)); + Assertions.assertFalse(basket.add("Plain")); + Assertions.assertFalse(basket.add("Plain")); + } } From f5e4bb1159198adbaff1ffc6114836b673eb341f Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:23:57 +0200 Subject: [PATCH 20/28] Tries to change the size of basket but its green test --- src/test/java/com/booleanuk/core/BasketTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 8f26944b..b1768497 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -57,8 +57,8 @@ public void changeBasketSizeWhenFullTest() { Assertions.assertFalse(basket.add("Sesame")); Assertions.assertTrue(basket.changeBasketSize(0, 6)); - Assertions.assertFalse(basket.add("Plain")); - Assertions.assertFalse(basket.add("Plain")); + Assertions.assertTrue(basket.add("Plain")); + Assertions.assertTrue(basket.add("Plain")); } From 266fe3ffa14d5d9ecfe6d1f701d0008de434e4c9 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:24:25 +0200 Subject: [PATCH 21/28] Tries to add another bagel but the basket is full. Red test --- src/test/java/com/booleanuk/core/BasketTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index b1768497..5b97566c 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -59,6 +59,7 @@ public void changeBasketSizeWhenFullTest() { Assertions.assertTrue(basket.changeBasketSize(0, 6)); Assertions.assertTrue(basket.add("Plain")); Assertions.assertTrue(basket.add("Plain")); + Assertions.assertTrue(basket.add("Plain")); } From 77b18c20a752feeb827674474b4f58896c152d8e Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:24:48 +0200 Subject: [PATCH 22/28] Tries to add another bagel but the basket is full. Green test --- src/test/java/com/booleanuk/core/BasketTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 5b97566c..138f45d4 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -59,7 +59,8 @@ public void changeBasketSizeWhenFullTest() { Assertions.assertTrue(basket.changeBasketSize(0, 6)); Assertions.assertTrue(basket.add("Plain")); Assertions.assertTrue(basket.add("Plain")); - Assertions.assertTrue(basket.add("Plain")); + //Basket full + Assertions.assertFalse(basket.add("Plain")); } From 53adea0e0d9c805a0020ac9d943de4fe4432caa7 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:26:21 +0200 Subject: [PATCH 23/28] Tries to remove a bagel that does not exist, red test --- src/test/java/com/booleanuk/core/BasketTest.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 138f45d4..acb3121a 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -61,7 +61,14 @@ public void changeBasketSizeWhenFullTest() { Assertions.assertTrue(basket.add("Plain")); //Basket full Assertions.assertFalse(basket.add("Plain")); + } + @Test + public void removeNonExistingBagelTest(){ + Basket basket = new Basket(); + basket.add("Sesame"); + basket.add("Sesame"); + Assertions.assertTrue(basket.remove("Plain")); } } From f2d96b65550d60badd1c56ab6d25f11f449e9546 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:27:26 +0200 Subject: [PATCH 24/28] User tries to remove a non-existing bagel test --- src/test/java/com/booleanuk/core/BasketTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index acb3121a..25fe0203 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -68,7 +68,7 @@ public void removeNonExistingBagelTest(){ Basket basket = new Basket(); basket.add("Sesame"); basket.add("Sesame"); - Assertions.assertTrue(basket.remove("Plain")); + Assertions.assertFalse(basket.remove("Plain")); } } From 88d9cc4f8a9fd146f11b46506173cc9b184da672 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:44:53 +0200 Subject: [PATCH 25/28] Added clarification of what role number manager has in my domain model --- domainModel.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/domainModel.md b/domainModel.md index b3c0c18f..364ed646 100644 --- a/domainModel.md +++ b/domainModel.md @@ -48,6 +48,8 @@ I'd like to know when my basket is full when I try adding an item beyond my bask As a Bob's Bagels manager, So that I can expand my business, I’d like to change the capacity of baskets. + +Manager has role number 0 for Admin ``` | Classes | Member Variable | Method | Scenario | Outcome | |---------|----------------------------|-----------------------------------------------|--------------------------------------|---------| From 6cd47cb48ded7fdbb664e00398d2c39acb0cfb2c Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:53:27 +0200 Subject: [PATCH 26/28] Checked so normal user cannot change basket size --- src/test/java/com/booleanuk/core/BasketTest.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 25fe0203..2b6661f8 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -56,13 +56,16 @@ public void changeBasketSizeWhenFullTest() { basket.add("Sesame"); Assertions.assertFalse(basket.add("Sesame")); + Assertions.assertTrue(basket.changeBasketSize(0, 6)); Assertions.assertTrue(basket.add("Plain")); Assertions.assertTrue(basket.add("Plain")); //Basket full Assertions.assertFalse(basket.add("Plain")); + Assertions.assertTrue(basket.changeBasketSize(1, 7)); + Assertions.assertTrue(basket.add("Plain")); } - +//$ git commit -m "Checked so normal user cannot change basket size" @Test public void removeNonExistingBagelTest(){ Basket basket = new Basket(); From 6f5c203898d8b01b05e6e9c2be012d116d5810f9 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:54:33 +0200 Subject: [PATCH 27/28] A normal user cannot change basket size, green test --- src/test/java/com/booleanuk/core/BasketTest.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 2b6661f8..b3e8ff74 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -62,8 +62,8 @@ public void changeBasketSizeWhenFullTest() { Assertions.assertTrue(basket.add("Plain")); //Basket full Assertions.assertFalse(basket.add("Plain")); - Assertions.assertTrue(basket.changeBasketSize(1, 7)); - Assertions.assertTrue(basket.add("Plain")); + Assertions.assertFalse(basket.changeBasketSize(1, 7)); + Assertions.assertFalse(basket.add("Plain")); } //$ git commit -m "Checked so normal user cannot change basket size" @Test From e9b5420628cbea7d49c4a74346b68b1db98e4543 Mon Sep 17 00:00:00 2001 From: Valen98 Date: Wed, 14 Aug 2024 14:55:42 +0200 Subject: [PATCH 28/28] Fixed domainModel --- domainModel.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/domainModel.md b/domainModel.md index 364ed646..2b638f6a 100644 --- a/domainModel.md +++ b/domainModel.md @@ -51,11 +51,11 @@ I’d like to change the capacity of baskets. Manager has role number 0 for Admin ``` -| Classes | Member Variable | Method | Scenario | Outcome | -|---------|----------------------------|-----------------------------------------------|--------------------------------------|---------| -| Basket | ArrayList basket | increaseBasketSize(int memberId, int newSize) | Owner change basket size | true | -| | | | If someone else tries to change size | false | -| | | | | | +| Classes | Member Variable | Method | Scenario | Outcome | +|---------|----------------------------|---------------------------------------------|--------------------------------------|---------| +| Basket | ArrayList basket | changeBasketSize(int memberId, int newSize) | Owner change basket size | true | +| | | | If someone else tries to change size | false | +| | | | | | ```