X-Git-Url: https://git.librecmc.org/?p=oweals%2Fopkg-lede.git;a=blobdiff_plain;f=tests%2Flibopkg_test.c;h=4d82a6721ae4898c6fb543eac9362251753dddd5;hp=073a9a7ca392483701244f8665ee854cf142ba30;hb=599cc259280ccde97b2a3b459c3f015db6390127;hpb=9b0b4b31e4bb13f4ae77bc0841fe9400ec3898c1 diff --git a/tests/libopkg_test.c b/tests/libopkg_test.c index 073a9a7..4d82a67 100644 --- a/tests/libopkg_test.c +++ b/tests/libopkg_test.c @@ -1,23 +1,11 @@ -#include -#include #include +#include #include #include -pkg_t *find_pkg = NULL; +#include -char *errors[10] = { - "No Error", - "Unknown Eror", - "Download failed", - "Dependancies failed", - "Package already installed", - "Package not available", - "Package not found", - "Package not installed", - "Signature check failed", - "MD5 sum failed" -}; +pkg_t *find_pkg = NULL; #define TEST_PACKAGE "aspell" @@ -25,10 +13,24 @@ char *errors[10] = { void progress_callback (const opkg_progress_data_t *progress, void *data) { - printf ("\r%s %3d%%", (char*) data, progress->percentage); + printf ("\r%s %3d%%\n", (char*) data, progress->percentage); fflush (stdout); } +static void list_pkg(pkg_t *pkg) +{ + char *v = pkg_version_str_alloc(pkg); + printf ("%s - %s\n", pkg->name, v); + free(v); +} + +void +package_list_installed_callback (pkg_t *pkg, void *data) +{ + if (pkg->state_status == SS_INSTALLED) + list_pkg(pkg); +} + void package_list_callback (pkg_t *pkg, void *data) { @@ -53,12 +55,13 @@ package_list_callback (pkg_t *pkg, void *data) void package_list_upgradable_callback (pkg_t *pkg, void *data) { - printf ("%s - %s\n", pkg->name, pkg->version); + list_pkg(pkg); } void print_package (pkg_t *pkg) { + char *v = pkg_version_str_alloc(pkg); printf ( "Name: %s\n" "Version: %s\n" @@ -69,14 +72,14 @@ print_package (pkg_t *pkg) "Size: %ld\n" "Status: %d\n", pkg->name, - pkg->version, + v, pkg->src->name, pkg->architecture, pkg->description, - pkg->tags, + pkg->tags? pkg->tags : "", pkg->size, - pkg->state_status - ); + pkg->state_status); + free(v); } @@ -87,7 +90,7 @@ opkg_test (void) pkg_t *pkg; err = opkg_update_package_lists (progress_callback, "Updating..."); - printf ("\nopkg_update_package_lists returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_update_package_lists returned %d\n", err); opkg_list_packages (package_list_callback, NULL); printf ("\n"); @@ -107,19 +110,19 @@ opkg_test (void) printf ("No package available to test find_package.\n"); err = opkg_install_package (TEST_PACKAGE, progress_callback, "Installing..."); - printf ("\nopkg_install_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_install_package returned %d\n", err); err = opkg_upgrade_package (TEST_PACKAGE, progress_callback, "Upgrading..."); - printf ("\nopkg_upgrade_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_upgrade_package returned %d\n", err); err = opkg_remove_package (TEST_PACKAGE, progress_callback, "Removing..."); - printf ("\nopkg_remove_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_remove_package returned %d\n", err); printf ("Listing upgradable packages...\n"); opkg_list_upgradable_packages (package_list_upgradable_callback, NULL); err = opkg_upgrade_all (progress_callback, "Upgrading all..."); - printf ("\nopkg_upgrade_all returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_upgrade_all returned %d\n", err); } @@ -168,14 +171,14 @@ main (int argc, char **argv) break; case 'i': err = opkg_install_package (argv[2], progress_callback, "Installing..."); - printf ("\nopkg_install_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_install_package returned %d\n", err); break; case 'u': if (argv[1][2] == 'd') { err = opkg_update_package_lists (progress_callback, "Updating..."); - printf ("\nopkg_update_package_lists returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_update_package_lists returned %d\n", err); break; } else @@ -183,12 +186,12 @@ main (int argc, char **argv) if (argc < 3) { err = opkg_upgrade_all (progress_callback, "Upgrading all..."); - printf ("\nopkg_upgrade_all returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_upgrade_all returned %d\n", err); } else { err = opkg_upgrade_package (argv[2], progress_callback, "Upgrading..."); - printf ("\nopkg_upgrade_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_upgrade_package returned %d\n", err); } } break; @@ -213,9 +216,10 @@ main (int argc, char **argv) break; case 'i': printf ("Listing installed packages...\n"); + opkg_list_packages (package_list_installed_callback, NULL); break; default: - printf ("Unknown list option \"%s\"", argv[2]); + printf ("Unknown list option \"%s\"\n", argv[2]); } } break; @@ -224,7 +228,7 @@ main (int argc, char **argv) if (argv[1][1] == 'e') { err = opkg_remove_package (argv[2], progress_callback, "Removing..."); - printf ("\nopkg_remove_package returned %d (%s)\n", err, errors[err]); + printf ("\nopkg_remove_package returned %d\n", err); break; }else if (argv[1][1] == 'p') {