summaryrefslogtreecommitdiff
path: root/dependencies/uthash/tests/test44.c
diff options
context:
space:
mode:
Diffstat (limited to 'dependencies/uthash/tests/test44.c')
-rw-r--r--dependencies/uthash/tests/test44.c66
1 files changed, 66 insertions, 0 deletions
diff --git a/dependencies/uthash/tests/test44.c b/dependencies/uthash/tests/test44.c
new file mode 100644
index 000000000..042fc4c50
--- /dev/null
+++ b/dependencies/uthash/tests/test44.c
@@ -0,0 +1,66 @@
+#include <stdio.h>
+#include "utarray.h"
+
+static int reverse(const void *a, const void *b)
+{
+ int _a = *(const int*)a;
+ int _b = *(const int*)b;
+ return _b - _a;
+}
+
+int main()
+{
+ UT_array *a;
+ int i, *p;
+ utarray_new(a, &ut_int_icd);
+ for(i=0; i<10; i++) {
+ utarray_push_back(a,&i);
+ }
+ for(p=(int*)utarray_front(a); p!=NULL; p=(int*)utarray_next(a,p)) {
+ printf("%d ",*p);
+ }
+ printf("\n");
+ utarray_sort(a,reverse);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_erase(a,3,3);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_erase(a,1,2);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_erase(a,0,1);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_erase(a,3,1);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_resize(a,5);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_resize(a,3);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_erase(a,0,3);
+ while ( (p=(int*)utarray_next(a,p)) != NULL ) {
+ printf("%d ", *p);
+ }
+ printf("\n");
+ utarray_free(a);
+ return 0;
+}
+