#############################################################################*/
#include <pakfire/file.h>
+#include <pakfire/filelist.h>
#include "../testsuite.h"
return EXIT_FAILURE;
}
+static int test_create_filelist(const struct test* t) {
+ struct pakfire_filelist* list = NULL;
+ struct pakfire_file* file1 = NULL;
+ struct pakfire_file* file2 = NULL;
+ struct pakfire_file* file3 = NULL;
+ int r = EXIT_FAILURE;
+
+ // Create a new filelist
+ ASSERT_SUCCESS(pakfire_filelist_create(&list, t->pakfire));
+
+ // Create some files
+ ASSERT_SUCCESS(pakfire_file_create(&file1, t->pakfire));
+ ASSERT_SUCCESS(pakfire_file_create(&file2, t->pakfire));
+ ASSERT_SUCCESS(pakfire_file_create(&file3, t->pakfire));
+
+ // Set some paths
+ ASSERT_SUCCESS(pakfire_file_set_path(file1, "/1"));
+ ASSERT_SUCCESS(pakfire_file_set_path(file2, "/2"));
+ ASSERT_SUCCESS(pakfire_file_set_path(file3, "/3"));
+
+ // Add the files to the list
+ ASSERT_SUCCESS(pakfire_filelist_add(list, file1));
+ ASSERT_SUCCESS(pakfire_filelist_add(list, file3));
+ ASSERT_SUCCESS(pakfire_filelist_add(list, file2));
+
+ // Dump the filelist
+ pakfire_filelist_dump(list, 0);
+
+ ASSERT(pakfire_filelist_length(list) == 3);
+
+ // Success
+ r = EXIT_SUCCESS;
+
+FAIL:
+ if (list)
+ pakfire_filelist_unref(list);
+ if (file1)
+ pakfire_file_unref(file1);
+ if (file2)
+ pakfire_file_unref(file2);
+ if (file3)
+ pakfire_file_unref(file3);
+
+ return r;
+}
+
int main(int argc, const char* argv[]) {
testsuite_add_test(test_create);
testsuite_add_test(test_create_invalid);
+ testsuite_add_test(test_create_filelist);
+
return testsuite_run(argc, argv);
}