From 895d69448767a0a033113ea1cc7de41e850db973 Mon Sep 17 00:00:00 2001 From: alinjo Date: Wed, 14 Aug 2024 15:14:15 +0200 Subject: [PATCH 1/9] Made test failed --- domain-model.md | 9 +++++++++ src/main/java/com/booleanuk/core/Basket.java | 7 +++++++ .../java/com/booleanuk/core/BasketTest.java | 18 ++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 domain-model.md diff --git a/domain-model.md b/domain-model.md new file mode 100644 index 00000000..7ddcd8ee --- /dev/null +++ b/domain-model.md @@ -0,0 +1,9 @@ + + +| Classes | Methods | Scenario | Outputs | +|----------|----------------------------------|--------------------------------|---------| +| `Basket` | `AddBagel(String bagel)` | Create bagel | bool | +| | `RemoveBagel(String bagel)` | Remove bagel | bool | +| | `IsFull()` | Check capacity | bool | +| | `SetCapacity(int capacity)` | Change capacity | | +| | `RemoveBagel()` | Remove a bagel that dont exist | int | \ No newline at end of file diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index df7a20aa..9758b13a 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -1,5 +1,12 @@ +//Basket.java package com.booleanuk.core; +import java.util.ArrayList; + public class Basket { + public boolean add(ArrayList baskets, String bagel){ + return true; + } + } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index e35771b3..410d6c45 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -1,8 +1,26 @@ +// BasketTest.java package com.booleanuk.core; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import java.util.ArrayList; + class BasketTest { + ArrayList baskets; + + public BasketTest(){ + this.baskets = new ArrayList<>(); + this.baskets.add("Bagel1"); + this.baskets.add("Bagel2"); + } + + @Test + public void testAddBagel() { + + Basket basket = new Basket(); + Assertions.assertFalse(basket.add(baskets, "")); + } + } From ef07a5739b68761eabe0473786d3807fd059d48e Mon Sep 17 00:00:00 2001 From: alinjo Date: Wed, 14 Aug 2024 15:30:01 +0200 Subject: [PATCH 2/9] Made test pass --- domain-model.md | 14 +++++++------- src/main/java/com/booleanuk/core/Basket.java | 9 +++++++-- src/test/java/com/booleanuk/core/BasketTest.java | 8 +------- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/domain-model.md b/domain-model.md index 7ddcd8ee..e7d274aa 100644 --- a/domain-model.md +++ b/domain-model.md @@ -1,9 +1,9 @@ -| Classes | Methods | Scenario | Outputs | -|----------|----------------------------------|--------------------------------|---------| -| `Basket` | `AddBagel(String bagel)` | Create bagel | bool | -| | `RemoveBagel(String bagel)` | Remove bagel | bool | -| | `IsFull()` | Check capacity | bool | -| | `SetCapacity(int capacity)` | Change capacity | | -| | `RemoveBagel()` | Remove a bagel that dont exist | int | \ No newline at end of file +| Classes | Methods | Scenario | Outputs | +|----------|------------------------------------------------------|--------------------------------|---------| +| `Basket` | `AddBagel(ArrayList baskets, String bagel )` | Add bagel | bool | +| | `RemoveBagel(String bagel)` | Remove bagel | bool | +| | `IsFull()` | Check capacity | bool | +| | `SetCapacity(int capacity)` | Change capacity | | +| | `RemoveBagel()` | Remove a bagel that dont exist | int | \ No newline at end of file diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 9758b13a..470e63cc 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -4,9 +4,14 @@ import java.util.ArrayList; public class Basket { + public ArrayList baskets; - public boolean add(ArrayList baskets, String bagel){ - return true; + public Basket() { + this.baskets = new ArrayList<>(); + } + + public boolean add(String bagel){ + return this.baskets.add(bagel); } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 410d6c45..429033c3 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -10,17 +10,11 @@ class BasketTest { ArrayList baskets; - public BasketTest(){ - this.baskets = new ArrayList<>(); - this.baskets.add("Bagel1"); - this.baskets.add("Bagel2"); - } - @Test public void testAddBagel() { Basket basket = new Basket(); - Assertions.assertFalse(basket.add(baskets, "")); + Assertions.assertTrue(basket.add("bagel1")); } } From 64f839b074b9a7a2b2e5e1b76975928bd7b92493 Mon Sep 17 00:00:00 2001 From: alinjo Date: Wed, 14 Aug 2024 20:01:56 +0200 Subject: [PATCH 3/9] Made remove test pass --- domain-model.md | 14 +++++++------- src/main/java/com/booleanuk/core/Basket.java | 4 ++++ src/test/java/com/booleanuk/core/BasketTest.java | 13 +++++++++++-- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/domain-model.md b/domain-model.md index e7d274aa..10cc8894 100644 --- a/domain-model.md +++ b/domain-model.md @@ -1,9 +1,9 @@ -| Classes | Methods | Scenario | Outputs | -|----------|------------------------------------------------------|--------------------------------|---------| -| `Basket` | `AddBagel(ArrayList baskets, String bagel )` | Add bagel | bool | -| | `RemoveBagel(String bagel)` | Remove bagel | bool | -| | `IsFull()` | Check capacity | bool | -| | `SetCapacity(int capacity)` | Change capacity | | -| | `RemoveBagel()` | Remove a bagel that dont exist | int | \ No newline at end of file +| Classes | Methods | Scenario | Outputs | +|----------|-----------------------------|--------------------------------|---------| +| `Basket` | `AddBagel(String bagel)` | Add bagel | bool | +| | `RemoveBagel(String bagel)` | Remove bagel | bool | +| | `IsFull()` | Check capacity | bool | +| | `SetCapacity(int capacity)` | Change capacity | | +| | `RemoveBagel()` | Remove a bagel that dont exist | int | \ No newline at end of file diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 470e63cc..b78360d6 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -14,4 +14,8 @@ public boolean add(String bagel){ return this.baskets.add(bagel); } + public boolean remove(String bagel){ + return this.baskets.remove(bagel); + } + } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 429033c3..3b63aa5e 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -13,8 +13,17 @@ class BasketTest { @Test public void testAddBagel() { - Basket basket = new Basket(); - Assertions.assertTrue(basket.add("bagel1")); + Basket basket = new Basket(); + Assertions.assertTrue(basket.add("bagel1")); + } + @Test + public void testRemoveBagel() { + + Basket basket = new Basket(); + basket.add("bagel1"); + Assertions.assertTrue(basket.remove("bagel1")); + + } } From 60b6f1c2e4e260eba933c6c043d2efe06ad51f9c Mon Sep 17 00:00:00 2001 From: alinjo Date: Wed, 14 Aug 2024 20:31:30 +0200 Subject: [PATCH 4/9] Made IsFull test fail --- src/main/java/com/booleanuk/core/Basket.java | 4 ++++ src/test/java/com/booleanuk/core/BasketTest.java | 13 +++++++++++++ 2 files changed, 17 insertions(+) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index b78360d6..bcd0ec21 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -5,6 +5,7 @@ public class Basket { public ArrayList baskets; + private int capacity; public Basket() { this.baskets = new ArrayList<>(); @@ -18,4 +19,7 @@ public boolean remove(String bagel){ return this.baskets.remove(bagel); } + public boolean IsFull(){ + return this.baskets.size() == this.capacity; + } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 3b63aa5e..aa8ea8e1 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -23,7 +23,20 @@ public void testRemoveBagel() { Basket basket = new Basket(); basket.add("bagel1"); + Assertions.assertTrue(basket.remove("bagel1")); } + + @Test + public void testIsFull() { + + Basket basket = new Basket(); + + Assertions.assertTrue(basket.add("bagel1")); + Assertions.assertTrue(basket.add("bagel2")); + + Assertions.assertTrue(basket.IsFull()); + + } } From 5466c5fa54a3bcbe95fa4f5224406e8065024ecc Mon Sep 17 00:00:00 2001 From: alinjo Date: Wed, 14 Aug 2024 20:44:16 +0200 Subject: [PATCH 5/9] Made IsFull test work --- src/main/java/com/booleanuk/core/Basket.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index bcd0ec21..1004d956 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -9,6 +9,7 @@ public class Basket { public Basket() { this.baskets = new ArrayList<>(); + this.capacity = 2; } public boolean add(String bagel){ @@ -19,7 +20,7 @@ public boolean remove(String bagel){ return this.baskets.remove(bagel); } - public boolean IsFull(){ - return this.baskets.size() == this.capacity; + public boolean IsFull() { + return this.baskets.size() >= this.capacity; } } From f4ec58f23a5fc1d0b40656afd7d0848df7e82280 Mon Sep 17 00:00:00 2001 From: alinjo Date: Fri, 16 Aug 2024 15:10:10 +0200 Subject: [PATCH 6/9] setCapacity failed --- domain-model.md | 1 - src/main/java/com/booleanuk/core/Basket.java | 10 +++++++++- .../java/com/booleanuk/core/BasketTest.java | 20 ++++++++++++++++++- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/domain-model.md b/domain-model.md index 10cc8894..5517b7e1 100644 --- a/domain-model.md +++ b/domain-model.md @@ -1,5 +1,4 @@ - | Classes | Methods | Scenario | Outputs | |----------|-----------------------------|--------------------------------|---------| | `Basket` | `AddBagel(String bagel)` | Add bagel | bool | diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 1004d956..e61af707 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -13,7 +13,10 @@ public Basket() { } public boolean add(String bagel){ - return this.baskets.add(bagel); + if (this.baskets.size() < this.capacity) { + return this.baskets.add(bagel); + } + return false; } public boolean remove(String bagel){ @@ -23,4 +26,9 @@ public boolean remove(String bagel){ public boolean IsFull() { return this.baskets.size() >= this.capacity; } + + public void setCapacity(int capacity) { + return; + } + } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index aa8ea8e1..1fa0a139 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -39,4 +39,22 @@ public void testIsFull() { Assertions.assertTrue(basket.IsFull()); } -} + + @Test + public void testSetCapacity() { + Basket basket = new Basket(); + + Assertions.assertTrue(basket.add("bagel1")); + Assertions.assertTrue(basket.add("bagel2")); + Assertions.assertFalse(basket.add("bagel3")); + + basket.setCapacity(3); + + Assertions.assertTrue(basket.add("bagel3")); + + } + + + + +} \ No newline at end of file From c659de97577f7cd21c99483615e66731bc1860a7 Mon Sep 17 00:00:00 2001 From: alinjo Date: Fri, 16 Aug 2024 15:13:50 +0200 Subject: [PATCH 7/9] setCapacity sucsessful --- src/main/java/com/booleanuk/core/Basket.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index e61af707..0935628c 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -28,7 +28,9 @@ public boolean IsFull() { } public void setCapacity(int capacity) { - return; + if (capacity > 0) { + this.capacity = capacity; + } } } From 323953acf00271323247636de1b8f05997e72a00 Mon Sep 17 00:00:00 2001 From: alinjo Date: Fri, 16 Aug 2024 15:25:50 +0200 Subject: [PATCH 8/9] removeBagel failed --- src/main/java/com/booleanuk/core/Basket.java | 24 +++++++++++++++++-- .../java/com/booleanuk/core/BasketTest.java | 8 ++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index 0935628c..e11dfaa7 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -8,28 +8,48 @@ public class Basket { private int capacity; public Basket() { + this.baskets = new ArrayList<>(); this.capacity = 2; + } - public boolean add(String bagel){ + public boolean add(String bagel) { + if (this.baskets.size() < this.capacity) { + return this.baskets.add(bagel); + } + return false; } - public boolean remove(String bagel){ + public boolean remove(String bagel) { + return this.baskets.remove(bagel); + } public boolean IsFull() { + return this.baskets.size() >= this.capacity; + } public void setCapacity(int capacity) { + if (capacity > 0) { + this.capacity = capacity; + + } + } + + public int removeBagel(String bagel) { + + return 0; + } } diff --git a/src/test/java/com/booleanuk/core/BasketTest.java b/src/test/java/com/booleanuk/core/BasketTest.java index 1fa0a139..17477841 100644 --- a/src/test/java/com/booleanuk/core/BasketTest.java +++ b/src/test/java/com/booleanuk/core/BasketTest.java @@ -54,7 +54,13 @@ public void testSetCapacity() { } - + @Test + public void removeBagel() { + Basket basket = new Basket(); + basket.add("bagel1"); + Assertions.assertEquals(1, basket.removeBagel("bagel1")); + Assertions.assertEquals(-1, basket.removeBagel("bagel2")); + } } \ No newline at end of file From 69ec4534f2cc02eb7774e88b832093fa52544db3 Mon Sep 17 00:00:00 2001 From: alinjo Date: Fri, 16 Aug 2024 15:26:14 +0200 Subject: [PATCH 9/9] removeBagel sucsessfull --- src/main/java/com/booleanuk/core/Basket.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/booleanuk/core/Basket.java b/src/main/java/com/booleanuk/core/Basket.java index e11dfaa7..bd8c4773 100644 --- a/src/main/java/com/booleanuk/core/Basket.java +++ b/src/main/java/com/booleanuk/core/Basket.java @@ -48,7 +48,14 @@ public void setCapacity(int capacity) { public int removeBagel(String bagel) { - return 0; + if (this.baskets.contains(bagel)) { + + this.baskets.remove(bagel); + return 1; + + } else { + + return -1; } }