#ifdef HAVE_CONFIG_H # include #endif #include int main() { GQueue *q; q = g_queue_new (); g_assert (g_queue_empty (q) == TRUE); g_queue_push (q, GINT_TO_POINTER (1)); g_assert (g_list_length (q->list) == 1); g_queue_push (q, GINT_TO_POINTER (2)); g_assert (g_list_length (q->list) == 2); g_queue_push (q, GINT_TO_POINTER (3)); g_assert (g_list_length (q->list) == 3); g_queue_push (q, GINT_TO_POINTER (4)); g_assert (g_list_length (q->list) == 4); g_queue_push (q, GINT_TO_POINTER (5)); g_assert (g_list_length (q->list) == 5); g_assert (g_queue_empty (q) == FALSE); g_assert (g_queue_index (q, GINT_TO_POINTER (2)) == 1); g_assert (g_queue_index (q, GINT_TO_POINTER (142)) == -1); g_assert (g_queue_peek (q) == GINT_TO_POINTER (1)); g_assert (g_queue_peek_front (q) == GINT_TO_POINTER (1)); g_assert (g_queue_peek_back (q) == GINT_TO_POINTER (5)); g_assert (g_queue_pop (q) == GINT_TO_POINTER (1)); g_assert (g_list_length (q->list) == 4); g_assert (g_queue_pop (q) == GINT_TO_POINTER (2)); g_assert (g_list_length (q->list) == 3); g_assert (g_queue_pop (q) == GINT_TO_POINTER (3)); g_assert (g_list_length (q->list) == 2); g_assert (g_queue_pop (q) == GINT_TO_POINTER (4)); g_assert (g_list_length (q->list) == 1); g_assert (g_queue_pop (q) == GINT_TO_POINTER (5)); g_assert (g_list_length (q->list) == 0); g_assert (g_queue_pop (q) == NULL); g_assert (g_list_length (q->list) == 0); g_assert (g_queue_pop (q) == NULL); g_assert (g_list_length (q->list) == 0); g_assert (g_queue_empty (q) == TRUE); /************************/ g_queue_push_front (q, GINT_TO_POINTER (1)); g_assert (g_list_length (q->list) == 1); g_queue_push_front (q, GINT_TO_POINTER (2)); g_assert (g_list_length (q->list) == 2); g_queue_push_front (q, GINT_TO_POINTER (3)); g_assert (g_list_length (q->list) == 3); g_queue_push_front (q, GINT_TO_POINTER (4)); g_assert (g_list_length (q->list) == 4); g_queue_push_front (q, GINT_TO_POINTER (5)); g_assert (g_list_length (q->list) == 5); g_assert (g_queue_pop_front (q) == GINT_TO_POINTER (5)); g_assert (g_list_length (q->list) == 4); g_assert (g_queue_pop_front (q) == GINT_TO_POINTER (4)); g_assert (g_list_length (q->list) == 3); g_assert (g_queue_pop_front (q) == GINT_TO_POINTER (3)); g_assert (g_list_length (q->list) == 2); g_assert (g_queue_pop_front (q) == GINT_TO_POINTER (2)); g_assert (g_list_length (q->list) == 1); g_assert (g_queue_pop_front (q) == GINT_TO_POINTER (1)); g_assert (g_list_length (q->list) == 0); g_assert (g_queue_pop_front (q) == NULL); g_assert (g_list_length (q->list) == 0); g_assert (g_queue_pop_front (q) == NULL); g_assert (g_list_length (q->list) == 0); g_queue_free (q); return 0; }