@@ -4402,15 +4402,6 @@ TEST_F(ManifestParserTest, GCMSenderIDParseRules) {
4402
4402
}
4403
4403
}
4404
4404
4405
- TEST_F (ManifestParserTest, CaptureLinksParseRules) {
4406
- // Feature not enabled, should not be parsed.
4407
- {
4408
- auto & manifest = ParseManifest (R"( { "capture_links": "none" })" );
4409
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4410
- EXPECT_EQ (0u , GetErrorCount ());
4411
- }
4412
- }
4413
-
4414
4405
TEST_F (ManifestParserTest, StorageIsolationDisabled) {
4415
4406
// Feature not enabled, should not be parsed.
4416
4407
{
@@ -4447,110 +4438,118 @@ TEST_F(ManifestParserTest, StorageIsolationBadScope) {
4447
4438
}
4448
4439
}
4449
4440
4450
- class ManifestCaptureLinksParserTest : public ManifestParserTest {
4451
- public:
4452
- ManifestCaptureLinksParserTest () {
4453
- scoped_feature_list_.InitAndEnableFeature (
4454
- features::kWebAppEnableLinkCapturing );
4455
- }
4456
-
4457
- private:
4458
- base::test::ScopedFeatureList scoped_feature_list_;
4459
- };
4460
-
4461
- TEST_F (ManifestCaptureLinksParserTest, CaptureLinksParseRules) {
4462
- // Smoke test.
4463
- {
4464
- auto & manifest = ParseManifest (R"( { "capture_links": "none" })" );
4465
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNone );
4466
- EXPECT_EQ (0u , GetErrorCount ());
4467
- }
4441
+ TEST_F (ManifestParserTest, CaptureLinksParseRules) {
4468
4442
{
4469
- auto & manifest = ParseManifest (R"( { "capture_links": ["new-client"] })" );
4470
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNewClient );
4471
- EXPECT_EQ (0u , GetErrorCount ());
4472
- }
4443
+ ScopedWebAppLinkCapturingForTest feature (false );
4473
4444
4474
- // Empty array is fine.
4475
- {
4476
- auto & manifest = ParseManifest (R"( { "capture_links": [] })" );
4445
+ // Feature not enabled, should not be parsed.
4446
+ auto & manifest = ParseManifest (R"( { "capture_links": "none" })" );
4477
4447
EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4478
4448
EXPECT_EQ (0u , GetErrorCount ());
4479
4449
}
4480
4450
4481
- // Unknown single string.
4482
- {
4483
- auto & manifest = ParseManifest (R"( { "capture_links": "unknown" })" );
4484
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4485
- EXPECT_EQ (1u , GetErrorCount ());
4486
- EXPECT_EQ (" capture_links value 'unknown' ignored, unknown value." ,
4487
- errors ()[0 ]);
4488
- }
4489
-
4490
- // First known value in array is used.
4491
4451
{
4492
- auto & manifest = ParseManifest (
4493
- R"( { "capture_links": ["none", "existing-client-navigate"] })" );
4494
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNone );
4495
- EXPECT_EQ (0u , GetErrorCount ());
4496
- }
4497
- {
4498
- auto & manifest = ParseManifest (R"( {
4499
- "capture_links": [
4500
- "unknown",
4501
- "existing-client-navigate",
4502
- "also-unknown",
4503
- "none"
4504
- ]
4505
- })" );
4506
- EXPECT_EQ (manifest->capture_links ,
4507
- mojom::blink::CaptureLinks::kExistingClientNavigate );
4508
- EXPECT_EQ (1u , GetErrorCount ());
4509
- EXPECT_EQ (" capture_links value 'unknown' ignored, unknown value." ,
4510
- errors ()[0 ]);
4511
- }
4512
- {
4513
- auto & manifest = ParseManifest (R"( {
4514
- "capture_links": [
4515
- 1234,
4516
- "new-client",
4517
- null,
4518
- "none"
4519
- ]
4520
- })" );
4521
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNewClient );
4522
- EXPECT_EQ (1u , GetErrorCount ());
4523
- EXPECT_EQ (" capture_links value '1234' ignored, string expected." ,
4524
- errors ()[0 ]);
4525
- }
4526
-
4527
- // Don't parse if the property isn't a string or array of strings.
4528
- {
4529
- auto & manifest = ParseManifest (R"( { "capture_links": null })" );
4530
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4531
- EXPECT_EQ (1u , GetErrorCount ());
4532
- EXPECT_EQ (
4533
- " property 'capture_links' ignored, type string or array of strings "
4534
- " expected." ,
4535
- errors ()[0 ]);
4536
- }
4537
- {
4538
- auto & manifest = ParseManifest (R"( { "capture_links": 1234 })" );
4539
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4540
- EXPECT_EQ (1u , GetErrorCount ());
4541
- EXPECT_EQ (
4542
- " property 'capture_links' ignored, type string or array of strings "
4543
- " expected." ,
4544
- errors ()[0 ]);
4545
- }
4546
- {
4547
- auto & manifest = ParseManifest (R"( { "capture_links": [12, 34] })" );
4548
- EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kUndefined );
4549
- EXPECT_EQ (2u , GetErrorCount ());
4550
- EXPECT_EQ (" capture_links value '12' ignored, string expected." ,
4551
- errors ()[0 ]);
4552
- EXPECT_EQ (" capture_links value '34' ignored, string expected." ,
4553
- errors ()[1 ]);
4452
+ ScopedWebAppLinkCapturingForTest feature (true );
4453
+ // Smoke test.
4454
+ {
4455
+ auto & manifest = ParseManifest (R"( { "capture_links": "none" })" );
4456
+ EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNone );
4457
+ EXPECT_EQ (0u , GetErrorCount ());
4458
+ }
4459
+ {
4460
+ auto & manifest = ParseManifest (R"( { "capture_links": ["new-client"] })" );
4461
+ EXPECT_EQ (manifest->capture_links ,
4462
+ mojom::blink::CaptureLinks::kNewClient );
4463
+ EXPECT_EQ (0u , GetErrorCount ());
4464
+ }
4465
+
4466
+ // Empty array is fine.
4467
+ {
4468
+ auto & manifest = ParseManifest (R"( { "capture_links": [] })" );
4469
+ EXPECT_EQ (manifest->capture_links ,
4470
+ mojom::blink::CaptureLinks::kUndefined );
4471
+ EXPECT_EQ (0u , GetErrorCount ());
4472
+ }
4473
+
4474
+ // Unknown single string.
4475
+ {
4476
+ auto & manifest = ParseManifest (R"( { "capture_links": "unknown" })" );
4477
+ EXPECT_EQ (manifest->capture_links ,
4478
+ mojom::blink::CaptureLinks::kUndefined );
4479
+ EXPECT_EQ (1u , GetErrorCount ());
4480
+ EXPECT_EQ (" capture_links value 'unknown' ignored, unknown value." ,
4481
+ errors ()[0 ]);
4482
+ }
4483
+
4484
+ // First known value in array is used.
4485
+ {
4486
+ auto & manifest = ParseManifest (
4487
+ R"( { "capture_links": ["none", "existing-client-navigate"] })" );
4488
+ EXPECT_EQ (manifest->capture_links , mojom::blink::CaptureLinks::kNone );
4489
+ EXPECT_EQ (0u , GetErrorCount ());
4490
+ }
4491
+ {
4492
+ auto & manifest = ParseManifest (R"( {
4493
+ "capture_links": [
4494
+ "unknown",
4495
+ "existing-client-navigate",
4496
+ "also-unknown",
4497
+ "none"
4498
+ ]
4499
+ })" );
4500
+ EXPECT_EQ (manifest->capture_links ,
4501
+ mojom::blink::CaptureLinks::kExistingClientNavigate );
4502
+ EXPECT_EQ (1u , GetErrorCount ());
4503
+ EXPECT_EQ (" capture_links value 'unknown' ignored, unknown value." ,
4504
+ errors ()[0 ]);
4505
+ }
4506
+ {
4507
+ auto & manifest = ParseManifest (R"( {
4508
+ "capture_links": [
4509
+ 1234,
4510
+ "new-client",
4511
+ null,
4512
+ "none"
4513
+ ]
4514
+ })" );
4515
+ EXPECT_EQ (manifest->capture_links ,
4516
+ mojom::blink::CaptureLinks::kNewClient );
4517
+ EXPECT_EQ (1u , GetErrorCount ());
4518
+ EXPECT_EQ (" capture_links value '1234' ignored, string expected." ,
4519
+ errors ()[0 ]);
4520
+ }
4521
+
4522
+ // Don't parse if the property isn't a string or array of strings.
4523
+ {
4524
+ auto & manifest = ParseManifest (R"( { "capture_links": null })" );
4525
+ EXPECT_EQ (manifest->capture_links ,
4526
+ mojom::blink::CaptureLinks::kUndefined );
4527
+ EXPECT_EQ (1u , GetErrorCount ());
4528
+ EXPECT_EQ (
4529
+ " property 'capture_links' ignored, type string or array of strings "
4530
+ " expected." ,
4531
+ errors ()[0 ]);
4532
+ }
4533
+ {
4534
+ auto & manifest = ParseManifest (R"( { "capture_links": 1234 })" );
4535
+ EXPECT_EQ (manifest->capture_links ,
4536
+ mojom::blink::CaptureLinks::kUndefined );
4537
+ EXPECT_EQ (1u , GetErrorCount ());
4538
+ EXPECT_EQ (
4539
+ " property 'capture_links' ignored, type string or array of strings "
4540
+ " expected." ,
4541
+ errors ()[0 ]);
4542
+ }
4543
+ {
4544
+ auto & manifest = ParseManifest (R"( { "capture_links": [12, 34] })" );
4545
+ EXPECT_EQ (manifest->capture_links ,
4546
+ mojom::blink::CaptureLinks::kUndefined );
4547
+ EXPECT_EQ (2u , GetErrorCount ());
4548
+ EXPECT_EQ (" capture_links value '12' ignored, string expected." ,
4549
+ errors ()[0 ]);
4550
+ EXPECT_EQ (" capture_links value '34' ignored, string expected." ,
4551
+ errors ()[1 ]);
4552
+ }
4554
4553
}
4555
4554
}
4556
4555
0 commit comments