File tree Expand file tree Collapse file tree 3 files changed +66
-0
lines changed Expand file tree Collapse file tree 3 files changed +66
-0
lines changed Original file line number Diff line number Diff line change @@ -75,6 +75,19 @@ public function iVetTheLastAddedSecondFactor()
7575 $ this ->vettingProcessIsCompleted ($ secondFactorId );
7676 }
7777
78+ /**
79+ * @Given /^I vet the last added second factor, not requiring proof of possession$/
80+ */
81+ public function iVetTheLastAddedSecondFactorNoProofOfPossession ()
82+ {
83+ $ secondFactorId = $ this ->selfServiceContext ->getVerifiedSecondFactorId ();
84+ $ activationCode = $ this ->selfServiceContext ->getActivationCode ();
85+
86+ $ this ->findsTokenForActivation ($ activationCode );
87+ $ this ->adminVerifiesUserIdentity ($ secondFactorId );
88+ $ this ->vettingProcessIsCompleted ($ secondFactorId );
89+ }
90+
7891 /**
7992 * @Given /^I vet a second factor with id "([^"]*)" and with activation code "([^"]*)"$/
8093 */
Original file line number Diff line number Diff line change @@ -148,6 +148,41 @@ public function registerNewSmsToken()
148148 $ this ->minkContext ->assertPageContainsText ('Check your inbox ' );
149149 }
150150
151+ /**
152+ * @When /^I register a new demogssp token$/
153+ */
154+ public function iRegisterANewDemogsspToken ()
155+ {
156+ // Click 'add token' on the overview page
157+ $ this ->minkContext ->clickLink ('Add token ' );
158+
159+ $ this ->minkContext ->assertPageAddress ('/registration/select-token ' );
160+
161+ // Select the dummy second factor type
162+ $ this ->minkContext ->getSession ()
163+ ->getPage ()
164+ ->find ('css ' , '[href="/registration/gssf/demogssp/initiate"] ' )->click ();
165+
166+ $ this ->minkContext ->assertPageAddress ('/registration/gssf/demogssp/initiate ' );
167+
168+ // Start registration
169+ $ this ->minkContext ->assertPageContainsText ('Register with Demogssp ' );
170+ $ this ->minkContext ->pressButton ('Register with Demogssp ' );
171+
172+ // Register onthe dummy application
173+ $ this ->minkContext ->assertPageAddress ('http://localhost:1234/app_dev.php/registration ' );
174+ $ this ->minkContext ->pressButton ('Register user ' );
175+
176+ // Pass trough GSSP return action
177+ $ this ->minkContext ->pressButton ('Submit ' );
178+
179+ // Pass trough gateway
180+ $ this ->authContext ->passTroughGatewayProxyAssertionConsumerService ();
181+
182+ $ this ->minkContext ->assertPageContainsText ('Verify your e-mail ' );
183+ $ this ->minkContext ->assertPageContainsText ('Check your inbox ' );
184+ }
185+
151186 /**
152187 * @When I verify my e-mail address
153188 */
Original file line number Diff line number Diff line change 1+ Feature : A RA vets tokens tokens registered in the selfservice portal
2+ In order to manage tokens
3+ As a RA
4+ I must be able to manage second factor tokens in RA
5+
6+ Scenario : Provision an institution and a user
7+ Given institution "institution-a.example.com" can "use_ra" from institution "institution-a.example.com"
8+ And institution "institution-a.example.com" can "select_raa" from institution "institution-a.example.com"
9+ And a user "Janis Bower" identified by "urn:collab:person:institution-a.example.com:janis-a-ra" from institution "institution-a.example.com"
10+ And the user "urn:collab:person:institution-a.example.com:janis-a-ra" has a vetted "yubikey"
11+ And the user "urn:collab:person:institution-a.example.com:janis-a-ra" has the role "ra" for institution "institution-a.example.com"
12+
13+ Scenario : Demo GSSP does not require proof of possession
14+ Given I am logged in into the selfservice portal as "joe-a1"
15+ And I register a new demogssp2 token
16+ And I verify my e-mail address
17+ When I am logged in into the ra portal as "jane-a-ra" with a "yubikey" token
18+ Then I vet the last added second factor, not requiring proof of possession
You can’t perform that action at this time.
0 commit comments