Skip to content

Commit 787a601

Browse files
authored
Add EasyAuth startup env-var coverage for AppService and SWA
1 parent 438323a commit 787a601

1 file changed

Lines changed: 25 additions & 13 deletions

File tree

src/Service.Tests/Configuration/ConfigurationTests.cs

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3934,23 +3934,25 @@ type Planet @model(name:""PlanetAlias"") {
39343934
/// </summary>
39353935
/// <param name="hostMode">HostMode in Runtime config - Development or Production.</param>
39363936
/// <param name="authType">EasyAuth auth type - AppService or StaticWebApps.</param>
3937-
/// <param name="setEnvVars">Whether to set the AppService host environment variables.</param>
3937+
/// <param name="setAppServiceEnvVars">Whether to set the AppService host environment variables.</param>
3938+
/// <param name="setStaticWebAppsEnvVar">Whether to set the Static Web Apps host environment variable.</param>
39383939
/// <param name="expectError">Whether an error is expected.</param>
39393940
[DataTestMethod]
39403941
[TestCategory(TestCategory.MSSQL)]
3941-
[DataRow(HostMode.Development, EasyAuthType.AppService, false, false, DisplayName = "AppService Dev - No EnvVars - No Error")]
3942-
[DataRow(HostMode.Development, EasyAuthType.AppService, true, false, DisplayName = "AppService Dev - EnvVars - No Error")]
3943-
[DataRow(HostMode.Production, EasyAuthType.AppService, false, false, DisplayName = "AppService Prod - No EnvVars - Error")]
3944-
[DataRow(HostMode.Production, EasyAuthType.AppService, true, false, DisplayName = "AppService Prod - EnvVars - Error")]
3945-
[DataRow(HostMode.Development, EasyAuthType.StaticWebApps, false, false, DisplayName = "SWA Dev - No EnvVars - No Error")]
3946-
[DataRow(HostMode.Development, EasyAuthType.StaticWebApps, true, false, DisplayName = "SWA Dev - EnvVars - No Error")]
3947-
[DataRow(HostMode.Production, EasyAuthType.StaticWebApps, false, false, DisplayName = "SWA Prod - No EnvVars - No Error")]
3948-
[DataRow(HostMode.Production, EasyAuthType.StaticWebApps, true, false, DisplayName = "SWA Prod - EnvVars - No Error")]
3949-
public void TestProductionModeAppServiceEnvironmentCheck(HostMode hostMode, EasyAuthType authType, bool setEnvVars, bool expectError)
3942+
[DataRow(HostMode.Development, EasyAuthType.AppService, false, false, false, DisplayName = "AppService Dev - No EnvVars - No Error")]
3943+
[DataRow(HostMode.Development, EasyAuthType.AppService, true, false, false, DisplayName = "AppService Dev - EnvVars - No Error")]
3944+
[DataRow(HostMode.Production, EasyAuthType.AppService, false, false, true, DisplayName = "AppService Prod - No EnvVars - Error")]
3945+
[DataRow(HostMode.Production, EasyAuthType.AppService, true, false, false, DisplayName = "AppService Prod - EnvVars - No Error")]
3946+
[DataRow(HostMode.Development, EasyAuthType.StaticWebApps, false, false, false, DisplayName = "SWA Dev - No EnvVars - No Error")]
3947+
[DataRow(HostMode.Development, EasyAuthType.StaticWebApps, false, true, false, DisplayName = "SWA Dev - EnvVars - No Error")]
3948+
[DataRow(HostMode.Production, EasyAuthType.StaticWebApps, false, false, true, DisplayName = "SWA Prod - No EnvVars - Error")]
3949+
[DataRow(HostMode.Production, EasyAuthType.StaticWebApps, false, true, false, DisplayName = "SWA Prod - EnvVars - No Error")]
3950+
public void TestProductionModeAppServiceEnvironmentCheck(HostMode hostMode, EasyAuthType authType, bool setAppServiceEnvVars, bool setStaticWebAppsEnvVar, bool expectError)
39503951
{
39513952
// Clears or sets App Service Environment Variables based on test input.
3952-
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_ENABLED_ENVVAR, setEnvVars ? "true" : null);
3953-
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_IDENTITYPROVIDER_ENVVAR, setEnvVars ? "AzureActiveDirectory" : null);
3953+
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_ENABLED_ENVVAR, setAppServiceEnvVars ? "true" : null);
3954+
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_IDENTITYPROVIDER_ENVVAR, setAppServiceEnvVars ? "AzureActiveDirectory" : null);
3955+
Environment.SetEnvironmentVariable(StaticWebAppsAuthentication.WEBSITE_SITE_NAME_ENVVAR, setStaticWebAppsEnvVar ? "test-site-name" : null);
39543956
TestHelper.SetupDatabaseEnvironment(TestCategory.MSSQL);
39553957

39563958
FileSystem fileSystem = new();
@@ -3987,7 +3989,17 @@ public void TestProductionModeAppServiceEnvironmentCheck(HostMode hostMode, Easy
39873989
catch (DataApiBuilderException ex)
39883990
{
39893991
Assert.IsTrue(expectError, message: ex.Message);
3990-
Assert.AreEqual(AppServiceAuthenticationInfo.APPSERVICE_PROD_MISSING_ENV_CONFIG, ex.Message);
3992+
Assert.AreEqual(
3993+
expected: authType == EasyAuthType.AppService
3994+
? AppServiceAuthenticationInfo.APPSERVICE_PROD_MISSING_ENV_CONFIG
3995+
: StaticWebAppsAuthentication.SWA_PROD_MISSING_ENV_CONFIG,
3996+
actual: ex.Message);
3997+
}
3998+
finally
3999+
{
4000+
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_ENABLED_ENVVAR, null);
4001+
Environment.SetEnvironmentVariable(AppServiceAuthenticationInfo.APPSERVICESAUTH_IDENTITYPROVIDER_ENVVAR, null);
4002+
Environment.SetEnvironmentVariable(StaticWebAppsAuthentication.WEBSITE_SITE_NAME_ENVVAR, null);
39914003
}
39924004
}
39934005

0 commit comments

Comments
 (0)