[glib] Add some GDir tests



commit a3bda1acfc5f3e8f4f672cc81f388ffabf1e7b58
Author: Matthias Clasen <mclasen redhat com>
Date:   Mon Jul 5 23:43:47 2010 -0400

    Add some GDir tests

 glib/tests/Makefile.am |    3 ++
 glib/tests/dir.c       |   53 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 0 deletions(-)
---
diff --git a/glib/tests/Makefile.am b/glib/tests/Makefile.am
index f1ec701..a9c3d76 100644
--- a/glib/tests/Makefile.am
+++ b/glib/tests/Makefile.am
@@ -111,6 +111,9 @@ tree_LDADD          = $(progs_ldadd)
 TEST_PROGS         += uri
 uri_LDADD           = $(progs_ldadd)
 
+TEST_PROGS         += dir
+dir_LDADD           = $(progs_ldadd)
+
 if OS_UNIX
 
 # some testing of gtester funcitonality
diff --git a/glib/tests/dir.c b/glib/tests/dir.c
new file mode 100644
index 0000000..74dbe14
--- /dev/null
+++ b/glib/tests/dir.c
@@ -0,0 +1,53 @@
+#include <glib.h>
+
+static void
+test_dir_read (void)
+{
+  GDir *dir;
+  GError *error;
+  gchar *first;
+  const gchar *name;
+
+  error = NULL;
+  dir = g_dir_open (".", 0, &error);
+  g_assert_no_error (error);
+
+  first = NULL;
+  while ((name = g_dir_read_name (dir)) != NULL)
+    {
+      if (first == NULL)
+        first = g_strdup (name);
+      g_assert_cmpstr (name, !=, ".");
+      g_assert_cmpstr (name, !=, "..");
+    }
+
+  g_dir_rewind (dir);
+  g_assert_cmpstr (g_dir_read_name (dir), ==, first);
+
+  g_free (first);
+  g_dir_close (dir);
+}
+
+static void
+test_dir_nonexisting (void)
+{
+  GDir *dir;
+  GError *error;
+
+  error = NULL;
+  dir = g_dir_open ("/pfrkstrf", 0, &error);
+  g_assert (dir == NULL);
+  g_assert_error (error, G_FILE_ERROR, G_FILE_ERROR_NOENT);
+  g_error_free (error);
+}
+
+int
+main (int argc, char *argv[])
+{
+  g_test_init (&argc, &argv, NULL);
+
+  g_test_add_func ("/dir/read", test_dir_read);
+  g_test_add_func ("/dir/nonexisting", test_dir_nonexisting);
+
+  return g_test_run ();
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]