reapack

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

commit 3256f87ed4e548d19ff87133d9f1aa5930021e0c
parent e073e5e5f72c146897773aaa12d342e2dc1aae23
Author: cfillion <cfillion@users.noreply.github.com>
Date:   Tue,  8 Mar 2016 02:38:57 -0500

read the suggested repo name from an arguement of the root tag instead

Diffstat:
Msrc/index_v1.cpp | 12+++++-------
Mtest/index.cpp | 12++++++------
Mtest/index_v1.cpp | 20+++-----------------
Mtest/indexes/v1/ReaPack/metadata.xml | 1-
4 files changed, 14 insertions(+), 31 deletions(-)

diff --git a/src/index_v1.cpp b/src/index_v1.cpp @@ -30,6 +30,11 @@ static void LoadVersionV1(TiXmlElement *, Package *pkg); void Index::loadV1(TiXmlElement *root, Index *ri) { + if(ri->name().empty()) { + if(const char *name = root->Attribute("name")) + ri->setName(name); + } + TiXmlElement *node = root->FirstChildElement("category"); while(node) { @@ -53,13 +58,6 @@ void LoadMetadataV1(TiXmlElement *meta, Index *ri) ri->setAboutText(rtf); } - node = meta->FirstChildElement("name"); - - if(node && ri->name().empty()) { - if(const char *name = node->GetText()) - ri->setName(name); - } - node = meta->FirstChildElement("link"); while(node) { diff --git a/test/index.cpp b/test/index.cpp @@ -237,6 +237,12 @@ TEST_CASE("repository links", M) { } } +TEST_CASE("link type from string", M) { + REQUIRE(Index::linkTypeFor("website") == Index::WebsiteLink); + REQUIRE(Index::linkTypeFor("donation") == Index::DonationLink); + REQUIRE(Index::linkTypeFor("bacon") == Index::WebsiteLink); +} + TEST_CASE("set index name", M) { SECTION("set") { Index ri({}); @@ -256,9 +262,3 @@ TEST_CASE("set index name", M) { REQUIRE(ri.name() == "hello"); } } - -TEST_CASE("link type from string", M) { - REQUIRE(Index::linkTypeFor("website") == Index::WebsiteLink); - REQUIRE(Index::linkTypeFor("donation") == Index::DonationLink); - REQUIRE(Index::linkTypeFor("bacon") == Index::WebsiteLink); -} diff --git a/test/index_v1.cpp b/test/index_v1.cpp @@ -213,26 +213,12 @@ TEST_CASE("read index metadata", M) { TEST_CASE("read index name (from raw data only)") { SECTION("valid") { - IndexPtr ri = Index::load({}, R"XML( - <index version="1"> - <metadata> - <name>Hello World</name> - </metadata> - </index> - )XML"); - + IndexPtr ri = Index::load({}, "<index version=\"1\" name=\"Hello World\"/>\n"); REQUIRE(ri->name() == "Hello World"); } - SECTION("broken") { - IndexPtr ri = Index::load({}, R"XML( - <index version="1"> - <metadata> - <name/> - </metadata> - </index> - )XML"); - + SECTION("missing") { + IndexPtr ri = Index::load({}, "<index version=\"1\"/>\n"); REQUIRE(ri->name() == ""); } } diff --git a/test/indexes/v1/ReaPack/metadata.xml b/test/indexes/v1/ReaPack/metadata.xml @@ -1,6 +1,5 @@ <index version="1"> <metadata> - <name>This Is Ignored Unless When Importing From URL</name> <link rel="website" href="http://cfillion.tk" /> <link rel="website" href="https://github.com/cfillion"></link> <link rel="website">http://twitter.com/cfi30</link>