From 5ceda81ab79a560c8dcccfab64733cc587c00d20 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 10 Feb 2023 15:23:48 +0300 Subject: Add tests for system_package_manager::system_package_version() --- bpkg/system-package-manager.test.cxx | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'bpkg/system-package-manager.test.cxx') diff --git a/bpkg/system-package-manager.test.cxx b/bpkg/system-package-manager.test.cxx index 1a669da..d2d02cb 100644 --- a/bpkg/system-package-manager.test.cxx +++ b/bpkg/system-package-manager.test.cxx @@ -25,6 +25,10 @@ namespace bpkg // // Where is a package name, is a package manifest file. // + // system-package-version [...] -- + // + // Where is a package name, is a package manifest file. + // // downstream-package-version [...] -- ... // // Where is a system version to translate, is a package @@ -41,6 +45,7 @@ namespace bpkg os_release osr; if (cmd == "system-package-names" || + cmd == "system-package-version" || cmd == "downstream-package-version") { assert (argc >= 4); // @@ -81,6 +86,29 @@ namespace bpkg for (const string& n: ns) cout << n << '\n'; } + else if (cmd == "system-package-version") + { + assert (argi != argc); // -- + string a (argv[argi++]); + assert (a == "--"); + + assert (argi != argc); // + string pn (argv[argi++]); + + assert (argi != argc); // + pair, + lazy_shared_ptr> apf ( + make_available_from_manifest (pn, argv[argi++])); + + assert (argi == argc); // No trailing junk. + + if (optional v = + system_package_manager::system_package_version ( + apf.first, apf.second, osr.name_id, osr.version_id, osr.like_ids)) + { + cout << *v << '\n'; + } + } else if (cmd == "downstream-package-version") { assert (argi != argc); // -- -- cgit v1.1