Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(869)

Side by Side Diff: components/content_settings/core/common/content_settings_pattern_unittest.cc

Issue 1895993003: Add migration code to change existing domain scoped content settings to be origin scoped (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « components/content_settings/core/common/content_settings_pattern.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "components/content_settings/core/common/content_settings_pattern.h" 5 #include "components/content_settings/core/common/content_settings_pattern.h"
6 6
7 #include "testing/gtest/include/gtest/gtest.h" 7 #include "testing/gtest/include/gtest/gtest.h"
8 #include "url/gurl.h" 8 #include "url/gurl.h"
9 9
10 namespace { 10 namespace {
(...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after
713 // file:/// normalization. 713 // file:/// normalization.
714 EXPECT_STREQ("file:///tmp/test.html", 714 EXPECT_STREQ("file:///tmp/test.html",
715 Pattern("file:///tmp/bar/../test.html").ToString().c_str()); 715 Pattern("file:///tmp/bar/../test.html").ToString().c_str());
716 716
717 // Invalid patterns. 717 // Invalid patterns.
718 EXPECT_STREQ("", Pattern("*example.com").ToString().c_str()); 718 EXPECT_STREQ("", Pattern("*example.com").ToString().c_str());
719 EXPECT_STREQ("", Pattern("example.*").ToString().c_str()); 719 EXPECT_STREQ("", Pattern("example.*").ToString().c_str());
720 EXPECT_STREQ("", Pattern("*\xC4\x87ira.com").ToString().c_str()); 720 EXPECT_STREQ("", Pattern("*\xC4\x87ira.com").ToString().c_str());
721 EXPECT_STREQ("", Pattern("\xC4\x87ira.*").ToString().c_str()); 721 EXPECT_STREQ("", Pattern("\xC4\x87ira.*").ToString().c_str());
722 } 722 }
723
724 TEST(ContentSettingsPatternTest, MigrateFromDomainToOrigin) {
725 ContentSettingsPattern origin_pattern;
726 // Http scheme patterns.
727 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
728 ContentSettingsPattern::FromString("http://[*.]example.com"),
729 &origin_pattern));
730 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
731 ContentSettingsPattern::FromString("http://[*.]example.com:80"),
732 &origin_pattern));
733
734 // Https patterns with port wildcard.
735 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
736 ContentSettingsPattern::FromString("https://www.google.com"),
737 &origin_pattern));
738 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
739 ContentSettingsPattern::FromString("https://[*.]google.com"),
740 &origin_pattern));
741
742 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
743 ContentSettingsPattern::FromString("www.google.com"), &origin_pattern));
744
745 // Patterns with no domain wildcard.
746 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
747 ContentSettingsPattern::FromString("*://www.google.com:8080"),
748 &origin_pattern));
749 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
750 ContentSettingsPattern::FromString("www.example.com:8080"),
751 &origin_pattern));
752 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
753 ContentSettingsPattern::FromString("www.google.com/*"), &origin_pattern));
754 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
755 ContentSettingsPattern::FromString("google"), &origin_pattern));
756 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
757 ContentSettingsPattern::FromString("https://www.google.com:443"),
758 &origin_pattern));
759
760 // Patterns with empty host.
761 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
762 ContentSettingsPattern::FromString("*"), &origin_pattern));
763 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
764 ContentSettingsPattern::FromString("[*.]"), &origin_pattern));
765 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
766 ContentSettingsPattern::FromString("http://*"), &origin_pattern));
767 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
768 ContentSettingsPattern::FromString("http://*:8080"), &origin_pattern));
769
770 // Other schemes and IP address patterns won't be migrated.
771 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
772 ContentSettingsPattern::FromString("192.168.0.1"), &origin_pattern));
773 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
774 ContentSettingsPattern::FromString("https://127.0.0.1"),
775 &origin_pattern));
776 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
777 ContentSettingsPattern::FromString("http://[::1]"), &origin_pattern));
778 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
779 ContentSettingsPattern::FromString("[::1]"), &origin_pattern));
780 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
781 ContentSettingsPattern::FromString("file:///foo/bar.html"),
782 &origin_pattern));
783 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
784 ContentSettingsPattern::FromString(
785 "filesystem:http://www.google.com/temporary/"),
786 &origin_pattern));
787 EXPECT_FALSE(ContentSettingsPattern::MigrateFromDomainToOrigin(
788 ContentSettingsPattern::FromString(
789 "chrome-extension://peoadpeiejnhkmpaakpnompolbglelel/"),
790 &origin_pattern));
791
792 // These are pattern styles which might be generated using FromURL().
793 EXPECT_TRUE(ContentSettingsPattern::MigrateFromDomainToOrigin(
794 ContentSettingsPattern::FromString("[*.]example.com"), &origin_pattern));
795 EXPECT_EQ("http://example.com:80", origin_pattern.ToString());
796
797 EXPECT_TRUE(ContentSettingsPattern::MigrateFromDomainToOrigin(
798 ContentSettingsPattern::FromString("[*.]google.com:80"),
799 &origin_pattern));
800 EXPECT_EQ("http://google.com:80", origin_pattern.ToString());
801
802 EXPECT_TRUE(ContentSettingsPattern::MigrateFromDomainToOrigin(
803 ContentSettingsPattern::FromString("[*.]example.com:123"),
804 &origin_pattern));
805 EXPECT_EQ("http://example.com:123", origin_pattern.ToString());
806
807 EXPECT_TRUE(ContentSettingsPattern::MigrateFromDomainToOrigin(
808 ContentSettingsPattern::FromString("https://[*.]google.com:443"),
809 &origin_pattern));
810 EXPECT_EQ("https://google.com:443", origin_pattern.ToString());
811 }
OLDNEW
« no previous file with comments | « components/content_settings/core/common/content_settings_pattern.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698