1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// found in the LICENSE file. 4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)/** 6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * @fileoverview 7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * @suppress {checkTypes} 8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * Browser test for the scenario below: 9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * 1. Attempt to connect. 10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * 2. Hit cancel at the PIN prompt. 11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * 3. Reconnect with the PIN. 12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * 4. Verify that the session is connected. 13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) */ 14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)'use strict'; 16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)/** @constructor */ 18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)browserTest.Cancel_PIN = function() {}; 19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)browserTest.Cancel_PIN.prototype.run = function(data) { 21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) browserTest.expect(typeof data.pin == 'string'); 22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) var AppMode = remoting.AppMode; 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch browserTest.connectMe2Me().then(function() { 25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) browserTest.clickOnControl('cancel-pin-entry-button'); 26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) return browserTest.onUIMode(AppMode.HOME); 27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) }).then(function() { 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch return browserTest.connectMe2Me() 295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) }).then(function() { 305f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) return browserTest.enterPIN(data.pin) 315f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) }).then(function() { 32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) // On fulfilled. 33cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) browserTest.pass(); 34cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) }, function(reason) { 35cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) // On rejected. 36cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) browserTest.fail(reason); 37cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) }); 385f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)};