private void DynamicRequestLargePayload(int sizeKB, string requestQueue = "Resources", TimeSpan?timeout = null, bool checkHashInPayload = false) { //generate large payload var rand = new Random(System.DateTimeOffset.Now.Millisecond); var ms = new MemoryStream(); var buffer = new byte[1024]; for (var written = 0L; written < sizeKB; written++) { rand.NextBytes(buffer); ms.Write(buffer); } var base64String = Convert.ToBase64String(ms.ToArray()); var msg = new { name = $"rand{sizeKB}KB.bin", mimeType = "application/octet-stream", body = base64String }; var response = Fixture.AmqpService.RequestReply(msg, "PutResource", requestQueue, timeout); Assert.NotNull(response); var amqpApiResponse = AmqpApiUtils.ParseApiResult(response); Assert.NotNull(amqpApiResponse); Assert.NotNull(amqpApiResponse.ResponseObject); Assert.NotNull(amqpApiResponse.ResponseObject["uuid"]); var guid = Guid.Parse(amqpApiResponse.ResponseObject["uuid"].ToObject <string>()); if (checkHashInPayload) { Assert.NotNull(amqpApiResponse.ResponseObject["hash"]); var hash = amqpApiResponse.ResponseObject["hash"]; var referenceHash = ServiceMock.Hash64Str(base64String); Assert.Equal(referenceHash, hash); } }