#include "chrome/browser/content_settings/one_time_permission_provider.h"
#include <memory>
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "base/time/time.h"
#include "base/values.h"
#include "chrome/browser/permissions/one_time_permissions_tracker.h"
#include "chrome/browser/permissions/one_time_permissions_tracker_observer.h"
#include "components/content_settings/core/browser/content_settings_mock_observer.h"
#include "components/content_settings/core/browser/content_settings_registry.h"
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_constraints.h"
#include "components/content_settings/core/common/content_settings_partition_key.h"
#include "components/content_settings/core/common/features.h"
#include "components/content_settings/core/test/content_settings_test_utils.h"
#include "components/permissions/features.h"
#include "components/permissions/permission_context_base.h"
#include "content/public/test/browser_task_environment.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"
_;
namespace content_settings {
class OneTimePermissionProviderTest : public testing::Test { … };
TEST_F(OneTimePermissionProviderTest, SetAndGetContentSetting) { … }
TEST_F(OneTimePermissionProviderTest,
SetAndGetContentSettingWithoutOneTimeCapabilityDoesNotAllow) { … }
TEST_F(OneTimePermissionProviderTest,
SetAndGetContentSettingWithoutOneTimeConstraintsDoeNotAllow) { … }
TEST_F(OneTimePermissionProviderTest,
AllTabsInBackgroundExpiryRevokesGeolocation) { … }
TEST_F(OneTimePermissionProviderTest, CaptureExpiryRevokesPermissions) { … }
TEST_F(OneTimePermissionProviderTest,
AllTabsInBackgroundExpiryDoesNotRevokeCamMic) { … }
TEST_F(OneTimePermissionProviderTest, ManualRevocationUmaTest) { … }
TEST_F(OneTimePermissionProviderTest, VerifyPermissionObserversNotified) { … }
class OneTimePermissionProviderExpiryTest
: public OneTimePermissionProviderTest,
public ::testing::WithParamInterface<bool> { … };
TEST_F(OneTimePermissionProviderTest, SuspendExpiresAllGrants) { … }
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(OneTimePermissionProviderExpiryTest, RenewContentSetting_Noop) { … }
}