FruitBankHybridApp/FruitBankHybrid.Shared.Tests/TestServerGuard.cs

22 lines
945 B
C#

using FruitBank.Common;
using FruitBankHybrid.Shared.Services.SignalRs;
namespace FruitBankHybrid.Shared.Tests;
/// <summary>
/// Szerver-környezet guard a szerver-routolt tesztekhez: a döntés KIZÁRÓLAG a szerver saját bevallásán
/// (IsProdEnvironment — a szerver a DB-katalógusából sorolja be magát, fail-closed) alapul; URL-alakból
/// SOHA nem következtetünk. PROD vagy nem-igazolható környezet → exception, a teszt el sem indul (fail closed).
/// </summary>
internal static class TestServerGuard
{
public static async Task EnsureNotProdAsync(FruitBankSignalRClient client)
{
// Timeout / kapcsolat-hiba / szerver-hiba → a hidratálás kivétele ide propagál → a teszt bukik.
await client.EnsureEnvironmentAsync();
if (FruitBankConstClient.IsProd)
throw new InvalidOperationException("PROD szerveren NEM tesztelünk! (a szerver IsProdEnvironment() == true)");
}
}