commit c156de2b3dfaf74d578d1fd2f67b4c95388bf1af
parent 00ac91a4f5132cb01c3ffd6740e0564db5802c11
Author: cfillion <cfillion@users.noreply.github.com>
Date: Sat, 9 Jul 2016 23:40:32 -0400
mild refactoring: remove unused function
Diffstat:
4 files changed, 29 insertions(+), 43 deletions(-)
diff --git a/src/metadata.cpp b/src/metadata.cpp
@@ -32,17 +32,3 @@ void Metadata::addLink(const LinkType type, const Link &link)
if(boost::algorithm::starts_with(link.url, "http"))
m_links.insert({type, link});
}
-
-auto Metadata::links(const LinkType type) const -> LinkList
-{
- const auto begin = m_links.lower_bound(type);
- const auto end = m_links.upper_bound(type);
-
- LinkList list(m_links.count(type));
-
- for(auto it = begin; it != end; it++)
- list[distance(begin, it)] = &it->second;
-
- return list;
-}
-
diff --git a/src/metadata.hpp b/src/metadata.hpp
@@ -28,7 +28,6 @@ class Metadata {
public:
enum LinkType { WebsiteLink, DonationLink };
typedef std::multimap<LinkType, Link> LinkMap;
- typedef std::vector<const Link *> LinkList;
static LinkType getLinkType(const char *rel);
@@ -36,7 +35,6 @@ public:
const std::string &about() const { return m_about; }
void addLink(const LinkType, const Link &);
const LinkMap &links() const { return m_links; }
- LinkList links(LinkType) const;
private:
std::string m_about;
diff --git a/test/index_v1.cpp b/test/index_v1.cpp
@@ -200,24 +200,26 @@ TEST_CASE("read index metadata", M) {
REQUIRE(ri->metadata()->about() == "Chunky\nBacon");
}
- SECTION("website links") {
- const auto &links = ri->metadata()->links(Metadata::WebsiteLink);
- REQUIRE(links.size() == 4);
- REQUIRE(links[0]->name == "http://cfillion.tk");
- REQUIRE(links[0]->url == "http://cfillion.tk");
- REQUIRE(links[1]->name == "https://github.com/cfillion");
- REQUIRE(links[1]->url == "https://github.com/cfillion");
- REQUIRE(links[2]->name == "http://twitter.com/cfi30");
- REQUIRE(links[2]->url == "http://twitter.com/cfi30");
- REQUIRE(links[3]->name == "http://google.com");
- REQUIRE(links[3]->url == "http://google.com");
- }
+ SECTION("links") {
+ REQUIRE(ri->metadata()->links().size() == 5);
+
+ auto link = ri->metadata()->links().begin();
+ REQUIRE(link->first == Metadata::WebsiteLink);
+ REQUIRE(link->second.name == "http://cfillion.tk");
+ REQUIRE(link->second.url == "http://cfillion.tk");
+
+ REQUIRE((++link)->second.name == "https://github.com/cfillion");
+ REQUIRE(link->second.url == "https://github.com/cfillion");
+
+ REQUIRE((++link)->second.name == "http://twitter.com/cfi30");
+ REQUIRE(link->second.url == "http://twitter.com/cfi30");
+
+ REQUIRE((++link)->second.name == "http://google.com");
+ REQUIRE(link->second.url == "http://google.com");
- SECTION("donation links") {
- const auto &links = ri->metadata()->links(Metadata::DonationLink);
- REQUIRE(links.size() == 1);
- REQUIRE(links[0]->name == "Donate");
- REQUIRE(links[0]->url == "http://paypal.com");
+ REQUIRE((++link)->first == Metadata::DonationLink);
+ REQUIRE(link->second.name == "Donate");
+ REQUIRE(link->second.url == "http://paypal.com");
}
}
diff --git a/test/metadata.cpp b/test/metadata.cpp
@@ -8,30 +8,30 @@ static const char *M = "[metadata]";
TEST_CASE("repository links", M) {
Metadata md;
- CHECK(md.links(Metadata::WebsiteLink).empty());
- CHECK(md.links(Metadata::DonationLink).empty());
+ CHECK(md.links().empty());
SECTION("website links") {
md.addLink(Metadata::WebsiteLink, {"First", "http://example.com"});
- REQUIRE(md.links(Metadata::WebsiteLink).size() == 1);
+ REQUIRE(md.links().count(Metadata::WebsiteLink) == 1);
md.addLink(Metadata::WebsiteLink, {"Second", "http://example.com"});
- const auto &links = md.links(Metadata::WebsiteLink);
- REQUIRE(links.size() == 2);
- REQUIRE(links[0]->name == "First");
- REQUIRE(links[1]->name == "Second");
+ auto link = md.links().begin();
+ REQUIRE(link->first == Metadata::WebsiteLink);
+ REQUIRE(link->second.name == "First");
+ REQUIRE((++link)->second.name == "Second");
- REQUIRE(md.links(Metadata::DonationLink).empty());
+ REQUIRE(md.links().count(Metadata::DonationLink) == 0);
}
SECTION("donation links") {
md.addLink(Metadata::DonationLink, {"First", "http://example.com"});
- REQUIRE(md.links(Metadata::DonationLink).size() == 1);
+ REQUIRE(md.links().count(Metadata::DonationLink) == 1);
+ REQUIRE(md.links().begin()->first == Metadata::DonationLink);
}
SECTION("drop invalid links") {
md.addLink(Metadata::WebsiteLink, {"name", "not http(s)"});
- REQUIRE(md.links(Metadata::WebsiteLink).empty());
+ REQUIRE(md.links().count(Metadata::WebsiteLink) == 0);
}
}