public void Test_Depending_On_Self_Throws()
        {
            var tracker = new CircularDependencyTracker <int>();

            // Act
            tracker.Add(0, 0);
        }
        public void Test_Adding_The_Same_Dependency_Twice_Does_Not_Throw()
        {
            var tracker = new CircularDependencyTracker <int>();

            tracker.Add(0, 9);
            tracker.Add(1, 9);
        }
        public void Test_Adding_To_Double_Dependency_Does_Not_Throw()
        {
            var tracker = new CircularDependencyTracker <int>();

            tracker.Add(0, 9);
            tracker.Add(1, 9);
            tracker.Add(9, 8);
        }
        public void Test_adding_binary_circle_Throws()
        {
            var tracker = new CircularDependencyTracker <int>();

            tracker.Add(0, 1);

            // Act
            tracker.Add(1, 0);
        }
        public void Test_Adding_Does_Not_Throw()
        {
            var tracker = new CircularDependencyTracker <int>();

            tracker.Add(0);
        }