Skip to content

Commit

Permalink
Merge pull request #154 from CS2103-AY1819S1-F10-1/fix#151
Browse files Browse the repository at this point in the history
Changed error message for login as admin
  • Loading branch information
ChooJeremy committed Nov 3, 2018
2 parents 31b86ff + b5af6ff commit a3f51ab
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 10 deletions.
15 changes: 10 additions & 5 deletions src/main/java/seedu/address/logic/LogicManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -122,11 +122,16 @@ public void processLogin(LoginEvent loginEvent) {
String username = loginEvent.getUsername();
String password = loginEvent.getPassword();

if (User.matchesAdminLogin(username, password)) {
User admin = User.getAdminUser();
model.setLoggedInUser(admin);
raise(new SuccessfulLoginEvent(admin));
return;
if (username.equals(User.getAdminUser().getUsername().username)) {
if (User.matchesAdminLogin(username, password)) {
User admin = User.getAdminUser();
model.setLoggedInUser(admin);
raise(new SuccessfulLoginEvent(admin));
return;
} else {
raise(new FailedLoginEvent(FailedLoginEvent.INVALID_PASSWORD));
return;
}
}

model.updateFilteredPersonList(Model.PREDICATE_SHOW_ALL_PERSONS);
Expand Down
20 changes: 15 additions & 5 deletions src/test/java/seedu/address/logic/LoginTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,16 @@ public void login_admin_successful() {
assert model.getLoggedInUser().isAdminUser();
}

@Test
public void login_admin_unsuccessful() {
String adminUsername = User.ADMIN_DEFAULT_USERNAME.username;
String adminPassword = User.ADMIN_DEFUALT_PASSWORD.password;

EventsCenter.getInstance().post(new LoginEvent(adminUsername, adminPassword + "hihihi"));

assertLastEventLoginUnsuccessful(FailedLoginEvent.INVALID_PASSWORD);
}

@Test
public void login_user_successful() {
Person loginPerson = model.getAddressBook().getPersonList().get(0);
Expand All @@ -60,7 +70,7 @@ public void login_nonConformingData_unsuccessful() {

EventsCenter.getInstance().post(new LoginEvent(username, password));

assertLastEventLogoutUnsuccessful(FailedLoginEvent.NON_CONFORMING_INPUTS);
assertLastEventLoginUnsuccessful(FailedLoginEvent.NON_CONFORMING_INPUTS);
}

@Test
Expand Down Expand Up @@ -89,7 +99,7 @@ public void login_username_unsuccessful() {

EventsCenter.getInstance().post(new LoginEvent(username, password));

assertLastEventLogoutUnsuccessful(FailedLoginEvent.INVALID_USERNAME);
assertLastEventLoginUnsuccessful(FailedLoginEvent.INVALID_USERNAME);
}

@Test
Expand All @@ -100,7 +110,7 @@ public void login_password_unsuccessful() {

EventsCenter.getInstance().post(new LoginEvent(username, password));

assertLastEventLogoutUnsuccessful(FailedLoginEvent.INVALID_PASSWORD);
assertLastEventLoginUnsuccessful(FailedLoginEvent.INVALID_PASSWORD);
}

/**
Expand All @@ -115,9 +125,9 @@ private void assertLastEventLoginSuccessful() {

/**
* Verifies that the login was unsuccessful, and for a certain reason
* @param reason The logout Event's message
* @param reason The Failed Login Event's message
*/
private void assertLastEventLogoutUnsuccessful(String reason) {
private void assertLastEventLoginUnsuccessful(String reason) {
BaseEvent lastEvent = eventsCollectorRule.eventsCollector.getMostRecent();
assert lastEvent instanceof FailedLoginEvent;
FailedLoginEvent failedLoginEvent = (FailedLoginEvent) lastEvent;
Expand Down

0 comments on commit a3f51ab

Please sign in to comment.