diff --git a/tests/fake-home.c b/tests/fake-home.c
index a1f59352e65623ae9a3c1cc2e6932f42516be6a7..5bd39f8cb8c738e897079d9ea48b7abe7d3e6ad5 100644
--- a/tests/fake-home.c
+++ b/tests/fake-home.c
@@ -57,7 +57,9 @@ fake_home_new (const gchar *home)
       g_assert_cmpstr (dirname, !=, "/tmp");
       g_assert_cmpstr (dirname, !=, "/var/tmp");
       fake_home->home = g_strdup (home);
-      g_assert_cmpint (g_mkdir_with_parents (fake_home->home, 0755), ==, 0);
+      g_assert_cmpint (g_mkdir_with_parents (dirname, 0755) == 0 ? 0 : errno, ==, 0);
+      /* It should not already exist */
+      g_assert_cmpint (g_mkdir (fake_home->home, 0755) == 0 ? 0 : errno, ==, 0);
       g_free (dirname);
     }
   else