コード例 #1
0
ファイル: FlyweightTests.cs プロジェクト: yksi7417/Aeron.NET
        public void ShouldWriteAndReadMultipleFramesCorrectly()
        {
            encodeHeader.Wrap(aBuff);

            encodeHeader.Version(1);
            encodeHeader.Flags(0);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_DATA);
            encodeHeader.FrameLength(8);

            encodeHeader.Wrap(aBuff, 8, aBuff.Capacity - 8);
            encodeHeader.Version(2);
            encodeHeader.Flags(0x01);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_SM);
            encodeHeader.FrameLength(8);

            decodeHeader.Wrap(aBuff);
            Assert.That(decodeHeader.Version(), Is.EqualTo((short)1));
            Assert.That(decodeHeader.Flags(), Is.EqualTo((short)0));
            Assert.That(decodeHeader.HeaderType(), Is.EqualTo(HeaderFlyweight.HDR_TYPE_DATA));
            Assert.That(decodeHeader.FrameLength(), Is.EqualTo(8));

            decodeHeader.Wrap(aBuff, 8, aBuff.Capacity - 8);
            Assert.That(decodeHeader.Version(), Is.EqualTo((short)2));
            Assert.That(decodeHeader.Flags(), Is.EqualTo((short)0x01));
            Assert.That(decodeHeader.HeaderType(), Is.EqualTo(HeaderFlyweight.HDR_TYPE_SM));
            Assert.That(decodeHeader.FrameLength(), Is.EqualTo(8));
        }
コード例 #2
0
        public void ShouldWriteAndReadMultipleFramesCorrectly()
        {
            encodeHeader.Wrap(aBuff);

            encodeHeader.Version(1);
            encodeHeader.Flags(0);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_DATA);
            encodeHeader.FrameLength(8);

            encodeHeader.Wrap(aBuff, 8, aBuff.Capacity - 8);
            encodeHeader.Version(2);
            encodeHeader.Flags(0x01);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_SM);
            encodeHeader.FrameLength(8);

            decodeHeader.Wrap(aBuff);
            Assert.AreEqual((short)1, decodeHeader.Version());
            Assert.AreEqual((short)0, decodeHeader.Flags());
            Assert.AreEqual(HeaderFlyweight.HDR_TYPE_DATA, decodeHeader.HeaderType());
            Assert.AreEqual(8, decodeHeader.FrameLength());

            decodeHeader.Wrap(aBuff, 8, aBuff.Capacity - 8);
            Assert.AreEqual((short)2, decodeHeader.Version());
            Assert.AreEqual((short)0x01, decodeHeader.Flags());
            Assert.AreEqual(HeaderFlyweight.HDR_TYPE_SM, decodeHeader.HeaderType());
            Assert.AreEqual(8, decodeHeader.FrameLength());
        }
コード例 #3
0
ファイル: FlyweightTests.cs プロジェクト: yksi7417/Aeron.NET
        public void ShouldWriteCorrectValuesForGenericHeaderFields()
        {
            encodeHeader.Wrap(aBuff);

            encodeHeader.Version((short)1);
            encodeHeader.Flags(DataHeaderFlyweight.BEGIN_AND_END_FLAGS);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_DATA);
            encodeHeader.FrameLength(8);

            // little endian
            Assert.That(buffer[0], Is.EqualTo((byte)0x08));
            Assert.That(buffer[1], Is.EqualTo((byte)0x00));
            Assert.That(buffer[2], Is.EqualTo((byte)0x00));
            Assert.That(buffer[3], Is.EqualTo((byte)0x00));
            Assert.That(buffer[4], Is.EqualTo((byte)0x01));
            Assert.That(buffer[5], Is.EqualTo(unchecked ((byte)0xC0)));
            Assert.That(buffer[6], Is.EqualTo((byte)HeaderFlyweight.HDR_TYPE_DATA));
            Assert.That(buffer[7], Is.EqualTo((byte)0x00));
        }
コード例 #4
0
        public void ShouldWriteCorrectValuesForGenericHeaderFields()
        {
            encodeHeader.Wrap(aBuff);

            encodeHeader.Version((short)1);
            encodeHeader.Flags(DataHeaderFlyweight.BEGIN_AND_END_FLAGS);
            encodeHeader.HeaderType(HeaderFlyweight.HDR_TYPE_DATA);
            encodeHeader.FrameLength(8);

            // little endian
            Assert.AreEqual((byte)0x08, buffer[0]);
            Assert.AreEqual((byte)0x00, buffer[1]);
            Assert.AreEqual((byte)0x00, buffer[2]);
            Assert.AreEqual((byte)0x00, buffer[3]);
            Assert.AreEqual((byte)0x01, buffer[4]);
            Assert.AreEqual((byte)0xC0, buffer[5]);
            Assert.AreEqual((byte)HeaderFlyweight.HDR_TYPE_DATA, buffer[6]);
            Assert.AreEqual((byte)0x00, buffer[7]);
        }