diff options
-rw-r--r-- | lib/ContactsMenu/Providers/DetailsProvider.php | 10 | ||||
-rw-r--r-- | tests/unit/ContactsMenu/Provider/DetailsProviderTest.php | 11 |
2 files changed, 17 insertions, 4 deletions
diff --git a/lib/ContactsMenu/Providers/DetailsProvider.php b/lib/ContactsMenu/Providers/DetailsProvider.php index 5bbcd087..c5d103c2 100644 --- a/lib/ContactsMenu/Providers/DetailsProvider.php +++ b/lib/ContactsMenu/Providers/DetailsProvider.php @@ -27,6 +27,7 @@ namespace OCA\Contacts\ContactsMenu\Providers; use OCP\Contacts\ContactsMenu\IActionFactory; use OCP\Contacts\ContactsMenu\IEntry; use OCP\Contacts\ContactsMenu\IProvider; +use OCP\IL10N; use OCP\IURLGenerator; class DetailsProvider implements IProvider { @@ -37,13 +38,17 @@ class DetailsProvider implements IProvider { /** @var IActionFactory */ private $actionFactory; + /** @var IL10N */ + private $l10n; + /** * @param IURLGenerator $urlGenerator * @param IActionFactory $actionFactory */ - public function __construct(IURLGenerator $urlGenerator, IActionFactory $actionFactory) { + public function __construct(IURLGenerator $urlGenerator, IActionFactory $actionFactory, IL10N $l10n) { $this->actionFactory = $actionFactory; $this->urlGenerator = $urlGenerator; + $this->l10n = $l10n; } /** @@ -62,10 +67,9 @@ class DetailsProvider implements IProvider { return; } - // TODO: l10n $iconUrl = $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'actions/info.svg')); $contactsUrl = $this->urlGenerator->getAbsoluteURL('/index.php/apps/contacts#/contact/' . $uid); - $action = $this->actionFactory->newLinkAction($iconUrl, 'Details', $contactsUrl); + $action = $this->actionFactory->newLinkAction($iconUrl, $this->l10n->t('Details'), $contactsUrl); $action->setPriority(0); $entry->addAction($action); } diff --git a/tests/unit/ContactsMenu/Provider/DetailsProviderTest.php b/tests/unit/ContactsMenu/Provider/DetailsProviderTest.php index 8ee73d87..d1945c3a 100644 --- a/tests/unit/ContactsMenu/Provider/DetailsProviderTest.php +++ b/tests/unit/ContactsMenu/Provider/DetailsProviderTest.php @@ -28,6 +28,7 @@ use OCA\Contacts\ContactsMenu\Providers\DetailsProvider; use OCP\Contacts\ContactsMenu\IActionFactory; use OCP\Contacts\ContactsMenu\IEntry; use OCP\Contacts\ContactsMenu\ILinkAction; +use OCP\IL10N; use OCP\IURLGenerator; use PHPUnit_Framework_MockObject_MockObject; use PHPUnit_Framework_TestCase; @@ -40,6 +41,9 @@ class DetailsProviderTest extends PHPUnit_Framework_TestCase { /** @var IActionFactory|PHPUnit_Framework_MockObject_MockObject */ private $actionFactory; + /** @var IL10n|PHPUnit_Framework_MockObject_MockObject */ + private $l10n; + /** @var DetailsProvider */ private $provider; @@ -48,7 +52,8 @@ class DetailsProviderTest extends PHPUnit_Framework_TestCase { $this->urlGenerator = $this->createMock(IURLGenerator::class); $this->actionFactory = $this->createMock(IActionFactory::class); - $this->provider = new DetailsProvider($this->urlGenerator, $this->actionFactory); + $this->l10n = $this->createMock(IL10N::class); + $this->provider = new DetailsProvider($this->urlGenerator, $this->actionFactory, $this->l10n); } public function testProcess() { @@ -72,6 +77,10 @@ class DetailsProviderTest extends PHPUnit_Framework_TestCase { ['/index.php/apps/contacts#/contact/e3a71614-c602-4eb5-9994-47eec551542b', 'cloud.example.com/index.php/apps/contacts#/contact/e3a71614-c602-4eb5-9994-47eec551542b'], ['core/img/actions/info.svg', $iconUrl], ])); + $this->l10n->expects($this->once()) + ->method('t') + ->with('Details') + ->willReturnArgument(0); $this->actionFactory->expects($this->once()) ->method('newLinkAction') ->with($this->equalTo($iconUrl), $this->equalTo('Details'), $this->equalTo('cloud.example.com/index.php/apps/contacts#/contact/e3a71614-c602-4eb5-9994-47eec551542b')) |