public async Task GetShowsWithCast() { // arrange var s1 = new Infrastructure.Sql.Model.Show { Id = 42, Name = "HitchHikers Guide to the Galaxy" }; var m = new Infrastructure.Sql.Model.CastMember { Id = 1, Name = "Ford Prefect", Birthdate = new DateTime(1500, 1, 1) }; s1.ShowCastMembers.Add(new ShowCastMember { Show = s1, CastMember = m }); m = new Infrastructure.Sql.Model.CastMember { Id = 2, Name = "Arthur Dent", Birthdate = new DateTime(1960, 12, 31) }; s1.ShowCastMembers.Add(new ShowCastMember { Show = s1, CastMember = m }); this.context.Shows.Add(s1); var s2 = new Infrastructure.Sql.Model.Show { Id = 12, Name = "Some other show" }; m = new Infrastructure.Sql.Model.CastMember { Id = 5, Name = "Someone", Birthdate = new DateTime(1980, 12, 31) }; s2.ShowCastMembers.Add(new ShowCastMember { Show = s2, CastMember = m }); this.context.Shows.Add(s2); this.context.SaveChanges(); // act var shows = await this.showService.GetShowsWithCast(0, 10, CancellationToken.None).ConfigureAwait(false); // assert shows.Should().NotBeNull(); shows.Count.Should().Be(2, because: "I added 2 shows."); shows.Where(s => s.CastMembers.Any()).Count().Should().Be(2, because: "Both shows have cast."); }
public async Task TestItemCount() { // arrange var s1 = new Infrastructure.Sql.Model.Show { Id = 42, Name = "HitchHikers Guide to the Galaxy" }; var m = new Infrastructure.Sql.Model.CastMember { Id = 1, Name = "Ford Prefect", Birthdate = new DateTime(1500, 1, 1) }; s1.ShowCastMembers.Add(new ShowCastMember { Show = s1, CastMember = m }); m = new Infrastructure.Sql.Model.CastMember { Id = 2, Name = "Arthur Dent", Birthdate = new DateTime(1960, 12, 31) }; s1.ShowCastMembers.Add(new ShowCastMember { Show = s1, CastMember = m }); this.context.Shows.Add(s1); var s2 = new Infrastructure.Sql.Model.Show { Id = 12, Name = "Some other show" }; m = new Infrastructure.Sql.Model.CastMember { Id = 5, Name = "Someone", Birthdate = new DateTime(1980, 12, 31) }; s2.ShowCastMembers.Add(new ShowCastMember { Show = s2, CastMember = m }); this.context.Shows.Add(s2); this.context.SaveChanges(); // act var counts = await this.showService.GetCounts().ConfigureAwait(false); // assert counts.ShowCount.Should().Be(2, because: "I added 2."); counts.MemberCount.Should().Be(3, because: "I added 3."); }