public void GivenMessageContext_SetupTwice_ResetsProperties()
        {
            var message = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).Build();
            var uut     = new FixMessageContext();

            uut.CreatedParentTypes.Add(1);
            uut.RepeatingGroupCounters.Add(1, new FixMessageContext.RepeatingCounter(1));
            var result = uut.Setup(message.AsSpan(), MessageEncoding.JIS).Setup(message.AsSpan(), MessageEncoding.EUC);

            Assert.NotEqual(-1, result.ChecksumTagStartIndex);
            Assert.NotEqual(-1, result.LengthTagStartIndex);
            Assert.NotEqual(-1, result.MessageTypeTagStartIndex);
            Assert.Equal(MessageEncoding.EUC, result.EncodedFields);
            Assert.Empty(result.RepeatingGroupCounters);
            Assert.Empty(result.CreatedParentTypes);
        }
Ejemplo n.º 2
0
        public void GivenIncorrectLength_Validate_ReturnsFalse()
        {
            var message    = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).AddLength("023").Build();
            var uut        = new LengthValidator(IntegerToFixConverter.Instance);
            var msgContext = new FixMessageContext().Setup(message);
            var result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.False(result);
        }
Ejemplo n.º 3
0
        public void GivenNoChecksum_Validate_ReturnsFalse()
        {
            var message    = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).AddChecksum("3").Build();
            var uut        = new ChecksumValidator(IntegerToFixConverter.Instance);
            var msgContext = new FixMessageContext().Setup(message);
            var result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.False(result);
        }
Ejemplo n.º 4
0
        public void GivenCorrectLength_Validate_ReturnsTrue(string input)
        {
            byte[] message    = new TestFixMessageBuilder(input).Build();
            var    uut        = new LengthValidator(IntegerToFixConverter.Instance);
            var    msgContext = new FixMessageContext().Setup(message);
            var    result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.True(result);
        }
Ejemplo n.º 5
0
        public void GivenFix5WithNoSenderCompId_Validate_ReturnsFalse()
        {
            var message    = new TestFixMessageBuilder("35=A|56=CLIENT|34=177|52=20090107-18:15:16|98=0|108=30|").AddBeginString(SupportedFixVersion.Fix50).Build();
            var uut        = new FixVersionValidator();
            var msgContext = new FixMessageContext().Setup(message);
            var result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.False(result);
        }
Ejemplo n.º 6
0
        public void GivenNoBeginString_Validate_ReturnsFalse()
        {
            var message    = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).AddBeginString(string.Empty).Build();
            var uut        = new FixVersionValidator();
            var msgContext = new FixMessageContext().Setup(message);
            var result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.False(result);
        }
Ejemplo n.º 7
0
        public void GivenValidFixVersion_Validate_ReturnsTrue(string input)
        {
            byte[] message    = new TestFixMessageBuilder(input).Build();
            var    uut        = new FixVersionValidator();
            var    msgContext = new FixMessageContext().Setup(message);
            var    result     = uut.IsValid(message.AsSpan(), msgContext);

            Assert.True(result);
        }
        public void GivenSampleMessage_Setup_ReturnsMessageContext()
        {
            var message = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).Build();
            var uut     = new FixMessageContext();
            var result  = uut.Setup(message.AsSpan());

            Assert.NotEqual(-1, result.ChecksumTagStartIndex);
            Assert.NotEqual(-1, result.LengthTagStartIndex);
            Assert.NotEqual(-1, result.MessageTypeTagStartIndex);
        }
        public void GivenEncoding_Setup_ReturnsMessageContext()
        {
            var message = new TestFixMessageBuilder(TestFixMessageBuilder.DefaultBody).Build();
            var uut     = new FixMessageContext();
            var result  = uut.Setup(message.AsSpan(), MessageEncoding.JIS);

            Assert.NotEqual(-1, result.ChecksumTagStartIndex);
            Assert.NotEqual(-1, result.LengthTagStartIndex);
            Assert.NotEqual(-1, result.MessageTypeTagStartIndex);
            Assert.Equal(MessageEncoding.JIS, result.EncodedFields);
        }
Ejemplo n.º 10
0
        public void GivenCorrectChecksum_Validate_ReturnsTrue(string input)
        {
            byte[] message    = new TestFixMessageBuilder(input).Build(out byte checksumValue, out int checksumStart);
            var    uut        = new ChecksumValidator(IntegerToFixConverter.Instance);
            var    msgContext = new FixMessageContext()
            {
                ChecksumValue = checksumValue, ChecksumTagStartIndex = checksumStart
            };
            var result = uut.IsValid(message.AsSpan(), msgContext);

            Assert.True(result);
        }