Ejemplo n.º 1
0
        public void WriteSingle(float val)
        {
            CDRWriter writer = new CDRWriter();

            writer.WriteSingle(val);
            CDRReader reader = new CDRReader(writer.GetBuffer().ToArray());

            Assert.Equal(val, reader.ReadSingle());
        }
Ejemplo n.º 2
0
        public void BasicTypesAlignment()
        {
            var buf = new byte[] {
                0x00, 0x00, 0x00, 0x00,                          // Header
                0xFF,                                            // 1 byte to force padding
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,        // padding for 8-bytes alignment
                0x0A, 0x0B, 0x0C, 0X0D, 0x0E, 0x0F, 0x01, 0X02,  // uint64
                0xFF,                                            // 1 byte to force padding
                0x00, 0x00, 0x00,                                // padding for 4-bytes alignment
                0x0A, 0x0B, 0x0C, 0X0D,                          // uint32
                0xFF,                                            // 1 byte to force padding
                0x00,                                            // padding for 2-bytes alignment
                0x0A, 0x0B,                                      // uint16
                0xFF, 0xFF, 0xFF, 0xFF, 0xFF,                    // 5 bytes to force padding
                0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,        // padding for 8-bytes alignment
                0x3F, 0x84, 0x7A, 0xE1, 0x47, 0xAE, 0x14, 0x7B,  // double
                0xFF,                                            // 1 byte to force padding
                0x00, 0x00, 0x00,                                // padding for 4-bytes alignment
                0x3C, 0x23, 0xD7, 0x0A,                          // float
                0xFF,                                            // 1 byte to force padding
                0x00, 0x00, 0x00,                                // padding for 4-bytes alignment
                0x00, 0x00, 0x00, 0x0D,                          // "Hello World!"
                0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20,
                0x57, 0x6f, 0x72, 0x6c, 0x64, 0x21, 0x00
            };

            CDRReader reader = new CDRReader(buf);

            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0x0A0B0C0D0E0F0102UL, reader.ReadUInt64());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0x0A0B0C0DU, reader.ReadUInt32());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0x0A0B, reader.ReadUInt16());

            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0.01, reader.ReadDouble());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal(0.01f, reader.ReadSingle());
            Assert.Equal(0xFF, reader.ReadByte());
            Assert.Equal("Hello World!", reader.ReadString());
        }
Ejemplo n.º 3
0
        public void ReadSingle(float expected, byte[] buf)
        {
            CDRReader reader = new CDRReader(buf);

            Assert.Equal(expected, reader.ReadSingle());
        }