OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "extensions/common/features/simple_feature.h" | 5 #include "extensions/common/features/simple_feature.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 491 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
502 EXPECT_TRUE(feature->contexts()->empty()); | 502 EXPECT_TRUE(feature->contexts()->empty()); |
503 EXPECT_EQ(SimpleFeature::UNSPECIFIED_LOCATION, feature->location()); | 503 EXPECT_EQ(SimpleFeature::UNSPECIFIED_LOCATION, feature->location()); |
504 EXPECT_TRUE(feature->platforms()->empty()); | 504 EXPECT_TRUE(feature->platforms()->empty()); |
505 EXPECT_EQ(0, feature->min_manifest_version()); | 505 EXPECT_EQ(0, feature->min_manifest_version()); |
506 EXPECT_EQ(0, feature->max_manifest_version()); | 506 EXPECT_EQ(0, feature->max_manifest_version()); |
507 } | 507 } |
508 | 508 |
509 TEST_F(SimpleFeatureTest, ParseWhitelist) { | 509 TEST_F(SimpleFeatureTest, ParseWhitelist) { |
510 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); | 510 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); |
511 base::ListValue* whitelist = new base::ListValue(); | 511 base::ListValue* whitelist = new base::ListValue(); |
512 whitelist->Append(new base::StringValue("foo")); | 512 whitelist->AppendString("foo"); |
513 whitelist->Append(new base::StringValue("bar")); | 513 whitelist->AppendString("bar"); |
514 value->Set("whitelist", whitelist); | 514 value->Set("whitelist", whitelist); |
515 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); | 515 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); |
516 feature->Parse(value.get()); | 516 feature->Parse(value.get()); |
517 EXPECT_EQ(2u, feature->whitelist()->size()); | 517 EXPECT_EQ(2u, feature->whitelist()->size()); |
518 EXPECT_TRUE(STLCount(*(feature->whitelist()), "foo")); | 518 EXPECT_TRUE(STLCount(*(feature->whitelist()), "foo")); |
519 EXPECT_TRUE(STLCount(*(feature->whitelist()), "bar")); | 519 EXPECT_TRUE(STLCount(*(feature->whitelist()), "bar")); |
520 } | 520 } |
521 | 521 |
522 TEST_F(SimpleFeatureTest, ParsePackageTypes) { | 522 TEST_F(SimpleFeatureTest, ParsePackageTypes) { |
523 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); | 523 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); |
524 base::ListValue* extension_types = new base::ListValue(); | 524 base::ListValue* extension_types = new base::ListValue(); |
525 extension_types->Append(new base::StringValue("extension")); | 525 extension_types->AppendString("extension"); |
526 extension_types->Append(new base::StringValue("theme")); | 526 extension_types->AppendString("theme"); |
527 extension_types->Append(new base::StringValue("legacy_packaged_app")); | 527 extension_types->AppendString("legacy_packaged_app"); |
528 extension_types->Append(new base::StringValue("hosted_app")); | 528 extension_types->AppendString("hosted_app"); |
529 extension_types->Append(new base::StringValue("platform_app")); | 529 extension_types->AppendString("platform_app"); |
530 extension_types->Append(new base::StringValue("shared_module")); | 530 extension_types->AppendString("shared_module"); |
531 value->Set("extension_types", extension_types); | 531 value->Set("extension_types", extension_types); |
532 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); | 532 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); |
533 feature->Parse(value.get()); | 533 feature->Parse(value.get()); |
534 EXPECT_EQ(6u, feature->extension_types()->size()); | 534 EXPECT_EQ(6u, feature->extension_types()->size()); |
535 EXPECT_TRUE( | 535 EXPECT_TRUE( |
536 STLCount(*(feature->extension_types()), Manifest::TYPE_EXTENSION)); | 536 STLCount(*(feature->extension_types()), Manifest::TYPE_EXTENSION)); |
537 EXPECT_TRUE( | 537 EXPECT_TRUE( |
538 STLCount(*(feature->extension_types()), Manifest::TYPE_THEME)); | 538 STLCount(*(feature->extension_types()), Manifest::TYPE_THEME)); |
539 EXPECT_TRUE( | 539 EXPECT_TRUE( |
540 STLCount( | 540 STLCount( |
541 *(feature->extension_types()), Manifest::TYPE_LEGACY_PACKAGED_APP)); | 541 *(feature->extension_types()), Manifest::TYPE_LEGACY_PACKAGED_APP)); |
542 EXPECT_TRUE( | 542 EXPECT_TRUE( |
543 STLCount(*(feature->extension_types()), Manifest::TYPE_HOSTED_APP)); | 543 STLCount(*(feature->extension_types()), Manifest::TYPE_HOSTED_APP)); |
544 EXPECT_TRUE( | 544 EXPECT_TRUE( |
545 STLCount(*(feature->extension_types()), Manifest::TYPE_PLATFORM_APP)); | 545 STLCount(*(feature->extension_types()), Manifest::TYPE_PLATFORM_APP)); |
546 EXPECT_TRUE( | 546 EXPECT_TRUE( |
547 STLCount(*(feature->extension_types()), Manifest::TYPE_SHARED_MODULE)); | 547 STLCount(*(feature->extension_types()), Manifest::TYPE_SHARED_MODULE)); |
548 | 548 |
549 value->SetString("extension_types", "all"); | 549 value->SetString("extension_types", "all"); |
550 std::unique_ptr<SimpleFeature> feature2(new SimpleFeature()); | 550 std::unique_ptr<SimpleFeature> feature2(new SimpleFeature()); |
551 feature2->Parse(value.get()); | 551 feature2->Parse(value.get()); |
552 EXPECT_EQ(*(feature->extension_types()), *(feature2->extension_types())); | 552 EXPECT_EQ(*(feature->extension_types()), *(feature2->extension_types())); |
553 } | 553 } |
554 | 554 |
555 TEST_F(SimpleFeatureTest, ParseContexts) { | 555 TEST_F(SimpleFeatureTest, ParseContexts) { |
556 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); | 556 std::unique_ptr<base::DictionaryValue> value(new base::DictionaryValue()); |
557 base::ListValue* contexts = new base::ListValue(); | 557 base::ListValue* contexts = new base::ListValue(); |
558 contexts->Append(new base::StringValue("blessed_extension")); | 558 contexts->AppendString("blessed_extension"); |
559 contexts->Append(new base::StringValue("unblessed_extension")); | 559 contexts->AppendString("unblessed_extension"); |
560 contexts->Append(new base::StringValue("content_script")); | 560 contexts->AppendString("content_script"); |
561 contexts->Append(new base::StringValue("web_page")); | 561 contexts->AppendString("web_page"); |
562 contexts->Append(new base::StringValue("blessed_web_page")); | 562 contexts->AppendString("blessed_web_page"); |
563 contexts->Append(new base::StringValue("webui")); | 563 contexts->AppendString("webui"); |
564 contexts->Append(new base::StringValue("extension_service_worker")); | 564 contexts->AppendString("extension_service_worker"); |
565 value->Set("contexts", contexts); | 565 value->Set("contexts", contexts); |
566 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); | 566 std::unique_ptr<SimpleFeature> feature(new SimpleFeature()); |
567 feature->Parse(value.get()); | 567 feature->Parse(value.get()); |
568 EXPECT_EQ(7u, feature->contexts()->size()); | 568 EXPECT_EQ(7u, feature->contexts()->size()); |
569 EXPECT_TRUE( | 569 EXPECT_TRUE( |
570 STLCount(*(feature->contexts()), Feature::BLESSED_EXTENSION_CONTEXT)); | 570 STLCount(*(feature->contexts()), Feature::BLESSED_EXTENSION_CONTEXT)); |
571 EXPECT_TRUE( | 571 EXPECT_TRUE( |
572 STLCount(*(feature->contexts()), Feature::UNBLESSED_EXTENSION_CONTEXT)); | 572 STLCount(*(feature->contexts()), Feature::UNBLESSED_EXTENSION_CONTEXT)); |
573 EXPECT_TRUE( | 573 EXPECT_TRUE( |
574 STLCount(*(feature->contexts()), Feature::CONTENT_SCRIPT_CONTEXT)); | 574 STLCount(*(feature->contexts()), Feature::CONTENT_SCRIPT_CONTEXT)); |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
652 EXPECT_EQ(1, STLCount(*(feature.whitelist()), "foo")); | 652 EXPECT_EQ(1, STLCount(*(feature.whitelist()), "foo")); |
653 EXPECT_EQ(SimpleFeature::COMPONENT_LOCATION, feature.location()); | 653 EXPECT_EQ(SimpleFeature::COMPONENT_LOCATION, feature.location()); |
654 EXPECT_EQ(1u, feature.platforms()->size()); | 654 EXPECT_EQ(1u, feature.platforms()->size()); |
655 EXPECT_EQ(1, STLCount(*(feature.platforms()), Feature::CHROMEOS_PLATFORM)); | 655 EXPECT_EQ(1, STLCount(*(feature.platforms()), Feature::CHROMEOS_PLATFORM)); |
656 EXPECT_EQ(1, feature.min_manifest_version()); | 656 EXPECT_EQ(1, feature.min_manifest_version()); |
657 EXPECT_EQ(2, feature.max_manifest_version()); | 657 EXPECT_EQ(2, feature.max_manifest_version()); |
658 | 658 |
659 base::ListValue* whitelist = new base::ListValue(); | 659 base::ListValue* whitelist = new base::ListValue(); |
660 base::ListValue* extension_types = new base::ListValue(); | 660 base::ListValue* extension_types = new base::ListValue(); |
661 base::ListValue* contexts = new base::ListValue(); | 661 base::ListValue* contexts = new base::ListValue(); |
662 whitelist->Append(new base::StringValue("bar")); | 662 whitelist->AppendString("bar"); |
663 extension_types->Append(new base::StringValue("extension")); | 663 extension_types->AppendString("extension"); |
664 contexts->Append(new base::StringValue("unblessed_extension")); | 664 contexts->AppendString("unblessed_extension"); |
665 definition.Set("whitelist", whitelist); | 665 definition.Set("whitelist", whitelist); |
666 definition.Set("extension_types", extension_types); | 666 definition.Set("extension_types", extension_types); |
667 definition.Set("contexts", contexts); | 667 definition.Set("contexts", contexts); |
668 // Can't test location or platform because we only have one value so far. | 668 // Can't test location or platform because we only have one value so far. |
669 definition.Set("min_manifest_version", new base::FundamentalValue(2)); | 669 definition.Set("min_manifest_version", new base::FundamentalValue(2)); |
670 definition.Set("max_manifest_version", new base::FundamentalValue(3)); | 670 definition.Set("max_manifest_version", new base::FundamentalValue(3)); |
671 | 671 |
672 feature.Parse(&definition); | 672 feature.Parse(&definition); |
673 EXPECT_EQ(1u, feature.whitelist()->size()); | 673 EXPECT_EQ(1u, feature.whitelist()->size()); |
674 EXPECT_EQ(1u, feature.extension_types()->size()); | 674 EXPECT_EQ(1u, feature.extension_types()->size()); |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
737 EXPECT_FALSE(SimpleFeature::IsIdInArray("", kIdArray, arraysize(kIdArray))); | 737 EXPECT_FALSE(SimpleFeature::IsIdInArray("", kIdArray, arraysize(kIdArray))); |
738 EXPECT_FALSE(SimpleFeature::IsIdInArray( | 738 EXPECT_FALSE(SimpleFeature::IsIdInArray( |
739 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", kIdArray, arraysize(kIdArray))); | 739 "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", kIdArray, arraysize(kIdArray))); |
740 EXPECT_TRUE(SimpleFeature::IsIdInArray( | 740 EXPECT_TRUE(SimpleFeature::IsIdInArray( |
741 "bbbbccccdddddddddeeeeeeffffgghhh", kIdArray, arraysize(kIdArray))); | 741 "bbbbccccdddddddddeeeeeeffffgghhh", kIdArray, arraysize(kIdArray))); |
742 EXPECT_TRUE(SimpleFeature::IsIdInArray( | 742 EXPECT_TRUE(SimpleFeature::IsIdInArray( |
743 "aaaabbbbccccddddeeeeffffgggghhhh", kIdArray, arraysize(kIdArray))); | 743 "aaaabbbbccccddddeeeeffffgggghhhh", kIdArray, arraysize(kIdArray))); |
744 } | 744 } |
745 | 745 |
746 } // namespace extensions | 746 } // namespace extensions |
OLD | NEW |