diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2016-05-26 20:50:52 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2016-05-26 20:50:52 +0100 |
commit | 3217f711223760aef451aa5931c5ceaa465047eb (patch) | |
tree | 96b76b1a1386d05c2cd96faf0bed6fcc880ccbe2 /gentoobrowse-api/unittests | |
parent | RepoId isn't part of the primary key (diff) | |
download | gentoobrowse-api-3217f711223760aef451aa5931c5ceaa465047eb.tar.bz2 gentoobrowse-api-3217f711223760aef451aa5931c5ceaa465047eb.tar.xz gentoobrowse-api-3217f711223760aef451aa5931c5ceaa465047eb.zip |
Updates to dependency scanner based on real world data
Diffstat (limited to 'gentoobrowse-api/unittests')
-rw-r--r-- | gentoobrowse-api/unittests/testDepend.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/gentoobrowse-api/unittests/testDepend.cpp b/gentoobrowse-api/unittests/testDepend.cpp index 15b4cf3..646b593 100644 --- a/gentoobrowse-api/unittests/testDepend.cpp +++ b/gentoobrowse-api/unittests/testDepend.cpp @@ -262,3 +262,49 @@ BOOST_AUTO_TEST_CASE( annoyed1 ) BOOST_REQUIRE(ds[0]->use.empty()); } +BOOST_AUTO_TEST_CASE( freeciv ) +{ + auto ds = Portage::Utils::Depend::parse("app-arch/bzip2 app-arch/xz-utils net-misc/curl sys-libs/zlib auth? ( mysql? ( virtual/mysql ) sqlite? ( dev-db/sqlite:3 ) !mysql? ( ( !sqlite? ( virtual/mysql ) ) ) ) readline? ( sys-libs/readline:0 ) dedicated? ( aimodules? ( dev-libs/libltdl:0 ) ) !dedicated? ( media-libs/libpng:0 gtk? ( x11-libs/gtk+:2 ) mapimg? ( media-gfx/imagemagick ) modpack? ( x11-libs/gtk+:2 ) nls? ( virtual/libintl ) qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 ) sdl? ( media-libs/libsdl[video] media-libs/sdl-gfx media-libs/sdl-image[png] media-libs/sdl-ttf ) server? ( aimodules? ( sys-devel/libtool:2 ) ) sound? ( media-libs/libsdl[sound] media-libs/sdl-mixer[vorbis] ) !sdl? ( !gtk? ( x11-libs/gtk+:2 ) ) ) system-lua? ( >=dev-lang/lua-5.2 ) games-misc/games-envd"); + BOOST_REQUIRE_EQUAL(ds.size(), 27); +} + +BOOST_AUTO_TEST_CASE( useWithAtSymble ) +{ + auto ds = Portage::Utils::Depend::parse("some@thing? ( app-arch/bzip2 )"); + BOOST_REQUIRE_EQUAL(ds.size(), 1); + BOOST_REQUIRE_EQUAL(ds[0]->when.size(), 1); + BOOST_REQUIRE_EQUAL(ds[0]->when.front(), "some@thing"); +} + +BOOST_AUTO_TEST_CASE( underscoreInPackage ) +{ + auto ds = Portage::Utils::Depend::parse(">=dev-ros/costmap_2d-1.13.1"); + BOOST_REQUIRE_EQUAL(ds.size(), 1); + BOOST_REQUIRE_EQUAL(ds[0]->category, "dev-ros"); + BOOST_REQUIRE_EQUAL(ds[0]->package, "costmap_2d"); + BOOST_REQUIRE(ds[0]->version); + BOOST_REQUIRE_EQUAL(*ds[0]->version, "1.13.1"); +} + +BOOST_AUTO_TEST_CASE( multipleSuffix ) +{ + auto ds = Portage::Utils::Depend::parse(">=sys-fs/btrfs-progs-0.20_rc1_p358"); + BOOST_REQUIRE_EQUAL(ds.size(), 1); + BOOST_REQUIRE_EQUAL(ds[0]->category, "sys-fs"); + BOOST_REQUIRE_EQUAL(ds[0]->package, "btrfs-progs"); + BOOST_REQUIRE(ds[0]->version); + BOOST_REQUIRE_EQUAL(*ds[0]->version, "0.20_rc1_p358"); +} + +BOOST_AUTO_TEST_CASE( thisThing ) +{ + auto ds = Portage::Utils::Depend::parse("!<=dev-libs/9libs-1.0"); + BOOST_REQUIRE_EQUAL(ds.size(), 1); + BOOST_REQUIRE(ds[0]->op); + BOOST_REQUIRE_EQUAL(*ds[0]->op, "!<="); + BOOST_REQUIRE_EQUAL(ds[0]->category, "dev-libs"); + BOOST_REQUIRE_EQUAL(ds[0]->package, "9libs"); + BOOST_REQUIRE(ds[0]->version); + BOOST_REQUIRE_EQUAL(*ds[0]->version, "1.0"); +} + |