public void TypeUsageProviderGetCombinedTypeUsageTest() { TypeUsage typeUsage = new TypeUsage(); var dataObject = new TypeUsageProviderTestClass(); var result = typeUsage.GetCombinedTypeUsage(dataObject.GetType(), "DataObjectForTest.Name"); Assert.Equal("String", result[0].Name); Assert.True(1 == result.Length, "Количество используемых типов."); }
public void TypeUsageProviderGetCombinedTypeUsage1Test() { var typeUsage = new TypeUsage(); var dataObject = new CombinedTypesUsageProviderTestClass(); /* * У типа CombinedTypesUsageProviderTestClass на свойство TypeUsageProviderTestClass * через TypeUsage завязано 2 типа: * "NewPlatform.Flexberry.ORM.Tests.TypeUsageProviderTestClass" и "NewPlatform.Flexberry.ORM.Tests.TypeUsageProviderTestClassChildClass". * У каждого типа есть свойство "SomeNotStoredObjectProperty". * У первого типа через TypeUsage на данное свойство повешены типы String и Int32, * у второго - ничего, поэтому берётся исходный тип свойства Object. */ var result = typeUsage.GetCombinedTypeUsage( dataObject.GetType(), Information.ExtractPropertyPath <CombinedTypesUsageProviderTestClass>(x => x.TypeUsageProviderTestClass.SomeNotStoredObjectProperty)); Assert.Equal("String", result[0].Name); Assert.Equal("Int32", result[1].Name); Assert.Equal("Object", result[2].Name); Assert.True(3 == result.Length, "Количество используемых типов."); }