Example #1
0
        public void Evaluate()
        {
            ParserContext    pc = new ParserContext(ParserContext.DefaultBufferSize);
            FormatterContext fc = new FormatterContext(FormatterContext.DefaultBufferSize);

            MtiEqualsExpression ee = new MtiEqualsExpression(200, new MessageExpression());

            // Passing null message (as parameter and in the contexts).
            try {
                ee.EvaluateParse(ref pc);
                Assert.Fail();
            }
            catch (ExpressionEvaluationException) {
            }
            try {
                ee.EvaluateFormat(new StringField(3, "000000"), ref fc);
                Assert.Fail();
            }
            catch (ExpressionEvaluationException) {
            }

            // Evaluate with incorrect message type.
            Message msg = MessagesProvider.GetMessage();

            pc.CurrentMessage = msg;
            try {
                ee.EvaluateParse(ref pc);
                Assert.Fail();
            }
            catch (ExpressionEvaluationException) {
            }
            fc.CurrentMessage = msg;
            try {
                ee.EvaluateFormat(new StringField(3, "000000"), ref fc);
                Assert.Fail();
            }
            catch (ExpressionEvaluationException) {
            }

            // Evaluate against an ISO 8583 message.
            Iso8583Message isoMsg = MessagesProvider.GetIso8583Message();

            pc.CurrentMessage = isoMsg;
            Assert.IsTrue(ee.EvaluateParse(ref pc));
            fc.CurrentMessage = isoMsg;
            Assert.IsTrue(ee.EvaluateFormat(new StringField(3, "000000"), ref fc));
            isoMsg            = MessagesProvider.GetAnotherIso8583Message();
            pc.CurrentMessage = isoMsg;
            Assert.IsFalse(ee.EvaluateParse(ref pc));
            fc.CurrentMessage = isoMsg;
            Assert.IsFalse(ee.EvaluateFormat(new StringField(3, "000000"), ref fc));
        }
Example #2
0
        public void InstantiationAndProperties()
        {
            MtiEqualsExpression ee = new MtiEqualsExpression();

            Assert.IsTrue(ee.Mti == -1);
            Assert.IsNull(ee.MessageExpression);

            MessageExpression me = new MessageExpression();

            ee = new MtiEqualsExpression(200, me);

            Assert.IsTrue(ee.Mti == 200);
            Assert.IsTrue(ee.MessageExpression == me);

            ee.Mti = 210;
            ee.MessageExpression = null;

            Assert.IsTrue(ee.Mti == 210);
            Assert.IsNull(ee.MessageExpression);
        }