public void Build_WithNameLambdaAndParentLambda_ReturnsExpectedSpecElement() { // Arrange var unbuilt = new ComponentTypeAndFieldUnbuiltSearchSpecElement <Employee>(); unbuilt.SetNameGetter(emp => new List <string> { emp.Name }); unbuilt.SetParentNameGetter(emp => new List <string> { emp.EmployedIn.Name }); var department = new Department { Name = "Hakkespettene" }; var employee = new Employee { Name = "Dole Duck", Age = 12, EmployedIn = department }; // Act var spec = unbuilt.Build(employee); // Assert Assert.True(spec is ComponentTypeAndFieldSearchSpecElement); var cfe = (ComponentTypeAndFieldSearchSpecElement)spec; Assert.Equal("Dole Duck", cfe.NameList.Single()); Assert.Equal("Hakkespettene", cfe.ParentNameList.Single()); }