예제 #1
0
        public void IsOngoing_OneTimes_TrueThenFalse()
        {
            var strategy = new CountNumericLoopStrategy(1, 3, 2);

            Assert.That(strategy.IsOngoing(), Is.True);
            strategy.GetNext();
            Assert.That(strategy.IsOngoing(), Is.False);
        }
예제 #2
0
        public void Execute_ZeroCountNumeric_ExactSequence()
        {
            var args     = new CountNumericLoopStrategy(0, 1, 1);
            var resolver = new LoopSequenceResolver <decimal>(args);
            var elements = resolver.Execute();

            Assert.That(elements.Count(), Is.EqualTo(0));
            Assert.That(elements, Is.EqualTo(new List <decimal>()));
        }
예제 #3
0
        public void Run_parameters_CorrectResult(int count, decimal seed, decimal step, decimal expected)
        {
            var strategy = new CountNumericLoopStrategy(count, seed, step);
            var final    = 0m;

            while (strategy.IsOngoing())
            {
                final = strategy.GetNext();
            }
            Assert.That(final, Is.EqualTo(expected));
        }
예제 #4
0
        public void IsOngoing_NTimes_True()
        {
            var strategy = new CountNumericLoopStrategy(10, 3, 2);

            Assert.That(strategy.IsOngoing(), Is.True);
        }
예제 #5
0
        public void IsOngoing_ZeroTimes_False()
        {
            var strategy = new CountNumericLoopStrategy(0, 3, 2);

            Assert.That(strategy.IsOngoing(), Is.False);
        }
예제 #6
0
        public void GetNext_FirstTime_Seed()
        {
            var strategy = new CountNumericLoopStrategy(10, 4, 1);

            Assert.That(strategy.GetNext(), Is.EqualTo(4));
        }