public void SerializeThrowsWhenBufferIsWrongSize(long badSize) { Int64Serializer serializer = new Int64Serializer(); Assert.ThrowsException <ArgumentException>(() => { serializer.Serialize(0, new byte[badSize]); }); }
public void SerializeThrowsWhenBufferIsNull() { Int64Serializer serializer = new Int64Serializer(); Assert.ThrowsException <ArgumentNullException>(() => { serializer.Serialize(0, null); }); }
public void SerializeAndDeserializeToTheSameObject(long originalValue) { Serializer <long> serializer = new Int64Serializer(); byte[] serializedValue = serializer.Serialize(originalValue); long deserializedValue = serializer.Deserialize(serializedValue); Assert.Equal(originalValue, deserializedValue); }
public void SerializeThenDeserializeWorks(bool littleEndian) { long[] numbers = new long[] { long.MinValue, long.MinValue + 1, long.MinValue + 2, long.MinValue + 3, long.MinValue / 2, -65537, -65536, -65535, -65534, -257, -256, -255, -254 - 126, -127, -128 - 5, -4, -3, -2, -1, 0, long.MaxValue, long.MaxValue - 1, long.MaxValue - 2, long.MaxValue - 3, long.MaxValue / 2, 65537, 65536, 65535, 65534, 257, 256, 255, 254, 126, 127, 128, 5, 4, 3, 2, 1, }; Int64Serializer serializer = new Int64Serializer(littleEndian); for (long i = 0; i < numbers.Length; i++) { byte[] buffer = new byte[serializer.DataSize]; serializer.Serialize(numbers[i], buffer); Assert.AreEqual(numbers[i], serializer.Deserialize(buffer)); } }
public WKTSerializers(ISerializerStorage serializerStorage, IValueTypeObjectsDictionary objectCache) { Boolean = new BooleanSerializer(serializerStorage); Byte = new ByteSerializer(serializerStorage); Char = new CharSerializer(serializerStorage); DateTime = new DateTimeSerializer(serializerStorage); DateTimeOffset = new DateTimeOffsetSerializer(serializerStorage); Decimal = new DecimalSerializer(serializerStorage); Double = new DoubleSerializer(serializerStorage); Guid = new GuidSerializer(serializerStorage); Int16 = new Int16Serializer(serializerStorage); Int32 = new Int32Serializer(serializerStorage); Int64 = new Int64Serializer(serializerStorage); Object = new ObjectSerializer(serializerStorage); SByte = new SByteSerializer(serializerStorage); Single = new SingleSerializer(serializerStorage); String = new StringSerializer(serializerStorage, objectCache); TimeSpan = new TimeSpanSerializer(serializerStorage); UInt16 = new UInt16Serializer(serializerStorage); UInt32 = new UInt32Serializer(serializerStorage); }
public void ShouldThrowIfDeserializingLessThanEightBytes(byte[] data) { Serializer <long> serializer = new Int64Serializer(); Assert.Throws <ArgumentOutOfRangeException>(() => serializer.Deserialize(data)); }
public void ShouldThrowIfDeserializingNull() { Serializer <long> serializer = new Int64Serializer(); Assert.Throws <ArgumentNullException>(() => serializer.Deserialize(null)); }
public void ConstructorWorks(bool littleEndian) { Int64Serializer serializer = new Int64Serializer(littleEndian); Assert.AreEqual(littleEndian, serializer.StoreAsLittleEndian); }