From 7a378fddba4dfe3862b83a344e3f0fd9d23a6e52 Mon Sep 17 00:00:00 2001
From: Shane Tomlinson <stomlinson@mozilla.com>
Date: Wed, 21 Dec 2011 16:12:07 +0000
Subject: [PATCH] * Hook up the in dialog primary assertion generated from end
 to end.

---
 resources/static/dialog/controllers/actions.js     |  4 ----
 resources/static/dialog/resources/helpers.js       |  4 +---
 resources/static/dialog/resources/state_machine.js |  4 ++--
 .../test/qunit/controllers/actions_unit_test.js    | 10 ----------
 .../qunit/resources/state_machine_unit_test.js     | 14 +++++---------
 5 files changed, 8 insertions(+), 28 deletions(-)

diff --git a/resources/static/dialog/controllers/actions.js b/resources/static/dialog/controllers/actions.js
index bd2725383..b984c738d 100644
--- a/resources/static/dialog/controllers/actions.js
+++ b/resources/static/dialog/controllers/actions.js
@@ -172,10 +172,6 @@ BrowserID.Modules.Actions = (function() {
 
     doVerifyPrimaryUser: function(info) {
       startService("verify_primary_user", info);
-    },
-
-    doPrimaryUserVerified: function() {
-      // XXX we've gotta do something here too.
     }
   });
 
diff --git a/resources/static/dialog/resources/helpers.js b/resources/static/dialog/resources/helpers.js
index 28d45ca23..58c848a98 100644
--- a/resources/static/dialog/resources/helpers.js
+++ b/resources/static/dialog/resources/helpers.js
@@ -118,9 +118,7 @@
           // XXX Is this status possible?
           break;
         case "primary.verified":
-          self.close("primary_user_verified", {
-            email: email
-          });
+          self.close("primary_user_verified", info);
           complete(true);
           break;
         case "primary.verify":
diff --git a/resources/static/dialog/resources/state_machine.js b/resources/static/dialog/resources/state_machine.js
index c7fc2a42d..76c8522bb 100644
--- a/resources/static/dialog/resources/state_machine.js
+++ b/resources/static/dialog/resources/state_machine.js
@@ -147,7 +147,7 @@
     });
 
     subscribe("primary_user_verified", function(msg, info) {
-      gotoState("doPrimaryUserVerified", info);
+      mediator.publish("assertion_generated", info);
     });
 
     subscribe("primary_verify_user", function(msg, info) {
@@ -194,7 +194,7 @@
     subscribe("assertion_generated", function(msg, info) {
       self.success = true;
       if (info.assertion !== null) {
-        gotoState("doAssertionGenerated", info.assertion);
+        gotoState("doAssertionGenerated", info);
       }
       else {
         gotoState("doPickEmail");
diff --git a/resources/static/test/qunit/controllers/actions_unit_test.js b/resources/static/test/qunit/controllers/actions_unit_test.js
index 5e6aee990..0bea359fa 100644
--- a/resources/static/test/qunit/controllers/actions_unit_test.js
+++ b/resources/static/test/qunit/controllers/actions_unit_test.js
@@ -105,16 +105,6 @@
       }
     });
   });
-
-  asyncTest("doPrimaryUserVerified does something", function() {
-    createController({
-      ready: function() {
-        controller.doPrimaryUserVerified();
-        // XXX test something
-        start();
-      }
-    });
-  });
 */
 
 }());
diff --git a/resources/static/test/qunit/resources/state_machine_unit_test.js b/resources/static/test/qunit/resources/state_machine_unit_test.js
index 9453ffb7c..9481198fc 100644
--- a/resources/static/test/qunit/resources/state_machine_unit_test.js
+++ b/resources/static/test/qunit/resources/state_machine_unit_test.js
@@ -70,9 +70,9 @@
       this.requiredEmail = info.requiredEmail;
     },
 
-    doAssertionGenerated: function(assertion) {
+    doAssertionGenerated: function(info) {
       // XXX what a horrible horrible name for a function
-      this.assertion = assertion;
+      this.assertion = info.assertion;
     },
 
     doAddEmail: function() {
@@ -104,10 +104,6 @@
       this.error = true;
     },
 
-    doPrimaryUserVerified: function() {
-      this.primaryUserVerified = true;
-    },
-
     doVerifyPrimaryUser: function() {
       this.verifyPrimaryUser = true;
     }
@@ -163,10 +159,10 @@
   });
 
   // XXX make these and the messages for secondary match up so there is consistency.
-  test("primary_user_verified calls doPrimaryUserVerified", function() {
-    mediator.publish("primary_user_verified");
+  test("primary_user_verified calls doAssertionGenerated", function() {
+    mediator.publish("primary_user_verified", { email: "testuser@testuser.com", assertion: "assertion" });
 
-    ok(controllerMock.primaryUserVerified, "doPrimaryUserVerified called");
+    ok(controllerMock.assertion, "doAssertionGenerated called");
   });
 
   test("primary_verify_user calls doVerifyPrimaryUser", function() {
-- 
GitLab