public void Should_order_types() { var cat = Mock.Of <ISdkCategorizer>( c => c.ModelTypes == new[] { typeof(A), typeof(B), typeof(C), typeof(D), typeof(DReference), typeof(E), typeof(EReference), typeof(FType), typeof(FDescriptor) }); var mds = new ModelDependencySort(cat); var sortedResult = mds.OrderedModels().ToList(); foreach (var type in sortedResult) { Console.WriteLine(type.FullName); } Assert.IsTrue(sortedResult.IndexOf(typeof(A)) > sortedResult.IndexOf(typeof(B))); Assert.IsTrue(sortedResult.IndexOf(typeof(A)) > sortedResult.IndexOf(typeof(C))); Assert.IsTrue(sortedResult.IndexOf(typeof(A)) > sortedResult.IndexOf(typeof(FDescriptor))); Assert.IsTrue(sortedResult.IndexOf(typeof(A)) > sortedResult.IndexOf(typeof(FType))); Assert.IsTrue(sortedResult.IndexOf(typeof(B)) > sortedResult.IndexOf(typeof(DReference))); Assert.IsTrue(sortedResult.IndexOf(typeof(C)) > sortedResult.IndexOf(typeof(EReference))); Assert.IsTrue(sortedResult.IndexOf(typeof(DReference)) > sortedResult.IndexOf(typeof(D))); Assert.IsTrue(sortedResult.IndexOf(typeof(EReference)) > sortedResult.IndexOf(typeof(E))); Assert.IsTrue(sortedResult.IndexOf(typeof(FDescriptor)) > sortedResult.IndexOf(typeof(FType))); }
public void Should_order_types_from_Sdk() { var cat = new SdkCategorizer(SdkLibraryFactory); var mds = new ModelDependencySort(cat); var sortedResult = mds.OrderedModels().ToArray(); foreach (var type in sortedResult) { Console.WriteLine(type.FullName); } }
public void Should_resolve_longer_reference() { var cat = Mock.Of <ISdkCategorizer>( c => c.ModelTypes == new[] { typeof(Alpha), typeof(BravoCharlieType), typeof(AlphaBravoCharlieType) }); var mds = new ModelDependencySort(cat); var sortedResult = mds.OrderedModels().ToList(); foreach (var type in sortedResult) { Console.WriteLine(type.FullName); } Assert.IsTrue(sortedResult.IndexOf(typeof(Alpha)) > sortedResult.IndexOf(typeof(BravoCharlieType))); Assert.IsTrue(sortedResult.IndexOf(typeof(Alpha)) > sortedResult.IndexOf(typeof(AlphaBravoCharlieType))); }