aboutsummaryrefslogtreecommitdiff
path: root/test/itemlistformaction.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/itemlistformaction.cpp')
-rw-r--r--test/itemlistformaction.cpp140
1 files changed, 70 insertions, 70 deletions
diff --git a/test/itemlistformaction.cpp b/test/itemlistformaction.cpp
index 9f3e6aa9..2605075d 100644
--- a/test/itemlistformaction.cpp
+++ b/test/itemlistformaction.cpp
@@ -42,12 +42,12 @@ TEST_CASE("OP_OPEN displays article using an external pager",
FilterContainer filters;
RegexManager rxman;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
cfg.set_configvalue("pager", "cat %f > " + pagerfile.get_path());
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_title(test_title);
item->set_author(test_author);
@@ -59,7 +59,7 @@ TEST_CASE("OP_OPEN displays article using an external pager",
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
@@ -80,17 +80,17 @@ TEST_CASE("OP_PURGE_DELETED purges previously deleted items",
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
feed->add_item(item);
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
SECTION("No items to purge") {
@@ -122,12 +122,12 @@ TEST_CASE(
ConfigContainer cfg;
cfg.set_configvalue("browser", "echo %u >> " + browserfile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_unread(true);
feed->add_item(item);
@@ -135,7 +135,7 @@ TEST_CASE(
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
itemlist.process_op(OP_OPENBROWSER_AND_MARK, args);
@@ -160,12 +160,12 @@ TEST_CASE(
ConfigContainer cfg;
cfg.set_configvalue("browser", "false %u");
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_unread(true);
feed->add_item(item);
@@ -173,7 +173,7 @@ TEST_CASE(
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
itemlist.process_op(OP_OPENBROWSER_AND_MARK, args);
@@ -194,19 +194,19 @@ TEST_CASE("OP_OPENINBROWSER passes the url to the browser",
ConfigContainer cfg;
cfg.set_configvalue("browser", "echo %u >> " + browserfile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
feed->add_item(item);
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
itemlist.process_op(OP_OPENINBROWSER, args);
@@ -229,19 +229,19 @@ TEST_CASE("OP_OPENINBROWSER_NONINTERACTIVE passes the url to the browser",
ConfigContainer cfg;
cfg.set_configvalue("browser", "echo %u >> " + browserfile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
feed->add_item(item);
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
itemlist.process_op(newsboat::OP_OPENINBROWSER_NONINTERACTIVE, args);
@@ -266,15 +266,15 @@ TEST_CASE("OP_OPENALLUNREADINBROWSER passes the url list to the browser",
ConfigContainer cfg;
cfg.set_configvalue("browser", "echo %u >> " + browserfile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
for (int i = 0; i < itemCount; i++) {
std::shared_ptr<RssItem> item =
- std::make_shared<RssItem>(&rsscache);
+ std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url + std::to_string(i));
url_set.insert(test_url + std::to_string(i));
item->set_unread(true);
@@ -284,7 +284,7 @@ TEST_CASE("OP_OPENALLUNREADINBROWSER passes the url list to the browser",
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
SECTION("unread >= max-browser-tabs") {
@@ -352,15 +352,15 @@ TEST_CASE(
ConfigContainer cfg;
cfg.set_configvalue("browser", "echo %u >> " + browserfile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
for (unsigned int i = 0; i < itemCount; i++) {
std::shared_ptr<RssItem> item =
- std::make_shared<RssItem>(&rsscache);
+ std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url + std::to_string(i));
url_set.insert(test_url + std::to_string(i));
item->set_unread(true);
@@ -370,7 +370,7 @@ TEST_CASE(
v.set_config_container(&cfg);
c.set_view(&v);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
SECTION("unread >= max-browser-tabs") {
@@ -429,7 +429,7 @@ TEST_CASE("OP_SHOWURLS shows the article's properties", "[ItemListFormAction]")
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
test_helpers::TempFile urlFile;
@@ -448,15 +448,15 @@ TEST_CASE("OP_SHOWURLS shows the article's properties", "[ItemListFormAction]")
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_title(test_title);
item->set_author(test_author);
item->set_description(test_description, "text/plain");
item->set_pubDate(test_pubDate);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
SECTION("with external-url-viewer") {
feed->add_item(item);
@@ -495,7 +495,7 @@ TEST_CASE("OP_BOOKMARK pipes articles url and title to bookmark-command",
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
test_helpers::TempFile bookmarkFile;
@@ -511,14 +511,14 @@ TEST_CASE("OP_BOOKMARK pipes articles url and title to bookmark-command",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
feed->set_title(feed_title);
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_title(test_title);
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
feed->add_item(item);
itemlist.set_feed(feed);
@@ -558,7 +558,7 @@ TEST_CASE("OP_EDITFLAGS arguments are added to an item's flags",
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
@@ -567,10 +567,10 @@ TEST_CASE("OP_EDITFLAGS arguments are added to an item's flags",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
feed->add_item(item);
itemlist.set_feed(feed);
@@ -617,7 +617,7 @@ TEST_CASE("OP_SAVE writes an article's attributes to the specified file",
newsboat::View v(&c);
test_helpers::TempFile saveFile;
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
@@ -638,16 +638,16 @@ TEST_CASE("OP_SAVE writes an article's attributes to the specified file",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_title(test_title);
item->set_author(test_author);
item->set_pubDate(test_pubDate);
item->set_description(test_description, "text/plain");
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
feed->add_item(item);
itemlist.set_feed(feed);
@@ -679,7 +679,7 @@ TEST_CASE("OP_HELP command is processed", "[ItemListFormAction]")
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
KeyMap k(KM_NEWSBOAT);
v.set_keymap(&k);
@@ -687,8 +687,8 @@ TEST_CASE("OP_HELP command is processed", "[ItemListFormAction]")
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
feed->add_item(item);
@@ -704,7 +704,7 @@ TEST_CASE("OP_HARDQUIT command is processed", "[ItemListFormAction]")
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
@@ -714,9 +714,9 @@ TEST_CASE("OP_HARDQUIT command is processed", "[ItemListFormAction]")
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
itemlist.set_feed(feed);
const std::vector<std::string> args;
@@ -736,7 +736,7 @@ TEST_CASE("Navigate back and forth using OP_NEXT and OP_PREV",
ConfigContainer cfg;
cfg.set_configvalue(
"external-url-viewer", "tee > " + articleFile.get_path());
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
std::string line;
std::string first_article_title = "First_Article";
@@ -749,13 +749,13 @@ TEST_CASE("Navigate back and forth using OP_NEXT and OP_PREV",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_title(first_article_title);
feed->add_item(item);
- std::shared_ptr<RssItem> item2 = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item2 = std::make_shared<RssItem>(rsscache.get());
item2->set_title(second_article_title);
feed->add_item(item2);
@@ -784,7 +784,7 @@ TEST_CASE("OP_TOGGLESHOWREAD switches the value of show-read-articles",
Controller c(paths);
newsboat::View v(&c);
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
KeyMap k(KM_NEWSBOAT);
v.set_keymap(&k);
@@ -792,9 +792,9 @@ TEST_CASE("OP_TOGGLESHOWREAD switches the value of show-read-articles",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
feed->add_item(item);
std::shared_ptr<ItemListFormAction> itemlist = v.push_itemlist(feed);
@@ -823,7 +823,7 @@ TEST_CASE("OP_PIPE_TO pipes an article's content to an external command",
newsboat::View v(&c);
test_helpers::TempFile articleFile;
ConfigContainer cfg;
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
@@ -844,16 +844,16 @@ TEST_CASE("OP_PIPE_TO pipes an article's content to an external command",
v.set_config_container(&cfg);
c.set_view(&v);
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
- std::shared_ptr<RssItem> item = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item = std::make_shared<RssItem>(rsscache.get());
item->set_link(test_url);
item->set_title(test_title);
item->set_author(test_author);
item->set_pubDate(test_pubDate);
item->set_description(test_description, "text/plain");
- ItemListFormAction itemlist(v, itemlist_str, &rsscache, filters, &cfg, rxman);
+ ItemListFormAction itemlist(v, itemlist_str, rsscache.get(), filters, &cfg, rxman);
feed->add_item(item);
itemlist.set_feed(feed);
@@ -888,18 +888,18 @@ TEST_CASE("OP_OPENINBROWSER does not result in itemlist invalidation",
newsboat::View v(&c);
v.set_config_container(&cfg);
v.set_keymap(&k);
- Cache rsscache(":memory:", cfg);
+ auto rsscache = Cache::in_memory(cfg);
FilterContainer filters;
RegexManager rxman;
- std::shared_ptr<RssItem> item1 = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item1 = std::make_shared<RssItem>(rsscache.get());
item1->set_link("https://example.com/1");
- std::shared_ptr<RssItem> item2 = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item2 = std::make_shared<RssItem>(rsscache.get());
item2->set_link("https://example.com/2");
- std::shared_ptr<RssItem> item3 = std::make_shared<RssItem>(&rsscache);
+ std::shared_ptr<RssItem> item3 = std::make_shared<RssItem>(rsscache.get());
item3->set_link("https://example.com/3");
- std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(&rsscache, "");
+ std::shared_ptr<RssFeed> feed = std::make_shared<RssFeed>(rsscache.get(), "");
feed->add_item(item1);
feed->add_item(item2);
feed->add_item(item3);