#include "chrome/browser/ui/test/fullscreen_test_util.h"
#include "content/public/test/browser_test_utils.h"
namespace content {
void WaitForHTMLFullscreen(WebContents* web_contents) {
WaitForLoadStop(web_contents);
ASSERT_TRUE(EvalJs(web_contents, R"JS(
(new Promise((resolve, reject) => {
if (!!document.fullscreenElement) {
resolve();
} else {
document.addEventListener(`fullscreenchange`,
() => { if (!!document.fullscreenElement) resolve(); }
);
document.addEventListener(`fullscreenerror`, e => { reject(e); });
}
})))JS")
.is_ok());
}
void WaitForHTMLFullscreenExit(WebContents* web_contents) {
WaitForLoadStop(web_contents);
ASSERT_TRUE(EvalJs(web_contents, R"JS(
(new Promise((resolve, reject) => {
if (!document.fullscreenElement) {
resolve();
} else {
document.addEventListener(`fullscreenchange`,
() => { if (!document.fullscreenElement) resolve(); }
);
document.addEventListener(`fullscreenerror`, e => { reject(e); });
}
})))JS")
.is_ok());
}
}