public void TestIisExpressNoRootApplication()
{
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_no_root_app.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 exception = Assert.Throws<FileNotFoundException>(
() =>
{
var root = config.RootSectionGroup;
});
#if IIS
Assert.Equal(string.Format("Filename: \\\\?\\{0}\r\nError: Unrecognized configuration path 'MACHINE/WEBROOT/APPHOST/WebSite1'\r\n\r\n", Current), exception.Message);
#else
Assert.Equal(string.Format("Filename: \\\\?\\{0}\r\nLine number: 164\r\nError: Unrecognized configuration path 'MACHINE/WEBROOT/APPHOST/WebSite1'\r\n\r\n", Current), exception.Message);
#endif
}