From c9b222cb2870b23760122cadb82248769442fa96 Mon Sep 17 00:00:00 2001 From: Zhi Yuan Yong Date: Wed, 8 Aug 2018 21:30:55 +0800 Subject: [PATCH] ClearCommandTest: fix tautological tests Tests in ClearCommandTest always pass because the actual and expected model refer to the same instance; `assertEquals(expectedModel, actualModel)` is always true because expectedModel and actualModel reference the same object. As a result, the model's state isn't correctly verified. Let's update these tests to correctly verify the model's state. --- .../address/logic/commands/ClearCommandTest.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/test/java/seedu/address/logic/commands/ClearCommandTest.java b/src/test/java/seedu/address/logic/commands/ClearCommandTest.java index 48a2c96c005e..e5e2c97ac5e8 100644 --- a/src/test/java/seedu/address/logic/commands/ClearCommandTest.java +++ b/src/test/java/seedu/address/logic/commands/ClearCommandTest.java @@ -6,6 +6,7 @@ import org.junit.Test; import seedu.address.logic.CommandHistory; +import seedu.address.model.AddressBook; import seedu.address.model.Model; import seedu.address.model.ModelManager; import seedu.address.model.UserPrefs; @@ -15,13 +16,20 @@ public class ClearCommandTest { @Test public void execute_emptyAddressBook_success() { Model model = new ModelManager(); - assertCommandSuccess(prepareCommand(model), model, ClearCommand.MESSAGE_SUCCESS, model); + Model expectedModel = new ModelManager(); + expectedModel.commitAddressBook(); + + assertCommandSuccess(prepareCommand(model), model, ClearCommand.MESSAGE_SUCCESS, expectedModel); } @Test public void execute_nonEmptyAddressBook_success() { Model model = new ModelManager(getTypicalAddressBook(), new UserPrefs()); - assertCommandSuccess(prepareCommand(model), model, ClearCommand.MESSAGE_SUCCESS, model); + Model expectedModel = new ModelManager(getTypicalAddressBook(), new UserPrefs()); + expectedModel.resetData(new AddressBook()); + expectedModel.commitAddressBook(); + + assertCommandSuccess(prepareCommand(model), model, ClearCommand.MESSAGE_SUCCESS, expectedModel); } /**