Exemple #1
0
        public void AppEnvironment_Reset_OnSpecialization()
        {
            var testEventGenerator = new TestEventGenerator();
            var localLogger        = new SystemLogger(_hostInstanceId, "Test", testEventGenerator, _environment, _debugStateProvider.Object, null, new LoggerExternalScopeProvider(), _appServiceOptions);

            localLogger.LogInformation("test");

            var evt = testEventGenerator.GetFunctionTraceEvents().Single();

            Assert.Equal(_websiteName, evt.AppName);
            Assert.Equal(_subscriptionId, evt.SubscriptionId);
            Assert.Equal("production", evt.SlotName);
            Assert.Equal("test", evt.RuntimeSiteName);

            // now update environment
            _environment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteOwnerName, $"updatedsub+westuswebspace");
            _environment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteName, "updatedsitename");
            _environment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteRuntimeSiteName, "updatedruntimesitename");
            _environment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsiteSlotName, "updatedslot");

            _changeTokenSource.SignalChange();

            testEventGenerator.ClearEvents();
            localLogger.LogInformation("test");

            evt = testEventGenerator.GetFunctionTraceEvents().Single();
            Assert.Equal("updatedsitename-updatedslot", evt.AppName);
            Assert.Equal("updatedsub", evt.SubscriptionId);
            Assert.Equal("updatedslot", evt.SlotName);
            Assert.Equal("updatedruntimesitename", evt.RuntimeSiteName);
        }