summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2008-12-15 00:32:04 (EST)
committer ticktock35 <ticktock35@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2008-12-15 00:32:04 (EST)
commit261c929147fe205f35a57df70b4c126148903416 (patch)
treef5aaa6e0c581c0f82cf7e4763d02a3252b4b1a70
parentc4ec4181cf4dc98c580213ef302f4b9faa655592 (diff)
opkg: active_list tests
git-svn-id: http://opkg.googlecode.com/svn/trunk@167 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358
-rw-r--r--libopkg/active_list.h2
-rw-r--r--tests/Makefile.am6
-rw-r--r--tests/opkg_active_list_test.c35
3 files changed, 32 insertions, 11 deletions
diff --git a/libopkg/active_list.h b/libopkg/active_list.h
index 6744234..a32070f 100644
--- a/libopkg/active_list.h
+++ b/libopkg/active_list.h
@@ -25,7 +25,7 @@ struct active_list {
struct list_head depend;
char walked;
struct active_list *depended;
-} __attribute__((packed));
+};
struct active_list * active_list_next(struct active_list *head, struct active_list *ptr);
void active_list_init(struct active_list *ptr);
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 0d8c5ce..8e91d6e 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,7 +1,7 @@
AM_CFLAGS = $(ALL_CFLAGS) -I${top_srcdir}/libopkg
#noinst_PROGRAMS = opkg_hash_test opkg_extract_test
-noinst_PROGRAMS = libopkg_test
+noinst_PROGRAMS = libopkg_test opkg_active_list_test
#opkg_hash_test_LDADD = $(top_builddir)/libbb/libbb.la $(top_builddir)/libopkg/libopkg.la
#opkg_hash_test_SOURCES = opkg_hash_test.c
@@ -11,6 +11,10 @@ noinst_PROGRAMS = libopkg_test
#opkg_extract_test_SOURCES = opkg_extract_test.c
#opkg_extract_test_CFLAGS = $(ALL_CFLAGS) -I$(top_srcdir)
+opkg_active_list_test_LDADD = $(top_builddir)/libopkg/active_list.o
+opkg_active_list_test_SOURCES = opkg_active_list_test.c
+opkg_active_list_test_CFLAGS = $(ALL_CFLAGS) -I$(top_srcdir)
+
libopkg_test_LDADD = $(top_builddir)/libopkg/libopkg.la
libopkg_test_SOURCE = libopkg_test.c
diff --git a/tests/opkg_active_list_test.c b/tests/opkg_active_list_test.c
index ec6bec1..88371a2 100644
--- a/tests/opkg_active_list_test.c
+++ b/tests/opkg_active_list_test.c
@@ -1,23 +1,30 @@
+/* opkg_active_list.c - the opkg package management system
-/*
-.--A---B----C----D-----E----F
- | |__k---L
- | |_ N
- |__ G ---H ---I---J
- |_M |_O
+ Tick Chen <tick@openmoko.com>
-Then the sequence will be
-G M H I O J A B K N L C D E F
+ Copyright (C) 2008 Openmoko
+
+ 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, 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.
*/
+
#include <stdlib.h>
#include <libopkg/active_list.h>
+#include <active_list.h>
#include <stdio.h>
struct active_test {
char *str;
struct active_list list;
-} __attribute__((packed));
+};
struct active_test *active_test_new(char *str) {
struct active_test *ans = (struct active_test *)calloc(1, sizeof(struct active_test));
@@ -33,6 +40,16 @@ void active_test_add_depend(struct active_test *A, struct active_test *B) {
active_list_add_depend(&A->list, &B->list);
}
+/*
+.--A---B----C----D-----E----F
+ | |__k---L
+ | |_ N
+ |__ G ---H ---I---J
+ |_M |_O
+
+Then the sequence will be
+G M H I O J A B K N L C D E F
+*/
void make_list(struct active_list *head) {
struct active_test *A = active_test_new("A");
struct active_test *B = active_test_new("B");