public void WriteValues() { MemoryStream ms = new MemoryStream(); CborDataWriter writer = new CborDataWriter(ms); writer.WriteStartArray(); writer.WriteValue(long.MaxValue); writer.WriteValue(ulong.MaxValue); writer.WriteValue(int.MaxValue); writer.WriteValue(uint.MaxValue); writer.WriteValue(sbyte.MaxValue); writer.WriteValue(byte.MaxValue); writer.WriteValue('a'); //writer.WriteValue(decimal.MaxValue); writer.WriteValue(double.MaxValue); // [ 9223372036854775807, 18446744073709551615, 2147483647, 4294967295, 127, 255, "a", 1.7976931348623157E+308, 3.40282347E+38, true, h'0001020304'] writer.WriteValue(float.MaxValue); writer.WriteValue(true); writer.WriteValue(new byte[] { 0, 1, 2, 3, 4 }); //writer.WriteValue(new DateTimeOffset(2000, 12, 29, 12, 30, 0, TimeSpan.Zero)); //writer.WriteValue(new DateTime(2000, 12, 29, 12, 30, 0, DateTimeKind.Utc)); writer.WriteEnd(); string cbor = BytesToHex(ms.ToArray()); Assert.AreEqual("8B-1B-7F-FF-FF-FF-FF-FF-FF-FF-1B-FF-FF-FF-FF-FF-FF-FF-FF-1A-7F-FF-FF-FF-1A-FF-FF-FF-FF-18-7F-18-FF-61-61-FB-7F-EF-FF-FF-FF-FF-FF-FF-FA-7F-7F-FF-FF-F5-45-00-01-02-03-04", cbor); }
public void WriteEndOnProperty() { MemoryStream ms = new MemoryStream(); CborDataWriter writer = new CborDataWriter(ms); writer.WriteStartObject(); writer.WritePropertyName("Blah"); writer.WriteEnd(); Assert.AreEqual("0B-00-00-00-0A-42-6C-61-68-00-00", (BitConverter.ToString(ms.ToArray()))); }
public void WriteDouble() { MemoryStream ms = new MemoryStream(); CborDataWriter writer = new CborDataWriter(ms); writer.WriteStartArray(); writer.WriteValue(99.99d); writer.WriteEnd(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("81-FB-40-58-FF-5C-28-F5-C2-8F", bson); }
public void WriteGuid() { Guid g = new Guid("D821EED7-4B5C-43C9-8AC2-6928E579B705"); MemoryStream ms = new MemoryStream(); CborDataWriter writer = new CborDataWriter(ms); writer.WriteStartArray(); writer.WriteValue(g); writer.WriteEnd(); string bson = BytesToHex(ms.ToArray()); Assert.AreEqual("81-D8-25-50-D7-EE-21-D8-5C-4B-C9-43-8A-C2-69-28-E5-79-B7-05", bson); }