Ejemplo n.º 1
0
        public void GivenEmptyArray()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int>();

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().BeNull();
        }
Ejemplo n.º 2
0
        public void GivenAscendingConsecutives()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                0, 1
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().Equal(sequence);
        }
Ejemplo n.º 3
0
        public void GivenArrayListWithLengthOneExpectNoSequenceFound()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                0
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            Assert.Null(actualSubSequence);
        }
Ejemplo n.º 4
0
        public void GivenNegativeConsecutiveIncreasingNumbers()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                -2, -1
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().Equal(sequence);
        }
Ejemplo n.º 5
0
        public void GivenMultipleSequencesOfSameLengthExpectFirst()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                1, 2, 0, 3, 4
            };
            var expectedSequence = new List <int> {
                1, 2
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().Equal(expectedSequence);
        }
Ejemplo n.º 6
0
        public void GivenLargerSequenceImmediatelyAfterSmallerSequenceExpectLarger()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                1, 2, 4, 5, 6
            };
            var expectedSequence = new List <int> {
                4, 5, 6
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().Equal(expectedSequence);
        }
Ejemplo n.º 7
0
        public void GivenLargerSequenceBeforeSmallSequenceExpectLarger()
        {
            // arrange
            ISequenceFinder sequenceFinder = new LongestConsecutiveAscendingSubsequenceFinder();
            var             sequence       = new List <int> {
                1, 2, 3, 0, 4, 5
            };
            var expectedSequence = new List <int> {
                1, 2, 3
            };

            // act
            List <int> actualSubSequence = sequenceFinder.GetSubSequence(sequence);

            // assert
            actualSubSequence.Should().Equal(expectedSequence);
        }