aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-05-29 11:44:46 +1000
committerSean Hall <r.sean.hall@gmail.com>2020-05-29 11:46:53 +1000
commit311dbab658184e603953791a075c776456226b95 (patch)
tree7767f664492a11d1721b37200a0a45077222d3c6 /src/test
parente25b29f5ded38e281f3a686bc5ce7cbe1d872d3b (diff)
downloadwix-311dbab658184e603953791a075c776456226b95.tar.gz
wix-311dbab658184e603953791a075c776456226b95.tar.bz2
wix-311dbab658184e603953791a075c776456226b95.zip
Add overloads to WindowsInstallerData.Load for table definitions.
Diffstat (limited to 'src/test')
-rw-r--r--src/test/WixToolsetTest.Data/SerializeFixture.cs40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/test/WixToolsetTest.Data/SerializeFixture.cs b/src/test/WixToolsetTest.Data/SerializeFixture.cs
index 6e224438..198b2571 100644
--- a/src/test/WixToolsetTest.Data/SerializeFixture.cs
+++ b/src/test/WixToolsetTest.Data/SerializeFixture.cs
@@ -8,8 +8,11 @@ namespace WixToolsetTest.Data
8 using WixToolset.Data; 8 using WixToolset.Data;
9 using WixToolset.Data.Bind; 9 using WixToolset.Data.Bind;
10 using WixToolset.Data.Tuples; 10 using WixToolset.Data.Tuples;
11 using WixToolset.Data.WindowsInstaller.Rows;
11 using Xunit; 12 using Xunit;
12 13
14 using Wid = WixToolset.Data.WindowsInstaller;
15
13 public class SerializeFixture 16 public class SerializeFixture
14 { 17 {
15 [Fact] 18 [Fact]
@@ -383,5 +386,42 @@ namespace WixToolsetTest.Data
383 File.Delete(path); 386 File.Delete(path);
384 } 387 }
385 } 388 }
389
390 [Fact]
391 public void CanSaveAndLoadWindowsInstallerData()
392 {
393 var sln = new SourceLineNumber("test.wxs", 1);
394 var windowsInstallerData = new Wid.WindowsInstallerData(sln)
395 {
396 Type = OutputType.Product,
397 };
398
399 var fileTable = windowsInstallerData.EnsureTable(Wid.WindowsInstallerTableDefinitions.File);
400 var fileRow = (FileRow)fileTable.CreateRow(sln);
401 fileRow.File = "TestFile";
402
403 var path = Path.GetTempFileName();
404 try
405 {
406 using (var wixout = WixOutput.Create(path))
407 {
408 windowsInstallerData.Save(wixout);
409 }
410
411 var loaded = Wid.WindowsInstallerData.Load(path);
412
413 var loadedTable = Assert.Single(loaded.Tables);
414 Assert.Equal(Wid.WindowsInstallerTableDefinitions.File.Name, loadedTable.Name);
415
416 var loadedRow = Assert.Single(loadedTable.Rows);
417 var loadedFileRow = Assert.IsType<FileRow>(loadedRow);
418
419 Assert.Equal("TestFile", loadedFileRow.File);
420 }
421 finally
422 {
423 File.Delete(path);
424 }
425 }
386 } 426 }
387} 427}