Chromium Code Reviews| Index: LayoutTests/wake_lock/wakelock-in-nested-frame.html |
| diff --git a/LayoutTests/wake_lock/wakelock-in-nested-frame.html b/LayoutTests/wake_lock/wakelock-in-nested-frame.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..9bd75107f0d99447889fde02574062d2689b157e |
| --- /dev/null |
| +++ b/LayoutTests/wake_lock/wakelock-in-nested-frame.html |
| @@ -0,0 +1,46 @@ |
| +<!DOCTYPE html> |
| +<html> |
| +<body> |
| +<script src="../resources/testharness.js"></script> |
| +<script src="../resources/testharnessreport.js"></script> |
| +<script> |
| + |
| +var nextStep; |
| + |
| +function onMessageReceived(e) { |
| + nextStep(e.data.keepScreenAwake); |
| +} |
| + |
| +function setNestedWakeLock(state) { |
| + document.getElementById('subframe').contentWindow.postMessage( |
| + {'tag': 'setKeepScreenAwake', 'keepScreenAwake': state}, '*'); |
| +} |
| + |
| +function getNestedWakeLock(callback) { |
| + document.getElementById('subframe').contentWindow.postMessage( |
| + {'tag': 'getKeepScreenAwake'}, '*'); |
| + nextStep = callback; |
| +} |
| + |
| +window.addEventListener('message', onMessageReceived); |
| + |
| +async_test(function(t) { |
| + window.onload = function() { |
| + document.keepScreenAwake = true; |
|
mlamouri (slow - plz ping)
2015/05/05 13:45:43
Hmm, what about that:
var nestedFrameTest = async
|
| + getNestedWakeLock(t.step_func(function(nestedKeepScreenAwake) { |
| + assert_false(nestedKeepScreenAwake); |
| + document.keepScreenAwake = false; |
| + setNestedWakeLock(true); |
| + getNestedWakeLock(t.step_func(function(nestedKeepScreenAwake) { |
| + assert_true(nestedKeepScreenAwake); |
| + assert_false(document.keepScreenAwake); |
| + t.done(); |
| + })); |
| + })); |
| + }; |
| +}, 'Test that keepScreenAwake state is independent in main and nested frame'); |
| + |
| +</script> |
| +<iframe src="resources/subframe.html" id="subframe"/> |
| +</body> |
| +</html> |