0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-13 22:41:32 -05:00
ghost/core/test/functional/client/signout_test.js
Hannah Wolfe b391c8d1ae Switching the tests to use ember admin by default
ref #3060

- Some of our tests use the old signin/signout as part of the setup/teardown process. The old stuff is going away, so this PR switches everything over to use the new admin by default.
- There wil be a further PR to remove the old stuff completely soon.
2014-06-26 16:05:42 +01:00

39 lines
No EOL
1.5 KiB
JavaScript

// # Signout Test
// Test that signout works correctly
/*globals CasperTest, casper */
CasperTest.begin('Ghost signout works correctly', 4, function suite(test) {
CasperTest.Routines.setup.run(test);
CasperTest.Routines.signout.run(test);
CasperTest.Routines.signin.run(test);
casper.thenOpenAndWaitForPageLoad('root', function then() {
test.assertTitle('Ghost Admin', 'Ghost admin has no title');
test.assertUrlMatch(/ghost\/ember\/\d+\/$/, 'Landed on the correct URL without signing in');
});
casper.thenClick('#usermenu a').waitFor(function checkOpaque() {
return this.evaluate(function () {
var menu = document.querySelector('#usermenu .overlay.open');
return window.getComputedStyle(menu).getPropertyValue('display') === 'block' &&
window.getComputedStyle(menu).getPropertyValue('opacity') === '1';
});
});
casper.captureScreenshot('user-menu-open.png');
casper.waitForSelector('.usermenu-signout a');
casper.thenClick('.usermenu-signout a');
casper.waitForSelector('#login').then(function assertSuccess() {
test.assert(true, 'Got login screen');
});
casper.captureScreenshot('user-menu-logout-clicked.png');
casper.waitForSelector('.notification-success', function onSuccess() {
test.assert(true, 'Got success notification');
}, function onTimeout() {
test.assert(false, 'No success notification :(');
});
}, true);