using System;
using System.IO;
using Amazon.S3.Model;
using System.Text;
var bucket = Environment.GetEnvironmentVariable("TEST_BUCKET")!;
var key = $"dotnet/{DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()}-hello.txt";
var expected = "hello through Cloud Adapter\n";
var put = await s3.PutObjectAsync(new PutObjectRequest
{
BucketName = bucket,
Key = key,
ContentBody = expected,
ContentType = "text/plain",
});
var head = await s3.GetObjectMetadataAsync(bucket, key);
using var get = await s3.GetObjectAsync(bucket, key);
using var reader = new StreamReader(get.ResponseStream, Encoding.UTF8);
var actual = await reader.ReadToEndAsync();
if (actual != expected) throw new InvalidOperationException("Downloaded bytes differ");
await s3.DeleteObjectAsync(bucket, key);