diff options
author | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2018-06-14 14:01:42 +0300 |
---|---|---|
committer | Arthur Schiwon <blizzz@arthur-schiwon.de> | 2018-06-14 15:20:16 +0300 |
commit | d10183c76c6119acd630c2be4bdb6d0ae543374d (patch) | |
tree | 14424356171255e3c29caa5ea2a49652e0fa01e8 /lib | |
parent | 9a87c6728b3d4a16ff3ab4f948be66c893a0e726 (diff) |
add unit tests
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Controller/DataRequestController.php | 18 | ||||
-rw-r--r-- | lib/Services/Request.php | 20 |
2 files changed, 24 insertions, 14 deletions
diff --git a/lib/Controller/DataRequestController.php b/lib/Controller/DataRequestController.php index 60b15de..c7477cf 100644 --- a/lib/Controller/DataRequestController.php +++ b/lib/Controller/DataRequestController.php @@ -52,15 +52,9 @@ class DataRequestController extends OCSController { * @PasswordConfirmationRequired */ public function export() { - try { + return $this->processRequest(function() { $this->dataRequest->sendExportRequest(); - return new DataResponse(); - } catch(HintedRuntime $e) { - return new DataResponse( - ['error' => $e->getHint()], - Http::STATUS_INTERNAL_SERVER_ERROR - ); - } + }); } /** @@ -68,8 +62,14 @@ class DataRequestController extends OCSController { * @PasswordConfirmationRequired */ public function deletion() { - try { + return $this->processRequest(function() { $this->dataRequest->sendDeleteRequest(); + }); + } + + protected function processRequest(callable $serviceMethod) { + try { + $serviceMethod(); return new DataResponse(); } catch(HintedRuntime $e) { return new DataResponse( diff --git a/lib/Services/Request.php b/lib/Services/Request.php index 7fa8611..1b1025d 100644 --- a/lib/Services/Request.php +++ b/lib/Services/Request.php @@ -50,14 +50,25 @@ class Request { private $requester; /** @var IL10N */ private $l; - - public function __construct(IGroupManager $groupManager, IMailer $mailer, IFactory $l10nFactory, IConfig $config, IUserSession $userSession, IL10N $l) { + /** @var Defaults */ + private $defaults; + + public function __construct( + IGroupManager $groupManager, + IMailer $mailer, + IFactory $l10nFactory, + IConfig $config, + IUserSession $userSession, + IL10N $l, + Defaults $defaults + ) { $this->groupManager = $groupManager; $this->mailer = $mailer; $this->l10nFactory = $l10nFactory; $this->config = $config; $this->requester = $userSession->getUser(); $this->l = $l; + $this->defaults = $defaults; } public function sendExportRequest() { @@ -95,12 +106,11 @@ class Request { } protected function craftEmailTo(IUser $admin, IEMailTemplate $template) { - $defaults = new Defaults(); $senderAddress = Util::getDefaultEmailAddress('no-reply'); - $senderName = $defaults->getName(); + $senderName = $this->defaults->getName(); $message = $this->mailer->createMessage(); - $message->setTo([$admin->getEMailAddress() => $admin->getDisplayName()]); + $message->setTo([$admin->getEMailAddress () => $admin->getDisplayName()]); $message->setSubject($template->renderSubject()); $message->setHtmlBody($template->renderHtml()); $message->setPlainBody($template->renderText()); |