Example #1
0
        public void TestParseRequestParameters()
        {
            var r = new JsonRpcRequest
            {
                Parameters = new Dictionary <string, string>
                {
                    { "p1", "1000" }
                }
            };
            var resp = r.Get <int>("p1", out int val, v => int.Parse(v));

            Assert.AreEqual(1000, val);
            Assert.IsFalse(resp.HasError());
        }
Example #2
0
        public void TestParseRequestParametersParseError()
        {
            var r = new JsonRpcRequest
            {
                Parameters = new Dictionary <string, string>
                {
                    { "p1", "xxxxxxx" }
                }
            };
            var resp = r.Get <int>("p1", out int val, v => int.Parse(v));

            Assert.IsTrue(resp.HasError());
            Assert.AreEqual((int)ErrorCode.ParseError, resp.Error.Code);
            Assert.IsNotNull(resp.Error.Data);
        }
Example #3
0
        public void TestParseRequestParametersParameterMissing()
        {
            var r = new JsonRpcRequest
            {
                Parameters = new Dictionary <string, string>
                {
                    { "p1", "1000" }
                }
            };
            var resp = r.Get <int>("p2", out int val, v => int.Parse(v));

            Assert.AreEqual(0, val);
            Assert.IsTrue(resp.HasError());
            Assert.AreEqual("p2", resp.Error.Data);
            Assert.AreEqual((int)ErrorCode.InvalidParam, resp.Error.Code);
        }
Example #4
0
        public void TestRequestParameterExist()
        {
            JsonRpcRequest rq = new JsonRpcRequest
            {
                Id         = Guid.NewGuid().ToString(),
                Method     = "m1",
                Parameters = new Dictionary <string, string>
                {
                    { "p1", "v1" }
                }
            };

            (bool hasValue, string val, JsonRpcResponse r) = rq.Get("p1");
            Assert.IsTrue(hasValue);
            Assert.AreEqual("v1", val);
            Assert.IsNotNull(r);
            Assert.AreEqual(r.Id, rq.Id);
            Assert.IsNull(r.Error);
        }
Example #5
0
        public void TestRequestParameterDoesNotExist()
        {
            JsonRpcRequest rq = new JsonRpcRequest
            {
                Id         = Guid.NewGuid().ToString(),
                Method     = "m1",
                Parameters = new Dictionary <string, string>
                {
                    { "p1", "v1" }
                }
            };

            (bool hasValue, string val, JsonRpcResponse r) = rq.Get("p2");
            Assert.IsFalse(hasValue);
            Assert.IsTrue(string.IsNullOrEmpty(val));
            Assert.IsNotNull(r);
            Assert.AreEqual(r.Id, rq.Id);
            Assert.IsNotNull(r.Error);
            Assert.AreEqual((int)ErrorCode.InvalidParam, r.Error.Code);
            Assert.AreEqual("Parameter p2 was not provided.", r.Error.Message);
            Assert.AreEqual("p2", r.Error.Data);
        }