private LineProcessInstructions GetInstructions(string variableType, string stats, string period)
        {
            var instructions = new LineProcessInstructions();

            instructions.AddProcessCommand(string.Format("{0}\t{1}\t{2}\t", variableType, stats, period));
            return(instructions);
        }
示例#2
0
        public void InvalidPeriodFormatThrowsException()
        {
            //setup
            var line1 = string.Format("{0}\t{1}\t{2}", "CashPrem", "Average", "somethingweird");
            var sut   = new LineProcessInstructions();

            //execute
            sut.AddProcessCommand(line1);
        }
示例#3
0
        public void ExceptionThrownIfUnconfiguredVariableType()
        {
            //setup
            var line = string.Format("{0}\t{1}\t{2}", "CashPrem", "Average", "MinValue");
            var sut  = new LineProcessInstructions();

            sut.AddProcessCommand(line);

            //execute
            var val = sut.ExtractPeriodValueOfInterest(GetTestValues(), "x");
        }
示例#4
0
        public void MinPeriodValueIsCorrectlyParsed()
        {
            //setup
            var line = string.Format("{0}\t{1}\t{2}", "CashPrem", "Average", "MinValue");
            var sut  = new LineProcessInstructions();

            //execute
            sut.AddProcessCommand(line);

            //assert
            Assert.AreEqual(1, sut.Processors.Count);
            Assert.AreEqual(periodChoice.MinPeriodValue, sut.Processors["CashPrem_MinPeriodValue_Average"].Period);
        }
示例#5
0
        public void LastValueIsReturnedAsRelevantValue()
        {
            //setup
            var line = string.Format("{0}\t{1}\t{2}", "CashPrem", "Average", "LastValue");
            var sut  = new LineProcessInstructions();

            sut.AddProcessCommand(line);

            //execute
            var val = sut.ExtractPeriodValueOfInterest(GetTestValues(), "CashPrem");

            //assert
            Assert.AreEqual(200, val.First().Value);
        }
示例#6
0
        public void MultipleCalculationsOnSameVariableCorrectlyLoad()
        {
            //setup
            var line1 = string.Format("{0}\t{1}\t{2}", "CashPrem", "Average", "MinValue");
            var line2 = string.Format("{0}\t{1}\t{2}", "CashPrem", "MaxValue", "MinValue");
            var sut   = new LineProcessInstructions();


            //execute
            sut.AddProcessCommand(line1);
            sut.AddProcessCommand(line2);

            //assert
            Assert.AreEqual(2, sut.Processors.Count);
            Assert.IsTrue(sut.Processors.ContainsKey("CashPrem_MinPeriodValue_MaxValue"));
            Assert.IsTrue(sut.Processors.ContainsKey("CashPrem_MinPeriodValue_Average"));
        }