public void WhenCustomSeparatorIsNullThenConcat()
 {
     var level0 = new PropertyPath(null, ForClass<InheritedEntity>.Property(p => p.Component));
     var level1 = new PropertyPath(level0, ForClass<MyComponent>.Property(p => p.Component1));
     var path = new PropertyPath(level1, ForClass<MyComponent1>.Property(p => p.Something));
     path.ToColumnName(null).Should().Be("ComponentComponent1Something");
 }
 public void ToColumnNameWithCustomSeparator()
 {
     var level0 = new PropertyPath(null, ForClass<InheritedEntity>.Property(p => p.Component));
     var level1 = new PropertyPath(level0, ForClass<MyComponent>.Property(p => p.Component1));
     var path = new PropertyPath(level1, ForClass<MyComponent1>.Property(p => p.Something));
     path.ToColumnName("_").Should().Be("Component_Component1_Something");
 }
		protected override string GetColumnName(PropertyPath subject)
		{
			return inflector.Singularize(subject.ToColumnName());
		}
		protected override string GetColumnName(PropertyPath subject)
		{
			return subject.ToColumnName() + "Element";
		}
        public void ToColumnNameLevel2()
        {
            var myClassComponent1Path = new PropertyPath(null, myClassComponent1);
            var myClassComponent2Path = new PropertyPath(null, myClassComponent2);
            var myClassComponent1ComponentPath = new PropertyPath(myClassComponent1Path, myComponentComponent);
            var myClassComponent2ComponentPath = new PropertyPath(myClassComponent2Path, myComponentComponent);

            myClassComponent1ComponentPath.ToColumnName().Should().Be("Component1Component");
            myClassComponent2ComponentPath.ToColumnName().Should().Be("Component2Component");
        }
        public void ToColumnNameLevel1()
        {
            var myClassComponent1Path = new PropertyPath(null, myClassComponent1);
            var myClassComponent2Path = new PropertyPath(null, myClassComponent2);

            myClassComponent1Path.ToColumnName().Should().Be("Component1");
            myClassComponent2Path.ToColumnName().Should().Be("Component2");
        }