plugins: fix tests for password plugin (and a little fix to ssotest plugin)
authorAlexander Kanavin <alexander.kanavin@intel.com>
Wed, 27 Mar 2013 13:40:07 +0000 (15:40 +0200)
committerAlexander Kanavin <alexander.kanavin@intel.com>
Wed, 27 Mar 2013 13:40:07 +0000 (15:40 +0200)
src/plugins/password/gsignond-password-plugin.c
src/plugins/ssotest/gsignond-ssotest-plugin.c
test/plugins/passwordplugintest.c

index b9b865e..a2b418a 100644 (file)
@@ -74,8 +74,10 @@ static void gsignond_password_plugin_request_initial (
     GSignondSignonuiData *user_action_data = gsignond_signonui_data_new();
     if (username == NULL)
         gsignond_signonui_data_set_query_username(user_action_data, TRUE);
-    else
+    else {
+        gsignond_signonui_data_set_query_username(user_action_data, FALSE);
         gsignond_signonui_data_set_username(user_action_data, username);
+    }
     gsignond_signonui_data_set_query_password(user_action_data, TRUE);
     gsignond_plugin_user_action_required(self, user_action_data);
     gsignond_dictionary_unref(user_action_data);
@@ -88,7 +90,14 @@ static void gsignond_password_plugin_user_action_finished (
     GSignondSignonuiError query_error;
     gboolean res = gsignond_signonui_data_get_query_error(session_data,
                                                           &query_error);
-    g_assert(res == TRUE);
+    if (res == FALSE) {
+        GError* error = g_error_new(GSIGNOND_ERROR, 
+                                GSIGNOND_ERROR_USER_INTERACTION,
+                                "userActionFinished did not return an error value",
+                                query_error);
+        gsignond_plugin_error (self, error); 
+        g_error_free(error);
+    }
     const gchar* username = gsignond_signonui_data_get_username(session_data);
     const gchar* secret = gsignond_signonui_data_get_password(session_data);
     
index 5e9f639..b8ad379 100644 (file)
@@ -152,7 +152,14 @@ static void gsignond_ssotest_plugin_user_action_finished (
     GSignondSignonuiError query_error;
     gboolean res = gsignond_signonui_data_get_query_error(session_data,
                                                           &query_error);
-    g_assert(res == TRUE);
+    if (res == FALSE) {
+        GError* error = g_error_new(GSIGNOND_ERROR, 
+                                GSIGNOND_ERROR_USER_INTERACTION,
+                                "userActionFinished did not return an error value",
+                                query_error);
+        gsignond_plugin_error (plugin, error); 
+        g_error_free(error);
+    }
 
     const gchar* username = gsignond_signonui_data_get_username (session_data);
     const gchar* secret = gsignond_signonui_data_get_password (session_data);
index c1ccbd1..d986394 100644 (file)
@@ -27,6 +27,7 @@
 #include <stdlib.h>
 #include "gsignond-password-plugin.h"
 #include <gsignond/gsignond-session-data.h>
+#include <gsignond/gsignond-signonui-data.h>
 #include <gsignond/gsignond-plugin-interface.h>
 #include <gsignond/gsignond-error.h>
 #include <gsignond/gsignond-plugin-loader.h>
@@ -44,20 +45,14 @@ START_TEST (test_session_data)
     
     fail_unless(gsignond_session_data_get_username(data) == NULL);
     fail_unless(gsignond_session_data_get_secret(data) == NULL);
-    fail_unless(gsignond_session_data_get_query_username(data) == FALSE);
-    fail_unless(gsignond_session_data_get_query_password(data) == FALSE);
 
     gsignond_session_data_set_username(data, "megauser");
     gsignond_session_data_set_secret(data, "megapassword");
-    gsignond_session_data_set_query_username(data, TRUE);
-    gsignond_session_data_set_query_password(data, TRUE);
     
     fail_unless(g_strcmp0(gsignond_session_data_get_username(data), 
                           "megauser") == 0);
     fail_unless(g_strcmp0(gsignond_session_data_get_secret(data), 
                           "megapassword") == 0);
-    fail_unless(gsignond_session_data_get_query_username(data) == TRUE);
-    fail_unless(gsignond_session_data_get_query_password(data) == TRUE);    
 
     gsignond_session_data_set_username(data, "usermega");
     fail_unless(g_strcmp0(gsignond_session_data_get_username(data), 
@@ -70,8 +65,6 @@ START_TEST (test_session_data)
                           "usermega") == 0);
     fail_unless(g_strcmp0(gsignond_session_data_get_secret(data_from_copy), 
                           "megapassword") == 0);
-    fail_unless(gsignond_session_data_get_query_username(data_from_copy) == TRUE);
-    fail_unless(gsignond_session_data_get_query_password(data_from_copy) == TRUE);    
 
     variant = gsignond_dictionary_to_variant(data);
     fail_if(variant == NULL);
@@ -82,8 +75,6 @@ START_TEST (test_session_data)
                           "usermega") == 0);
     fail_unless(g_strcmp0(gsignond_session_data_get_secret(data_from_variant), 
                           "megapassword") == 0);
-    fail_unless(gsignond_session_data_get_query_username(data_from_variant) == TRUE);
-    fail_unless(gsignond_session_data_get_query_password(data_from_variant) == TRUE);    
     
     g_variant_unref(variant);
     gsignond_dictionary_unref(data_from_variant);
@@ -127,10 +118,10 @@ static void response_callback(GSignondPlugin* plugin, GSignondSessionData* resul
 }
 
 static void user_action_required_callback(GSignondPlugin* plugin, 
-                                          GSignondSessionData* ui_request, 
+                                          GSignondSignonuiData* ui_request, 
                                           gpointer user_data)
 {
-    GSignondSessionData** user_data_p = user_data;
+    GSignondSignonuiData** user_data_p = user_data;
     *user_data_p = gsignond_dictionary_copy(ui_request);
 }
 
@@ -150,8 +141,9 @@ START_TEST (test_passwordplugin_request)
     fail_if(plugin == NULL);
 
     GSignondSessionData* result = NULL;
-    GSignondSessionData* ui_action = NULL;
+    GSignondSignonuiData* ui_action = NULL;
     GError* error = NULL;
+    gboolean bool_res;
 
     g_signal_connect(plugin, "response-final", G_CALLBACK(response_callback), &result);
     g_signal_connect(plugin, "user-action-required", 
@@ -192,8 +184,10 @@ START_TEST (test_passwordplugin_request)
     fail_if(result != NULL);    
     fail_if(ui_action == NULL);
     fail_if(error != NULL);
-    fail_if(gsignond_session_data_get_query_username(ui_action) == FALSE);
-    fail_if(gsignond_session_data_get_query_password(ui_action) == FALSE);
+    fail_if(gsignond_signonui_data_get_query_username(ui_action, &bool_res) == FALSE);
+    fail_if(bool_res == FALSE);
+    fail_if(gsignond_signonui_data_get_query_password(ui_action, &bool_res) == FALSE);
+    fail_if(bool_res == FALSE);    
     gsignond_dictionary_unref(ui_action);
     ui_action = NULL;
     
@@ -203,8 +197,10 @@ START_TEST (test_passwordplugin_request)
     fail_if(result != NULL);    
     fail_if(ui_action == NULL);
     fail_if(error != NULL);
-    fail_if(gsignond_session_data_get_query_username(ui_action) == TRUE);
-    fail_if(gsignond_session_data_get_query_password(ui_action) == FALSE);
+    fail_if(gsignond_signonui_data_get_query_username(ui_action, &bool_res) == FALSE);
+    fail_if(bool_res == TRUE);
+    fail_if(gsignond_signonui_data_get_query_password(ui_action, &bool_res) == FALSE);
+    fail_if(bool_res == FALSE);    
     gsignond_dictionary_unref(ui_action);
     ui_action = NULL;
     
@@ -221,7 +217,7 @@ START_TEST (test_passwordplugin_user_action_finished)
     fail_if(plugin == NULL);
 
     GSignondSessionData* result = NULL;
-    GSignondSessionData* ui_action = NULL;
+    GSignondSignonuiData* ui_action = NULL;
     GError* error = NULL;
 
     g_signal_connect(plugin, "response-final", G_CALLBACK(response_callback), &result);
@@ -229,7 +225,7 @@ START_TEST (test_passwordplugin_user_action_finished)
                      G_CALLBACK(user_action_required_callback), &ui_action);
     g_signal_connect(plugin, "error", G_CALLBACK(error_callback), &error);
 
-    GSignondSessionData* data = gsignond_dictionary_new();
+    GSignondSignonuiData* data = gsignond_dictionary_new();
     
     //empty data
     gsignond_plugin_user_action_finished(plugin, data);
@@ -242,9 +238,9 @@ START_TEST (test_passwordplugin_user_action_finished)
     error = NULL;
     
     // correct values
-    gsignond_session_data_set_username(data, "megauser");
-    gsignond_session_data_set_secret(data, "megapassword");
-    gsignond_session_data_set_query_error(data, GSIGNOND_QUERY_ERROR_NONE);
+    gsignond_signonui_data_set_username(data, "megauser");
+    gsignond_signonui_data_set_password(data, "megapassword");
+    gsignond_signonui_data_set_query_error(data, SIGNONUI_ERROR_NONE);
     gsignond_plugin_user_action_finished(plugin, data);
     fail_if(result == NULL);    
     fail_if(ui_action != NULL);
@@ -257,7 +253,7 @@ START_TEST (test_passwordplugin_user_action_finished)
     result = NULL;
 
     // user canceled
-    gsignond_session_data_set_query_error(data, GSIGNOND_QUERY_ERROR_CANCELED);
+    gsignond_signonui_data_set_query_error(data, SIGNONUI_ERROR_CANCELED);
     gsignond_plugin_user_action_finished(plugin, data);
     fail_if(result != NULL);    
     fail_if(ui_action != NULL);
@@ -268,7 +264,7 @@ START_TEST (test_passwordplugin_user_action_finished)
     error = NULL;
 
     // error in ui request
-    gsignond_session_data_set_query_error(data, GSIGNOND_QUERY_ERROR_GENERAL);
+    gsignond_signonui_data_set_query_error(data, SIGNONUI_ERROR_GENERAL);
     gsignond_plugin_user_action_finished(plugin, data);
     fail_if(result != NULL);    
     fail_if(ui_action != NULL);