public void CoreSerializeRequestsWhenCollectionIsNull()
        {
            var jsonRpcSerializer = new Utf8JsonRpcSerializer();

            Assert.Throws <ArgumentNullException>(() =>
                                                  jsonRpcSerializer.SerializeRequests(null));
        }
        public void CoreSerializeRequestsWhenCollectionContainsNull()
        {
            var jsonRpcSerializer = new Utf8JsonRpcSerializer();

            var exception = Assert.Throws <JsonRpcException>(() =>
                                                             jsonRpcSerializer.SerializeRequests(new JsonRpcRequest[] { null }));

            Assert.Equal(JsonRpcErrorCodes.InvalidMessage, exception.ErrorCode);
        }
        public void CoreSerializeRequestsToStreamWhenStreamIsNull()
        {
            var jsonRpcSerializer = new Utf8JsonRpcSerializer();
            var jsonRpcMessage1   = new JsonRpcRequest("m", 0L);
            var jsonRpcMessage2   = new JsonRpcRequest("m", 1L);
            var jsonRpcMessages   = new[] { jsonRpcMessage1, jsonRpcMessage2 };

            Assert.Throws <ArgumentNullException>(() =>
                                                  jsonRpcSerializer.SerializeRequests(jsonRpcMessages, null));
        }
        public void CoreSerializeRequestsToStreamWhenRequestsIsNull()
        {
            var jsonRpcSerializer = new Utf8JsonRpcSerializer();
            var jsonRpcMessage    = new JsonRpcRequest("m", 0L);

            using (var jsonStream = new MemoryStream())
            {
                Assert.Throws <ArgumentNullException>(() =>
                                                      jsonRpcSerializer.SerializeRequests(null, jsonStream));
            }
        }
        public void CoreSerializeRequestsToStream()
        {
            var jsonSample        = EmbeddedResourceManager.GetString("Assets.v2_core_batch_req.json");
            var jsonRpcSerializer = new Utf8JsonRpcSerializer();
            var jsonRpcMessage1   = new JsonRpcRequest("m", 0L);
            var jsonRpcMessage2   = new JsonRpcRequest("m", 1L);
            var jsonRpcMessages   = new[] { jsonRpcMessage1, jsonRpcMessage2 };

            using (var jsonStream = new MemoryStream())
            {
                jsonRpcSerializer.SerializeRequests(jsonRpcMessages, jsonStream);

                var jsonResult = Encoding.UTF8.GetString(jsonStream.ToArray());

                CompareJsonStrings(jsonSample, jsonResult);
            }
        }