| 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 <map> | 5 #include <map> |
| 6 #include <string> | 6 #include <string> |
| 7 | 7 |
| 8 #include "base/barrier_closure.h" | 8 #include "base/barrier_closure.h" |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| 11 #include "base/message_loop/message_loop.h" | 11 #include "base/message_loop/message_loop.h" |
| 12 #include "base/run_loop.h" | 12 #include "base/run_loop.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 13 #include "base/strings/utf_string_conversions.h" |
| 14 #include "chrome/browser/browser_process.h" | 14 #include "chrome/browser/browser_process.h" |
| 15 #include "chrome/browser/browsing_data/browsing_data_helper.h" | 15 #include "chrome/browser/browsing_data/browsing_data_helper.h" |
| 16 #include "chrome/browser/browsing_data/browsing_data_remover.h" | 16 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
| 17 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h" | 17 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h" |
| 18 #include "chrome/browser/content_settings/host_content_settings_map_factory.h" |
| 18 #include "chrome/browser/notifications/notification_test_util.h" | 19 #include "chrome/browser/notifications/notification_test_util.h" |
| 19 #include "chrome/browser/notifications/platform_notification_service_impl.h" | 20 #include "chrome/browser/notifications/platform_notification_service_impl.h" |
| 20 #include "chrome/browser/profiles/profile.h" | 21 #include "chrome/browser/profiles/profile.h" |
| 21 #include "chrome/browser/push_messaging/push_messaging_app_identifier.h" | 22 #include "chrome/browser/push_messaging/push_messaging_app_identifier.h" |
| 22 #include "chrome/browser/push_messaging/push_messaging_constants.h" | 23 #include "chrome/browser/push_messaging/push_messaging_constants.h" |
| 23 #include "chrome/browser/push_messaging/push_messaging_service_factory.h" | 24 #include "chrome/browser/push_messaging/push_messaging_service_factory.h" |
| 24 #include "chrome/browser/push_messaging/push_messaging_service_impl.h" | 25 #include "chrome/browser/push_messaging/push_messaging_service_impl.h" |
| 25 #include "chrome/browser/services/gcm/fake_gcm_profile_service.h" | 26 #include "chrome/browser/services/gcm/fake_gcm_profile_service.h" |
| 26 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" | 27 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" |
| 27 #include "chrome/browser/ui/browser.h" | 28 #include "chrome/browser/ui/browser.h" |
| (...skipping 741 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 769 EXPECT_EQ("true - subscribed", script_result); | 770 EXPECT_EQ("true - subscribed", script_result); |
| 770 | 771 |
| 771 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 772 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 772 EXPECT_EQ("permission status - granted", script_result); | 773 EXPECT_EQ("permission status - granted", script_result); |
| 773 | 774 |
| 774 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 775 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 775 new content::MessageLoopRunner; | 776 new content::MessageLoopRunner; |
| 776 push_service()->SetContentSettingChangedCallbackForTesting( | 777 push_service()->SetContentSettingChangedCallbackForTesting( |
| 777 message_loop_runner->QuitClosure()); | 778 message_loop_runner->QuitClosure()); |
| 778 | 779 |
| 779 GetBrowser()->profile()->GetHostContentSettingsMap()-> | 780 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile())-> |
| 780 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); | 781 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); |
| 781 | 782 |
| 782 message_loop_runner->Run(); | 783 message_loop_runner->Run(); |
| 783 | 784 |
| 784 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 785 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 785 EXPECT_EQ("permission status - prompt", script_result); | 786 EXPECT_EQ("permission status - prompt", script_result); |
| 786 | 787 |
| 787 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 788 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 788 EXPECT_EQ("false - not subscribed", script_result); | 789 EXPECT_EQ("false - not subscribed", script_result); |
| 789 } | 790 } |
| 790 | 791 |
| 791 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 792 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 792 LocalResetPushPermissionUnsubscribes) { | 793 LocalResetPushPermissionUnsubscribes) { |
| 793 std::string script_result; | 794 std::string script_result; |
| 794 | 795 |
| 795 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 796 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 796 | 797 |
| 797 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 798 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 798 EXPECT_EQ("true - subscribed", script_result); | 799 EXPECT_EQ("true - subscribed", script_result); |
| 799 | 800 |
| 800 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 801 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 801 EXPECT_EQ("permission status - granted", script_result); | 802 EXPECT_EQ("permission status - granted", script_result); |
| 802 | 803 |
| 803 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 804 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 804 new content::MessageLoopRunner; | 805 new content::MessageLoopRunner; |
| 805 push_service()->SetContentSettingChangedCallbackForTesting( | 806 push_service()->SetContentSettingChangedCallbackForTesting( |
| 806 message_loop_runner->QuitClosure()); | 807 message_loop_runner->QuitClosure()); |
| 807 | 808 |
| 808 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 809 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 809 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 810 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 810 ContentSettingsPattern::FromURLNoWildcard(origin), | 811 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 811 ContentSettingsPattern::FromURLNoWildcard(origin), | 812 ContentSettingsPattern::FromURLNoWildcard(origin), |
| 812 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, | 813 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| 813 std::string(), | 814 std::string(), |
| 814 CONTENT_SETTING_DEFAULT); | 815 CONTENT_SETTING_DEFAULT); |
| 815 | 816 |
| 816 message_loop_runner->Run(); | 817 message_loop_runner->Run(); |
| 817 | 818 |
| 818 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 819 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 819 EXPECT_EQ("permission status - prompt", script_result); | 820 EXPECT_EQ("permission status - prompt", script_result); |
| 820 | 821 |
| 821 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 822 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 822 EXPECT_EQ("false - not subscribed", script_result); | 823 EXPECT_EQ("false - not subscribed", script_result); |
| 823 } | 824 } |
| 824 | 825 |
| 825 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 826 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 826 DenyPushPermissionUnsubscribes) { | 827 DenyPushPermissionUnsubscribes) { |
| 827 std::string script_result; | 828 std::string script_result; |
| 828 | 829 |
| 829 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 830 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 830 | 831 |
| 831 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 832 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 832 EXPECT_EQ("true - subscribed", script_result); | 833 EXPECT_EQ("true - subscribed", script_result); |
| 833 | 834 |
| 834 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 835 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 835 EXPECT_EQ("permission status - granted", script_result); | 836 EXPECT_EQ("permission status - granted", script_result); |
| 836 | 837 |
| 837 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 838 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 838 new content::MessageLoopRunner; | 839 new content::MessageLoopRunner; |
| 839 push_service()->SetContentSettingChangedCallbackForTesting( | 840 push_service()->SetContentSettingChangedCallbackForTesting( |
| 840 message_loop_runner->QuitClosure()); | 841 message_loop_runner->QuitClosure()); |
| 841 | 842 |
| 842 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 843 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 843 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 844 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 844 ContentSettingsPattern::FromURLNoWildcard(origin), | 845 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 845 ContentSettingsPattern::FromURLNoWildcard(origin), | 846 ContentSettingsPattern::FromURLNoWildcard(origin), |
| 846 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, | 847 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| 847 std::string(), | 848 std::string(), |
| 848 CONTENT_SETTING_BLOCK); | 849 CONTENT_SETTING_BLOCK); |
| 849 | 850 |
| 850 message_loop_runner->Run(); | 851 message_loop_runner->Run(); |
| 851 | 852 |
| 852 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 853 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 853 EXPECT_EQ("permission status - denied", script_result); | 854 EXPECT_EQ("permission status - denied", script_result); |
| 854 | 855 |
| 855 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 856 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 856 EXPECT_EQ("false - not subscribed", script_result); | 857 EXPECT_EQ("false - not subscribed", script_result); |
| 857 } | 858 } |
| 858 | 859 |
| 859 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 860 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 860 GlobalResetNotificationsPermissionUnsubscribes) { | 861 GlobalResetNotificationsPermissionUnsubscribes) { |
| 861 std::string script_result; | 862 std::string script_result; |
| 862 | 863 |
| 863 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 864 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 864 | 865 |
| 865 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 866 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 866 EXPECT_EQ("true - subscribed", script_result); | 867 EXPECT_EQ("true - subscribed", script_result); |
| 867 | 868 |
| 868 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 869 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 869 EXPECT_EQ("permission status - granted", script_result); | 870 EXPECT_EQ("permission status - granted", script_result); |
| 870 | 871 |
| 871 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 872 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 872 new content::MessageLoopRunner; | 873 new content::MessageLoopRunner; |
| 873 push_service()->SetContentSettingChangedCallbackForTesting( | 874 push_service()->SetContentSettingChangedCallbackForTesting( |
| 874 message_loop_runner->QuitClosure()); | 875 message_loop_runner->QuitClosure()); |
| 875 | 876 |
| 876 GetBrowser()->profile()->GetHostContentSettingsMap()-> | 877 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile())-> |
| 877 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS); | 878 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_NOTIFICATIONS); |
| 878 | 879 |
| 879 message_loop_runner->Run(); | 880 message_loop_runner->Run(); |
| 880 | 881 |
| 881 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 882 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 882 EXPECT_EQ("permission status - prompt", script_result); | 883 EXPECT_EQ("permission status - prompt", script_result); |
| 883 | 884 |
| 884 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 885 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 885 EXPECT_EQ("false - not subscribed", script_result); | 886 EXPECT_EQ("false - not subscribed", script_result); |
| 886 } | 887 } |
| 887 | 888 |
| 888 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 889 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 889 LocalResetNotificationsPermissionUnsubscribes) { | 890 LocalResetNotificationsPermissionUnsubscribes) { |
| 890 std::string script_result; | 891 std::string script_result; |
| 891 | 892 |
| 892 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 893 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 893 | 894 |
| 894 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 895 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 895 EXPECT_EQ("true - subscribed", script_result); | 896 EXPECT_EQ("true - subscribed", script_result); |
| 896 | 897 |
| 897 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 898 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 898 EXPECT_EQ("permission status - granted", script_result); | 899 EXPECT_EQ("permission status - granted", script_result); |
| 899 | 900 |
| 900 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 901 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 901 new content::MessageLoopRunner; | 902 new content::MessageLoopRunner; |
| 902 push_service()->SetContentSettingChangedCallbackForTesting( | 903 push_service()->SetContentSettingChangedCallbackForTesting( |
| 903 message_loop_runner->QuitClosure()); | 904 message_loop_runner->QuitClosure()); |
| 904 | 905 |
| 905 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 906 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 906 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 907 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 907 ContentSettingsPattern::FromURLNoWildcard(origin), | 908 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 908 ContentSettingsPattern::Wildcard(), | 909 ContentSettingsPattern::Wildcard(), |
| 909 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, | 910 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| 910 std::string(), | 911 std::string(), |
| 911 CONTENT_SETTING_DEFAULT); | 912 CONTENT_SETTING_DEFAULT); |
| 912 | 913 |
| 913 message_loop_runner->Run(); | 914 message_loop_runner->Run(); |
| 914 | 915 |
| 915 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 916 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 916 EXPECT_EQ("permission status - prompt", script_result); | 917 EXPECT_EQ("permission status - prompt", script_result); |
| 917 | 918 |
| 918 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 919 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 919 EXPECT_EQ("false - not subscribed", script_result); | 920 EXPECT_EQ("false - not subscribed", script_result); |
| 920 } | 921 } |
| 921 | 922 |
| 922 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 923 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 923 DenyNotificationsPermissionUnsubscribes) { | 924 DenyNotificationsPermissionUnsubscribes) { |
| 924 std::string script_result; | 925 std::string script_result; |
| 925 | 926 |
| 926 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 927 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 927 | 928 |
| 928 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 929 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 929 EXPECT_EQ("true - subscribed", script_result); | 930 EXPECT_EQ("true - subscribed", script_result); |
| 930 | 931 |
| 931 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 932 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 932 EXPECT_EQ("permission status - granted", script_result); | 933 EXPECT_EQ("permission status - granted", script_result); |
| 933 | 934 |
| 934 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 935 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 935 new content::MessageLoopRunner; | 936 new content::MessageLoopRunner; |
| 936 push_service()->SetContentSettingChangedCallbackForTesting( | 937 push_service()->SetContentSettingChangedCallbackForTesting( |
| 937 message_loop_runner->QuitClosure()); | 938 message_loop_runner->QuitClosure()); |
| 938 | 939 |
| 939 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 940 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 940 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 941 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 941 ContentSettingsPattern::FromURLNoWildcard(origin), | 942 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 942 ContentSettingsPattern::Wildcard(), | 943 ContentSettingsPattern::Wildcard(), |
| 943 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, | 944 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| 944 std::string(), | 945 std::string(), |
| 945 CONTENT_SETTING_BLOCK); | 946 CONTENT_SETTING_BLOCK); |
| 946 | 947 |
| 947 message_loop_runner->Run(); | 948 message_loop_runner->Run(); |
| 948 | 949 |
| 949 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 950 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 950 EXPECT_EQ("permission status - denied", script_result); | 951 EXPECT_EQ("permission status - denied", script_result); |
| 951 | 952 |
| 952 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 953 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 953 EXPECT_EQ("false - not subscribed", script_result); | 954 EXPECT_EQ("false - not subscribed", script_result); |
| 954 } | 955 } |
| 955 | 956 |
| 956 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, | 957 IN_PROC_BROWSER_TEST_F(PushMessagingBrowserTest, |
| 957 GrantAlreadyGrantedPermissionDoesNotUnsubscribe) { | 958 GrantAlreadyGrantedPermissionDoesNotUnsubscribe) { |
| 958 std::string script_result; | 959 std::string script_result; |
| 959 | 960 |
| 960 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); | 961 TryToSubscribeSuccessfully("1-0" /* expected_push_subscription_id */); |
| 961 | 962 |
| 962 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 963 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 963 EXPECT_EQ("true - subscribed", script_result); | 964 EXPECT_EQ("true - subscribed", script_result); |
| 964 | 965 |
| 965 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 966 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 966 EXPECT_EQ("permission status - granted", script_result); | 967 EXPECT_EQ("permission status - granted", script_result); |
| 967 | 968 |
| 968 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 969 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 969 new content::MessageLoopRunner; | 970 new content::MessageLoopRunner; |
| 970 push_service()->SetContentSettingChangedCallbackForTesting( | 971 push_service()->SetContentSettingChangedCallbackForTesting( |
| 971 base::BarrierClosure(2, message_loop_runner->QuitClosure())); | 972 base::BarrierClosure(2, message_loop_runner->QuitClosure())); |
| 972 | 973 |
| 973 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 974 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 974 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 975 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 975 ContentSettingsPattern::FromURLNoWildcard(origin), | 976 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 976 ContentSettingsPattern::Wildcard(), | 977 ContentSettingsPattern::Wildcard(), |
| 977 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, | 978 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| 978 std::string(), | 979 std::string(), |
| 979 CONTENT_SETTING_ALLOW); | 980 CONTENT_SETTING_ALLOW); |
| 980 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 981 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 981 ContentSettingsPattern::FromURLNoWildcard(origin), | 982 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 982 ContentSettingsPattern::FromURLNoWildcard(origin), | 983 ContentSettingsPattern::FromURLNoWildcard(origin), |
| 983 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, | 984 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| 984 std::string(), | 985 std::string(), |
| 985 CONTENT_SETTING_ALLOW); | 986 CONTENT_SETTING_ALLOW); |
| 986 | 987 |
| 987 message_loop_runner->Run(); | 988 message_loop_runner->Run(); |
| 988 | 989 |
| 989 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 990 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 990 EXPECT_EQ("permission status - granted", script_result); | 991 EXPECT_EQ("permission status - granted", script_result); |
| 991 | 992 |
| 992 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); | 993 ASSERT_TRUE(RunScript("hasSubscription()", &script_result)); |
| 993 EXPECT_EQ("true - subscribed", script_result); | 994 EXPECT_EQ("true - subscribed", script_result); |
| 994 } | 995 } |
| 995 | 996 |
| (...skipping 12 matching lines...) Expand all Loading... |
| 1008 | 1009 |
| 1009 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 1010 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 1010 EXPECT_EQ("permission status - granted", script_result); | 1011 EXPECT_EQ("permission status - granted", script_result); |
| 1011 | 1012 |
| 1012 scoped_refptr<content::MessageLoopRunner> message_loop_runner = | 1013 scoped_refptr<content::MessageLoopRunner> message_loop_runner = |
| 1013 new content::MessageLoopRunner; | 1014 new content::MessageLoopRunner; |
| 1014 push_service()->SetContentSettingChangedCallbackForTesting( | 1015 push_service()->SetContentSettingChangedCallbackForTesting( |
| 1015 base::BarrierClosure(4, message_loop_runner->QuitClosure())); | 1016 base::BarrierClosure(4, message_loop_runner->QuitClosure())); |
| 1016 | 1017 |
| 1017 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); | 1018 GURL origin = https_server()->GetURL(std::string()).GetOrigin(); |
| 1018 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 1019 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 1019 ContentSettingsPattern::Wildcard(), | 1020 ->SetContentSetting(ContentSettingsPattern::Wildcard(), |
| 1020 ContentSettingsPattern::Wildcard(), | 1021 ContentSettingsPattern::Wildcard(), |
| 1021 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, | 1022 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| 1022 std::string(), | 1023 std::string(), |
| 1023 CONTENT_SETTING_ALLOW); | 1024 CONTENT_SETTING_ALLOW); |
| 1024 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 1025 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 1025 ContentSettingsPattern::FromString("https://*"), | 1026 ->SetContentSetting(ContentSettingsPattern::FromString("https://*"), |
| 1026 ContentSettingsPattern::FromString("https://*"), | 1027 ContentSettingsPattern::FromString("https://*"), |
| 1027 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, | 1028 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| 1028 std::string(), | 1029 std::string(), |
| 1029 CONTENT_SETTING_ALLOW); | 1030 CONTENT_SETTING_ALLOW); |
| 1030 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 1031 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 1031 ContentSettingsPattern::FromURLNoWildcard(origin), | 1032 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 1032 ContentSettingsPattern::Wildcard(), | 1033 ContentSettingsPattern::Wildcard(), |
| 1033 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, | 1034 CONTENT_SETTINGS_TYPE_NOTIFICATIONS, |
| 1034 std::string(), | 1035 std::string(), |
| 1035 CONTENT_SETTING_DEFAULT); | 1036 CONTENT_SETTING_DEFAULT); |
| 1036 GetBrowser()->profile()->GetHostContentSettingsMap()->SetContentSetting( | 1037 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 1037 ContentSettingsPattern::FromURLNoWildcard(origin), | 1038 ->SetContentSetting(ContentSettingsPattern::FromURLNoWildcard(origin), |
| 1038 ContentSettingsPattern::FromURLNoWildcard(origin), | 1039 ContentSettingsPattern::FromURLNoWildcard(origin), |
| 1039 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, | 1040 CONTENT_SETTINGS_TYPE_PUSH_MESSAGING, |
| 1040 std::string(), | 1041 std::string(), |
| 1041 CONTENT_SETTING_DEFAULT); | 1042 CONTENT_SETTING_DEFAULT); |
| 1042 | 1043 |
| 1043 message_loop_runner->Run(); | 1044 message_loop_runner->Run(); |
| 1044 | 1045 |
| 1045 // The two first rules should give |origin| the permission to use Push even | 1046 // The two first rules should give |origin| the permission to use Push even |
| 1046 // if the rules it used to have have been reset. | 1047 // if the rules it used to have have been reset. |
| 1047 // The Push service should not unsubcribe |origin| because at no point it was | 1048 // The Push service should not unsubcribe |origin| because at no point it was |
| 1048 // left without permission to use Push. | 1049 // left without permission to use Push. |
| 1049 | 1050 |
| 1050 ASSERT_TRUE(RunScript("permissionState()", &script_result)); | 1051 ASSERT_TRUE(RunScript("permissionState()", &script_result)); |
| 1051 EXPECT_EQ("permission status - granted", script_result); | 1052 EXPECT_EQ("permission status - granted", script_result); |
| (...skipping 27 matching lines...) Expand all Loading... |
| 1079 observer.BlockUntilCompletion(); | 1080 observer.BlockUntilCompletion(); |
| 1080 // BrowsingDataRemover deletes itself. | 1081 // BrowsingDataRemover deletes itself. |
| 1081 | 1082 |
| 1082 base::RunLoop run_loop; | 1083 base::RunLoop run_loop; |
| 1083 push_service()->SetContentSettingChangedCallbackForTesting( | 1084 push_service()->SetContentSettingChangedCallbackForTesting( |
| 1084 run_loop.QuitClosure()); | 1085 run_loop.QuitClosure()); |
| 1085 | 1086 |
| 1086 // This shouldn't (asynchronously) cause a DCHECK. | 1087 // This shouldn't (asynchronously) cause a DCHECK. |
| 1087 // TODO(johnme): Get this test running on Android, which has a different | 1088 // TODO(johnme): Get this test running on Android, which has a different |
| 1088 // codepath due to sender_id being required for unsubscribing there. | 1089 // codepath due to sender_id being required for unsubscribing there. |
| 1089 GetBrowser()->profile()->GetHostContentSettingsMap()-> | 1090 HostContentSettingsMapFactory::GetForProfile(GetBrowser()->profile()) |
| 1090 ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); | 1091 ->ClearSettingsForOneType(CONTENT_SETTINGS_TYPE_PUSH_MESSAGING); |
| 1091 | 1092 |
| 1092 run_loop.Run(); | 1093 run_loop.Run(); |
| 1093 | 1094 |
| 1094 // |app_identifier| should no longer be stored in prefs. | 1095 // |app_identifier| should no longer be stored in prefs. |
| 1095 PushMessagingAppIdentifier stored_app_identifier2 = | 1096 PushMessagingAppIdentifier stored_app_identifier2 = |
| 1096 PushMessagingAppIdentifier::FindByAppId(GetBrowser()->profile(), | 1097 PushMessagingAppIdentifier::FindByAppId(GetBrowser()->profile(), |
| 1097 app_identifier.app_id()); | 1098 app_identifier.app_id()); |
| 1098 EXPECT_TRUE(stored_app_identifier2.is_null()); | 1099 EXPECT_TRUE(stored_app_identifier2.is_null()); |
| 1099 } | 1100 } |
| 1100 | 1101 |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1230 ASSERT_FALSE(background_mode_manager->IsBackgroundModeActive()); | 1231 ASSERT_FALSE(background_mode_manager->IsBackgroundModeActive()); |
| 1231 | 1232 |
| 1232 // After dropping the last subscription background mode is still inactive. | 1233 // After dropping the last subscription background mode is still inactive. |
| 1233 std::string script_result; | 1234 std::string script_result; |
| 1234 gcm_service()->AddExpectedUnregisterResponse(gcm::GCMClient::SUCCESS); | 1235 gcm_service()->AddExpectedUnregisterResponse(gcm::GCMClient::SUCCESS); |
| 1235 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); | 1236 ASSERT_TRUE(RunScript("unsubscribePush()", &script_result)); |
| 1236 EXPECT_EQ("unsubscribe result: true", script_result); | 1237 EXPECT_EQ("unsubscribe result: true", script_result); |
| 1237 ASSERT_FALSE(background_mode_manager->IsBackgroundModeActive()); | 1238 ASSERT_FALSE(background_mode_manager->IsBackgroundModeActive()); |
| 1238 } | 1239 } |
| 1239 #endif // defined(ENABLE_BACKGROUND) && !defined(OS_CHROMEOS) | 1240 #endif // defined(ENABLE_BACKGROUND) && !defined(OS_CHROMEOS) |
| OLD | NEW |