Skip to content

Commit e81d7fb

Browse files
committed
Add tests for Linux specialization with empty RunFromPackage url
1 parent 1817b41 commit e81d7fb

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

test/WebJobs.Script.Tests.Integration/Management/InstanceManagerTests.cs

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,27 @@ public async Task StartAssignment_Failure_ExitsPlaceholderMode()
111111
Assert.Equal("Kaboom!", error.Exception.Message);
112112
}
113113

114+
[Fact]
115+
public async Task StartAssignment_Succeeds_With_No_RunFromPackage_AppSetting()
116+
{
117+
_environment.SetEnvironmentVariable(EnvironmentSettingNames.AzureWebsitePlaceholderMode, "1");
118+
var context = new HostAssignmentContext
119+
{
120+
Environment = new Dictionary<string, string>()
121+
};
122+
bool result = _instanceManager.StartAssignment(context);
123+
Assert.True(result);
124+
Assert.True(_scriptWebEnvironment.InStandbyMode);
125+
126+
await TestHelpers.Await(() => !_scriptWebEnvironment.InStandbyMode, timeout: 5000);
127+
128+
var logs = _loggerProvider.GetAllLogMessages().Select(p => p.FormattedMessage).ToArray();
129+
Assert.Collection(logs,
130+
p => Assert.StartsWith("Starting Assignment", p),
131+
p => Assert.StartsWith("Applying 0 app setting(s)", p),
132+
p => Assert.StartsWith("Triggering specialization", p));
133+
}
134+
114135
[Fact]
115136
public void StartAssignment_ReturnsFalse_WhenNotInStandbyMode()
116137
{
@@ -144,6 +165,25 @@ public async Task ValidateContext_InvalidZipUrl_ReturnsError()
144165
p => Assert.StartsWith("Invalid zip url specified (StatusCode: NotFound)", p));
145166
}
146167

168+
[Fact]
169+
public async Task ValidateContext_EmptyZipUrl_ReturnsSuccess()
170+
{
171+
var environment = new Dictionary<string, string>();
172+
var assignmentContext = new HostAssignmentContext
173+
{
174+
SiteId = 1234,
175+
SiteName = "TestSite",
176+
Environment = environment
177+
};
178+
179+
string error = await _instanceManager.ValidateContext(assignmentContext);
180+
Assert.Null(error);
181+
182+
var logs = _loggerProvider.GetAllLogMessages().Select(p => p.FormattedMessage).ToArray();
183+
Assert.Collection(logs,
184+
p => Assert.StartsWith("Validating host assignment context (SiteId: 1234, SiteName: 'TestSite')", p));
185+
}
186+
147187
[Fact]
148188
public async Task ValidateContext_Succeeds()
149189
{

0 commit comments

Comments
 (0)