reapack

Package manager for REAPER
Log | Files | Refs | Submodules | README | LICENSE

commit 52e92ae034578572b7ada8030408ed4780a79522
parent 56c4f1373d5060364ad23ce75b15460e78d5ec91
Author: cfillion <cfillion@users.noreply.github.com>
Date:   Fri, 27 Nov 2015 00:04:35 -0500

add a test case for a full well-formed database

Diffstat:
Mtest/database_v1.cpp | 28++++++++++++++++++++++++++++
Atest/db/v1/full_database.xml | 10++++++++++
2 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/test/database_v1.cpp b/test/database_v1.cpp @@ -97,6 +97,34 @@ TEST_CASE("default platform", M) { TEST_CASE("version changelog", M) { DatabasePtr db = Database::load(DBPATH "changelog.xml"); + CHECK_FALSE(db->categories().empty()); + CHECK_FALSE(db->category(0)->packages().empty()); + CHECK_FALSE(db->category(0)->package(0)->versions().empty()); + REQUIRE(db->category(0)->package(0)->version(0)->changelog() == "Hello\nWorld"); } + +TEST_CASE("full database", M) { + DatabasePtr db = Database::load(DBPATH "full_database.xml"); + REQUIRE(db->categories().size() == 1); + + CategoryPtr cat = db->category(0); + REQUIRE(cat->name() == "Category Name"); + REQUIRE(cat->packages().size() == 1); + + PackagePtr pack = cat->package(0); + REQUIRE(pack->type() == Package::ScriptType); + REQUIRE(pack->name() == "Hello World.lua"); + REQUIRE(pack->author() == "cfillion"); + REQUIRE(pack->versions().size() == 1); + + VersionPtr ver = pack->version(0); + REQUIRE(ver->name() == "1.0"); + REQUIRE(ver->sources().size() == 1); + REQUIRE(ver->changelog() == "Fixed a division by zero error."); + + SourcePtr source = ver->source(0); + REQUIRE(source->platform() == Source::GenericPlatform); + REQUIRE(source->url() == "https://google.com/"); +} diff --git a/test/db/v1/full_database.xml b/test/db/v1/full_database.xml @@ -0,0 +1,10 @@ +<index version="1"> + <category name="Category Name"> + <reapack name="Hello World.lua" author="cfillion" type="script"> + <version name="1.0"> + <source platform="all">https://google.com/</source> + <changelog>Fixed a division by zero error.</changelog> + </version> + </reapack> + </category> +</index>