diff --git a/resources/static/dialog/resources/state.js b/resources/static/dialog/resources/state.js index 22a3098e78db35eba06155414b2251cf0a8f3f13..9af733f522347cc61b74b628f33538c0a57b2544 100644 --- a/resources/static/dialog/resources/state.js +++ b/resources/static/dialog/resources/state.js @@ -234,7 +234,7 @@ BrowserID.State = (function() { startState("doAssertionGenerated", info.assertion); } else { - startState("doPickEmail"); + publish("pick_email"); } }); diff --git a/resources/static/test/cases/resources/state.js b/resources/static/test/cases/resources/state.js index a9e95a48b27d6f9bcdddb780e85731a8b2c1059c..53c9726695c97d05ee8c092d7e065f3ee2826020 100644 --- a/resources/static/test/cases/resources/state.js +++ b/resources/static/test/cases/resources/state.js @@ -358,5 +358,13 @@ equal(error, "invalid email", "expected exception thrown"); }); + + test("null assertion generated - preserve original options in doPickEmail", function() { + mediator.publish("start", { allowPersistent: true }); + mediator.publish("assertion_generated", { assertion: null }); + + equal(actions.called.doPickEmail, true, "doPickEmail callled"); + equal(actions.info.doPickEmail.allow_persistent, true, "allow_persistent preserved"); + }); }());