[tracker] libtracker-common: Unit tests for the utils functions



commit 78262268eeb0d9900280964902b9cddf070f9e71
Author: Ivan Frade <ivan frade nokia com>
Date:   Thu Mar 18 22:16:18 2010 +0200

    libtracker-common: Unit tests for the utils functions

 tests/libtracker-common/Makefile.am          |   14 ++++-
 tests/libtracker-common/tracker-utils-test.c |   87 ++++++++++++++++++++++++++
 2 files changed, 100 insertions(+), 1 deletions(-)
---
diff --git a/tests/libtracker-common/Makefile.am b/tests/libtracker-common/Makefile.am
index e52f392..dbdc648 100644
--- a/tests/libtracker-common/Makefile.am
+++ b/tests/libtracker-common/Makefile.am
@@ -5,7 +5,8 @@ noinst_PROGRAMS = $(TEST_PROGS)
 TEST_PROGS += 								\
 	tracker-dbus 							\
 	tracker-type-utils 						\
-	tracker-file-utils
+	tracker-file-utils						\
+	tracker-utils
 
 INCLUDES = 								\
 	-DG_LOG_DOMAIN=\"Tracker\"					\
@@ -56,4 +57,15 @@ tracker_file_utils_LDADD =						\
 	$(GLIB2_LIBS)							\
 	$(GCOV_LIBS)
 
+tracker_utils_SOURCES = 						\
+	tracker-utils-test.c
+
+tracker_utils_LDADD =							\
+	$(top_builddir)/src/libtracker-common/libtracker-common.la 	\
+	$(DBUS_LIBS)							\
+	$(GMODULE_LIBS)							\
+	$(GTHREAD_LIBS)							\
+	$(GLIB2_LIBS)							\
+	$(GCOV_LIBS)
+
 EXTRA_DIST = non-utf8.txt
diff --git a/tests/libtracker-common/tracker-utils-test.c b/tests/libtracker-common/tracker-utils-test.c
new file mode 100644
index 0000000..aa200b1
--- /dev/null
+++ b/tests/libtracker-common/tracker-utils-test.c
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2010, Nokia <urho konttori nokia com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA  02110-1301, USA.
+ *
+ */
+
+#include <glib-object.h>
+#include <libtracker-common/tracker-utils.h>
+
+static void
+test_seconds_to_string ()
+{
+        gchar *result;
+
+        result = tracker_seconds_to_string (0, TRUE);
+        g_assert_cmpstr (result, ==, "less than one second");
+        g_free (result);
+
+        result = tracker_seconds_to_string (0.1, TRUE);
+        g_assert_cmpstr (result, ==, "less than one second");
+        g_free (result);
+
+        result = tracker_seconds_to_string (59.9, TRUE);
+        g_assert_cmpstr (result, ==, "59s");
+        g_free (result);
+
+        result = tracker_seconds_to_string (60, TRUE);
+        g_assert_cmpstr (result, ==, "01m");
+        g_free (result);
+
+        result = tracker_seconds_to_string (100.12, TRUE);
+        g_assert_cmpstr (result, ==, "01m 40s");
+        g_free (result);
+
+        result = tracker_seconds_to_string (100, FALSE);
+        g_assert_cmpstr (result, ==, "01 minute 40 seconds");
+        g_free (result);
+
+        result = tracker_seconds_to_string (1000000, TRUE);
+        g_assert_cmpstr (result, ==, "11d 13h 46m 40s");
+        g_free (result);
+
+        result = tracker_seconds_to_string (1000000000, TRUE);
+        g_assert_cmpstr (result, ==, "11574d 01h 46m 40s");
+        g_free (result);
+
+}
+
+static void
+test_seconds_estimate_to_string ()
+{
+        gchar *result;
+
+        result = tracker_seconds_estimate_to_string (60, TRUE, 60, 120);
+        g_assert_cmpstr (result, ==, "02m");
+        g_free (result);
+        g_print ("%s\n", result);
+}
+
+int
+main (int argc, char **argv)
+{
+	g_type_init ();
+	g_test_init (&argc, &argv, NULL);
+
+	g_test_add_func ("/libtracker-extract/tracker-utils/seconds_to_string",
+	                 test_seconds_to_string);
+
+	g_test_add_func ("/libtracker-extract/tracker-utils/seconds_estimate_to_string",
+	                 test_seconds_estimate_to_string);
+
+        return g_test_run ();
+}



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