|
|
@@ -1,5 +1,6 @@
|
|
|
#include <glib.h>
|
|
|
#include <stdio.h>
|
|
|
+#include "test.h"
|
|
|
|
|
|
/* This test is just to be used with valgrind */
|
|
|
char *
|
|
|
@@ -27,7 +28,7 @@ test_concat ()
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
|
-#define sfail(k,p) if (s->str [p] != k) { g_string_free (s,TRUE); return g_strdup_printf ("Failed at %d, expected '%c'", p, k);}
|
|
|
+#define sfail(k,p) if (s->str [p] != k) { g_string_free (s,TRUE); return g_strdup_printf ("Got %s, Failed at %d, expected '%c'", s, p, k);}
|
|
|
|
|
|
char *
|
|
|
test_gstring ()
|
|
|
@@ -37,22 +38,21 @@ test_gstring ()
|
|
|
int i;
|
|
|
|
|
|
if (strcmp (s->str, "My") != 0)
|
|
|
- return "Expected only 'My' on the string";
|
|
|
+ return RESULT("Expected only 'My' on the string");
|
|
|
g_string_free (s, TRUE);
|
|
|
|
|
|
s = g_string_new_len ("My\0\0Rest", 6);
|
|
|
if (s->str [2] != 0)
|
|
|
- return "Null was not copied";
|
|
|
+ return RESULT("Null was not copied");
|
|
|
if (strcmp (s->str+4, "Re") != 0){
|
|
|
- return "Did not find the 'Re' part";
|
|
|
+ return RESULT("Did not find the 'Re' part");
|
|
|
}
|
|
|
|
|
|
g_string_append (s, "lalalalalalalalalalalalalalalalalalalalalalal");
|
|
|
if (s->str [2] != 0)
|
|
|
- return "Null as not copied";
|
|
|
+ return RESULT("Null as not copied");
|
|
|
if (strncmp (s->str+4, "Relala", 6) != 0){
|
|
|
- printf ("got: %s\n", s->str+4);
|
|
|
- return "Did not copy correctly";
|
|
|
+ return g_strdup_printf("Did not copy correctly, got: %s", s->str+4);
|
|
|
}
|
|
|
|
|
|
g_string_free (s, TRUE);
|
|
|
@@ -61,8 +61,7 @@ test_gstring ()
|
|
|
g_string_append (s, "x");
|
|
|
}
|
|
|
if (strlen (s->str) != 1024){
|
|
|
- printf ("got: %s %d\n", s->str, strlen (s->str));
|
|
|
- return "Incorrect string size";
|
|
|
+ return g_strdup_printf("Incorrect string size, got: %s %d", s->str, strlen (s->str));
|
|
|
}
|
|
|
g_string_free (s, TRUE);
|
|
|
|
|
|
@@ -71,16 +70,14 @@ test_gstring ()
|
|
|
g_string_append_c (s, 'x');
|
|
|
}
|
|
|
if (strlen (s->str) != 1024){
|
|
|
- printf ("got: %s %d\n", s->str, strlen (s->str));
|
|
|
- return "Incorrect string size";
|
|
|
+ return g_strdup_printf("Incorrect string size, got: %s %d\n", s->str, strlen (s->str));
|
|
|
}
|
|
|
g_string_free (s, TRUE);
|
|
|
|
|
|
s = g_string_new ("hola");
|
|
|
g_string_sprintfa (s, "%s%d", ", bola", 5);
|
|
|
if (strcmp (s->str, "hola, bola5") != 0){
|
|
|
- printf ("got: %s\n", s->str);
|
|
|
- return "Got incorrect data";
|
|
|
+ return g_strdup_printf("Incorrect data, got: %s\n", s->str);
|
|
|
}
|
|
|
g_string_free (s, TRUE);
|
|
|
|
|
|
@@ -94,10 +91,10 @@ test_gstring ()
|
|
|
s = g_string_new_len ("H\000H", 3);
|
|
|
g_string_append_len (s, "1\0002", 3);
|
|
|
sfail ('H', 0);
|
|
|
- sfail (0, 1);
|
|
|
+ sfail ( 0, 1);
|
|
|
sfail ('H', 2);
|
|
|
sfail ('1', 3);
|
|
|
- sfail (0, 4);
|
|
|
+ sfail ( 0, 4);
|
|
|
sfail ('2', 5);
|
|
|
g_string_free (s, TRUE);
|
|
|
|
|
|
@@ -111,7 +108,7 @@ test_split ()
|
|
|
int i = 0;
|
|
|
|
|
|
if(v == NULL) {
|
|
|
- return g_strdup_printf("split failed, got NULL vector");
|
|
|
+ return RESULT("split failed, got NULL vector");
|
|
|
} else {
|
|
|
for(i = 0; v[i] != NULL; i++);
|
|
|
if(i != 7) {
|
|
|
@@ -149,3 +146,14 @@ test_strreverse ()
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
|
+static Test string_tests [] = {
|
|
|
+ {"g_strfreev", test_strfreev},
|
|
|
+ {"g_strconcat", test_concat},
|
|
|
+ {"GString", test_gstring},
|
|
|
+ {"g_strsplit", test_split},
|
|
|
+ {"g_strreverse", test_strreverse},
|
|
|
+ {NULL, NULL}
|
|
|
+};
|
|
|
+
|
|
|
+DEFINE_TEST_GROUP_INIT(string_tests_init, string_tests)
|
|
|
+
|