@joebigelow / wix-1 / commits / 8f67ce3c

Failing test for bug #6977.

https://github.com/wixtoolset/issues/issues/6977

Bob Arnson committed Nov 3, 2022 at 17:34 UTC 8f67ce3ce8a248b7421e14ec3dd6f65e9b53ea08
2 files changed +53
src/wix/test/WixToolsetTest.CoreIntegration/DirectoryFixture.cs
+51
@@ -135,6 +135,57 @@ namespace WixToolsetTest.CoreIntegration
135 }
136 }
137
138 + [Fact(Skip = "https://github.com/wixtoolset/issues/issues/6977")]
139 + public void CanGetEmptyStandardDirectory()
140 + {
141 + var folder = TestData.Get(@"TestData");
142 +
143 + using (var fs = new DisposableFileSystem())
144 + {
145 + var baseFolder = fs.GetFolder();
146 + var intermediateFolder = Path.Combine(baseFolder, "obj");
147 + var msiPath = Path.Combine(baseFolder, @"bin\test.msi");
148 +
149 + var result = WixRunner.Execute(new[]
150 + {
151 + "build",
152 + Path.Combine(folder, "Directory", "DefaultName.wxs"),
153 + Path.Combine(folder, "ProductWithComponentGroupRef", "Product.wxs"),
154 + "-bindpath", Path.Combine(folder, "SingleFile", "data"),
155 + "-intermediateFolder", intermediateFolder,
156 + "-o", msiPath
157 + });
158 +
159 + result.AssertSuccess();
160 +
161 + var intermediate = Intermediate.Load(Path.Combine(baseFolder, @"bin\test.wixpdb"));
162 + var section = intermediate.Sections.Single();
163 +
164 + var dirSymbols = section.Symbols.OfType<WixToolset.Data.Symbols.DirectorySymbol>().ToList();
165 + WixAssert.CompareLineByLine(new[]
166 + {
167 + "BinFolder\tCompanyFolder\t.",
168 + "CompanyFolder\tProgramFilesFolder\tExample Corporation",
169 + "DesktopFolder\tTARGETDIR\t.",
170 + "ProgramFilesFolder\tTARGETDIR\tPFiles",
171 + "ProgramMenuFolder\tTARGETDIR\t.",
172 + "TARGETDIR\t\tSourceDir"
173 + }, dirSymbols.OrderBy(d => d.Id.Id).Select(d => String.Join('\t', d.Id.Id, d.ParentDirectoryRef, d.Name)).ToArray());
174 +
175 + var data = WindowsInstallerData.Load(Path.Combine(baseFolder, @"bin\test.wixpdb"));
176 + var directoryRows = data.Tables["Directory"].Rows;
177 + WixAssert.CompareLineByLine(new[]
178 + {
179 + "BinFolder\tCompanyFolder\t.",
180 + "CompanyFolder\tProgramFilesFolder\tu7-b4gch|Example Corporation",
181 + "DesktopFolder\tTARGETDIR\t.",
182 + "ProgramFilesFolder\tTARGETDIR\tPFiles",
183 + "ProgramMenuFolder\tTARGETDIR\t.",
184 + "TARGETDIR\t\tSourceDir"
185 + }, directoryRows.Select(r => String.Join('\t', r.FieldAsString(0), r.FieldAsString(1), r.FieldAsString(2))).ToArray());
186 + }
187 + }
188 +
189 [Fact]
190 public void CanGetDuplicateDir()
191 {
src/wix/test/WixToolsetTest.CoreIntegration/TestData/Directory/DefaultName.wxs
+2
@@ -4,6 +4,8 @@
4 <ComponentGroup Id="ProductComponents" Directory="BinFolder" />
5 </Fragment>
6 <Fragment>
7 + <StandardDirectory Id="DesktopFolder" />
8 + <StandardDirectory Id="ProgramMenuFolder" />
9 <StandardDirectory Id="ProgramFilesFolder">
10 <Directory Id="CompanyFolder" Name="!(bind.Property.Manufacturer)">
11 <Directory Id="BinFolder" Name="." />