public void start() throws Exception {
   int menuOption = 1;
   while (menuOption != 2) {
     inputOutput.printLogInQuit();
     menuOption = inputOutput.readInputFromConsole();
     switch (menuOption) {
       case 1:
         inputOutput.printEnterLoginId();
         User whoIsLogin =
             login.logIn(inputOutput.readStringFromConsole(), inputOutput.readPassword());
         if (whoIsLogin.getRoll().equals("user")) {
           while (menuOption != 8) {
             inputOutput.printMenuOnConsoleForUser();
             inputOutput.printEnterYourChoice();
             menuOption = inputOutput.readInputFromConsole();
             dispatcherForOption(inputOutput, library, menuOption, whoIsLogin);
           }
         } else if (whoIsLogin.getRoll().equals("librarian")) {
           while (menuOption != 8) {
             inputOutput.printMenuOnConsoleForAdmin();
             inputOutput.printEnterYourChoice();
             menuOption = inputOutput.readInputFromConsole();
             dispatcherForOption(inputOutput, library, menuOption, whoIsLogin);
           }
         } else {
           inputOutput.printValidationProblem();
         }
         break;
       case 2:
         System.exit(0);
       default:
         inputOutput.printInvalidOptionMessage();
     }
   }
 }
  @Test
  public void logInMethodShouldReturn1WhenUserIsLogIn() {
    ArrayList<User> users = new ArrayList<User>();
    users.add(
        new User(
            "pravin", "*****@*****.**", "8087648479", "librarian", "123-1234", "1231234"));
    User user1 =
        new User(
            "pravin123", "*****@*****.**", "8087648479", "user", "123-1235", "1231234");
    users.add(user1);
    Login login = new Login(users);

    assertEquals(user1, login.logIn("123-1235", "1231234"));
  }