コード例 #1
0
        public void Deserialize_DBNull()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.DBNull;
            var data      = new ArraySegment <byte>(new byte[] { });

            // Act
            var result = formatter.Deserialize <DBNull>(data, flags);

            // Assert
            Assert.Equal(DBNull.Value, result);
        }
コード例 #2
0
        public void Deserialize_UInt64()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.UInt64;
            var value     = (ulong)RandomHelper.NextInt(g_random, 100, 23424);
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <ulong>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #3
0
        public void Deserialize_Single()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Single;
            var value     = (float)(RandomHelper.NextInt(g_random, 100, 234234) * 3.0323);
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <float>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #4
0
        public void Deserialize_Int16()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Int16;
            var value     = (short)RandomHelper.NextInt(g_random, 0, 32032);
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <short>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #5
0
        public void Deserialize_Double()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Double;
            var value     = g_random.NextDouble();
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <double>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #6
0
        public void Deserialize_Decimal()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Decimal;
            var value     = RandomHelper.NextInt(g_random, -10000, 10000) / 100M;
            var data      = new ArraySegment <byte>(DecimalHelper.GetBytes(value));

            // Act
            var result = formatter.Deserialize <decimal>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #7
0
        public void Deserialize_Byte()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Byte;
            var value     = (byte)RandomHelper.NextInt(g_random, 0, 100);
            var data      = new ArraySegment <byte>(new byte[] { value });

            // Act
            var result = formatter.Deserialize <byte>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #8
0
        public void Deserialize_Enum()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Int32;
            var value     = TypeCode.DBNull;
            var data      = new ArraySegment <byte>(BitConverter.GetBytes((int)value));

            // Act
            var result = formatter.Deserialize <TypeCode>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #9
0
        public void Deserialize_Int64()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Int64;
            var value     = (long)12456456234243;
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <long>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #10
0
        public void Deserialize_DateTime()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.DateTime;
            var value     = RandomHelper.NextDate(g_random, 100);
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value.Ticks));

            // Act
            var result = formatter.Deserialize <DateTime>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #11
0
        public void Deserialize_String()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.String;
            var value     = RandomHelper.NextString(g_random, 100, StringHelper.AlphabetLowerCase);
            var data      = new ArraySegment <byte>(Encoding.UTF8.GetBytes(value));

            // Act
            var result = formatter.Deserialize <string>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #12
0
        public void Deserialize_Boolean()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = (int)TypeCode.Boolean;
            var value     = RandomHelper.NextBoolean(g_random);
            var data      = new ArraySegment <byte>(BitConverter.GetBytes(value));

            // Act
            var result = formatter.Deserialize <bool>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }
コード例 #13
0
        public void Deserialize_DoesNot_Handle()
        {
            // Arrange
            var formatter = new SimpleObjectFormatter(Encoding.UTF8, m_mockInner.Object);
            var flags     = 0;
            var value     = new object();
            var data      = new ArraySegment <byte>(new byte[] { });

            m_mockInner.Setup(inner => inner.Deserialize <object>(data, flags)).Returns(value);

            // Act
            var result = formatter.Deserialize <object>(data, flags);

            // Assert
            Assert.Equal(value, result);
        }