mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-12 15:36:17 +01:00
Convert test/relation-test.c to glib test framework
This commit is contained in:
parent
1094144b7a
commit
372b63bf1a
@ -19,15 +19,10 @@
|
|||||||
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||||
* file for a list of people on the GLib Team. See the ChangeLog
|
* file for a list of people on the GLib Team. See the ChangeLog
|
||||||
* files for a list of changes. These files are distributed with
|
* files for a list of changes. These files are distributed with
|
||||||
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#undef G_DISABLE_ASSERT
|
#include <glib.h>
|
||||||
#undef G_LOG_DOMAIN
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include "glib.h"
|
|
||||||
|
|
||||||
int array[10000];
|
int array[10000];
|
||||||
gboolean failed = FALSE;
|
gboolean failed = FALSE;
|
||||||
@ -50,22 +45,18 @@ else \
|
|||||||
#define GLIB_TEST_STRING_5 "el do"
|
#define GLIB_TEST_STRING_5 "el do"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
guint age;
|
guint age;
|
||||||
gchar name[40];
|
gchar name[40];
|
||||||
} GlibTestInfo;
|
} GlibTestInfo;
|
||||||
|
|
||||||
|
static void
|
||||||
|
test_relation (void)
|
||||||
int
|
|
||||||
main (int argc,
|
|
||||||
char *argv[])
|
|
||||||
{
|
{
|
||||||
gint i;
|
gint i;
|
||||||
GRelation *relation;
|
GRelation *relation;
|
||||||
GTuples *tuples;
|
GTuples *tuples;
|
||||||
gint data [1024];
|
gint data [1024];
|
||||||
|
|
||||||
|
|
||||||
relation = g_relation_new (2);
|
relation = g_relation_new (2);
|
||||||
|
|
||||||
g_relation_index (relation, 0, g_int_hash, g_int_equal);
|
g_relation_index (relation, 0, g_int_hash, g_int_equal);
|
||||||
@ -82,55 +73,54 @@ main (int argc,
|
|||||||
|
|
||||||
for (i = 2; i < 1022; i += 1)
|
for (i = 2; i < 1022; i += 1)
|
||||||
{
|
{
|
||||||
g_assert (! g_relation_exists (relation, data + i, data + i));
|
g_assert_false (g_relation_exists (relation, data + i, data + i));
|
||||||
g_assert (! g_relation_exists (relation, data + i, data + i + 2));
|
g_assert_false (g_relation_exists (relation, data + i, data + i + 2));
|
||||||
g_assert (! g_relation_exists (relation, data + i, data + i - 2));
|
g_assert_false (g_relation_exists (relation, data + i, data + i - 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 1; i < 1023; i += 1)
|
for (i = 1; i < 1023; i += 1)
|
||||||
{
|
{
|
||||||
g_assert (g_relation_exists (relation, data + i, data + i + 1));
|
g_assert_true (g_relation_exists (relation, data + i, data + i + 1));
|
||||||
g_assert (g_relation_exists (relation, data + i, data + i - 1));
|
g_assert_true (g_relation_exists (relation, data + i, data + i - 1));
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 2; i < 1022; i += 1)
|
for (i = 2; i < 1022; i += 1)
|
||||||
{
|
{
|
||||||
g_assert (g_relation_count (relation, data + i, 0) == 2);
|
g_assert_cmpint (g_relation_count (relation, data + i, 0), ==, 2);
|
||||||
g_assert (g_relation_count (relation, data + i, 1) == 2);
|
g_assert_cmpint (g_relation_count (relation, data + i, 1), ==, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
g_assert (g_relation_count (relation, data, 0) == 0);
|
g_assert_cmpint (g_relation_count (relation, data, 0), ==, 0);
|
||||||
|
|
||||||
|
g_assert_cmpint (g_relation_count (relation, data + 42, 0), ==, 2);
|
||||||
|
g_assert_cmpint (g_relation_count (relation, data + 43, 1), ==, 2);
|
||||||
|
g_assert_cmpint (g_relation_count (relation, data + 41, 1), ==, 2);
|
||||||
|
|
||||||
g_assert (g_relation_count (relation, data + 42, 0) == 2);
|
|
||||||
g_assert (g_relation_count (relation, data + 43, 1) == 2);
|
|
||||||
g_assert (g_relation_count (relation, data + 41, 1) == 2);
|
|
||||||
g_relation_delete (relation, data + 42, 0);
|
g_relation_delete (relation, data + 42, 0);
|
||||||
g_assert (g_relation_count (relation, data + 42, 0) == 0);
|
|
||||||
g_assert (g_relation_count (relation, data + 43, 1) == 1);
|
g_assert_cmpint (g_relation_count (relation, data + 42, 0), ==, 0);
|
||||||
g_assert (g_relation_count (relation, data + 41, 1) == 1);
|
g_assert_cmpint (g_relation_count (relation, data + 43, 1), ==, 1);
|
||||||
|
g_assert_cmpint (g_relation_count (relation, data + 41, 1), ==, 1);
|
||||||
|
|
||||||
tuples = g_relation_select (relation, data + 200, 0);
|
tuples = g_relation_select (relation, data + 200, 0);
|
||||||
|
|
||||||
g_assert (tuples->len == 2);
|
g_assert_cmpint (tuples->len, ==, 2);
|
||||||
|
|
||||||
#if 0
|
g_assert_true (g_relation_exists (relation, data + 300, data + 301));
|
||||||
for (i = 0; i < tuples->len; i += 1)
|
|
||||||
{
|
|
||||||
printf ("%d %d\n",
|
|
||||||
*(gint*) g_tuples_index (tuples, i, 0),
|
|
||||||
*(gint*) g_tuples_index (tuples, i, 1));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
g_assert (g_relation_exists (relation, data + 300, data + 301));
|
|
||||||
g_relation_delete (relation, data + 300, 0);
|
g_relation_delete (relation, data + 300, 0);
|
||||||
g_assert (!g_relation_exists (relation, data + 300, data + 301));
|
g_assert_false (g_relation_exists (relation, data + 300, data + 301));
|
||||||
|
|
||||||
g_tuples_destroy (tuples);
|
g_tuples_destroy (tuples);
|
||||||
|
|
||||||
g_relation_destroy (relation);
|
g_relation_destroy (relation);
|
||||||
|
}
|
||||||
relation = NULL;
|
|
||||||
|
int
|
||||||
return 0;
|
main (int argc,
|
||||||
|
char *argv[])
|
||||||
|
{
|
||||||
|
g_test_init (&argc, &argv, NULL);
|
||||||
|
|
||||||
|
g_test_add_func ("/glib/relation", test_relation);
|
||||||
|
|
||||||
|
return g_test_run ();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user