You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
113 lines
3.2 KiB
113 lines
3.2 KiB
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) |
|
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) |
|
|
|
using System; |
|
using System.IO; |
|
using System.Resources; |
|
using System.Xml; |
|
using ICSharpCode.SharpDevelop; |
|
using ICSharpCode.WixBinding; |
|
using NUnit.Framework; |
|
using WixBinding.Tests.Utils; |
|
|
|
namespace WixBinding.Tests.Document |
|
{ |
|
/// <summary> |
|
/// Tests that the WixDirectory object correctly identifies its own child |
|
/// directories. |
|
/// </summary> |
|
[TestFixture] |
|
public class ChildDirectoriesTestFixture |
|
{ |
|
WixDirectoryElement rootDirectory; |
|
WixDirectoryElement programFilesDirectory; |
|
WixDirectoryElement myAppDirectory; |
|
WixDirectoryElement testDirectory; |
|
WixDirectoryElement[] rootChildDirectories; |
|
WixDirectoryElement[] programFilesChildDirectories; |
|
|
|
[TestFixtureSetUp] |
|
public void SetUpFixture() |
|
{ |
|
SD.InitializeForUnitTests(); |
|
WixBindingTestsHelper.RegisterResourceStringsWithSharpDevelopResourceManager(); |
|
|
|
WixDocument doc = new WixDocument(); |
|
doc.LoadXml(GetWixXml()); |
|
rootDirectory = doc.GetRootDirectory(); |
|
rootChildDirectories = rootDirectory.GetDirectories(); |
|
programFilesDirectory = rootChildDirectories[0]; |
|
programFilesChildDirectories = programFilesDirectory.GetDirectories(); |
|
myAppDirectory = programFilesChildDirectories[0]; |
|
testDirectory = rootChildDirectories[1]; |
|
} |
|
|
|
[Test] |
|
public void RootDirectoryHasTwoChildDirectories() |
|
{ |
|
Assert.AreEqual(2, rootChildDirectories.Length); |
|
} |
|
|
|
[Test] |
|
public void MyAppDirectoryHasNoChildDirectories() |
|
{ |
|
Assert.AreEqual(0, myAppDirectory.GetDirectories().Length); |
|
} |
|
|
|
[Test] |
|
public void MyAppDirectorySourceName() |
|
{ |
|
Assert.AreEqual("MyAppSrc", myAppDirectory.SourceName); |
|
} |
|
|
|
[Test] |
|
public void MyAppDirectoryName() |
|
{ |
|
Assert.AreEqual("My Application", myAppDirectory.DirectoryName); |
|
} |
|
|
|
[Test] |
|
public void ProgramFilesDirectoryHasOneChildDirectory() |
|
{ |
|
Assert.AreEqual(1, programFilesChildDirectories.Length); |
|
} |
|
|
|
[Test] |
|
public void TestDirectoryId() |
|
{ |
|
Assert.AreEqual("Test", testDirectory.Id); |
|
} |
|
|
|
[Test] |
|
public void TestDirectoryName() |
|
{ |
|
Assert.AreEqual("App", testDirectory.DirectoryName); |
|
} |
|
|
|
[Test] |
|
public void ProgramFilesDirectoryName() |
|
{ |
|
Assert.AreEqual("Program Files", programFilesDirectory.DirectoryName); |
|
} |
|
|
|
string GetWixXml() |
|
{ |
|
return "<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>\r\n" + |
|
"\t<Product Name='DialogTest' \r\n" + |
|
"\t Version='1.0' \r\n" + |
|
"\t Language='1013' \r\n" + |
|
"\t Manufacturer='#develop' \r\n" + |
|
"\t Id='????????-????-????-????-????????????'>\r\n" + |
|
"\t\t<Package/>\r\n" + |
|
"\t\t<Directory Id=\"TARGETDIR\" SourceName=\"SourceDir\">\r\n" + |
|
"\t\t\t<Directory Id=\"ProgramFilesFolder\" Name=\"PFiles\">\r\n" + |
|
"\t\t\t\t<Directory Id=\"MyApp\" SourceName=\"MyAppSrc\" Name=\"My Application\">\r\n" + |
|
"\t\t\t\t</Directory>\r\n" + |
|
"\t\t\t</Directory>\r\n" + |
|
"\t\t\t<Directory Id=\"Test\" SourceName=\"Test\" Name=\"App\"/>\r\n" + |
|
"\t\t</Directory>\r\n" + |
|
"\t</Product>\r\n" + |
|
"</Wix>"; |
|
} |
|
} |
|
}
|
|
|