public void ShouldRetrieveMultipleResults() { var args = new SearchParentsAndChildsParameters { ParentName = "Test", Active = true }; var results = new ReaderStoredProcedure <SearchParentsAndChildsParameters, SingleKeyParentTable, SingleKeyChildTable>(Fixture.Connector).Execute(args); results.Should().NotBeNull(); results.Item1.Should().NotBeNull(); results.Item1.Should().HaveCount(2); results.Item2.Should().NotBeNull(); results.Item2.Should().HaveCount(4); var activeParentEntity = Fixture.CreateNewActiveEntity() as SingleKeyParentTable; foreach (var entity in results.Item1) { entity.Name.Should().StartWith("Test Parent"); entity.Should().BeEquivalentTo(activeParentEntity, options => options.Excluding(o => o.Name) .Excluding(o => o.Id) .Excluding(o => o.Childs)); } var activeChildEntity = Fixture.CreateActiveChildEntity() as SingleKeyChildTable; foreach (var entity in results.Item2) { entity.Name.Should().StartWith("Test Child"); entity.Should().BeEquivalentTo(activeChildEntity, options => options.Excluding(o => o.Name) .Excluding(o => o.Id) .Excluding(o => o.ParentId)); } }