Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions HubWeb.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -720,7 +720,10 @@
<Content Include="Scripts\PlanDirectoryApp.js" />
<Content Include="Scripts\PlanDirectoryMain.js" />
<Content Include="Scripts\templateCache.js" />
<Content Include="Scripts\tests\e2e\authorizationPathways\docusign.spec.js" />
<Content Include="Scripts\tests\e2e\authorizationPathways\google.spec.js" />
<Content Include="Scripts\tests\e2e\authorizationPathways\salesforce.spec.js" />
<Content Include="Scripts\tests\e2e\authorizationPathways\slack.spec.js" />
<Content Include="Scripts\tests\e2e\conf.js" />
<Content Include="Scripts\tests\e2e\login\login.spec.js" />
<Content Include="Scripts\tests\e2e\pages\myAccount.page.js" />
Expand Down
59 changes: 59 additions & 0 deletions Scripts/tests/e2e/authorizationPathways/docusign.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
var PlansPage = require('../pages/plans.page.js');
var ManageAuthTokens = require('../shared/manageAuthTokens.js');
var AccountHelper = require('../shared/accountHelper.js');
var MyAccountPage = require('../pages/myAccount.page.js');
var UIHelpers = require('../shared/uiHelpers.js');
var RegistrationPage = require('../pages/registration.page.js');

describe('DocuSign Authorization pathway test', function () {
var plansPage = new PlansPage();
var manageAuthTokens = new ManageAuthTokens();
var accountHelper = new AccountHelper();
var myAccountPage = new MyAccountPage();
var uiHelpers = new UIHelpers();

it('should login', function () {
return accountHelper.login().then(function () {
plansPage.setEmail(browser.params.username);
plansPage.setPassword(browser.params.password);
return plansPage.login().click().then(function () {
});
});
});

//it('should control and remove tokens', function () {
// return browser.driver.get(browser.baseUrl + '/dashboard/manageAuthTokens').then(function () {
// expect(element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div/div[1]/div[1]/div/div/div/div[1]/div[2]/table/thead/tr/th[1]')));
// return manageAuthTokens.revokeAuthTokens();
// });
//});

it('should go to myAccount page', function () {
return myAccountPage.get();
expect(browser.getCurrentUrl()).toEqual('http://dev.fr8.co/dashboard/myaccount');
});

it('should add plan', function () {
return plansPage.addPlan().then(function () {
return plansPage.addActivity();
});
});

it('should add DocuSign Monitor activity', function () {
return plansPage.addDocuSignActivity().then(function () {
return plansPage.getDocuSignActivity();
});
});

describe('should logout', function () {

var registrationPage = new RegistrationPage();

it('should logout', function () {
return accountHelper.logout().then(function () {
expect(browser.getCurrentUrl()).toContain('/DockyardAccount');
});
});
});

});
32 changes: 32 additions & 0 deletions Scripts/tests/e2e/authorizationPathways/google.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ var ManageAuthTokens = require('../shared/manageAuthTokens.js');
var AccountHelper = require('../shared/accountHelper.js');
var MyAccountPage = require('../pages/myAccount.page.js');
var UIHelpers = require('../shared/uiHelpers.js');
var RegistrationPage = require('../pages/registration.page.js');

describe('Google Authorization pathway test', function () {
var plansPage = new PlansPage();
Expand All @@ -20,6 +21,13 @@ describe('Google Authorization pathway test', function () {
});
});

it('should control and remove tokens', function () {
return browser.driver.get(browser.baseUrl + '/dashboard/manageAuthTokens').then(function () {
expect(element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div/div[1]/div[1]/div/div/div/div[1]/div[2]/table/thead/tr/th[1]')));
return manageAuthTokens.revokeAuthTokens();
});
});

it('should go to myAccount page', function () {
return myAccountPage.get();
expect(browser.getCurrentUrl()).toEqual('http://dev.fr8.co/dashboard/myaccount');
Expand All @@ -37,4 +45,28 @@ describe('Google Authorization pathway test', function () {
});
});

//it('should add account', function () {
// //var elm = element(by.className('.auth-link-account'));
// //return uiHelpers.waitReady(elm).then(function () {
// // googlePage.addAccount().then(function () {
// // return googlePage.getAllow();
// // });
// //});

// return plansPage.addAccount().then(function () {
// return plansPage.getAllow();
// });
//});

describe('should logout', function () {

var registrationPage = new RegistrationPage();

it('should logout', function () {
return accountHelper.logout().then(function () {
expect(browser.getCurrentUrl()).toContain('/DockyardAccount');
});
});
});

});
59 changes: 59 additions & 0 deletions Scripts/tests/e2e/authorizationPathways/salesforce.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
var PlansPage = require('../pages/plans.page.js');
var ManageAuthTokens = require('../shared/manageAuthTokens.js');
var AccountHelper = require('../shared/accountHelper.js');
var MyAccountPage = require('../pages/myAccount.page.js');
var UIHelpers = require('../shared/uiHelpers.js');
var RegistrationPage = require('../pages/registration.page.js');

describe('SalesForce Authorization pathway test', function () {
var plansPage = new PlansPage();
var manageAuthTokens = new ManageAuthTokens();
var accountHelper = new AccountHelper();
var myAccountPage = new MyAccountPage();
var uiHelpers = new UIHelpers();

it('should login', function () {
return accountHelper.login().then(function () {
plansPage.setEmail(browser.params.username);
plansPage.setPassword(browser.params.password);
return plansPage.login().click().then(function () {
});
});
});

//it('should control and remove tokens', function () {
// return browser.driver.get(browser.baseUrl + '/dashboard/manageAuthTokens').then(function () {
// expect(element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div/div[1]/div[1]/div/div/div/div[1]/div[2]/table/thead/tr/th[1]')));
// return manageAuthTokens.revokeAuthTokens();
// });
//});

it('should go to myAccount page', function () {
return myAccountPage.get();
expect(browser.getCurrentUrl()).toEqual('http://dev.fr8.co/dashboard/myaccount');
});

it('should add plan', function () {
return plansPage.addPlan().then(function () {
return plansPage.addActivity();
});
});

it('should add salesForce get data activity', function () {
return plansPage.addSalesForceActivity().then(function () {
return plansPage.getSalesForceGetDataActivity();
});
});

describe('should logout', function () {

var registrationPage = new RegistrationPage();

it('should logout', function () {
return accountHelper.logout().then(function () {
expect(browser.getCurrentUrl()).toContain('/DockyardAccount');
});
});
});

});
58 changes: 58 additions & 0 deletions Scripts/tests/e2e/authorizationPathways/slack.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
var PlansPage = require('../pages/plans.page.js');
var ManageAuthTokens = require('../shared/manageAuthTokens.js');
var AccountHelper = require('../shared/accountHelper.js');
var MyAccountPage = require('../pages/myAccount.page.js');
var UIHelpers = require('../shared/uiHelpers.js');
var RegistrationPage = require('../pages/registration.page.js');

describe('Slack Authorization pathway test', function () {
var plansPage = new PlansPage();
var manageAuthTokens = new ManageAuthTokens();
var accountHelper = new AccountHelper();
var myAccountPage = new MyAccountPage();
var uiHelpers = new UIHelpers();

it('should login', function () {
return accountHelper.login().then(function () {
plansPage.setEmail(browser.params.username);
plansPage.setPassword(browser.params.password);
return plansPage.login().click().then(function () {
});
});
});

//it('should control and remove tokens', function () {
// return browser.driver.get(browser.baseUrl + '/dashboard/manageAuthTokens').then(function () {
// expect(element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div/div[1]/div[1]/div/div/div/div[1]/div[2]/table/thead/tr/th[1]')));
// return manageAuthTokens.revokeAuthTokens();
// });
//});

it('should go to myAccount page', function () {
return myAccountPage.get();
expect(browser.getCurrentUrl()).toEqual('http://dev.fr8.co/dashboard/myaccount');
});

it('should add plan', function () {
return plansPage.addPlan().then(function () {
return plansPage.addActivity();
});
});

it('should add Slack activity', function () {
return plansPage.addSlackActivity().then(function () {
return plansPage.getSlackMonitorActivity();
});
});

describe('should logout', function () {

var registrationPage = new RegistrationPage();

it('should logout', function () {
return accountHelper.logout().then(function () {
expect(browser.getCurrentUrl()).toContain('/DockyardAccount');
});
});
});
});
8 changes: 4 additions & 4 deletions Scripts/tests/e2e/conf.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,16 @@
'phantomjs.ghostdriver.cli.args': ['--loglevel=DEBUG']
},
framework: 'jasmine',
specs: ['**/*.spec.js'],
specs: ['**/registration.spec.js',
'**/*.spec.js'
],
jasmineNodeOpts: {
defaultTimeoutInterval: 50000
},
baseUrl: 'http://dev.fr8.co',
params: {
username: '',
password: '',
registerUsername: '',
registerPassword: '',
password: ''
}
};

76 changes: 72 additions & 4 deletions Scripts/tests/e2e/pages/plans.page.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,45 @@

var PlansPage = function () {

//Login Properties
//Remove Token Properties
var manageAuthTokensButton = element(by.xpath('/html/body/div[1]/div/div[2]/div[2]/div/div/ul/li[5]/ul/li[1]/a'));

/* Login Properties */
var emailInput = element(by.id('Email'));
var passwordInput = element(by.id('Password'));
var loginButton = element(by.xpath('//*[@id="loginform"]/form/div[2]/div/div/button'));

//Add Google Activity Properties
/* General Properties */
var uiHelpers = new UIHelpers();
var addPlanButton = element(by.xpath('//*[@id="Myfr8lines"]/h3/a'));
var addActivityButton = element(by.className('action-add-button-link'));
var googleActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/div[13]/div[1]/img'));
//var addAccountButton = element(by.className('.auth-link-account'));

/* Add Google Activity Properties */
var googleActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/div[11]/div[1]/img'));
var googleSheetActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/ul/li[1]/a/span'));

var uiHelpers = new UIHelpers();
/* SalesForce Activity Properties */
var salesForceActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/div[15]/div[1]/img'));
var salesForceGetDataActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/ul/li[1]/a/span'));

/*DocuSign Activity Properties */
var docuSignActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/div[6]/div[1]/img'));
var docuSignMonitorActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/ul/li[1]/a/span'));

/* Slack Activity Properties */
var slackActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/div[17]/div[1]/img'));
var slackMonitorActivityButton = element(by.xpath('/html/body/div[2]/div[2]/div/div/div/div/div[1]/div[1]/div[1]/action-picker-panel/div/div[2]/div/ul/li[1]/a/span'));

this.get = function () {
browser.ignoreSynchronization = true;
browser.get(browser.baseUrl + '/dashboard/myaccount');
};

this.manageAuthTokens = function () {
return manageAuthTokensButton.click();
};

this.setEmail = function (email) {
emailInput.sendKeys(email);
};
Expand Down Expand Up @@ -56,5 +77,52 @@ var PlansPage = function () {
});
};

//this.addAccount = function () {
// //return browser.wait(EC.visibilityOf((googlePage.addAccountButton)), 5000).then(function () {
// //});
// //return browser.wait(element(by.cssContainingText('.auth-link-account'))).then(function () {
// // return addAccountButton.click();
// //});

// return uiHelpers.waitReady(addAccountButton).then(function () {
// return addAccountButton.click();
// });
//};

this.addSalesForceActivity = function () {
return uiHelpers.waitReady(salesForceActivityButton).then(function () {
return salesForceActivityButton.click();
});
};

this.getSalesForceGetDataActivity = function () {
return uiHelpers.waitReady(salesForceGetDataActivityButton).then(function () {
return salesForceGetDataActivityButton.click();
});
};

this.addDocuSignActivity = function () {
return uiHelpers.waitReady(docuSignActivityButton).then(function () {
return docuSignActivityButton.click();
});
};

this.getDocuSignActivity = function () {
return uiHelpers.waitReady(docuSignMonitorActivityButton).then(function () {
return docuSignMonitorActivityButton.click();
});
};

this.addSlackActivity = function () {
return uiHelpers.waitReady(slackActivityButton).then(function () {
return slackActivityButton.click();
});
};

this.getSlackMonitorActivity = function () {
return uiHelpers.waitReady(slackMonitorActivityButton).then(function () {
return slackMonitorActivityButton.click();
});
};
};
module.exports = PlansPage;
6 changes: 3 additions & 3 deletions Scripts/tests/e2e/registration/registration.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ describe('registration page tests', function () {

it('should register', function () {
return accountHelper.register().then(function () {
registrationPage.setEmail(browser.params.registerUsername);
registrationPage.setPassword(browser.params.registerPassword);
registrationPage.setConfirmPassword(browser.params.registerPassword);
registrationPage.setEmail(browser.params.username);
registrationPage.setPassword(browser.params.password);
registrationPage.setConfirmPassword(browser.params.password);
registrationPage.setOrganization();
return registrationPage.register().click().then(function () {
expect(browser.getCurrentUrl()).toContain('/Welcome');
Expand Down
Loading