fix bug 188172 - libsignon-glib1-test tests fail
authorTomi Suviola <tomi.suviola@nokia.com>
Tue, 26 Oct 2010 08:19:19 +0000 (11:19 +0300)
committerTomi Suviola <tomi.suviola@nokia.com>
Tue, 26 Oct 2010 08:19:19 +0000 (11:19 +0300)
tests/check_signon.c
tests/tests.xml

index dc919d70d4a77ca24649c744622775c1ed4fa5f3..6c5c894d4a80963a852874fb2fe5d3332e550720 100644 (file)
@@ -838,6 +838,18 @@ START_TEST(test_remove_identity)
 }
 END_TEST
 
+static gboolean _contains(gchar **mechs, gchar *mech)
+{
+    gboolean present = FALSE;
+    gint i = 0;
+    while (mechs[i] != NULL)
+    {
+        if (g_strcmp0 (mech, mechs[i]) == 0) present = TRUE;
+        i++;
+    }
+    return present;
+}
+
 static void identity_info_cb(SignonIdentity *self, const SignonIdentityInfo *info, const GError *error, gpointer user_data)
 {
      if (error)
@@ -875,17 +887,17 @@ static void identity_info_cb(SignonIdentity *self, const SignonIdentityInfo *inf
          fail_unless (g_strv_length (mechs2) == 3);
          fail_unless (g_strv_length (mechs3) == 3);
 
-         fail_unless (g_strcmp0 ("mechanism1", mechs1[0]) == 0 &&
-                      g_strcmp0 ("mechanism2", mechs1[1]) == 0 &&
-                      g_strcmp0 ("mechanism3", mechs1[2]) == 0);
+         fail_unless (_contains(mechs1, "mechanism1"));
+         fail_unless (_contains(mechs1, "mechanism2"));
+         fail_unless (_contains(mechs1, "mechanism3"));
 
-         fail_unless (g_strcmp0 ("mechanism1", mechs2[0]) == 0 &&
-                      g_strcmp0 ("mechanism2", mechs2[1]) == 0 &&
-                      g_strcmp0 ("mechanism3", mechs2[2]) == 0);
+         fail_unless (_contains(mechs2, "mechanism1"));
+         fail_unless (_contains(mechs2, "mechanism2"));
+         fail_unless (_contains(mechs2, "mechanism3"));
 
-         fail_unless (g_strcmp0 ("mechanism1", mechs3[0]) == 0 &&
-                      g_strcmp0 ("mechanism2", mechs3[1]) == 0 &&
-                      g_strcmp0 ("mechanism3", mechs3[2]) == 0);
+         fail_unless (_contains(mechs3, "mechanism1"));
+         fail_unless (_contains(mechs3, "mechanism2"));
+         fail_unless (_contains(mechs3, "mechanism3"));
      }
 
      if (info)
index 489f3bb6ec1043160f4b9341ffe570585f4d3578..2ba8b914ee1a366ad92f8a3d56fd7c222e0e1ee2 100644 (file)
@@ -1,7 +1,7 @@
  <testdefinition version="0.1">
      <suite name="libsignon-glib1-tests" domain="Accounts and SSO">
          <set description="libsignon-glib1-tests:signon-glib-tests" name="/usr/bin/signon-glib-test.sh">
-              <case description="libsignon-glib-tests:signon-glib-test.sh" name="signon-glib-test.sh" type="Functional" level="Feature" timeout="800">
+              <case description="libsignon-glib-tests:signon-glib-test.sh" name="signon-glib-test.sh" type="Functional" level="Feature" timeout="1600">
                  <step>/usr/bin/signon-glib-test.sh</step>
               </case>
               <environments><scratchbox>true</scratchbox>