public async Task Should_handle_a_string_null()
        {
            var repository = new InMemoryMessageDataRepository();

            var dataId = new InMemoryMessageDataId().Uri;

            var obj = new SampleMessage { Value = await repository.PutString("Hello, World!") };

            Serialize(obj);
        }
        async Task <Uri> IMessageDataRepository.Put(Stream stream, TimeSpan?timeToLive, CancellationToken cancellationToken)
        {
            Uri address = new InMemoryMessageDataId().Uri;

            using (var ms = new MemoryStream())
            {
                await stream.CopyToAsync(ms);

                _values.TryAdd(address, ms.ToArray());
            }

            return(address);
        }
        async Task<Uri> IMessageDataRepository.Put(Stream stream, TimeSpan? timeToLive, CancellationToken cancellationToken)
        {
            Uri address = new InMemoryMessageDataId().Uri;

            using (var ms = new MemoryStream())
            {
                await stream.CopyToAsync(ms).ConfigureAwait(false);

                _values.TryAdd(address, ms.ToArray());
            }

            return address;
        }