Skip to content
42 changes: 36 additions & 6 deletions src/main/java/com/booleanuk/core/TodoItem.java
Original file line number Diff line number Diff line change
@@ -1,21 +1,51 @@
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) {
public TodoItem(String title, String detail) {
this.title = title;
this.detail = detail;
this.status = status;
this.status = "incomplete";
}

public TodoItem(String title, String detail, String status) {
this(title, detail);
}

public void changeStatus() {
if (status.equals("incomplete")) {
status = "complete";
} else {
status = "incomplete";
}
}

public void setStatus(String status) {
this.status = status;
if ((status.equals("incomplete") || status.equals("complete")) && !status.equals(this.status)) {
changeStatus();
}
}

public String getStatus() {
return this.status;
}

public String getTitle() {
return this.title;
}

public String getDetail() {
return this.detail;
}

public void setTitle(String title) {
this.title = title;
}

public void setDetail(String detail) {
this.detail = detail;
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 41 additions & 0 deletions src/test/java/com/booleanuk/core/TodoItemTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,45 @@

class TodoItemTest {

@Test
public void testGetTitle() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("Walk", todoItem.getTitle());
}

@Test
public void testGetDetail() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("Walk 5 km", todoItem.getDetail());
}

@Test
public void testGetStatus() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("incomplete", todoItem.getStatus());
}

@Test
public void testSetStatus() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("incomplete", todoItem.getStatus());
todoItem.setStatus("complete");
Assertions.assertEquals("complete", todoItem.getStatus());
}

@Test
public void testSetTitle() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("Walk", todoItem.getTitle());
todoItem.setTitle("Jog");
Assertions.assertEquals("Jog", todoItem.getTitle());
}

@Test
public void testSetDetail() {
TodoItem todoItem = new TodoItem("Walk", "Walk 5 km", "incomplete");
Assertions.assertEquals("Walk 5 km", todoItem.getDetail());
todoItem.setDetail("Jog 5 km");
Assertions.assertEquals("Jog 5 km", todoItem.getDetail());
}
}