public async void allow_to_register_new_user() { var expected = new LoyalityProgramUser() { Name = "Chr" }; var registrationResponse = await sut.Post("/users", with => with.JsonBody(expected)); var newUser = registrationResponse.Body.DeserializeJson <LoyalityProgramUser>(); var actual = await sut.Get($"/users/{newUser.Id}"); Assert.Equal(HttpStatusCode.OK.ToString(), actual.StatusCode.ToString()); Assert.Equal( expected.Name, actual.Body.DeserializeJson <LoyalityProgramUser>().Name); // more assertions on the response from the GET }
public async void allow_modifying_users() { var expected = "jane"; var user = new LoyalityProgramUser() { Name = "Chr" }; var registrationResponse = await sut.Post("/users", with => with.JsonBody(user)); var newUser = registrationResponse.Body.DeserializeJson <LoyalityProgramUser>(); newUser.Name = expected; var actual = await sut.Put($"/users/{newUser.Id}", with => with.JsonBody(newUser)); Assert.Equal( expected, actual.Body.DeserializeJson <LoyalityProgramUser>().Name); }
public LoyalityProgramUser Save(LoyalityProgramUser loyaltyUProgramUser) { if (!database.ContainsKey(loyaltyUProgramUser.Id)) { var userId = new Random(1).Next(1, 1000000); var newUser = new LoyalityProgramUser(userId); newUser.Name = loyaltyUProgramUser.Name; newUser.LoyaltyPoints = loyaltyUProgramUser.LoyaltyPoints; newUser.Settings = loyaltyUProgramUser.Settings; newUser.Id = userId; database[newUser.Id] = newUser; return(newUser); } else { var user = database[loyaltyUProgramUser.Id]; user.LoyaltyPoints = loyaltyUProgramUser.LoyaltyPoints; user.Name = loyaltyUProgramUser.Name; user.Settings = loyaltyUProgramUser.Settings; database[loyaltyUProgramUser.Id] = user; return(user); } }