public void And_Not_All_Areas_Then_Returns_Area_Names_In_Order(LocationStringBuilderService builder) { var epaoDeliveryAreas = new List <EpaoDeliveryArea> { new EpaoDeliveryArea { DeliveryAreaId = 1 }, new EpaoDeliveryArea { DeliveryAreaId = 2 }, new EpaoDeliveryArea { DeliveryAreaId = 3 } }; var expectedLocation = string.Join(", ", DeliveryAreas .Where(area => epaoDeliveryAreas.Any(deliveryArea => deliveryArea.DeliveryAreaId == area.Id)) .OrderBy(area => area.Ordering) .Select(area => area.Area)); var result = builder.BuildLocationString(epaoDeliveryAreas, DeliveryAreas); result.Should().Be(expectedLocation); }