public void TestIisExpressRootVirtualDirectoryOutOfOrder()
{
var directoryName = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
Environment.SetEnvironmentVariable("JEXUS_TEST_HOME", directoryName);
if (directoryName == null)
{
return;
}
string Current = Path.Combine(directoryName, @"applicationHost.config");
string Original = Path.Combine(directoryName, @"original2_root_vdir_out.config");
TestHelper.CopySiteConfig(directoryName, "original.config");
File.Copy(Original, Current, true);
TestHelper.FixPhysicalPathMono(Current);
#if IIS
var server = new ServerManager(Current);
#else
var server = new IisExpressServerManager(Current);
#endif
var site = server.Sites[0];
var config = site.GetWebConfiguration();
var root = config.RootSectionGroup;
Assert.NotNull(root);
// enable Windows authentication
var windowsSection = config.GetSection("system.webServer/security/authentication/windowsAuthentication");
Assert.Equal(OverrideMode.Inherit, windowsSection.OverrideMode);
Assert.Equal(OverrideMode.Deny, windowsSection.OverrideModeEffective);
Assert.Equal(true, windowsSection.IsLocked);
Assert.Equal(false, windowsSection.IsLocallyStored);
}