//[Fact] public void CheckDesignConstraintsOfQueryMyDesign() { var sut = new TypeDependencyStructureMatrix(new[] { typeof(CecilExtensions).Assembly }); var problematicTypes = from t in sut.DefinedMembers let distanceFromMainSequence = sut.GetDistanceFromMainSequence(t) where distanceFromMainSequence > 0.5 && !t.Namespace.StartsWith("System.Diagnostics.Contracts") && !t.Namespace.Contains("JetBrains") orderby distanceFromMainSequence descending select new {t, Pain = sut.GetAmountOfPain(t), Uselesness = sut.GetUselesness(t), I = sut.GetInstability(t), A = sut.GetAbstractness(t)}; problematicTypes.Each(Console.WriteLine); Assert.Empty(problematicTypes); }
public void DsmCanCalculateAmountOfPainAndUselesnessOfAUselessType() { // Arrange var sut = new TypeDependencyStructureMatrix(new[] { typeof(A.A1).Assembly }); // Act double pain = sut.GetAmountOfPain<UselessType>(); double uselessNess = sut.GetUselesness<UselessType>(); // Assert Assert.Equal(0, pain); Assert.Equal(1, uselessNess); }