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..355243d --- /dev/null +++ b/src/main/java/com/booleanuk/core/Account.java @@ -0,0 +1,52 @@ +package com.booleanuk.core; + +public class Account { + private String email; + private String password; + private Boolean status; + + public Account(String email, String password) { + this.email = verifyEmail(email); + this.password = verifyPassword(password); + this.status = false; + } + + private String verifyEmail(String email) { + if (!email.contains("@")) { + return "invalid email"; + } + return email; + } + + private String verifyPassword(String password) { + if (password.length() < 8) { + return "invalid password"; + } + return password; + } + + public Boolean canLogIn() { + return this.status; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = verifyEmail(email); + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = verifyPassword(password); + } + + public void setStatus(Boolean status) { + if (!email.equals("invalid email") && !password.equals("invalid password")) + this.status = status; + } +} diff --git a/src/main/java/com/booleanuk/core/TodoItem.java b/src/main/java/com/booleanuk/core/TodoItem.java index 655d825..7e8d2ae 100644 --- a/src/main/java/com/booleanuk/core/TodoItem.java +++ b/src/main/java/com/booleanuk/core/TodoItem.java @@ -1,9 +1,9 @@ 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; @@ -11,6 +11,22 @@ public TodoItem(String title, String detail, String status) { this.status = 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; + } + public void setStatus(String status) { this.status = status; } 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..dd095c1 --- /dev/null +++ b/src/test/java/com/booleanuk/core/AccountTest.java @@ -0,0 +1,39 @@ +package com.booleanuk.core; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.*; + +class AccountTest { + public Account account; + + @BeforeEach + public void setUp() { + this.account = new Account("example.com", "12345"); + } + + @Test + public void testVerifyEmail() { + Assertions.assertEquals("invalid email", account.getEmail()); + account.setEmail("example@.com"); + Assertions.assertEquals("example@.com", account.getEmail()); + } + + @Test + public void testVerifyPassword() { + Assertions.assertEquals("invalid password", account.getPassword()); + account.setPassword("12345678"); + Assertions.assertEquals("12345678", account.getPassword()); + } + + @Test + public void testCanLogIn() { + Assertions.assertFalse(account.canLogIn()); + account.setEmail("example@test.com"); + account.setPassword("12345678"); + account.setStatus(true); + Assertions.assertTrue(account.canLogIn()); + } +} \ No newline at end of file diff --git a/src/test/java/com/booleanuk/core/TodoItemTest.java b/src/test/java/com/booleanuk/core/TodoItemTest.java index 095af82..a6c9a3d 100644 --- a/src/test/java/com/booleanuk/core/TodoItemTest.java +++ b/src/test/java/com/booleanuk/core/TodoItemTest.java @@ -1,8 +1,50 @@ package com.booleanuk.core; import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; class TodoItemTest { + TodoItem todoItem; + @BeforeEach + void createObject() { + String title = "Eat dinner"; + String detail = "Buy all ingredients"; + String status = "Uncompleted"; + this.todoItem = new TodoItem(title, detail, status); + } + + @Test + void getDetail() { + Assertions.assertEquals("Buy all ingredients", this.todoItem.getDetail()); + } + + @Test + void setDetail() { + this.todoItem.setDetail("Follow the recipe"); + Assertions.assertEquals("Follow the recipe", this.todoItem.getDetail()); + } + + @Test + void getTitle() { + Assertions.assertEquals("Eat dinner", this.todoItem.getTitle()); + } + + @Test + void setTitle() { + this.todoItem.setTitle("Relax"); + Assertions.assertEquals("Relax", this.todoItem.getTitle()); + } + + @Test + void setStatus() { + this.todoItem.setStatus("Completed"); + Assertions.assertEquals("Completed", this.todoItem.getStatus()); + } + + @Test + void getStatus() { + Assertions.assertEquals("Uncompleted", this.todoItem.getStatus()); + } }