| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /**
- * =============================================================================
- * Demo of Facebook Connect automated login with Nightwatch.js.
- * The test navigates to digg.com and tries to perform a Facebook connect login.
- *
- * This test requires a fbcredentials.json file to be placed in the same
- * folder, containing the facebook username and password in the form below:
- * -----
- * {
- * "username" : "",
- * "password" : ""
- * }
- * -----
- * The test only works if you have the permissions ALREADY enabled for digg.com
- * in your facebook account.
- * =============================================================================
- */
- module.exports = {
- disabled : true,
- 'digg facebook login' : function (client) {
- var fbcredentials;
- try {
- fbcredentials = require('./fbcredentials.json');
- } catch (err) {
- console.error('Couldn\'t load the facebook credentials file. Please ensure that ' +
- 'you have the fbcredentials.json in the same folder as the test.');
- process.exit();
- }
- client
- .url('http://digg.com')
- .waitForElementVisible('body', 1000)
- .click('#nav-signin')
- .click('#btn-facebook-auth-topnav')
- .windowHandles(function(result) {
- client.assert.equal(result.value.length, 2, 'There should be two windows open.');
- var fbWindowHandle = result.value[1];
- client.switchWindow(fbWindowHandle);
- })
- .waitForElementVisible('#facebook body', 1000)
- .setValue('input#email', fbcredentials.username)
- .setValue('input#pass', fbcredentials.password)
- .click('#loginbutton input')
- .windowHandles(function(result) {
- client.assert.equal(result.value.length, 1, 'There should be only one window open.');
- client.switchWindow(result.value[0]);
- })
- .waitForElementVisible('#digg-header.authenticated', 3000)
- .end();
- }
- };
|