From aeda7331ec11600454a40803df85f0397e8f17db Mon Sep 17 00:00:00 2001 From: Xavier Guimard Date: Sat, 14 May 2016 18:14:49 +0000 Subject: [PATCH] Import r5052 (#1016) --- e2e-tests/manager/11-oidcop-config.js | 2 +- e2e-tests/manager/12-oidcrp-config.js | 59 +++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 e2e-tests/manager/12-oidcrp-config.js diff --git a/e2e-tests/manager/11-oidcop-config.js b/e2e-tests/manager/11-oidcop-config.js index 41a999392..6b09c7577 100644 --- a/e2e-tests/manager/11-oidcop-config.js +++ b/e2e-tests/manager/11-oidcop-config.js @@ -30,7 +30,7 @@ describe('Lemonldap::NG Manager', function() { }); it('should save new configuration', function() { element(by.id('save')).click(); - element(by.id('longtextinput')).sendKeys('Activate SAML'); + element(by.id('longtextinput')).sendKeys('Create OIDC OP'); element(by.id('saveok')).click(); element(by.id('messageok')).click(); expect(element(by.id('cfgnum')).getText()).toEqual('5'); diff --git a/e2e-tests/manager/12-oidcrp-config.js b/e2e-tests/manager/12-oidcrp-config.js new file mode 100644 index 000000000..19b447435 --- /dev/null +++ b/e2e-tests/manager/12-oidcrp-config.js @@ -0,0 +1,59 @@ +'use strict'; + +/* http://docs.angularjs.org/guide/dev_guide.e2e-testing */ + +describe('Lemonldap::NG Manager', function() { + + describe('OIDC RP configuration', function() { + + it('should add an OIDC RP', function() { + browser.get('/#/confs/latest'); + element(by.id('t-oidcRPMetaDataNodes')).click(); + element(by.css('.glyphicon-plus-sign')).click(); + element(by.id('promptok')).click(); + browser.sleep(500); + element(by.id('a-oidcRPMetaDataNodes/new__rp-example')).click(); + element(by.id('t-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataExportedVars')).click(); + element(by.css('.glyphicon-plus-sign')).click(); + element(by.id('a-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataExportedVars')).click(); + element(by.id('t-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataExportedVars/n1')).click(); + element(by.id('hashkeyinput')).clear().sendKeys('MyKey'); + element(by.id('hashvalueinput')).clear().sendKeys('MyValue'); + element(by.id('a-oidcRPMetaDataOptions')).click(); + element(by.id('a-oidcRPMetaDataOptionsAuthentication')).click(); + element(by.id('t-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataOptionsClientID')).click(); + element(by.id('textinput')).clear().sendKeys('MyClientID'); + element(by.id('t-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataOptionsExtraClaims')).click(); + element(by.css('.glyphicon-plus-sign')).click(); + element(by.id('a-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataOptionsExtraClaims')).click(); + element(by.id('t-oidcRPMetaDataNodes/new__rp-example/oidcRPMetaDataOptionsExtraClaims/n1')).click(); + element(by.id('hashkeyinput')).clear().sendKeys('MyClaim'); + element(by.id('hashvalueinput')).clear().sendKeys('MyAttribute'); + }); + it('should save new configuration', function() { + element(by.id('save')).click(); + element(by.id('longtextinput')).sendKeys('Create OIDC RP'); + element(by.id('saveok')).click(); + element(by.id('messageok')).click(); + expect(element(by.id('cfgnum')).getText()).toEqual('6'); + }); + it('should restore configured values', function() { + element(by.id('a-oidcRPMetaDataNodes')).click(); + element(by.id('a-oidcRPMetaDataNodes/rp-example')).click(); + element(by.id('a-oidcRPMetaDataNodes/rp-example/oidcRPMetaDataExportedVars')).click(); + browser.sleep(500); + element(by.id('t-oidcRPMetaDataNodes/rp-example/oidcRPMetaDataExportedVars/1')).click(); + expect(element(by.id('hashkeyinput')).getAttribute('value')).toEqual('MyKey'); + expect(element(by.id('hashvalueinput')).getAttribute('value')).toEqual('MyValue'); + element(by.id('a-oidcRPMetaDataOptions')).click(); + element(by.id('a-oidcRPMetaDataOptionsAuthentication')).click(); + element(by.id('t-oidcRPMetaDataNodes/rp-example/oidcRPMetaDataOptionsClientID')).click(); + expect(element(by.id('textinput')).getAttribute('value')).toEqual('MyClientID'); + element(by.id('a-oidcRPMetaDataNodes/rp-example/oidcRPMetaDataOptionsExtraClaims')).click(); + browser.sleep(5000); + element(by.id('t-oidcRPMetaDataNodes/rp-example/oidcRPMetaDataOptionsExtraClaims/1')).click(); + expect(element(by.id('hashkeyinput')).getAttribute('value')).toEqual('MyClaim'); + expect(element(by.id('hashvalueinput')).getAttribute('value')).toEqual('MyAttribute'); + }); + }); +}); \ No newline at end of file