summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorSean Molenaar <sean@seanmolenaar.eu>2020-10-28 23:06:49 +0100
committerBenjamin Brahmer <info@b-brahmer.de>2020-10-29 08:19:03 +0100
commitc5daf112bed9d958f70073fd1cb199beff322334 (patch)
tree1ad53dd9da69bf6e991339b97ad754755b6e13fe /lib
parent47104a1971f1c254ade89d9c084e73a446cc8c20 (diff)
Command: Add unittests
Signed-off-by: Sean Molenaar <sean@seanmolenaar.eu>
Diffstat (limited to 'lib')
-rw-r--r--lib/Command/Config/FeedAdd.php16
-rw-r--r--lib/Command/Config/FeedDelete.php8
-rw-r--r--lib/Command/Config/FeedList.php4
-rw-r--r--lib/Command/Config/FolderAdd.php6
-rw-r--r--lib/Command/Config/FolderDelete.php8
-rw-r--r--lib/Command/Config/FolderList.php4
-rw-r--r--lib/Command/Config/OpmlExport.php4
-rw-r--r--lib/Command/ShowFeed.php21
-rw-r--r--lib/Command/Updater/AfterUpdate.php2
-rw-r--r--lib/Command/Updater/AllFeeds.php6
-rw-r--r--lib/Command/Updater/UpdateFeed.php7
-rw-r--r--lib/Service/FolderServiceV2.php5
12 files changed, 43 insertions, 48 deletions
diff --git a/lib/Command/Config/FeedAdd.php b/lib/Command/Config/FeedAdd.php
index 35bac6480..3c4820437 100644
--- a/lib/Command/Config/FeedAdd.php
+++ b/lib/Command/Config/FeedAdd.php
@@ -35,7 +35,7 @@ class FeedAdd extends Command
{
$this->setName('news:feed:add')
->setDescription('Add a feed')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to add the feed for')
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to add the feed for')
->addArgument('feed', InputArgument::REQUIRED, 'Feed to parse')
->addOption('folder', null, InputOption::VALUE_OPTIONAL, 'Folder ID')
->addOption('title', null, InputOption::VALUE_OPTIONAL, 'Feed title')
@@ -54,13 +54,13 @@ class FeedAdd extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output): int
{
- $url = $input->getArgument('feed');
- $user = $input->getArgument('userID');
- $folder = (int) $input->getOption('folder') ?? 0;
- $title = $input->getOption('title');
- $username = $input->getOption('username');
- $full_text = $input->getOption('full-text');
- $password = $input->getOption('password');
+ $user = $input->getArgument('user-id');
+ $url = $input->getArgument('feed');
+ $folder = (int) $input->getOption('folder') ?? 0;
+ $title = $input->getOption('title');
+ $full_text = (bool) $input->getOption('full-text');
+ $username = $input->getOption('username');
+ $password = $input->getOption('password');
$feed = $this->feedService->create($user, $url, $folder, $full_text, $title, $username, $password);
$this->feedService->fetch($feed);
diff --git a/lib/Command/Config/FeedDelete.php b/lib/Command/Config/FeedDelete.php
index c848b1fd4..fae1abdb2 100644
--- a/lib/Command/Config/FeedDelete.php
+++ b/lib/Command/Config/FeedDelete.php
@@ -32,8 +32,8 @@ class FeedDelete extends Command
{
$this->setName('news:feed:delete')
->setDescription('Remove a feed')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to remove the feed from')
- ->addArgument('id', InputArgument::REQUIRED, 'Feed ID', null);
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to remove the feed from')
+ ->addArgument('feed-id', InputArgument::REQUIRED, 'Feed ID', null);
}
/**
@@ -46,8 +46,8 @@ class FeedDelete extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output): int
{
- $user = $input->getArgument('userID');
- $id = $input->getArgument('id');
+ $user = $input->getArgument('user-id');
+ $id = $input->getArgument('feed-id');
$this->feedService->delete($user, $id);
diff --git a/lib/Command/Config/FeedList.php b/lib/Command/Config/FeedList.php
index 0c547868c..3462ff5c8 100644
--- a/lib/Command/Config/FeedList.php
+++ b/lib/Command/Config/FeedList.php
@@ -33,7 +33,7 @@ class FeedList extends Command
{
$this->setName('news:feed:list')
->setDescription('List all feeds')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to list the feeds for')
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to list the feeds for')
->addOption('recursive', null, InputOption::VALUE_NONE, 'Fetch the feed recursively');
}
@@ -47,7 +47,7 @@ class FeedList extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output)
{
- $user = $input->getArgument('userID');
+ $user = $input->getArgument('user-id');
$recursive = $input->getOption('recursive');
if ($recursive !== false) {
diff --git a/lib/Command/Config/FolderAdd.php b/lib/Command/Config/FolderAdd.php
index 5a7155e0c..257cf2dd6 100644
--- a/lib/Command/Config/FolderAdd.php
+++ b/lib/Command/Config/FolderAdd.php
@@ -32,7 +32,7 @@ class FolderAdd extends Command
{
$this->setName('news:folder:add')
->setDescription('Add a folder')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to add the folder for')
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to add the folder for')
->addArgument('name', InputArgument::REQUIRED, 'Folder name', null)
->addOption('parent', null, InputOption::VALUE_OPTIONAL, 'Parent folder');
}
@@ -47,9 +47,9 @@ class FolderAdd extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output): int
{
- $user = $input->getArgument('userID');
+ $user = $input->getArgument('user-id');
$name = $input->getArgument('name');
- $parent = $input->getOption('parent') ?? 0;
+ $parent = (int) $input->getOption('parent') ?? 0;
$this->folderService->create($user, $name, $parent);
diff --git a/lib/Command/Config/FolderDelete.php b/lib/Command/Config/FolderDelete.php
index c441bd615..bf7608b02 100644
--- a/lib/Command/Config/FolderDelete.php
+++ b/lib/Command/Config/FolderDelete.php
@@ -33,8 +33,8 @@ class FolderDelete extends Command
{
$this->setName('news:folder:delete')
->setDescription('Remove a folder')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to remove the folder from')
- ->addArgument('id', InputArgument::REQUIRED, 'Folder ID', null);
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to remove the folder from')
+ ->addArgument('folder-id', InputArgument::REQUIRED, 'Folder ID', null);
}
/**
@@ -47,8 +47,8 @@ class FolderDelete extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output): int
{
- $user = $input->getArgument('userID');
- $id = $input->getArgument('id');
+ $user = $input->getArgument('user-id');
+ $id = $input->getArgument('folder-id');
if ($id === '0') {
throw new ServiceException('Can not remove root folder!');
diff --git a/lib/Command/Config/FolderList.php b/lib/Command/Config/FolderList.php
index 26c61f5cf..6340f4d57 100644
--- a/lib/Command/Config/FolderList.php
+++ b/lib/Command/Config/FolderList.php
@@ -34,7 +34,7 @@ class FolderList extends Command
{
$this->setName('news:folder:list')
->setDescription('List all folders')
- ->addArgument('userID', InputArgument::REQUIRED, 'User to list the folders for')
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User to list the folders for')
->addOption('recursive', null, InputOption::VALUE_NONE, 'Fetch the folder recursively');
}
@@ -48,7 +48,7 @@ class FolderList extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output)
{
- $user = $input->getArgument('userID');
+ $user = $input->getArgument('user-id');
$recursive = $input->getOption('recursive');
if ($recursive !== false) {
diff --git a/lib/Command/Config/OpmlExport.php b/lib/Command/Config/OpmlExport.php
index 1642e8505..f51aed555 100644
--- a/lib/Command/Config/OpmlExport.php
+++ b/lib/Command/Config/OpmlExport.php
@@ -29,7 +29,7 @@ class OpmlExport extends Command
{
$this->setName('news:opml:export')
->setDescription('Print OPML file')
- ->addArgument('userID', InputArgument::REQUIRED, 'User data to export');
+ ->addArgument('user-id', InputArgument::REQUIRED, 'User data to export');
}
/**
@@ -42,7 +42,7 @@ class OpmlExport extends Command
*/
protected function execute(InputInterface $input, OutputInterface $output): int
{
- $user = $input->getArgument('userID');
+ $user = $input->getArgument('user-id');
$output->write($this->opmlService->export($user));
return 0;
diff --git a/lib/Command/ShowFeed.php b/lib/Command/ShowFeed.php
index 8aace3528..0016470e6 100644
--- a/lib/Command/ShowFeed.php
+++ b/lib/Command/ShowFeed.php
@@ -10,18 +10,7 @@
*/
namespace OCA\News\Command;
-use FeedIo\FeedIo;
-use Favicon\Favicon;
-
-use HTMLPurifier;
-use OCA\News\Db\FeedMapper;
-use OCA\News\Db\ItemMapper;
use OCA\News\Fetcher\Fetcher;
-use OCA\News\Service\FeedService;
-use OCA\News\Utility\Time;
-use OCP\IConfig;
-use OCP\IL10N;
-use OCP\ILogger;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputArgument;
@@ -80,13 +69,15 @@ class ShowFeed extends Command
try {
list($feed, $items) = $this->feedFetcher->fetch($url, true, null, $fullTextEnabled, $user, $password);
- $output->writeln("Feed: " . json_encode($feed, JSON_PRETTY_PRINT));
- $output->writeln("Items: " . json_encode($items, JSON_PRETTY_PRINT));
- return 0;
- } catch (\Throwable $ex) {
+ } catch (\Exception $ex) {
$output->writeln('<error>Failed to fetch feed info:</error>');
$output->writeln($ex->getMessage());
return 1;
}
+
+ $output->writeln("Feed: " . json_encode($feed, JSON_PRETTY_PRINT));
+ $output->writeln("Items: " . json_encode($items, JSON_PRETTY_PRINT));
+
+ return 0;
}
}
diff --git a/lib/Command/Updater/AfterUpdate.php b/lib/Command/Updater/AfterUpdate.php
index 5746ff1e5..62ceb2710 100644
--- a/lib/Command/Updater/AfterUpdate.php
+++ b/lib/Command/Updater/AfterUpdate.php
@@ -46,7 +46,7 @@ class AfterUpdate extends Command
{
$count = $input->getArgument('purge_count');
- echo $this->itemService->purgeOverThreshold($count);
+ $output->writeln($this->itemService->purgeOverThreshold($count));
return 0;
}
diff --git a/lib/Command/Updater/AllFeeds.php b/lib/Command/Updater/AllFeeds.php
index 6993d51ea..0dde6eac4 100644
--- a/lib/Command/Updater/AllFeeds.php
+++ b/lib/Command/Updater/AllFeeds.php
@@ -16,6 +16,12 @@ use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
+/**
+ * Class AllFeeds
+ *
+ * @deprecated use news:feed:list instead
+ * @package OCA\News\Command\Updater
+ */
class AllFeeds extends Command
{
/**
diff --git a/lib/Command/Updater/UpdateFeed.php b/lib/Command/Updater/UpdateFeed.php
index 5078e92a4..71e88a15f 100644
--- a/lib/Command/Updater/UpdateFeed.php
+++ b/lib/Command/Updater/UpdateFeed.php
@@ -11,16 +11,12 @@
namespace OCA\News\Command\Updater;
-use Exception;
-
use OCA\News\Service\FeedServiceV2;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputArgument;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
-use OCA\News\Service\FeedService;
-
class UpdateFeed extends Command
{
/**
@@ -57,12 +53,13 @@ class UpdateFeed extends Command
try {
$feed = $this->feedService->findForUser($userId, $feedId);
$this->feedService->fetch($feed);
- } catch (Exception $e) {
+ } catch (\Exception $e) {
$output->writeln(
'<error>Could not update feed with id ' . $feedId .
' and user ' . $userId . ': ' . $e->getMessage() .
'</error> '
);
+ return 1;
}
return 0;
diff --git a/lib/Service/FolderServiceV2.php b/lib/Service/FolderServiceV2.php
index 5d3f149ce..cf599456b 100644
--- a/lib/Service/FolderServiceV2.php
+++ b/lib/Service/FolderServiceV2.php
@@ -17,6 +17,7 @@ use OCA\News\Db\Feed;
use OCA\News\Db\FeedMapperV2;
use OCA\News\Db\Folder;
use OCA\News\Db\FolderMapperV2;
+use OCP\AppFramework\Db\Entity;
use Psr\Log\LoggerInterface;
/**
@@ -79,14 +80,14 @@ class FolderServiceV2 extends Service
return $this->mapper->findAll();
}
- public function create(string $userId, string $name, int $parent = 0): void
+ public function create(string $userId, string $name, int $parent = 0): Entity
{
$folder = new Folder();
$folder->setUserId($userId)
->setName($name)
->setParentId($parent);
- $this->mapper->insert($folder);
+ return $this->mapper->insert($folder);
}
public function delete(string $user, int $id)