public async Task CanGetAllEmployedBaristas(GetEmployedBaristas query, Barista[] baristasToHire) { // Arrange await _fixture.ExecuteDbContextAsync(async dbContext => { // Completed orders will be automatically generated by AutoFixture dbContext.Baristas.AddRange(baristasToHire); await dbContext.SaveChangesAsync(); }); // Act var baristas = await _fixture.SendAsync(query); // Assert (baristas.Count == baristasToHire.Length && baristas.All(b => baristasToHire.Any(hiredBarista => b.Id == hiredBarista.Id && b.ShortName == hiredBarista.ShortName && b.CompletedOrders.Count == hiredBarista.CompletedOrders.Count && b.CompletedOrders.All(ov => hiredBarista.CompletedOrders.Any(o => o.Id == ov.Id && o.Status == ov.Status && o.OrderedItems.Count == ov.OrderedItems.Count))))) .ShouldBeTrue(); }
public async Task CanGetAllEmployedBaristasWhenNoneHaveBeenHired(GetEmployedBaristas query) { // Arrange // Purposefully not hiring any baristas // Act var baristas = await _fixture.SendAsync(query); // Assert (baristas.Count == 0).ShouldBeTrue(); }
public Task <IList <BaristaView> > Handle(GetEmployedBaristas request, CancellationToken cancellationToken) => _baristaViewRepository .GetAll();