public void GivenAllClassesAreAbstract_MetricIsOne()
        {
            var component = new Component("c");

            component.Add(Class.Abstract("c1"));

            AssertAbstractness(component, 1);
        }
        public void Integration()
        {
            var component = new Component("c");

            component.Add(new Class("c1"));
            component.Add(new Class("c2"));
            component.Add(Class.Abstract("c3"));
            component.Add(new Class("c4"));

            AssertAbstractness(component, 0.333);
        }
        public void GivenMaximallyUnstableAndConcreteComponent_ReturnsZero()
        {
            var componentA = new Component("componentA");
            var classA     = Class.Abstract("a");

            componentA.Add(classA);

            var componentB = new Component("componentB");
            var classB     = new Class("b");

            classB.AddDependencyOn(classA);
            componentB.Add(classB);

            this.solution.Add(componentA);
            this.solution.Add(componentB);

            AssertMaximallyUnstable(componentB);
            AssertMaximallyConcrete(componentB);

            AssertDistanceFromMainSequence(componentA, 0);
        }
Example #4
0
        public void AbstractClass()
        {
            var cls = Class.Abstract("AbstractClass");

            Assert.IsTrue(cls.IsAbstract);
        }