示例#1
0
        public void Test_Encode_Object_Fails()
        {
            var transcoder = new RawStringTranscoder();

            var flags = new Flags
            {
                DataFormat = DataFormat.String
            };

            using var stream = new MemoryStream();
            Assert.Throws <InvalidOperationException>(() => transcoder.Encode(stream, new object(), flags, OpCode.Add));
        }
示例#2
0
        public void Test_Char_Fails()
        {
            var transcoder = new RawStringTranscoder();
            var value      = 'o';

            var flags = new Flags
            {
                Compression = Couchbase.Core.IO.Operations.Compression.None,
                DataFormat  = DataFormat.String,
                TypeCode    = Convert.GetTypeCode(value)
            };

            using var stream = new MemoryStream();
            Assert.Throws <InvalidOperationException>(() => transcoder.Encode(stream, value, flags, OpCode.Get));
        }
示例#3
0
        public void Test_Deserialize_String()
        {
            var transcoder = new RawStringTranscoder();
            // ReSharper disable once StringLiteralTypo
            var value = "astring";

            var flags = new Flags
            {
                Compression = Couchbase.Core.IO.Operations.Compression.None,
                DataFormat  = DataFormat.String,
                TypeCode    = Convert.GetTypeCode(value)
            };

            using var stream = new MemoryStream();
            transcoder.Encode(stream, value, flags, OpCode.Get);
            var actual = transcoder.Decode <string>(stream.ToArray(), flags, OpCode.Get);

            Assert.Equal(value, actual);
        }
示例#4
0
        public void Test_Serialize_String()
        {
            var    transcoder = new RawStringTranscoder();
            string data       = "Hello";

            var flags = new Flags
            {
                Compression = Couchbase.Core.IO.Operations.Compression.None,
                DataFormat  = DataFormat.String,
                TypeCode    = Convert.GetTypeCode(data)
            };

            var expected = new byte[] { 0x48, 0x65, 0x6c, 0x6c, 0x6f };

            using var stream = new MemoryStream();
            transcoder.Encode(stream, data, flags, OpCode.Get);

            Assert.Equal(expected, stream.ToArray());
        }