public void B_AddUserBy_Web_ReturnsTrue() { //Arrange UsersWebRepository usersRepository = new UsersWebRepository(); User tempUser = new User(); //Act tempUser.id = 9999999; tempUser.name = "Test User"; tempUser.username = "******"; tempUser.email = "*****@*****.**"; tempUser.phone = "0123456789"; tempUser.website = "N/A"; tempUser.address = new Address(); tempUser.address.street = "Sorrel Road"; tempUser.address.suite = "103"; tempUser.address.city = "Bristol"; tempUser.address.zipcode = "BS34 8DS"; tempUser.address.geo = new Geo(); tempUser.address.geo.lat = "52.024"; tempUser.address.geo.lng = "-2.023"; tempUser.company = new Company(); tempUser.company.name = "N/A"; tempUser.company.catchPhrase = "N/A"; tempUser.company.bs = "N/A"; usersRepository.Add(tempUser); User addedUser = usersRepository.GetAll().Find(user => user.id == tempUser.id); //Assert Assert.IsTrue(9999999 == tempUser.id);// Change to static number when API returns the users with the added user. }
public void A_GetUsersBy_Web_ReturnsListOfUsers() { //Arrange UsersWebRepository usersRepository = new UsersWebRepository(); //Act List <User> result = usersRepository.GetAll(); //Assert CollectionAssert.Equals(result, new List <User>()); }
public void D_DeleteUserBy_Web_ReturnsTrue() { //Arrange UsersWebRepository usersRepository = new UsersWebRepository(); List <User> users = usersRepository.GetAll(); //Act int index = users.FindIndex(user => user.id == 1); User user = users[index]; usersRepository.Delete(user); users = usersRepository.GetAll(); //Assert Assert.IsFalse(users.Contains(user));// Change to isFalse when API returns the users with the updated user. }
public void C_UpdateUserBy_Web_ReturnsTrue() { //Arrange UsersWebRepository usersRepository = new UsersWebRepository(); List <User> users = usersRepository.GetAll(); //Act int index = users.FindIndex(user => user.id == 1); users[index].name = "Test User Updated"; usersRepository.Update(users[index]); users = usersRepository.GetAll(); //Assert Assert.IsFalse(users[index].name == "Test User Updated");// Change to isFalse when API returns the users with the updated user. }
static void Main(string[] args) { IUsersRepository usersRepository; //Storing choice of storage method. string storageMethod = ""; //Recursive check to ensure the menu is visible. bool isMenuVisible = true; while (storageMethod != "web" && storageMethod != "local") { Console.Clear(); Console.WriteLine("User Management System\n"); Console.WriteLine("This system will allow you to edit users' data either locally or web stored."); Console.WriteLine("Please note that changes to the RESTful API will not affect the data.\n"); Console.WriteLine("Would you like to use 'Web' or 'Local' storage?"); storageMethod = Console.ReadLine().ToLower(); } if (storageMethod == "web") { usersRepository = new UsersWebRepository(); } else { usersRepository = new UsersLocalRespoitory("../data/", "Users", ".json"); } List <User> users = usersRepository.GetAll(); //This while loop allows the menu to keep displaying till the user selected the 'Exit' option. while (isMenuVisible) { Console.Clear(); Console.WriteLine("User Management System\n"); Console.WriteLine("1) View users."); Console.WriteLine("2) Insert user."); Console.WriteLine("3) Modify user."); Console.WriteLine("4) Delete user."); Console.WriteLine("5) Exit.\n"); string userInput = RequestInput("Please select an option: "); Console.Clear(); switch (userInput) { case "1": ViewUsersUI(users); break; case "2": var userAdd = AddUserUI(users); usersRepository.Add(userAdd); users.Add(userAdd); break; case "3": var userSelected = SelectUserUI(users); var userModify = ModifyUserUI(userSelected); usersRepository.Update(userModify); break; case "4": var userDelete = DeleteUserUI(SelectUserUI(users)); usersRepository.Delete(userDelete); users.Remove(userDelete); break; case "5": isMenuVisible = false; break; default: Console.Write("Invalid Input. Please press enter to retry..."); Console.ReadLine(); break; } } }