Ejemplo n.º 1
0
        public void Encoding()
        {
            var call = MethodCall.FromExpression((TestClass test) => test.FirstMethod(Arg1, Arg2, Arg3, Arg4));

            using (var stream = new MemoryStream())
                using (var reader = new BinaryReader(stream))
                    using (var writer = new BinaryWriter(stream))
                    {
                        call.WriteTo(writer);
                        var length = stream.Position;
                        stream.Seek(0, SeekOrigin.Begin);
                        var readCall = MethodCall.ReadFrom(reader);
                        Assert.That(readCall.Method, Is.EqualTo(call.Method));
                        Assert.That(readCall.Arguments, Is.EquivalentTo(call.Arguments));
                        Assert.That(stream.Position, Is.EqualTo(length));
                    }
        }