From 69c5d94642627f09432d7fb466e33ba0f74845d5 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:00:02 +0100 Subject: [PATCH 1/7] Add test for setters and getters --- .../java/com/booleanuk/core/TodoItemTest.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/test/java/com/booleanuk/core/TodoItemTest.java b/src/test/java/com/booleanuk/core/TodoItemTest.java index 095af82..fe4077c 100644 --- a/src/test/java/com/booleanuk/core/TodoItemTest.java +++ b/src/test/java/com/booleanuk/core/TodoItemTest.java @@ -5,4 +5,21 @@ class TodoItemTest { + @Test + public void testAccessPrivateValues() { + TodoItem todoItem = new TodoItem("Title", "Detail", "Status"); + + Assertions.assertEquals("Status", todoItem.getStatus()); + Assertions.assertEquals("Detail", todoItem.getDetail()); + Assertions.assertEquals("Title", todoItem.getTitle()); + + todoItem.setStatus("Status2"); + todoItem.setDetail("Detail2"); + todoItem.setTitle("Title2"); + + Assertions.assertEquals("Status2", todoItem.getStatus()); + Assertions.assertEquals("Detail2", todoItem.getDetail()); + Assertions.assertEquals("Title2", todoItem.getTitle()); + } + } From 48546daa1f7414f825e76cb99c954f11c6f75efd Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:02:04 +0100 Subject: [PATCH 2/7] Make tests pass --- .../java/com/booleanuk/core/TodoItem.java | 25 ++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/TodoItem.java b/src/main/java/com/booleanuk/core/TodoItem.java index 655d825..335038b 100644 --- a/src/main/java/com/booleanuk/core/TodoItem.java +++ b/src/main/java/com/booleanuk/core/TodoItem.java @@ -1,9 +1,11 @@ package com.booleanuk.core; public class TodoItem { - public String title; - public String detail; - public String status; + private String title; + private String detail; + private String status; + + public TodoItem(String title, String detail, String status) { this.title = title; @@ -18,4 +20,21 @@ public void setStatus(String status) { public String getStatus() { return this.status; } + + public String getDetail() { + return detail; + } + + public void setDetail(String detail) { + this.detail = detail; + } + + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } } From 6ede3771cf6e58a4801b4a21e9cbaada579e3b32 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:17:43 +0100 Subject: [PATCH 3/7] Add init test for Account, User, Admin --- src/main/java/com/booleanuk/core/Account.java | 4 ++++ src/main/java/com/booleanuk/core/Admin.java | 4 ++++ .../java/com/booleanuk/core/ClassDiagram.png | Bin 0 -> 24756 bytes src/main/java/com/booleanuk/core/User.java | 4 ++++ .../java/com/booleanuk/core/AccountTest.java | 12 ++++++++++++ src/test/java/com/booleanuk/core/AdminTest.java | 12 ++++++++++++ src/test/java/com/booleanuk/core/UserTest.java | 12 ++++++++++++ 7 files changed, 48 insertions(+) create mode 100644 src/main/java/com/booleanuk/core/Account.java create mode 100644 src/main/java/com/booleanuk/core/Admin.java create mode 100644 src/main/java/com/booleanuk/core/ClassDiagram.png create mode 100644 src/main/java/com/booleanuk/core/User.java create mode 100644 src/test/java/com/booleanuk/core/AccountTest.java create mode 100644 src/test/java/com/booleanuk/core/AdminTest.java create mode 100644 src/test/java/com/booleanuk/core/UserTest.java diff --git a/src/main/java/com/booleanuk/core/Account.java b/src/main/java/com/booleanuk/core/Account.java new file mode 100644 index 0000000..d0abb34 --- /dev/null +++ b/src/main/java/com/booleanuk/core/Account.java @@ -0,0 +1,4 @@ +package com.booleanuk.core; + +public class Account { +} diff --git a/src/main/java/com/booleanuk/core/Admin.java b/src/main/java/com/booleanuk/core/Admin.java new file mode 100644 index 0000000..42eceae --- /dev/null +++ b/src/main/java/com/booleanuk/core/Admin.java @@ -0,0 +1,4 @@ +package com.booleanuk.core; + +public class Admin { +} diff --git a/src/main/java/com/booleanuk/core/ClassDiagram.png b/src/main/java/com/booleanuk/core/ClassDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..e7a089f7dedf9237c03ed8854b7d19489bdd2531 GIT binary patch literal 24756 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 literal 0 HcmV?d00001 diff --git a/src/main/java/com/booleanuk/core/User.java b/src/main/java/com/booleanuk/core/User.java new file mode 100644 index 0000000..9c4d600 --- /dev/null +++ b/src/main/java/com/booleanuk/core/User.java @@ -0,0 +1,4 @@ +package com.booleanuk.core; + +public class User { +} diff --git a/src/test/java/com/booleanuk/core/AccountTest.java b/src/test/java/com/booleanuk/core/AccountTest.java new file mode 100644 index 0000000..40a92f7 --- /dev/null +++ b/src/test/java/com/booleanuk/core/AccountTest.java @@ -0,0 +1,12 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Test; + +public class AccountTest { + + @Test + public void testAccountInit() { + Account account = new Account(); + + } +} diff --git a/src/test/java/com/booleanuk/core/AdminTest.java b/src/test/java/com/booleanuk/core/AdminTest.java new file mode 100644 index 0000000..3d5ae6f --- /dev/null +++ b/src/test/java/com/booleanuk/core/AdminTest.java @@ -0,0 +1,12 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Test; + +public class AdminTest { + + @Test + public void testAccountInit() { + Admin admin = new Admin(); + + } +} diff --git a/src/test/java/com/booleanuk/core/UserTest.java b/src/test/java/com/booleanuk/core/UserTest.java new file mode 100644 index 0000000..5ebffa1 --- /dev/null +++ b/src/test/java/com/booleanuk/core/UserTest.java @@ -0,0 +1,12 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Test; + +public class UserTest { + @Test + public void testAccountInit() { + User user = new User(); + + } + +} From cb3058c2df7bd8121a9b7804c75a53f4cce5ad57 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:28:18 +0100 Subject: [PATCH 4/7] Add test for account setters and getters --- src/test/java/com/booleanuk/core/AccountTest.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/booleanuk/core/AccountTest.java b/src/test/java/com/booleanuk/core/AccountTest.java index 40a92f7..eab4052 100644 --- a/src/test/java/com/booleanuk/core/AccountTest.java +++ b/src/test/java/com/booleanuk/core/AccountTest.java @@ -1,12 +1,23 @@ package com.booleanuk.core; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class AccountTest { @Test public void testAccountInit() { - Account account = new Account(); + Account account = new Account("email@email.email", "bestPassword"); + + Assertions.assertEquals("invalid password", account.setPassword("1")); + Assertions.assertEquals("invalid email", account.setEmail("1")); + Assertions.assertFalse(account.getEnabled()); + Assertions.assertEquals("invalid login", account.ableToLogin()); + account.setEnabled(true); + Assertions.assertTrue(account.getEnabled()); + Assertions.assertTrue(account.ableToLogin()); + + } } From 3b7da718f4527e2860dd52e0f1ecac0b31d1f508 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:40:53 +0100 Subject: [PATCH 5/7] Make account pass tests --- src/main/java/com/booleanuk/core/Account.java | 55 +++++++++++++++++++ .../java/com/booleanuk/core/AccountTest.java | 6 +- 2 files changed, 58 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Account.java b/src/main/java/com/booleanuk/core/Account.java index d0abb34..9ce75ba 100644 --- a/src/main/java/com/booleanuk/core/Account.java +++ b/src/main/java/com/booleanuk/core/Account.java @@ -1,4 +1,59 @@ package com.booleanuk.core; public class Account { + + private String email; + + + private String password; + + private boolean enabled; + + public Account(String email, String password) { + this.setEmail(email); + this.setPassword(password); + this.enabled = false; + + } + + public String getEmail() { + return this.email; + } + + public String setEmail(String email) { + if(email.contains("@")) { + this.email = email; + return "valid email"; + } + return "invalid email"; + } + + public String getPassword() { + return this.password; + } + + public String setPassword(String password) { + if(password.length() >= 8) { + this.password = password; + return "valid password"; + } + return "invalid password"; + } + + public boolean isEnabled() { + return this.enabled; + } + + public void setEnabled(boolean enabled) { + this.enabled = enabled; + } + + + public String ableToLogin() { + if(this.isEnabled()) { + return "valid login"; + } + return "invalid login"; + + } } diff --git a/src/test/java/com/booleanuk/core/AccountTest.java b/src/test/java/com/booleanuk/core/AccountTest.java index eab4052..a713653 100644 --- a/src/test/java/com/booleanuk/core/AccountTest.java +++ b/src/test/java/com/booleanuk/core/AccountTest.java @@ -11,11 +11,11 @@ public void testAccountInit() { Assertions.assertEquals("invalid password", account.setPassword("1")); Assertions.assertEquals("invalid email", account.setEmail("1")); - Assertions.assertFalse(account.getEnabled()); + Assertions.assertFalse(account.isEnabled()); Assertions.assertEquals("invalid login", account.ableToLogin()); account.setEnabled(true); - Assertions.assertTrue(account.getEnabled()); - Assertions.assertTrue(account.ableToLogin()); + Assertions.assertTrue(account.isEnabled()); + Assertions.assertEquals("valid login", account.ableToLogin()); From 24c309180a122a2e819abced393bb4f2bf59c4a7 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:42:52 +0100 Subject: [PATCH 6/7] Add tests for user and admin --- src/test/java/com/booleanuk/core/AccountTest.java | 2 +- src/test/java/com/booleanuk/core/AdminTest.java | 15 +++++++++++++-- src/test/java/com/booleanuk/core/UserTest.java | 15 +++++++++++++-- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/src/test/java/com/booleanuk/core/AccountTest.java b/src/test/java/com/booleanuk/core/AccountTest.java index a713653..8df96db 100644 --- a/src/test/java/com/booleanuk/core/AccountTest.java +++ b/src/test/java/com/booleanuk/core/AccountTest.java @@ -6,7 +6,7 @@ public class AccountTest { @Test - public void testAccountInit() { + public void testAccount() { Account account = new Account("email@email.email", "bestPassword"); Assertions.assertEquals("invalid password", account.setPassword("1")); diff --git a/src/test/java/com/booleanuk/core/AdminTest.java b/src/test/java/com/booleanuk/core/AdminTest.java index 3d5ae6f..5676966 100644 --- a/src/test/java/com/booleanuk/core/AdminTest.java +++ b/src/test/java/com/booleanuk/core/AdminTest.java @@ -1,12 +1,23 @@ package com.booleanuk.core; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class AdminTest { @Test - public void testAccountInit() { - Admin admin = new Admin(); + public void testAdmin() { + Admin admin = new Admin("email@email.email", "bestPassword"); + + + Assertions.assertEquals("invalid password", admin.setPassword("1")); + Assertions.assertEquals("invalid email", admin.setEmail("1")); + Assertions.assertFalse(admin.isEnabled()); + Assertions.assertEquals("invalid login", admin.ableToLogin()); + admin.setEnabled(true); + Assertions.assertTrue(admin.isEnabled()); + Assertions.assertEquals("valid login", admin.ableToLogin()); + } } diff --git a/src/test/java/com/booleanuk/core/UserTest.java b/src/test/java/com/booleanuk/core/UserTest.java index 5ebffa1..266c585 100644 --- a/src/test/java/com/booleanuk/core/UserTest.java +++ b/src/test/java/com/booleanuk/core/UserTest.java @@ -1,11 +1,22 @@ package com.booleanuk.core; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; public class UserTest { @Test - public void testAccountInit() { - User user = new User(); + public void testUser() { + User user = new User("email@email.email", "bestPassword"); + + + Assertions.assertEquals("invalid password", user.setPassword("1")); + Assertions.assertEquals("invalid email", user.setEmail("1")); + Assertions.assertFalse(user.isEnabled()); + Assertions.assertEquals("invalid login", user.ableToLogin()); + user.setEnabled(true); + Assertions.assertTrue(user.isEnabled()); + Assertions.assertEquals("valid login", user.ableToLogin()); + } From c1309996a1ae926043d99cff3d84789af4fb3c89 Mon Sep 17 00:00:00 2001 From: Vegard Vognstolen Date: Thu, 18 Jan 2024 09:44:09 +0100 Subject: [PATCH 7/7] Make tests pass User and Admin --- src/main/java/com/booleanuk/core/Admin.java | 5 ++++- src/main/java/com/booleanuk/core/User.java | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/booleanuk/core/Admin.java b/src/main/java/com/booleanuk/core/Admin.java index 42eceae..1c0f7df 100644 --- a/src/main/java/com/booleanuk/core/Admin.java +++ b/src/main/java/com/booleanuk/core/Admin.java @@ -1,4 +1,7 @@ package com.booleanuk.core; -public class Admin { +public class Admin extends Account{ + public Admin(String email, String password) { + super(email, password); + } } diff --git a/src/main/java/com/booleanuk/core/User.java b/src/main/java/com/booleanuk/core/User.java index 9c4d600..3b8e4a3 100644 --- a/src/main/java/com/booleanuk/core/User.java +++ b/src/main/java/com/booleanuk/core/User.java @@ -1,4 +1,7 @@ package com.booleanuk.core; -public class User { +public class User extends Account{ + public User(String email, String password) { + super(email, password); + } }