public async Task TestMessagingClientStatusAsync()
        {
            var client = new MessagingClient(this.customerId,
                                             this.apiKey,
                                             string.Format("http://localhost:{0}", this.mockServer.Port));

            var refid = new Guid().ToString();

            this.mockServer.AddRequestHandler(new MockHttpHandler($"/v1/messaging/{refid}", "GET", handlerLambda));

            await client.StatusAsync(refid);

            Assert.AreEqual("GET", this.requests.Last().HttpMethod, "method is not as expected");
            Assert.AreEqual($"/v1/messaging/{refid}", this.requests.Last().RawUrl, "path is not as expected");
            Assert.IsEmpty(this.requestBodies.Last());
            Assert.IsNull(this.requestHeaders.Last()["Content-Type"]);
            Assert.AreEqual("HMAC-SHA256", this.requestHeaders.Last()["x-ts-auth-method"],
                            "x-ts-auth-method header is not as expected");

            Guid dummyGuid;

            Assert.IsTrue(Guid.TryParse(this.requestHeaders.Last()["x-ts-nonce"], out dummyGuid),
                          "x-ts-nonce header is not a valid UUID");

            DateTime dummyDateTime;

            Assert.IsTrue(DateTime.TryParse(this.requestHeaders.Last()["Date"], out dummyDateTime),
                          "Date header is not valid rfc2616 format");

            Assert.IsNotNull(this.requestHeaders.Last()["Authorization"]);
        }