From cca0a875509e50f2e501657c86334cc82322cc5c Mon Sep 17 00:00:00 2001 From: Guillaume Chervet Date: Thu, 22 Jun 2023 21:45:50 +0200 Subject: [PATCH] refactor(slimfaas): add test to Program.cs --- src/SlimFaas/Program.cs | 2 ++ tests/SlimFaas.Tests/ProgramShould.cs | 25 ++++++++++++++++++++++ tests/SlimFaas.Tests/SlimFaas.Tests.csproj | 1 + 3 files changed, 28 insertions(+) create mode 100644 tests/SlimFaas.Tests/ProgramShould.cs diff --git a/src/SlimFaas/Program.cs b/src/SlimFaas/Program.cs index 7c9e6bb5..cae83c5d 100644 --- a/src/SlimFaas/Program.cs +++ b/src/SlimFaas/Program.cs @@ -94,3 +94,5 @@ static IAsyncPolicy GetRetryPolicy() .WaitAndRetryAsync(3, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt))); } + +public partial class Program { } \ No newline at end of file diff --git a/tests/SlimFaas.Tests/ProgramShould.cs b/tests/SlimFaas.Tests/ProgramShould.cs new file mode 100644 index 00000000..88d98706 --- /dev/null +++ b/tests/SlimFaas.Tests/ProgramShould.cs @@ -0,0 +1,25 @@ +using System.Net; +using Microsoft.Extensions.Logging; +using Moq; +using System.Text.Json; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc.Testing; +using Microsoft.Extensions.DependencyInjection; + +namespace SlimFaas.Tests; + +public class ProgramShould +{ + [Fact] + public async Task TestRootEndpoint() + { + Environment.SetEnvironmentVariable("MOCK_REDIS", "true"); + Environment.SetEnvironmentVariable("MOCK_KUBERNETES_FUNCTIONS", "{\"Functions\":[{\"Name\":\"fibonacci1\",\"NumberParallelRequest\":1},{\"Name\":\"fibonacci2\",\"NumberParallelRequest\":1}]}"); + await using var application = new WebApplicationFactory(); + using var client = application.CreateClient(); + + var response = await client.GetStringAsync("/health"); + + Assert.Equal("OK", response); + } +} \ No newline at end of file diff --git a/tests/SlimFaas.Tests/SlimFaas.Tests.csproj b/tests/SlimFaas.Tests/SlimFaas.Tests.csproj index aed44cd6..2c8ea750 100644 --- a/tests/SlimFaas.Tests/SlimFaas.Tests.csproj +++ b/tests/SlimFaas.Tests/SlimFaas.Tests.csproj @@ -15,6 +15,7 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive +