Index: chrome/test/data/chromeos/oobe_webui_browsertest.js |
diff --git a/chrome/test/data/chromeos/oobe_webui_browsertest.js b/chrome/test/data/chromeos/oobe_webui_browsertest.js |
index fa685e8eec4216a2471cb3215220fd8d2a5fc60e..9f45ed53cf26facd61ca29109b9873010ec3b357 100644 |
--- a/chrome/test/data/chromeos/oobe_webui_browsertest.js |
+++ b/chrome/test/data/chromeos/oobe_webui_browsertest.js |
@@ -128,3 +128,58 @@ TEST_F('OobeWebUITest', 'DISABLED_OobeUserImage', function() { |
TEST_F('OobeWebUITest', 'DISABLED_OobeAccountPicker', function() { |
Oobe.getInstance().showScreen({'id':'account-picker'}); |
}); |
+ |
+ |
+TEST_F('OobeWebUITest', 'HIDDetectionScreenTest', function() { |
+ function getPincodeSymbol(i) { |
+ return $('hid-keyboard-pincode-sym-' + (i + 1)); |
+ } |
+ |
+ function getDisplayedPincode() { |
+ var pincode = ''; |
Roman Sorokin (ftl)
2015/07/21 12:10:58
nit: remove one space before '=';
dzhioev (left Google)
2015/07/21 21:06:06
Done.
|
+ for (var i = 0; i < 6; ++i) |
+ pincode += getPincodeSymbol(i).textContent; |
+ return pincode; |
+ } |
+ |
+ login.HIDDetectionScreen.contextChanged({ |
+ 'keyboard-state': 'searching', |
+ 'mouse-state': 'searching' |
+ }); |
+ Oobe.showScreen({'id': 'hid-detection'}); |
+ expectTrue($('hid-keyboard-pincode').hidden); |
+ |
+ login.HIDDetectionScreen.contextChanged({ |
+ 'keyboard-state': 'pairing', |
+ 'keyboard-pincode': '013188' |
+ }); |
+ expectFalse($('hid-keyboard-pincode').hidden); |
+ expectEquals('013188', getDisplayedPincode()); |
+ |
+ login.HIDDetectionScreen.contextChanged({ |
+ 'num-keys-entered-expected': true, |
+ 'num-keys-entered-pincode': 3 |
+ }); |
+ expectFalse($('hid-keyboard-pincode').hidden); |
+ expectEquals('013188', getDisplayedPincode()); |
+ [ |
+ { 'key-typed': true }, |
+ { 'key-typed': true }, |
+ { 'key-typed': true }, |
+ { 'key-next': true }, |
+ { 'key-untyped': true }, |
+ { 'key-untyped': true }, |
+ { 'key-untyped': true } // Enter key symbol. |
+ ].forEach(function(expectedClasses, i) { |
+ var symbol = getPincodeSymbol(i); |
+ ['key-typed', 'key-untyped', 'key-next'].forEach(function(className) { |
+ expectEquals(!!expectedClasses[className], |
+ symbol.classList.contains(className)); |
+ }); |
+ }); |
+ |
+ login.HIDDetectionScreen.contextChanged({ |
+ 'keyboard-state': 'connected' |
+ }); |
+ expectTrue($('hid-keyboard-pincode').hidden); |
+}); |