blob: d95a658508810e974f47c18d7a34445d866da7b8 [file] [log] [blame]
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/permissions/test/permission_request_observer.h"
namespace permissions {
PermissionRequestObserver::PermissionRequestObserver(
content::WebContents* web_contents) {
observation_.Observe(PermissionRequestManager::FromWebContents(web_contents));
}
PermissionRequestObserver::~PermissionRequestObserver() = default;
void PermissionRequestObserver::Wait() {
loop_.Run();
}
void PermissionRequestObserver::OnPromptAdded() {
request_shown_ = true;
loop_.Quit();
}
void PermissionRequestObserver::OnRequestsFinalized() {
loop_.Quit();
}
void PermissionRequestObserver::OnPromptRecreateViewFailed() {
is_view_recreate_failed_ = true;
loop_.Quit();
}
void PermissionRequestObserver::OnPromptCreationFailedHiddenTab() {
is_prompt_show_failed_hidden_tab_ = true;
loop_.Quit();
}
void PermissionRequestObserver::OnPermissionRequestManagerDestructed() {
observation_.Reset();
}
} // namespace permissions