public void ShouldIgnoreExcludedProperties() { var types = new InspectedPropertyTypes <AlmostEmptyClass>(); var result = types.Get(); Assert.Single(result); Assert.Contains(result, t => t == typeof(AlmostEmptyClass)); }
public void SamePropertyAsParentShouldNotCauseStackOverflow() { var types = new InspectedPropertyTypes <Human>(); var result = types.Get(); Assert.Single(result); Assert.Contains(result, t => t == typeof(Human)); }
public void ShouldHandleListGracefully() { var types = new InspectedPropertyTypes <Zoo>(); var result = types.Get(); Assert.Equal(2, result.Length); Assert.Contains(result, t => t == typeof(Zoo)); Assert.Contains(result, t => t == typeof(Animal)); }
public void ShouldHandleSingleProperty() { var types = new InspectedPropertyTypes <Vehicle>(); var result = types.Get(); Assert.Equal(2, result.Length); Assert.Contains(result, t => t == typeof(Vehicle)); Assert.Contains(result, t => t == typeof(Engine)); }