diff options
| author | Bob Arnson <bob@firegiant.com> | 2022-11-21 16:57:23 -0500 |
|---|---|---|
| committer | Bob Arnson <github@bobs.org> | 2022-12-06 15:16:20 -0500 |
| commit | c4ffb9967e4e4f7d67f5925208e3e0a885e903c5 (patch) | |
| tree | 3f34ca158b1bc39d5b6aaee2a4bb2f93dae0d365 /src/ext/UI/test | |
| parent | 0af946e794ec85801dc542edd9905f9e9e18e7ed (diff) | |
| download | wix-c4ffb9967e4e4f7d67f5925208e3e0a885e903c5.tar.gz wix-c4ffb9967e4e4f7d67f5925208e3e0a885e903c5.tar.bz2 wix-c4ffb9967e4e4f7d67f5925208e3e0a885e903c5.zip | |
Better solution to the UI custom action "problem."
Add platform-specific fragments that are referenced by the compiler
extension. That makes it easier to customize: Just copy the dialog set
authoring and rename, like in v3.
Diffstat (limited to 'src/ext/UI/test')
| -rw-r--r-- | src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs | 80 |
1 files changed, 58 insertions, 22 deletions
diff --git a/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs b/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs index 4fd203c5..c637b5dd 100644 --- a/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs +++ b/src/ext/UI/test/WixToolsetTest.UI/UIExtensionFixture.cs | |||
| @@ -20,7 +20,7 @@ namespace WixToolsetTest.UI | |||
| 20 | var bindFolder = TestData.Get(@"TestData\data"); | 20 | var bindFolder = TestData.Get(@"TestData\data"); |
| 21 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 21 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 22 | 22 | ||
| 23 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction"); | 23 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 24 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); | 24 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); |
| 25 | WixAssert.CompareLineByLine(new[] | 25 | WixAssert.CompareLineByLine(new[] |
| 26 | { | 26 | { |
| @@ -38,9 +38,15 @@ namespace WixToolsetTest.UI | |||
| 38 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", | 38 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", |
| 39 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", | 39 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", |
| 40 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", | 40 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", |
| 41 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X86\tPrintEula\t", | 41 | "CustomAction:WixUIPrintEula_X86\t65\tWixUiCa_X86\tPrintEula\t", |
| 42 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X86\tValidatePath\t", | 42 | "CustomAction:WixUIValidatePath_X86\t65\tWixUiCa_X86\tValidatePath\t", |
| 43 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 43 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 44 | WixAssert.CompareLineByLine(new[] | ||
| 45 | { | ||
| 46 | "ControlEvent:AdvancedWelcomeEulaDlg\tPrint\tDoAction\tWixUIPrintEula_X86\t1\t1", | ||
| 47 | "ControlEvent:BrowseDlg\tOK\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t1", | ||
| 48 | "ControlEvent:InstallDirDlg\tNext\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t2", | ||
| 49 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).ToArray()); | ||
| 44 | } | 50 | } |
| 45 | 51 | ||
| 46 | [Fact] | 52 | [Fact] |
| @@ -50,7 +56,7 @@ namespace WixToolsetTest.UI | |||
| 50 | var bindFolder = TestData.Get(@"TestData\data"); | 56 | var bindFolder = TestData.Get(@"TestData\data"); |
| 51 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 57 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 52 | 58 | ||
| 53 | var results = build.BuildAndQuery(BuildX64, "Binary", "Dialog", "CustomAction"); | 59 | var results = build.BuildAndQuery(BuildX64, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 54 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); | 60 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); |
| 55 | WixAssert.CompareLineByLine(new[] | 61 | WixAssert.CompareLineByLine(new[] |
| 56 | { | 62 | { |
| @@ -68,9 +74,15 @@ namespace WixToolsetTest.UI | |||
| 68 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", | 74 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", |
| 69 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", | 75 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", |
| 70 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", | 76 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", |
| 71 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X64\tPrintEula\t", | 77 | "CustomAction:WixUIPrintEula_X64\t65\tWixUiCa_X64\tPrintEula\t", |
| 72 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X64\tValidatePath\t", | 78 | "CustomAction:WixUIValidatePath_X64\t65\tWixUiCa_X64\tValidatePath\t", |
| 73 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 79 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 80 | WixAssert.CompareLineByLine(new[] | ||
| 81 | { | ||
| 82 | "ControlEvent:AdvancedWelcomeEulaDlg\tPrint\tDoAction\tWixUIPrintEula_X64\t1\t1", | ||
| 83 | "ControlEvent:BrowseDlg\tOK\tDoAction\tWixUIValidatePath_X64\tNOT WIXUI_DONTVALIDATEPATH\t1", | ||
| 84 | "ControlEvent:InstallDirDlg\tNext\tDoAction\tWixUIValidatePath_X64\tNOT WIXUI_DONTVALIDATEPATH\t2", | ||
| 85 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).ToArray()); | ||
| 74 | } | 86 | } |
| 75 | 87 | ||
| 76 | [Fact] | 88 | [Fact] |
| @@ -80,7 +92,7 @@ namespace WixToolsetTest.UI | |||
| 80 | var bindFolder = TestData.Get(@"TestData\data"); | 92 | var bindFolder = TestData.Get(@"TestData\data"); |
| 81 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 93 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 82 | 94 | ||
| 83 | var results = build.BuildAndQuery(BuildARM64, "Binary", "Dialog", "CustomAction"); | 95 | var results = build.BuildAndQuery(BuildARM64, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 84 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); | 96 | Assert.Single(results, result => result.StartsWith("Dialog:AdvancedWelcomeEulaDlg\t")); |
| 85 | WixAssert.CompareLineByLine(new[] | 97 | WixAssert.CompareLineByLine(new[] |
| 86 | { | 98 | { |
| @@ -98,9 +110,15 @@ namespace WixToolsetTest.UI | |||
| 98 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", | 110 | "CustomAction:WixSetDefaultPerUserFolder\t51\tWixPerUserFolder\t[LocalAppDataFolder]Apps\\[ApplicationFolderName]\t", |
| 99 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", | 111 | "CustomAction:WixSetPerMachineFolder\t51\tAPPLICATIONFOLDER\t[WixPerMachineFolder]\t", |
| 100 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", | 112 | "CustomAction:WixSetPerUserFolder\t51\tAPPLICATIONFOLDER\t[WixPerUserFolder]\t", |
| 101 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_A64\tPrintEula\t", | 113 | "CustomAction:WixUIPrintEula_A64\t65\tWixUiCa_A64\tPrintEula\t", |
| 102 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_A64\tValidatePath\t", | 114 | "CustomAction:WixUIValidatePath_A64\t65\tWixUiCa_A64\tValidatePath\t", |
| 103 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 115 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 116 | WixAssert.CompareLineByLine(new[] | ||
| 117 | { | ||
| 118 | "ControlEvent:AdvancedWelcomeEulaDlg\tPrint\tDoAction\tWixUIPrintEula_A64\t1\t1", | ||
| 119 | "ControlEvent:BrowseDlg\tOK\tDoAction\tWixUIValidatePath_A64\tNOT WIXUI_DONTVALIDATEPATH\t1", | ||
| 120 | "ControlEvent:InstallDirDlg\tNext\tDoAction\tWixUIValidatePath_A64\tNOT WIXUI_DONTVALIDATEPATH\t2", | ||
| 121 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).ToArray()); | ||
| 104 | } | 122 | } |
| 105 | 123 | ||
| 106 | [Fact] | 124 | [Fact] |
| @@ -110,7 +128,7 @@ namespace WixToolsetTest.UI | |||
| 110 | var bindFolder = TestData.Get(@"TestData\data"); | 128 | var bindFolder = TestData.Get(@"TestData\data"); |
| 111 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 129 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 112 | 130 | ||
| 113 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction"); | 131 | var results = build.BuildAndQuery(BuildX64, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 114 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t")); | 132 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t")); |
| 115 | Assert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t")); | 133 | Assert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t")); |
| 116 | Assert.Empty(results.Where(result => result.StartsWith("Dialog:SetupTypeDlg\t"))); | 134 | Assert.Empty(results.Where(result => result.StartsWith("Dialog:SetupTypeDlg\t"))); |
| @@ -122,13 +140,16 @@ namespace WixToolsetTest.UI | |||
| 122 | "Binary:WixUI_Bmp_Up\t[Binary data]", | 140 | "Binary:WixUI_Bmp_Up\t[Binary data]", |
| 123 | "Binary:WixUI_Ico_Exclam\t[Binary data]", | 141 | "Binary:WixUI_Ico_Exclam\t[Binary data]", |
| 124 | "Binary:WixUI_Ico_Info\t[Binary data]", | 142 | "Binary:WixUI_Ico_Info\t[Binary data]", |
| 125 | "Binary:WixUiCa_X86\t[Binary data]", | 143 | "Binary:WixUiCa_X64\t[Binary data]", |
| 126 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); | 144 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); |
| 127 | WixAssert.CompareLineByLine(new[] | 145 | WixAssert.CompareLineByLine(new[] |
| 128 | { | 146 | { |
| 129 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X86\tPrintEula\t", | 147 | "CustomAction:WixUIPrintEula_X64\t65\tWixUiCa_X64\tPrintEula\t", |
| 130 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X86\tValidatePath\t", | ||
| 131 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 148 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 149 | WixAssert.CompareLineByLine(new[] | ||
| 150 | { | ||
| 151 | "ControlEvent:LicenseAgreementDlg\tPrint\tDoAction\tWixUIPrintEula_X64\t1\t1", | ||
| 152 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).ToArray()); | ||
| 132 | } | 153 | } |
| 133 | 154 | ||
| 134 | [Fact] | 155 | [Fact] |
| @@ -138,7 +159,7 @@ namespace WixToolsetTest.UI | |||
| 138 | var bindFolder = TestData.Get(@"TestData\data"); | 159 | var bindFolder = TestData.Get(@"TestData\data"); |
| 139 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 160 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 140 | 161 | ||
| 141 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction", "Property"); | 162 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction", "Property", "ControlEvent"); |
| 142 | Assert.Single(results, result => result.StartsWith("Dialog:InstallDirDlg\t")); | 163 | Assert.Single(results, result => result.StartsWith("Dialog:InstallDirDlg\t")); |
| 143 | WixAssert.CompareLineByLine(new[] | 164 | WixAssert.CompareLineByLine(new[] |
| 144 | { | 165 | { |
| @@ -152,13 +173,19 @@ namespace WixToolsetTest.UI | |||
| 152 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); | 173 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); |
| 153 | WixAssert.CompareLineByLine(new[] | 174 | WixAssert.CompareLineByLine(new[] |
| 154 | { | 175 | { |
| 155 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X86\tPrintEula\t", | 176 | "CustomAction:WixUIPrintEula_X86\t65\tWixUiCa_X86\tPrintEula\t", |
| 156 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X86\tValidatePath\t", | 177 | "CustomAction:WixUIValidatePath_X86\t65\tWixUiCa_X86\tValidatePath\t", |
| 157 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 178 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 158 | WixAssert.CompareLineByLine(new[] | 179 | WixAssert.CompareLineByLine(new[] |
| 159 | { | 180 | { |
| 160 | "Property:WIXUI_INSTALLDIR\tINSTALLFOLDER", | 181 | "Property:WIXUI_INSTALLDIR\tINSTALLFOLDER", |
| 161 | }, results.Where(r => r.StartsWith("Property:WIXUI")).ToArray()); | 182 | }, results.Where(r => r.StartsWith("Property:WIXUI")).ToArray()); |
| 183 | WixAssert.CompareLineByLine(new[] | ||
| 184 | { | ||
| 185 | "ControlEvent:BrowseDlg\tOK\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t3", | ||
| 186 | "ControlEvent:InstallDirDlg\tNext\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t2", | ||
| 187 | "ControlEvent:LicenseAgreementDlg\tPrint\tDoAction\tWixUIPrintEula_X86\t1\t1", | ||
| 188 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).OrderBy(s => s).ToArray()); | ||
| 162 | } | 189 | } |
| 163 | 190 | ||
| 164 | [Fact] | 191 | [Fact] |
| @@ -168,7 +195,7 @@ namespace WixToolsetTest.UI | |||
| 168 | var bindFolder = TestData.Get(@"TestData\data"); | 195 | var bindFolder = TestData.Get(@"TestData\data"); |
| 169 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 196 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 170 | 197 | ||
| 171 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction"); | 198 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 172 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeEulaDlg\t")); | 199 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeEulaDlg\t")); |
| 173 | WixAssert.CompareLineByLine(new[] | 200 | WixAssert.CompareLineByLine(new[] |
| 174 | { | 201 | { |
| @@ -182,9 +209,12 @@ namespace WixToolsetTest.UI | |||
| 182 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); | 209 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); |
| 183 | WixAssert.CompareLineByLine(new[] | 210 | WixAssert.CompareLineByLine(new[] |
| 184 | { | 211 | { |
| 185 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X86\tPrintEula\t", | 212 | "CustomAction:WixUIPrintEula_X86\t65\tWixUiCa_X86\tPrintEula\t", |
| 186 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X86\tValidatePath\t", | ||
| 187 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 213 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 214 | WixAssert.CompareLineByLine(new[] | ||
| 215 | { | ||
| 216 | "ControlEvent:WelcomeEulaDlg\tPrint\tDoAction\tWixUIPrintEula_X86\t1\t1", | ||
| 217 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).OrderBy(s => s).ToArray()); | ||
| 188 | } | 218 | } |
| 189 | 219 | ||
| 190 | [Fact] | 220 | [Fact] |
| @@ -232,7 +262,7 @@ namespace WixToolsetTest.UI | |||
| 232 | var bindFolder = TestData.Get(@"TestData\data"); | 262 | var bindFolder = TestData.Get(@"TestData\data"); |
| 233 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); | 263 | var build = new Builder(folder, typeof(UIExtensionFactory), new[] { bindFolder }); |
| 234 | 264 | ||
| 235 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction"); | 265 | var results = build.BuildAndQuery(Build, "Binary", "Dialog", "CustomAction", "ControlEvent"); |
| 236 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t")); | 266 | Assert.Single(results, result => result.StartsWith("Dialog:WelcomeDlg\t")); |
| 237 | Assert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t")); | 267 | Assert.Single(results, result => result.StartsWith("Dialog:CustomizeDlg\t")); |
| 238 | Assert.Single(results, result => result.StartsWith("Dialog:SetupTypeDlg\t")); | 268 | Assert.Single(results, result => result.StartsWith("Dialog:SetupTypeDlg\t")); |
| @@ -248,9 +278,15 @@ namespace WixToolsetTest.UI | |||
| 248 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); | 278 | }, results.Where(r => r.StartsWith("Binary:")).ToArray()); |
| 249 | WixAssert.CompareLineByLine(new[] | 279 | WixAssert.CompareLineByLine(new[] |
| 250 | { | 280 | { |
| 251 | "CustomAction:WixUIPrintEula\t65\tWixUiCa_X86\tPrintEula\t", | 281 | "CustomAction:WixUIPrintEula_X86\t65\tWixUiCa_X86\tPrintEula\t", |
| 252 | "CustomAction:WixUIValidatePath\t65\tWixUiCa_X86\tValidatePath\t", | 282 | "CustomAction:WixUIValidatePath_X86\t65\tWixUiCa_X86\tValidatePath\t", |
| 253 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); | 283 | }, results.Where(r => r.StartsWith("CustomAction:")).ToArray()); |
| 284 | WixAssert.CompareLineByLine(new[] | ||
| 285 | { | ||
| 286 | "ControlEvent:BrowseDlg\tOK\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t3", | ||
| 287 | "ControlEvent:InstallDirDlg\tNext\tDoAction\tWixUIValidatePath_X86\tNOT WIXUI_DONTVALIDATEPATH\t2", | ||
| 288 | "ControlEvent:LicenseAgreementDlg\tPrint\tDoAction\tWixUIPrintEula_X86\t1\t1", | ||
| 289 | }, results.Where(result => result.StartsWith("ControlEvent:") && result.Contains("DoAction")).ToArray()); | ||
| 254 | } | 290 | } |
| 255 | 291 | ||
| 256 | [Fact] | 292 | [Fact] |
