public void WhenReminderUpdated_IfItemNotExists_ShouldRaiseException() { using var factory = new ReminderWebApplicationFactory(); var id = Guid.NewGuid(); var storage = factory.GetClient(); Assert.CatchAsync <ReminderItemNotFoundException>(() => storage.UpdateAsync(Create.Reminder.WithId(id)) ); }
public async Task WhenReminderFind_IfItemExists_ShouldReturnIt() { using var factory = new ReminderWebApplicationFactory(); var id = Guid.NewGuid(); var storage = factory .WithItems(Create.Reminder.WithId(id)) .GetClient(); var item = await storage.GetAsync(id); Assert.AreEqual(id, item.Id); }
public async Task WhenReminderUpdated_IfItemExists_ShouldUpdateItem() { using var factory = new ReminderWebApplicationFactory(); var id = Guid.NewGuid(); var storage = factory .WithItems(Create.Reminder.WithId(id).WithMessage("Initial")) .GetClient(); await storage.UpdateAsync(Create.Reminder.WithId(id).WithMessage("Updated")); var item = await storage.GetAsync(id); Assert.AreEqual("Updated", item.Message); }
public async Task WhenReminderList_IfDatetimeSpecified_ShouldReturnMatchingItems() { using var factory = new ReminderWebApplicationFactory(); var storage = factory .WithItems( Create.Reminder.AtDatetime(DateTimeOffset.UtcNow.AddMinutes(-1)), Create.Reminder.AtDatetime(DateTimeOffset.UtcNow.AddMinutes(1)) ) .GetClient(); var items = await storage.FindByAsync(ReminderItemFilter.CreatedAtNow()); Assert.AreEqual(1, items.Length); }
public async Task WhenReminderList_IfStatusSpecified_ShouldReturnMatchingItems() { using var factory = new ReminderWebApplicationFactory(); var storage = factory .WithItems( Create.Reminder.WithStatus(ReminderItemStatus.Ready), Create.Reminder.WithStatus(ReminderItemStatus.Created)) .GetClient(); var items = await storage.FindByAsync( ReminderItemFilter.ByStatus(ReminderItemStatus.Ready) ); Assert.AreEqual(1, items.Length); }
public async Task WhenReminderCreated_ShouldReturnById() { using var factory = new ReminderWebApplicationFactory(); var storage = factory.GetClient(); var item = Create.Reminder .WithMessage("Something important") .WithContact("Contact") .Please(); await storage.AddAsync(item); var result = await storage.GetAsync(item.Id); Assert.AreEqual(item.Message, result.Message); Assert.AreEqual(item.ContactId, result.ContactId); }
public ReminderControllerTest(ReminderWebApplicationFactory <ReminderService.Startup> factory, AuthWebApplicationFactory <AuthenticationService.Startup> authFactory) { //calling Auth API to get JWT User user = new User { UserId = "Mukesh", Password = "******" }; _authclient = authFactory.CreateClient(); HttpRequestMessage request = new HttpRequestMessage(); MediaTypeFormatter formatter = new JsonMediaTypeFormatter(); // The endpoint or route of the controller action. var httpResponse = _authclient.PostAsync <User>("/api/auth/login", user, formatter); httpResponse.Wait(); // Deserialize and examine results. var stringResponse = httpResponse.Result.Content.ReadAsStringAsync(); var response = JsonConvert.DeserializeObject <TokenModel>(stringResponse.Result); _client = factory.CreateClient(); //Attaching token in request header _client.DefaultRequestHeaders.Add("Authorization", $"Bearer {response.Token}"); }
public ReminderControllerTest(ReminderWebApplicationFactory <Startup> factory) { _client = factory.CreateClient(); }