summaryrefslogtreecommitdiffstats
path: root/tests/testsuite.at
blob: b7550901d14a5e8b2dfaa6a41b9536a3059134e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
m4_include([package.m4])

AT_INIT
AT_BANNER([wixl])

# AT_CHECK_... - add exeext automatically
m4_define([AT_CHECK_WIXL], [
AT_CHECK([_wixl ]$@)])

# AT_WIXLDATA - copy data file from source tree
m4_define([AT_WIXLDATA], [
dir=`dirname $1`
AS_MKDIR_P([$dir])
AT_CHECK([cp $abs_srcdir/tests/data/$1 $1])])


AT_SETUP([Invalid command line])
AT_CHECK_WIXL([], [1], [ignore], [ignore])
AT_CHECK_WIXL([out.msi foo.wxs], [1], [ignore], [ignore])
AT_CHECK_WIXL([-o out.msi], [1], [ignore], [ignore])
AT_CHECK_WIXL([-E], [1], [ignore], [ignore])
AT_CHECK_WIXL([-D], [1], [ignore], [ignore])
AT_CHECK_WIXL([-E -o out.msi], [1], [ignore], [ignore])
AT_CHECK([test -f out.msi], [1])
AT_CLEANUP

AT_SETUP([WiX tutorial SampleFirst])
AT_WIXLDATA([SampleFirst.wxs])
AT_WIXLDATA([FoobarAppl10.exe])
AT_WIXLDATA([Helper.dll])
AT_WIXLDATA([Manual.pdf])
AT_CHECK_WIXL([-o out.msi SampleFirst.wxs], [0], [ignore], [ignore])
# FIXME: add tons of tests on out.msi
AT_CHECK([test -f out.msi], [0])
AT_CLEANUP

AT_SETUP([WiX tutorial SampleFragment])
AT_WIXLDATA([SampleFragment.wxs])
AT_WIXLDATA([Manual.wxs])
AT_WIXLDATA([FoobarAppl10.exe])
AT_WIXLDATA([Helper.dll])
AT_WIXLDATA([Manual.pdf])
AT_CHECK_WIXL([-o out.msi SampleFragment.wxs Manual.wxs], [0], [ignore], [ignore])
# FIXME: add tons of tests on out.msi
AT_CHECK([test -f out.msi], [0])
AT_CLEANUP

AT_SETUP([Preprocessor variables])
export MY_VAR="Hello!"
AT_DATA([variables.wxs], [<?xml version="1.0"?>
<?define Version = "0.2.0"?>
<?define UpgradeCode = "ABCDDCBA-8392-0202-1993-199374829923"?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
   <Property Id="Id0" Value="$(var.UpgradeCode)"/>
   <Property Id="Id0.1" Value="$$(var.UpgradeCode)"/>
   <Property Id="Id0.2" Value="$$$(var.UpgradeCode)"/>
   <?define UpgradeCode = "ABCDDCBA-8392-0202-1993-199374829924"?>
   <Property Id="Id2" Value="$(var.UpgradeCode)"/>
   <Property Id="Id3" Value="$(var.Version)"/>
   <?define A = "A"?><?define B = "B"?>
   <Property Id="IdAB" Value="$(var.A)$(var.B)"/>
   <Property Id="IdHello" Value="$(env.MY_VAR)"/>
   <Property Id="IdSys" Value="($(sys.SOURCEFILEDIR))foo"/>
</Wix>
])
AT_CHECK_WIXL([-E variables.wxs], [0], [<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Property Id="Id0" Value="ABCDDCBA-8392-0202-1993-199374829923"/>
  <Property Id="Id0.1" Value="$ABCDDCBA-8392-0202-1993-199374829923"/>
  <Property Id="Id0.2" Value="$$ABCDDCBA-8392-0202-1993-199374829923"/>
  <Property Id="Id2" Value="ABCDDCBA-8392-0202-1993-199374829924"/>
  <Property Id="Id3" Value="0.2.0"/>
  <Property Id="IdAB" Value="AB"/>
  <Property Id="IdHello" Value="Hello!"/>
  <Property Id="IdSys" Value="(variables.wxs)foo"/>
</Wix>
], [ignore])
AT_DATA([variables.wxs], [<?xml version="1.0"?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>
  <Property Id="Id$(var.Foo)" Value="$(var.Foo)"/>
  <Property Id="Id$(var.Zig)" Value="$(var.Zig)"/>
</Wix>
])
AT_CHECK_WIXL([-E variables.wxs -D Foo -D Zig=Zag], [0], [<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Property Id="Id1" Value="1"/>
  <Property Id="IdZag" Value="Zag"/>
</Wix>
], [ignore])

AT_CLEANUP