diff options
author | Rob Mensching <rob@firegiant.com> | 2020-07-01 10:21:53 -0700 |
---|---|---|
committer | Rob Mensching <rob@firegiant.com> | 2020-07-01 11:21:56 -0700 |
commit | 19a9744adcf70d75d4a7e9c4e426f6e379d3b7b3 (patch) | |
tree | 512df0ee9cbfa8c881cb3b083ae750e7de93ff6f /src/test | |
parent | fea4fe44cdc1734c2453de35133899ed46d95634 (diff) | |
download | wix-19a9744adcf70d75d4a7e9c4e426f6e379d3b7b3.tar.gz wix-19a9744adcf70d75d4a7e9c4e426f6e379d3b7b3.tar.bz2 wix-19a9744adcf70d75d4a7e9c4e426f6e379d3b7b3.zip |
Consolidate Custom Action tests in CustomActionFixture
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/WixToolsetTest.CoreIntegration/CustomActionFixture.cs | 102 | ||||
-rw-r--r-- | src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs | 98 |
2 files changed, 101 insertions, 99 deletions
diff --git a/src/test/WixToolsetTest.CoreIntegration/CustomActionFixture.cs b/src/test/WixToolsetTest.CoreIntegration/CustomActionFixture.cs index 814b5a26..1cab928e 100644 --- a/src/test/WixToolsetTest.CoreIntegration/CustomActionFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/CustomActionFixture.cs | |||
@@ -12,7 +12,7 @@ namespace WixToolsetTest.CoreIntegration | |||
12 | public class CustomActionFixture | 12 | public class CustomActionFixture |
13 | { | 13 | { |
14 | [Fact(Skip = "Test demonstrates failure")] | 14 | [Fact(Skip = "Test demonstrates failure")] |
15 | public void PopulatesCustomActionTable() | 15 | public void CanDetectCustomActionCycle() |
16 | { | 16 | { |
17 | var folder = TestData.Get(@"TestData"); | 17 | var folder = TestData.Get(@"TestData"); |
18 | 18 | ||
@@ -37,5 +37,105 @@ namespace WixToolsetTest.CoreIntegration | |||
37 | Assert.False(result.ExitCode == 0 && warnings.Length == 0); | 37 | Assert.False(result.ExitCode == 0 && warnings.Length == 0); |
38 | } | 38 | } |
39 | } | 39 | } |
40 | |||
41 | [Fact] | ||
42 | public void PopulatesCustomActionTable() | ||
43 | { | ||
44 | var folder = TestData.Get(@"TestData"); | ||
45 | |||
46 | using (var fs = new DisposableFileSystem()) | ||
47 | { | ||
48 | var baseFolder = fs.GetFolder(); | ||
49 | var intermediateFolder = Path.Combine(baseFolder, "obj"); | ||
50 | var msiPath = Path.Combine(baseFolder, @"bin\test.msi"); | ||
51 | |||
52 | var result = WixRunner.Execute(new[] | ||
53 | { | ||
54 | "build", | ||
55 | Path.Combine(folder, "CustomAction", "UnscheduledCustomAction.wxs"), | ||
56 | Path.Combine(folder, "ProductWithComponentGroupRef", "MinimalComponentGroup.wxs"), | ||
57 | Path.Combine(folder, "ProductWithComponentGroupRef", "Product.wxs"), | ||
58 | "-bindpath", Path.Combine(folder, "SingleFile", "data"), | ||
59 | "-intermediateFolder", intermediateFolder, | ||
60 | "-o", msiPath | ||
61 | }); | ||
62 | |||
63 | result.AssertSuccess(); | ||
64 | |||
65 | Assert.True(File.Exists(msiPath)); | ||
66 | var results = Query.QueryDatabase(msiPath, new[] { | ||
67 | "ActionText", | ||
68 | "AdminExecuteSequence", | ||
69 | "AdminUISequence", | ||
70 | "AdvtExecuteSequence", | ||
71 | "Binary", | ||
72 | "CustomAction", | ||
73 | "InstallExecuteSequence", | ||
74 | "InstallUISequence", | ||
75 | "Property", | ||
76 | }).Where(x => !x.StartsWith("Property:") || x.StartsWith("Property:MsiHiddenProperties\t")).ToArray(); | ||
77 | Assert.Equal(new[] | ||
78 | { | ||
79 | "ActionText:CustomAction2\tProgess2Text\t", | ||
80 | "AdminExecuteSequence:CostFinalize\t\t1000", | ||
81 | "AdminExecuteSequence:CostInitialize\t\t800", | ||
82 | "AdminExecuteSequence:CustomAction2\t\t801", | ||
83 | "AdminExecuteSequence:FileCost\t\t900", | ||
84 | "AdminExecuteSequence:InstallAdminPackage\t\t3900", | ||
85 | "AdminExecuteSequence:InstallFiles\t\t4000", | ||
86 | "AdminExecuteSequence:InstallFinalize\t\t6600", | ||
87 | "AdminExecuteSequence:InstallInitialize\t\t1500", | ||
88 | "AdminExecuteSequence:InstallValidate\t\t1400", | ||
89 | "AdminUISequence:CostFinalize\t\t1000", | ||
90 | "AdminUISequence:CostInitialize\t\t800", | ||
91 | "AdminUISequence:CustomAction2\t\t801", | ||
92 | "AdminUISequence:ExecuteAction\t\t1300", | ||
93 | "AdminUISequence:FileCost\t\t900", | ||
94 | "AdvtExecuteSequence:CostFinalize\t\t1000", | ||
95 | "AdvtExecuteSequence:CostInitialize\t\t800", | ||
96 | "AdvtExecuteSequence:CustomAction2\t\t801", | ||
97 | "AdvtExecuteSequence:InstallFinalize\t\t6600", | ||
98 | "AdvtExecuteSequence:InstallInitialize\t\t1500", | ||
99 | "AdvtExecuteSequence:InstallValidate\t\t1400", | ||
100 | "AdvtExecuteSequence:PublishFeatures\t\t6300", | ||
101 | "AdvtExecuteSequence:PublishProduct\t\t6400", | ||
102 | "Binary:Binary1\t[Binary data]", | ||
103 | "CustomAction:CustomAction1\t1\tBinary1\tInvalidEntryPoint\t", | ||
104 | "CustomAction:CustomAction2\t51\tTestAdvtExecuteSequenceProperty\t1\t", | ||
105 | "CustomAction:CustomActionWithHiddenTarget\t9217\tBinary1\tInvalidEntryPoint\t", | ||
106 | "CustomAction:DiscardOptimismAllBeingsWhoProceed\t19\t\tAbandon hope all ye who enter here.\t", | ||
107 | "InstallExecuteSequence:CostFinalize\t\t1000", | ||
108 | "InstallExecuteSequence:CostInitialize\t\t800", | ||
109 | "InstallExecuteSequence:CustomAction2\t\t801", | ||
110 | "InstallExecuteSequence:FileCost\t\t900", | ||
111 | "InstallExecuteSequence:FindRelatedProducts\t\t25", | ||
112 | "InstallExecuteSequence:InstallFiles\t\t4000", | ||
113 | "InstallExecuteSequence:InstallFinalize\t\t6600", | ||
114 | "InstallExecuteSequence:InstallInitialize\t\t1500", | ||
115 | "InstallExecuteSequence:InstallValidate\t\t1400", | ||
116 | "InstallExecuteSequence:LaunchConditions\t\t100", | ||
117 | "InstallExecuteSequence:MigrateFeatureStates\t\t1200", | ||
118 | "InstallExecuteSequence:ProcessComponents\t\t1600", | ||
119 | "InstallExecuteSequence:PublishFeatures\t\t6300", | ||
120 | "InstallExecuteSequence:PublishProduct\t\t6400", | ||
121 | "InstallExecuteSequence:RegisterProduct\t\t6100", | ||
122 | "InstallExecuteSequence:RegisterUser\t\t6000", | ||
123 | "InstallExecuteSequence:RemoveExistingProducts\t\t1401", | ||
124 | "InstallExecuteSequence:RemoveFiles\t\t3500", | ||
125 | "InstallExecuteSequence:UnpublishFeatures\t\t1800", | ||
126 | "InstallExecuteSequence:ValidateProductID\t\t700", | ||
127 | "InstallUISequence:CostFinalize\t\t1000", | ||
128 | "InstallUISequence:CostInitialize\t\t800", | ||
129 | "InstallUISequence:CustomAction2\t\t801", | ||
130 | "InstallUISequence:ExecuteAction\t\t1300", | ||
131 | "InstallUISequence:FileCost\t\t900", | ||
132 | "InstallUISequence:FindRelatedProducts\t\t25", | ||
133 | "InstallUISequence:LaunchConditions\t\t100", | ||
134 | "InstallUISequence:MigrateFeatureStates\t\t1200", | ||
135 | "InstallUISequence:ValidateProductID\t\t700", | ||
136 | "Property:MsiHiddenProperties\tCustomActionWithHiddenTarget", | ||
137 | }, results); | ||
138 | } | ||
139 | } | ||
40 | } | 140 | } |
41 | } | 141 | } |
diff --git a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs index bbeb7bd4..3ab218d1 100644 --- a/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/MsiQueryFixture.cs | |||
@@ -338,105 +338,7 @@ namespace WixToolsetTest.CoreIntegration | |||
338 | } | 338 | } |
339 | } | 339 | } |
340 | 340 | ||
341 | [Fact] | ||
342 | public void PopulatesCustomActionTable() | ||
343 | { | ||
344 | var folder = TestData.Get(@"TestData"); | ||
345 | |||
346 | using (var fs = new DisposableFileSystem()) | ||
347 | { | ||
348 | var baseFolder = fs.GetFolder(); | ||
349 | var intermediateFolder = Path.Combine(baseFolder, "obj"); | ||
350 | var msiPath = Path.Combine(baseFolder, @"bin\test.msi"); | ||
351 | 341 | ||
352 | var result = WixRunner.Execute(new[] | ||
353 | { | ||
354 | "build", | ||
355 | Path.Combine(folder, "CustomAction", "UnscheduledCustomAction.wxs"), | ||
356 | Path.Combine(folder, "ProductWithComponentGroupRef", "MinimalComponentGroup.wxs"), | ||
357 | Path.Combine(folder, "ProductWithComponentGroupRef", "Product.wxs"), | ||
358 | "-bindpath", Path.Combine(folder, "SingleFile", "data"), | ||
359 | "-intermediateFolder", intermediateFolder, | ||
360 | "-o", msiPath | ||
361 | }); | ||
362 | |||
363 | result.AssertSuccess(); | ||
364 | |||
365 | Assert.True(File.Exists(msiPath)); | ||
366 | var results = Query.QueryDatabase(msiPath, new[] { | ||
367 | "ActionText", | ||
368 | "AdminExecuteSequence", | ||
369 | "AdminUISequence", | ||
370 | "AdvtExecuteSequence", | ||
371 | "Binary", | ||
372 | "CustomAction", | ||
373 | "InstallExecuteSequence", | ||
374 | "InstallUISequence", | ||
375 | "Property", | ||
376 | }).Where(x => !x.StartsWith("Property:") || x.StartsWith("Property:MsiHiddenProperties\t")).ToArray(); | ||
377 | Assert.Equal(new[] | ||
378 | { | ||
379 | "ActionText:CustomAction2\tProgess2Text\t", | ||
380 | "AdminExecuteSequence:CostFinalize\t\t1000", | ||
381 | "AdminExecuteSequence:CostInitialize\t\t800", | ||
382 | "AdminExecuteSequence:CustomAction2\t\t801", | ||
383 | "AdminExecuteSequence:FileCost\t\t900", | ||
384 | "AdminExecuteSequence:InstallAdminPackage\t\t3900", | ||
385 | "AdminExecuteSequence:InstallFiles\t\t4000", | ||
386 | "AdminExecuteSequence:InstallFinalize\t\t6600", | ||
387 | "AdminExecuteSequence:InstallInitialize\t\t1500", | ||
388 | "AdminExecuteSequence:InstallValidate\t\t1400", | ||
389 | "AdminUISequence:CostFinalize\t\t1000", | ||
390 | "AdminUISequence:CostInitialize\t\t800", | ||
391 | "AdminUISequence:CustomAction2\t\t801", | ||
392 | "AdminUISequence:ExecuteAction\t\t1300", | ||
393 | "AdminUISequence:FileCost\t\t900", | ||
394 | "AdvtExecuteSequence:CostFinalize\t\t1000", | ||
395 | "AdvtExecuteSequence:CostInitialize\t\t800", | ||
396 | "AdvtExecuteSequence:CustomAction2\t\t801", | ||
397 | "AdvtExecuteSequence:InstallFinalize\t\t6600", | ||
398 | "AdvtExecuteSequence:InstallInitialize\t\t1500", | ||
399 | "AdvtExecuteSequence:InstallValidate\t\t1400", | ||
400 | "AdvtExecuteSequence:PublishFeatures\t\t6300", | ||
401 | "AdvtExecuteSequence:PublishProduct\t\t6400", | ||
402 | "Binary:Binary1\t[Binary data]", | ||
403 | "CustomAction:CustomAction1\t1\tBinary1\tInvalidEntryPoint\t", | ||
404 | "CustomAction:CustomAction2\t51\tTestAdvtExecuteSequenceProperty\t1\t", | ||
405 | "CustomAction:CustomActionWithHiddenTarget\t9217\tBinary1\tInvalidEntryPoint\t", | ||
406 | "CustomAction:DiscardOptimismAllBeingsWhoProceed\t19\t\tAbandon hope all ye who enter here.\t", | ||
407 | "InstallExecuteSequence:CostFinalize\t\t1000", | ||
408 | "InstallExecuteSequence:CostInitialize\t\t800", | ||
409 | "InstallExecuteSequence:CustomAction2\t\t801", | ||
410 | "InstallExecuteSequence:FileCost\t\t900", | ||
411 | "InstallExecuteSequence:FindRelatedProducts\t\t25", | ||
412 | "InstallExecuteSequence:InstallFiles\t\t4000", | ||
413 | "InstallExecuteSequence:InstallFinalize\t\t6600", | ||
414 | "InstallExecuteSequence:InstallInitialize\t\t1500", | ||
415 | "InstallExecuteSequence:InstallValidate\t\t1400", | ||
416 | "InstallExecuteSequence:LaunchConditions\t\t100", | ||
417 | "InstallExecuteSequence:MigrateFeatureStates\t\t1200", | ||
418 | "InstallExecuteSequence:ProcessComponents\t\t1600", | ||
419 | "InstallExecuteSequence:PublishFeatures\t\t6300", | ||
420 | "InstallExecuteSequence:PublishProduct\t\t6400", | ||
421 | "InstallExecuteSequence:RegisterProduct\t\t6100", | ||
422 | "InstallExecuteSequence:RegisterUser\t\t6000", | ||
423 | "InstallExecuteSequence:RemoveExistingProducts\t\t1401", | ||
424 | "InstallExecuteSequence:RemoveFiles\t\t3500", | ||
425 | "InstallExecuteSequence:UnpublishFeatures\t\t1800", | ||
426 | "InstallExecuteSequence:ValidateProductID\t\t700", | ||
427 | "InstallUISequence:CostFinalize\t\t1000", | ||
428 | "InstallUISequence:CostInitialize\t\t800", | ||
429 | "InstallUISequence:CustomAction2\t\t801", | ||
430 | "InstallUISequence:ExecuteAction\t\t1300", | ||
431 | "InstallUISequence:FileCost\t\t900", | ||
432 | "InstallUISequence:FindRelatedProducts\t\t25", | ||
433 | "InstallUISequence:LaunchConditions\t\t100", | ||
434 | "InstallUISequence:MigrateFeatureStates\t\t1200", | ||
435 | "InstallUISequence:ValidateProductID\t\t700", | ||
436 | "Property:MsiHiddenProperties\tCustomActionWithHiddenTarget", | ||
437 | }, results); | ||
438 | } | ||
439 | } | ||
440 | 342 | ||
441 | [Fact] | 343 | [Fact] |
442 | public void PopulatesDirectoryTableWithValidDefaultDir() | 344 | public void PopulatesDirectoryTableWithValidDefaultDir() |