aboutsummaryrefslogtreecommitdiff
path: root/src/test/WixToolsetTest.LightIntegration
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/WixToolsetTest.LightIntegration')
-rw-r--r--src/test/WixToolsetTest.LightIntegration/LightFixture.cs48
-rw-r--r--src/test/WixToolsetTest.LightIntegration/TestData/Wixout/Package.en-us.wxl11
-rw-r--r--src/test/WixToolsetTest.LightIntegration/TestData/Wixout/data/test.txt1
-rw-r--r--src/test/WixToolsetTest.LightIntegration/TestData/Wixout/test.wixoutbin10354 -> 0 bytes
-rw-r--r--src/test/WixToolsetTest.LightIntegration/Utility/DisposableFileSystem.cs86
-rw-r--r--src/test/WixToolsetTest.LightIntegration/Utility/TestData.cs17
-rw-r--r--src/test/WixToolsetTest.LightIntegration/WixToolsetTest.LightIntegration.csproj30
7 files changed, 0 insertions, 193 deletions
diff --git a/src/test/WixToolsetTest.LightIntegration/LightFixture.cs b/src/test/WixToolsetTest.LightIntegration/LightFixture.cs
deleted file mode 100644
index 21c10be9..00000000
--- a/src/test/WixToolsetTest.LightIntegration/LightFixture.cs
+++ /dev/null
@@ -1,48 +0,0 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolsetTest.LightIntegration
4{
5 using System.IO;
6 using System.Linq;
7 using WixToolset.Core;
8 using WixToolset.Tools;
9 using WixToolsetTest.LightIntegration.Utility;
10 using Xunit;
11
12 public class LightFixture
13 {
14 [Fact]
15 public void CanBuildFromWixout()
16 {
17 var folder = TestData.Get(@"TestData\Wixout");
18
19 using (var fs = new DisposableFileSystem())
20 {
21 var baseFolder = fs.GetFolder();
22 var intermediateFolder = Path.Combine(baseFolder, "obj");
23
24 var program = new Light();
25 var result = program.Run(new WixToolsetServiceProvider(), null, new[]
26 {
27 Path.Combine(folder, "test.wixout"),
28 "-loc", Path.Combine(folder, "Package.en-us.wxl"),
29 "-b", Path.Combine(folder, "data"),
30 "-intermediateFolder", intermediateFolder,
31 "-o", Path.Combine(baseFolder, @"bin\test.msi")
32 });
33
34 Assert.Equal(0, result);
35
36 var binFolder = Path.Combine(baseFolder, @"bin\");
37 var builtFiles = Directory.GetFiles(binFolder, "*", SearchOption.AllDirectories);
38
39 Assert.Equal(new[]{
40 "MsiPackage\\test.txt",
41 "test.msi",
42 "test.wir",
43 "test.wixpdb",
44 }, builtFiles.Select(f => f.Substring(binFolder.Length)).OrderBy(s => s).ToArray());
45 }
46 }
47 }
48}
diff --git a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/Package.en-us.wxl b/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/Package.en-us.wxl
deleted file mode 100644
index 38c12ac1..00000000
--- a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/Package.en-us.wxl
+++ /dev/null
@@ -1,11 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2
3<!--
4This file contains the declaration of all the localizable strings.
5-->
6<WixLocalization xmlns="http://wixtoolset.org/schemas/v4/wxl" Culture="en-US">
7
8 <String Id="DowngradeError">A newer version of [ProductName] is already installed.</String>
9 <String Id="FeatureTitle">MsiPackage</String>
10
11</WixLocalization>
diff --git a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/data/test.txt b/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/data/test.txt
deleted file mode 100644
index cd0db0e1..00000000
--- a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/data/test.txt
+++ /dev/null
@@ -1 +0,0 @@
1This is test.txt. \ No newline at end of file
diff --git a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/test.wixout b/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/test.wixout
deleted file mode 100644
index 009b625f..00000000
--- a/src/test/WixToolsetTest.LightIntegration/TestData/Wixout/test.wixout
+++ /dev/null
Binary files differ
diff --git a/src/test/WixToolsetTest.LightIntegration/Utility/DisposableFileSystem.cs b/src/test/WixToolsetTest.LightIntegration/Utility/DisposableFileSystem.cs
deleted file mode 100644
index 3b8c0e19..00000000
--- a/src/test/WixToolsetTest.LightIntegration/Utility/DisposableFileSystem.cs
+++ /dev/null
@@ -1,86 +0,0 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolsetTest.LightIntegration.Utility
4{
5 using System;
6 using System.Collections.Generic;
7 using System.IO;
8
9 public class DisposableFileSystem : IDisposable
10 {
11 protected bool Disposed { get; private set; }
12
13 private List<string> CleanupPaths { get; } = new List<string>();
14
15 protected string GetFile(bool create = false)
16 {
17 var path = Path.GetTempFileName();
18
19 if (!create)
20 {
21 File.Delete(path);
22 }
23
24 this.CleanupPaths.Add(path);
25
26 return path;
27 }
28
29 public string GetFolder(bool create = false)
30 {
31 var path = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName());
32
33 if (create)
34 {
35 Directory.CreateDirectory(path);
36 }
37
38 this.CleanupPaths.Add(path);
39
40 return path;
41 }
42
43
44 #region // IDisposable
45
46 public void Dispose()
47 {
48 this.Dispose(true);
49 GC.SuppressFinalize(this);
50 }
51
52 protected virtual void Dispose(bool disposing)
53 {
54 if (this.Disposed)
55 {
56 return;
57 }
58
59 if (disposing)
60 {
61 foreach (var path in this.CleanupPaths)
62 {
63 try
64 {
65 if (File.Exists(path))
66 {
67 File.Delete(path);
68 }
69 else if (Directory.Exists(path))
70 {
71 Directory.Delete(path, true);
72 }
73 }
74 catch
75 {
76 // Best effort delete, so ignore any failures.
77 }
78 }
79 }
80
81 this.Disposed = true;
82 }
83
84 #endregion
85 }
86}
diff --git a/src/test/WixToolsetTest.LightIntegration/Utility/TestData.cs b/src/test/WixToolsetTest.LightIntegration/Utility/TestData.cs
deleted file mode 100644
index c13e9d6d..00000000
--- a/src/test/WixToolsetTest.LightIntegration/Utility/TestData.cs
+++ /dev/null
@@ -1,17 +0,0 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolsetTest.LightIntegration.Utility
4{
5 using System;
6 using System.IO;
7
8 public class TestData
9 {
10 public static string LocalPath => Path.GetDirectoryName(new Uri(System.Reflection.Assembly.GetExecutingAssembly().CodeBase).LocalPath);
11
12 public static string Get(params string[] paths)
13 {
14 return Path.Combine(LocalPath, Path.Combine(paths));
15 }
16 }
17}
diff --git a/src/test/WixToolsetTest.LightIntegration/WixToolsetTest.LightIntegration.csproj b/src/test/WixToolsetTest.LightIntegration/WixToolsetTest.LightIntegration.csproj
deleted file mode 100644
index 59068682..00000000
--- a/src/test/WixToolsetTest.LightIntegration/WixToolsetTest.LightIntegration.csproj
+++ /dev/null
@@ -1,30 +0,0 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project Sdk="Microsoft.NET.Sdk">
5 <PropertyGroup>
6 <TargetFramework>net461</TargetFramework>
7 <IsPackable>false</IsPackable>
8 <DebugType>embedded</DebugType>
9 </PropertyGroup>
10
11 <ItemGroup>
12 <Content Include="TestData\Wixout\data\test.txt" CopyToOutputDirectory="PreserveNewest" />
13 <Content Include="TestData\Wixout\Package.en-us.wxl">
14 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
15 </Content>
16 <Content Include="TestData\Wixout\test.wixout">
17 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
18 </Content>
19 </ItemGroup>
20
21 <ItemGroup>
22 <ProjectReference Include="..\..\light\light.csproj" />
23 </ItemGroup>
24
25 <ItemGroup>
26 <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.7.2" />
27 <PackageReference Include="xunit" Version="2.3.1" />
28 <PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
29 </ItemGroup>
30</Project>