internal static void WriteSpecialValue_SingleValue_HappyPath(CborSpecialValue input, string hexExpectedEncoding)
 {
     byte[] expectedEncoding = hexExpectedEncoding.HexToByteArray();
     using var writer = new CborWriter();
     writer.WriteSpecialValue(input);
     AssertHelper.HexEqual(expectedEncoding, writer.ToArray());
 }
Exemple #2
0
        internal static void ReadSpecialValue_SingleValue_HappyPath(CborSpecialValue expectedResult, string hexEncoding)
        {
            byte[]           encoding     = hexEncoding.HexToByteArray();
            var              reader       = new CborReader(encoding);
            CborSpecialValue actualResult = reader.ReadSpecialValue();

            Assert.Equal(expectedResult, actualResult);
            Assert.Equal(CborReaderState.Finished, reader.Peek());
        }
Exemple #3
0
        public void WriteSpecialValue(CborSpecialValue value)
        {
            if ((byte)value < 24)
            {
                EnsureWriteCapacity(1);
                WriteInitialByte(new CborInitialByte(CborMajorType.Special, (CborAdditionalInfo)value));
            }
            else
            {
                EnsureWriteCapacity(2);
                WriteInitialByte(new CborInitialByte(CborMajorType.Special, CborAdditionalInfo.Additional8BitData));
                _buffer[_offset++] = (byte)value;
            }

            AdvanceDataItemCounters();
        }