public void prepend_should_return_a_property_chain() { var accessor = ReflectionHelper.GetAccessor <Target>(x => x.Name); var property = ReflectionHelper.GetProperty <HierarchicalTarget>(x => x.Child); var prependedAccessor = accessor.Prepend(property); prependedAccessor.ShouldBeOfType <PropertyChain>(); prependedAccessor.PropertyNames.ShouldHaveTheSameElementsAs("Child", "Name"); var target = new HierarchicalTarget { Child = new Target { Name = "Jeremy" } }; prependedAccessor.GetValue(target).ShouldBe("Jeremy"); }
public void prepend_should_return_a_property_chain() { var accessor = ReflectionHelper.GetAccessor<Target>(x => x.Name); var property = ReflectionHelper.GetProperty<HierarchicalTarget>(x => x.Child); var prependedAccessor = accessor.Prepend(property); prependedAccessor.ShouldBeOfType<PropertyChain>(); prependedAccessor.PropertyNames.ShouldHaveTheSameElementsAs("Child", "Name"); var target = new HierarchicalTarget{ Child = new Target{ Name = "Jeremy" } }; prependedAccessor.GetValue(target).ShouldEqual("Jeremy"); }