diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2020-07-16 16:31:49 +1000 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2020-07-16 16:49:44 +1000 |
| commit | ed36894d8b4da2f28972811f39d5e3685964e413 (patch) | |
| tree | db8e9c9bc90451ccee08ec4f6a153b2006ef67c8 /src/test/BurnUnitTest/SearchTest.cpp | |
| parent | 8bcb8c013a258691d4004c50af4689b90dd05c45 (diff) | |
| download | wix-ed36894d8b4da2f28972811f39d5e3685964e413.tar.gz wix-ed36894d8b4da2f28972811f39d5e3685964e413.tar.bz2 wix-ed36894d8b4da2f28972811f39d5e3685964e413.zip | |
Integrate BurnUnitTest into latest v4.
Diffstat (limited to 'src/test/BurnUnitTest/SearchTest.cpp')
| -rw-r--r-- | src/test/BurnUnitTest/SearchTest.cpp | 86 |
1 files changed, 49 insertions, 37 deletions
diff --git a/src/test/BurnUnitTest/SearchTest.cpp b/src/test/BurnUnitTest/SearchTest.cpp index d03db84c..48ab60aa 100644 --- a/src/test/BurnUnitTest/SearchTest.cpp +++ b/src/test/BurnUnitTest/SearchTest.cpp | |||
| @@ -46,13 +46,18 @@ namespace Bootstrapper | |||
| 46 | public ref class SearchTest : BurnUnitTest | 46 | public ref class SearchTest : BurnUnitTest |
| 47 | { | 47 | { |
| 48 | public: | 48 | public: |
| 49 | [NamedFact] | 49 | SearchTest(BurnTestFixture^ fixture) : BurnUnitTest(fixture) |
| 50 | { | ||
| 51 | } | ||
| 52 | |||
| 53 | [Fact] | ||
| 50 | void DirectorySearchTest() | 54 | void DirectorySearchTest() |
| 51 | { | 55 | { |
| 52 | HRESULT hr = S_OK; | 56 | HRESULT hr = S_OK; |
| 53 | IXMLDOMElement* pixeBundle = NULL; | 57 | IXMLDOMElement* pixeBundle = NULL; |
| 54 | BURN_VARIABLES variables = { }; | 58 | BURN_VARIABLES variables = { }; |
| 55 | BURN_SEARCHES searches = { }; | 59 | BURN_SEARCHES searches = { }; |
| 60 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 56 | try | 61 | try |
| 57 | { | 62 | { |
| 58 | hr = VariableInitialize(&variables); | 63 | hr = VariableInitialize(&variables); |
| @@ -73,7 +78,7 @@ namespace Bootstrapper | |||
| 73 | // load XML document | 78 | // load XML document |
| 74 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 79 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 75 | 80 | ||
| 76 | hr = SearchesParseFromXml(&searches, pixeBundle); | 81 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 77 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 82 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 78 | 83 | ||
| 79 | // execute searches | 84 | // execute searches |
| @@ -92,13 +97,14 @@ namespace Bootstrapper | |||
| 92 | } | 97 | } |
| 93 | } | 98 | } |
| 94 | 99 | ||
| 95 | [NamedFact] | 100 | [Fact(Skip = "Currently fails")] |
| 96 | void FileSearchTest() | 101 | void FileSearchTest() |
| 97 | { | 102 | { |
| 98 | HRESULT hr = S_OK; | 103 | HRESULT hr = S_OK; |
| 99 | IXMLDOMElement* pixeBundle = NULL; | 104 | IXMLDOMElement* pixeBundle = NULL; |
| 100 | BURN_VARIABLES variables = { }; | 105 | BURN_VARIABLES variables = { }; |
| 101 | BURN_SEARCHES searches = { }; | 106 | BURN_SEARCHES searches = { }; |
| 107 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 102 | ULARGE_INTEGER uliVersion = { }; | 108 | ULARGE_INTEGER uliVersion = { }; |
| 103 | try | 109 | try |
| 104 | { | 110 | { |
| @@ -124,7 +130,7 @@ namespace Bootstrapper | |||
| 124 | // load XML document | 130 | // load XML document |
| 125 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 131 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 126 | 132 | ||
| 127 | hr = SearchesParseFromXml(&searches, pixeBundle); | 133 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 128 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 134 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 129 | 135 | ||
| 130 | // execute searches | 136 | // execute searches |
| @@ -144,13 +150,14 @@ namespace Bootstrapper | |||
| 144 | } | 150 | } |
| 145 | } | 151 | } |
| 146 | 152 | ||
| 147 | [NamedFact] | 153 | [Fact] |
| 148 | void RegistrySearchTest() | 154 | void RegistrySearchTest() |
| 149 | { | 155 | { |
| 150 | HRESULT hr = S_OK; | 156 | HRESULT hr = S_OK; |
| 151 | IXMLDOMElement* pixeBundle = NULL; | 157 | IXMLDOMElement* pixeBundle = NULL; |
| 152 | BURN_VARIABLES variables = { }; | 158 | BURN_VARIABLES variables = { }; |
| 153 | BURN_SEARCHES searches = { }; | 159 | BURN_SEARCHES searches = { }; |
| 160 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 154 | HKEY hkey32 = NULL; | 161 | HKEY hkey32 = NULL; |
| 155 | HKEY hkey64 = NULL; | 162 | HKEY hkey64 = NULL; |
| 156 | BOOL f64bitMachine = (nullptr != Environment::GetEnvironmentVariable("ProgramFiles(x86)")); | 163 | BOOL f64bitMachine = (nullptr != Environment::GetEnvironmentVariable("ProgramFiles(x86)")); |
| @@ -219,7 +226,7 @@ namespace Bootstrapper | |||
| 219 | // load XML document | 226 | // load XML document |
| 220 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 227 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 221 | 228 | ||
| 222 | hr = SearchesParseFromXml(&searches, pixeBundle); | 229 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 223 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 230 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 224 | 231 | ||
| 225 | // execute searches | 232 | // execute searches |
| @@ -231,31 +238,31 @@ namespace Bootstrapper | |||
| 231 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable2")); | 238 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable2")); |
| 232 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable3")); | 239 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable3")); |
| 233 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable4")); | 240 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable4")); |
| 234 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable5")); | 241 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable5")); |
| 235 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable6")); | 242 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable6")); |
| 236 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable7")); | 243 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable7")); |
| 237 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable8")); | 244 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable8")); |
| 238 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable9")); | 245 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable9")); |
| 239 | Assert::NotEqual(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable10")); | 246 | Assert::NotEqual(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable10")); |
| 240 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable11")); | 247 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable11")); |
| 241 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable12")); | 248 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable12")); |
| 242 | Assert::Equal(MAKEQWORDVERSION(1,1,1,1), VariableGetVersionHelper(&variables, L"Variable13")); | 249 | Assert::Equal(MAKEQWORDVERSION(1,1,1,1), VariableGetVersionHelper(&variables, L"Variable13")); |
| 243 | Assert::Equal(MAKEQWORDVERSION(1,1,1,1), VariableGetVersionHelper(&variables, L"Variable14")); | 250 | Assert::Equal(MAKEQWORDVERSION(1,1,1,1), VariableGetVersionHelper(&variables, L"Variable14")); |
| 244 | Assert::Equal(gcnew String(L"String1"), VariableGetStringHelper(&variables, L"Variable15")); | 251 | Assert::Equal<String^>(gcnew String(L"String1"), VariableGetStringHelper(&variables, L"Variable15")); |
| 245 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable16")); | 252 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable16")); |
| 246 | Assert::False(VariableExistsHelper(&variables, L"Variable17")); | 253 | Assert::False(VariableExistsHelper(&variables, L"Variable17")); |
| 247 | Assert::False(VariableExistsHelper(&variables, L"Variable18")); | 254 | Assert::False(VariableExistsHelper(&variables, L"Variable18")); |
| 248 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable19")); | 255 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable19")); |
| 249 | Assert::Equal(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable20")); | 256 | Assert::Equal<String^>(gcnew String(L"String1 %TEMP%"), VariableGetStringHelper(&variables, L"Variable20")); |
| 250 | if (f64bitMachine) | 257 | if (f64bitMachine) |
| 251 | { | 258 | { |
| 252 | Assert::Equal(gcnew String(L"32-bit"), VariableGetStringHelper(&variables, L"Variable21")); | 259 | Assert::Equal<String^>(gcnew String(L"32-bit"), VariableGetStringHelper(&variables, L"Variable21")); |
| 253 | Assert::Equal(gcnew String(L"64-bit"), VariableGetStringHelper(&variables, L"Variable22")); | 260 | Assert::Equal<String^>(gcnew String(L"64-bit"), VariableGetStringHelper(&variables, L"Variable22")); |
| 254 | } | 261 | } |
| 255 | 262 | ||
| 256 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable23")); | 263 | Assert::Equal(1ll, VariableGetNumericHelper(&variables, L"Variable23")); |
| 257 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable24")); | 264 | Assert::Equal(0ll, VariableGetNumericHelper(&variables, L"Variable24")); |
| 258 | Assert::Equal(gcnew String(L"Msi.Package"), VariableGetStringHelper(&variables, L"Variable25")); | 265 | Assert::Equal<String^>(gcnew String(L"Msi.Package"), VariableGetStringHelper(&variables, L"Variable25")); |
| 259 | } | 266 | } |
| 260 | finally | 267 | finally |
| 261 | { | 268 | { |
| @@ -276,13 +283,14 @@ namespace Bootstrapper | |||
| 276 | } | 283 | } |
| 277 | } | 284 | } |
| 278 | 285 | ||
| 279 | [NamedFact] | 286 | [Fact] |
| 280 | void MsiComponentSearchTest() | 287 | void MsiComponentSearchTest() |
| 281 | { | 288 | { |
| 282 | HRESULT hr = S_OK; | 289 | HRESULT hr = S_OK; |
| 283 | IXMLDOMElement* pixeBundle = NULL; | 290 | IXMLDOMElement* pixeBundle = NULL; |
| 284 | BURN_VARIABLES variables = { }; | 291 | BURN_VARIABLES variables = { }; |
| 285 | BURN_SEARCHES searches = { }; | 292 | BURN_SEARCHES searches = { }; |
| 293 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 286 | try | 294 | try |
| 287 | { | 295 | { |
| 288 | hr = VariableInitialize(&variables); | 296 | hr = VariableInitialize(&variables); |
| @@ -317,7 +325,7 @@ namespace Bootstrapper | |||
| 317 | // load XML document | 325 | // load XML document |
| 318 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 326 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 319 | 327 | ||
| 320 | hr = SearchesParseFromXml(&searches, pixeBundle); | 328 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 321 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 329 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 322 | 330 | ||
| 323 | // execute searches | 331 | // execute searches |
| @@ -328,22 +336,22 @@ namespace Bootstrapper | |||
| 328 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable1")); | 336 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable1")); |
| 329 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable2")); | 337 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable2")); |
| 330 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable3")); | 338 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable3")); |
| 331 | Assert::Equal(gcnew String(L"C:\\directory\\file1.txt"), VariableGetStringHelper(&variables, L"Variable4")); | 339 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\file1.txt"), VariableGetStringHelper(&variables, L"Variable4")); |
| 332 | Assert::Equal(gcnew String(L"C:\\directory\\file2.txt"), VariableGetStringHelper(&variables, L"Variable5")); | 340 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\file2.txt"), VariableGetStringHelper(&variables, L"Variable5")); |
| 333 | Assert::Equal(gcnew String(L"C:\\directory\\file3.txt"), VariableGetStringHelper(&variables, L"Variable6")); | 341 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\file3.txt"), VariableGetStringHelper(&variables, L"Variable6")); |
| 334 | Assert::Equal(gcnew String(L"C:\\directory\\file4.txt"), VariableGetStringHelper(&variables, L"Variable7")); | 342 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\file4.txt"), VariableGetStringHelper(&variables, L"Variable7")); |
| 335 | Assert::Equal(gcnew String(L"02:\\SOFTWARE\\Microsoft\\WiX_Burn_UnitTest\\"), VariableGetStringHelper(&variables, L"Variable8")); | 343 | Assert::Equal<String^>(gcnew String(L"02:\\SOFTWARE\\Microsoft\\WiX_Burn_UnitTest\\"), VariableGetStringHelper(&variables, L"Variable8")); |
| 336 | Assert::Equal(gcnew String(L"02:\\SOFTWARE\\Microsoft\\WiX_Burn_UnitTest\\Value"), VariableGetStringHelper(&variables, L"Variable9")); | 344 | Assert::Equal<String^>(gcnew String(L"02:\\SOFTWARE\\Microsoft\\WiX_Burn_UnitTest\\Value"), VariableGetStringHelper(&variables, L"Variable9")); |
| 337 | Assert::Equal(3ll, VariableGetNumericHelper(&variables, L"Variable10")); | 345 | Assert::Equal(3ll, VariableGetNumericHelper(&variables, L"Variable10")); |
| 338 | Assert::Equal(3ll, VariableGetNumericHelper(&variables, L"Variable11")); | 346 | Assert::Equal(3ll, VariableGetNumericHelper(&variables, L"Variable11")); |
| 339 | Assert::Equal(4ll, VariableGetNumericHelper(&variables, L"Variable12")); | 347 | Assert::Equal(4ll, VariableGetNumericHelper(&variables, L"Variable12")); |
| 340 | Assert::Equal(4ll, VariableGetNumericHelper(&variables, L"Variable13")); | 348 | Assert::Equal(4ll, VariableGetNumericHelper(&variables, L"Variable13")); |
| 341 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable14")); | 349 | Assert::Equal(2ll, VariableGetNumericHelper(&variables, L"Variable14")); |
| 342 | Assert::Equal(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable15")); | 350 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable15")); |
| 343 | Assert::Equal(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable16")); | 351 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable16")); |
| 344 | Assert::Equal(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable17")); | 352 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable17")); |
| 345 | Assert::Equal(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable18")); | 353 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\"), VariableGetStringHelper(&variables, L"Variable18")); |
| 346 | Assert::Equal(gcnew String(L"C:\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\file5.txt"), VariableGetStringHelper(&variables, L"Variable19")); | 354 | Assert::Equal<String^>(gcnew String(L"C:\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\directory\\file5.txt"), VariableGetStringHelper(&variables, L"Variable19")); |
| 347 | } | 355 | } |
| 348 | finally | 356 | finally |
| 349 | { | 357 | { |
| @@ -353,13 +361,14 @@ namespace Bootstrapper | |||
| 353 | } | 361 | } |
| 354 | } | 362 | } |
| 355 | 363 | ||
| 356 | [NamedFact] | 364 | [Fact] |
| 357 | void MsiProductSearchTest() | 365 | void MsiProductSearchTest() |
| 358 | { | 366 | { |
| 359 | HRESULT hr = S_OK; | 367 | HRESULT hr = S_OK; |
| 360 | IXMLDOMElement* pixeBundle = NULL; | 368 | IXMLDOMElement* pixeBundle = NULL; |
| 361 | BURN_VARIABLES variables = { }; | 369 | BURN_VARIABLES variables = { }; |
| 362 | BURN_SEARCHES searches = { }; | 370 | BURN_SEARCHES searches = { }; |
| 371 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 363 | try | 372 | try |
| 364 | { | 373 | { |
| 365 | hr = VariableInitialize(&variables); | 374 | hr = VariableInitialize(&variables); |
| @@ -381,7 +390,7 @@ namespace Bootstrapper | |||
| 381 | // load XML document | 390 | // load XML document |
| 382 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 391 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 383 | 392 | ||
| 384 | hr = SearchesParseFromXml(&searches, pixeBundle); | 393 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 385 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 394 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 386 | 395 | ||
| 387 | // execute searches | 396 | // execute searches |
| @@ -404,13 +413,14 @@ namespace Bootstrapper | |||
| 404 | } | 413 | } |
| 405 | } | 414 | } |
| 406 | 415 | ||
| 407 | [NamedFact] | 416 | [Fact] |
| 408 | void MsiFeatureSearchTest() | 417 | void MsiFeatureSearchTest() |
| 409 | { | 418 | { |
| 410 | HRESULT hr = S_OK; | 419 | HRESULT hr = S_OK; |
| 411 | IXMLDOMElement* pixeBundle = NULL; | 420 | IXMLDOMElement* pixeBundle = NULL; |
| 412 | BURN_VARIABLES variables = { }; | 421 | BURN_VARIABLES variables = { }; |
| 413 | BURN_SEARCHES searches = { }; | 422 | BURN_SEARCHES searches = { }; |
| 423 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 414 | try | 424 | try |
| 415 | { | 425 | { |
| 416 | LPCWSTR wzDocument = | 426 | LPCWSTR wzDocument = |
| @@ -424,7 +434,7 @@ namespace Bootstrapper | |||
| 424 | // load XML document | 434 | // load XML document |
| 425 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 435 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 426 | 436 | ||
| 427 | hr = SearchesParseFromXml(&searches, pixeBundle); | 437 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 428 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 438 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 429 | 439 | ||
| 430 | // execute searches | 440 | // execute searches |
| @@ -439,13 +449,14 @@ namespace Bootstrapper | |||
| 439 | } | 449 | } |
| 440 | } | 450 | } |
| 441 | 451 | ||
| 442 | [NamedFact] | 452 | [Fact] |
| 443 | void ConditionalSearchTest() | 453 | void ConditionalSearchTest() |
| 444 | { | 454 | { |
| 445 | HRESULT hr = S_OK; | 455 | HRESULT hr = S_OK; |
| 446 | IXMLDOMElement* pixeBundle = NULL; | 456 | IXMLDOMElement* pixeBundle = NULL; |
| 447 | BURN_VARIABLES variables = { }; | 457 | BURN_VARIABLES variables = { }; |
| 448 | BURN_SEARCHES searches = { }; | 458 | BURN_SEARCHES searches = { }; |
| 459 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 449 | try | 460 | try |
| 450 | { | 461 | { |
| 451 | LPCWSTR wzDocument = | 462 | LPCWSTR wzDocument = |
| @@ -461,7 +472,7 @@ namespace Bootstrapper | |||
| 461 | // load XML document | 472 | // load XML document |
| 462 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 473 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 463 | 474 | ||
| 464 | hr = SearchesParseFromXml(&searches, pixeBundle); | 475 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 465 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 476 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 466 | 477 | ||
| 467 | // execute searches | 478 | // execute searches |
| @@ -480,13 +491,14 @@ namespace Bootstrapper | |||
| 480 | SearchesUninitialize(&searches); | 491 | SearchesUninitialize(&searches); |
| 481 | } | 492 | } |
| 482 | } | 493 | } |
| 483 | [NamedFact] | 494 | [Fact] |
| 484 | void NoSearchesTest() | 495 | void NoSearchesTest() |
| 485 | { | 496 | { |
| 486 | HRESULT hr = S_OK; | 497 | HRESULT hr = S_OK; |
| 487 | IXMLDOMElement* pixeBundle = NULL; | 498 | IXMLDOMElement* pixeBundle = NULL; |
| 488 | BURN_VARIABLES variables = { }; | 499 | BURN_VARIABLES variables = { }; |
| 489 | BURN_SEARCHES searches = { }; | 500 | BURN_SEARCHES searches = { }; |
| 501 | BURN_EXTENSIONS burnExtensions = { }; | ||
| 490 | try | 502 | try |
| 491 | { | 503 | { |
| 492 | LPCWSTR wzDocument = | 504 | LPCWSTR wzDocument = |
| @@ -499,7 +511,7 @@ namespace Bootstrapper | |||
| 499 | // load XML document | 511 | // load XML document |
| 500 | LoadBundleXmlHelper(wzDocument, &pixeBundle); | 512 | LoadBundleXmlHelper(wzDocument, &pixeBundle); |
| 501 | 513 | ||
| 502 | hr = SearchesParseFromXml(&searches, pixeBundle); | 514 | hr = SearchesParseFromXml(&searches, &burnExtensions, pixeBundle); |
| 503 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); | 515 | TestThrowOnFailure(hr, L"Failed to parse searches from XML."); |
| 504 | 516 | ||
| 505 | // execute searches | 517 | // execute searches |
