blob: 7b11f4a194cb252480fec6b84e88c1c649d9970a [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'chrome://welcome/signin_view.js';
import {TestSigninViewProxy} from 'chrome://test/welcome/test_signin_view_proxy.js';
import {TestWelcomeBrowserProxy} from 'chrome://test/welcome/test_welcome_browser_proxy.js';
import {SigninViewProxyImpl} from 'chrome://welcome/signin_view_proxy.js';
import {WelcomeBrowserProxyImpl} from 'chrome://welcome/welcome_browser_proxy.js';
suite('SigninViewTest', function() {
/** @type {SigninViewElement} */
let testElement;
/** @type {WelcomeBrowserProxy} */
let testWelcomeBrowserProxy;
setup(function() {
testWelcomeBrowserProxy = new TestWelcomeBrowserProxy();
WelcomeBrowserProxyImpl.instance_ = testWelcomeBrowserProxy;
// Not used in test, but setting to test proxy anyway, in order to prevent
// calls to backend.
SigninViewProxyImpl.instance_ = new TestSigninViewProxy();
PolymerTest.clearBody();
testElement = document.createElement('signin-view');
document.body.appendChild(testElement);
});
teardown(function() {
testElement.remove();
});
test('sign-in button', function() {
const signinButton = testElement.$$('cr-button');
assertTrue(!!signinButton);
signinButton.click();
return testWelcomeBrowserProxy.whenCalled('handleActivateSignIn')
.then(redirectUrl => assertEquals(null, redirectUrl));
});
test('no-thanks button', function() {
const noThanksButton = testElement.$$('button');
assertTrue(!!noThanksButton);
noThanksButton.click();
return testWelcomeBrowserProxy.whenCalled('handleUserDecline');
});
});