summaryrefslogtreecommitdiffstats
path: root/tests/wixl.at
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2013-01-09 16:29:37 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2013-01-09 18:04:19 +0100
commit549146755c4a510dd3fd8db87724c3b573927d89 (patch)
tree90d6a74f84fcc0083a2f48978687fb5a1f296fcf /tests/wixl.at
parent06c962631abee5d0fc59cdabf186f9cd003a461b (diff)
parentb57de2196e111605812cc3aff4d6dcb53ec8965d (diff)
downloadmsitools-549146755c4a510dd3fd8db87724c3b573927d89.tar.gz
msitools-549146755c4a510dd3fd8db87724c3b573927d89.tar.xz
msitools-549146755c4a510dd3fd8db87724c3b573927d89.zip
Merge remote-tracking branch 'wixl/master'
Diffstat (limited to 'tests/wixl.at')
-rw-r--r--tests/wixl.at95
1 files changed, 95 insertions, 0 deletions
diff --git a/tests/wixl.at b/tests/wixl.at
new file mode 100644
index 0000000..0191012
--- /dev/null
+++ b/tests/wixl.at
@@ -0,0 +1,95 @@
+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/wixl/$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
+
+AT_SETUP([ARP example])
+AT_WIXLDATA([test-arp.wxs])
+AT_WIXLDATA([FoobarAppl10.exe])
+AT_CHECK_WIXL([-o out.msi test-arp.wxs], [0], [ignore], [ignore])
+# FIXME: add tons of tests on out.msi
+AT_CHECK([test -f out.msi], [0])
+AT_CLEANUP