diff --git a/backend/api.test/TestAzuriteStorage.cs b/backend/api.test/TestAzuriteStorage.cs
new file mode 100644
index 000000000..17c580a5f
--- /dev/null
+++ b/backend/api.test/TestAzuriteStorage.cs
@@ -0,0 +1,41 @@
+using System;
+using System.Threading.Tasks;
+using Azure.Storage.Blobs;
+using Testcontainers.Azurite;
+using Xunit;
+
+namespace Api.Test;
+
+public class TestAzuriteStorage : IAsyncLifetime
+{
+ private AzuriteContainer _container = null!;
+ private string _connectionString = null!;
+
+ public async ValueTask InitializeAsync()
+ {
+ (_container, _connectionString) = await TestSetupHelpers.ConfigureAzuriteStorage();
+ }
+
+ public async ValueTask DisposeAsync()
+ {
+ await _container.DisposeAsync();
+ GC.SuppressFinalize(this);
+ }
+
+ [Fact]
+ public async Task CheckThatJsonFileCanBeStored()
+ {
+ var clientOptions = new BlobClientOptions(BlobClientOptions.ServiceVersion.V2025_11_05);
+ var serviceClient = new BlobServiceClient(_connectionString, clientOptions);
+ var containerClient = serviceClient.GetBlobContainerClient("test-container");
+ await containerClient.CreateAsync(cancellationToken: TestContext.Current.CancellationToken);
+
+ var blobClient = containerClient.GetBlobClient("test.json");
+ await blobClient.UploadAsync(
+ BinaryData.FromString("{\"message\":\"hello\"}"),
+ TestContext.Current.CancellationToken
+ );
+
+ Assert.True(await blobClient.ExistsAsync(TestContext.Current.CancellationToken));
+ }
+}
diff --git a/backend/api.test/TestSetupHelpers.cs b/backend/api.test/TestSetupHelpers.cs
index ffb810d06..ad5f127c9 100644
--- a/backend/api.test/TestSetupHelpers.cs
+++ b/backend/api.test/TestSetupHelpers.cs
@@ -15,6 +15,7 @@
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
using Moq;
+using Testcontainers.Azurite;
using Testcontainers.PostgreSql;
using Xunit.Sdk;
@@ -22,8 +23,17 @@ namespace Api.Test;
public static class TestSetupHelpers
{
+ private const string AzuriteVersion = "mcr.microsoft.com/azure-storage/azurite:3.36.0";
private const string PostgresVersion = "postgres:17.10";
+ public static async Task<(AzuriteContainer, string)> ConfigureAzuriteStorage()
+ {
+ var container = new AzuriteBuilder(AzuriteVersion).Build();
+ await container.StartAsync();
+
+ return (container, container.GetConnectionString());
+ }
+
public static async Task<(
PostgreSqlContainer,
string,
diff --git a/backend/api.test/api.test.csproj b/backend/api.test/api.test.csproj
index 8f5fce2fe..5166a84f7 100644
--- a/backend/api.test/api.test.csproj
+++ b/backend/api.test/api.test.csproj
@@ -12,7 +12,9 @@
+
+