Ejemplo n.º 1
0
        public void ArgumentsOutOfRange_AllReturned()
        {
            //Arrange
            int[] elements = new int[] { 1, -5, 24, 561, -300, 15, 36, 82, 4, 50 };
            BinarySearchTreeSet <int> bst = new BinarySearchTreeSet <int>();

            foreach (int el in elements)
            {
                bst.Insert(el);
            }

            //Act
            IEnumerable <int> values = bst.Values(-1000, 1000);

            //Assert
            int[] expectedValues = elements.OrderBy(x => x).ToArray();
            int[] valuesArray    = values.ToArray();
            Assert.True(expectedValues.SequenceEqual(valuesArray));
        }
Ejemplo n.º 2
0
        public void NoDuplicates()
        {
            //Arrange
            int duplicateValue = 24;

            int[] elements = new int[] { 1, -5, duplicateValue, 561, -300, 15, 36, duplicateValue, 82, 4, 50 };
            BinarySearchTreeSet <int> bst = new BinarySearchTreeSet <int>();

            //Act
            foreach (int el in elements)
            {
                bst.Insert(el);
            }

            //Assert
            var allValues      = bst.Values();
            var matchingValues = allValues.Where(x => x == duplicateValue);

            Assert.Single(matchingValues);
        }
Ejemplo n.º 3
0
        public void ArgumentsInRange_RangeReturned()
        {
            //Arrange
            int lo = 1;
            int hi = 100;

            int[] elements = new int[] { 1, -5, 24, 561, -300, 15, 36, 82, 4, 50 };
            BinarySearchTreeSet <int> bst = new BinarySearchTreeSet <int>();

            foreach (int el in elements)
            {
                bst.Insert(el);
            }

            //Act
            IEnumerable <int> values = bst.Values(lo, hi);

            //Assert
            int[] expectedValues = elements.Where(x => x >= lo && x <= hi).OrderBy(x => x).ToArray();
            int[] valuesArray    = values.ToArray();
            Assert.True(expectedValues.SequenceEqual(valuesArray));
        }