|
9 | 9 | use OC\Mail\Message; |
10 | 10 | use OCA\ShareByMail\Settings\SettingsManager; |
11 | 11 | use OCA\ShareByMail\ShareByMailProvider; |
| 12 | +use OCP\Activity\IManager as IActivityManager; |
12 | 13 | use OCP\Defaults; |
13 | 14 | use OCP\EventDispatcher\IEventDispatcher; |
14 | 15 | use OCP\Files\File; |
15 | 16 | use OCP\Files\IRootFolder; |
| 17 | +use OCP\Files\Node; |
16 | 18 | use OCP\IConfig; |
17 | 19 | use OCP\IDBConnection; |
18 | 20 | use OCP\IL10N; |
|
25 | 27 | use OCP\Security\Events\GenerateSecurePasswordEvent; |
26 | 28 | use OCP\Security\IHasher; |
27 | 29 | use OCP\Security\ISecureRandom; |
| 30 | +use OCP\Security\PasswordContext; |
28 | 31 | use OCP\Share\IAttributes; |
29 | 32 | use OCP\Share\IManager; |
30 | 33 | use OCP\Share\IShare; |
| 34 | +use PHPUnit\Framework\MockObject\MockObject; |
31 | 35 | use Psr\Log\LoggerInterface; |
32 | 36 | use Test\TestCase; |
33 | 37 |
|
|
38 | 42 | * @group DB |
39 | 43 | */ |
40 | 44 | class ShareByMailProviderTest extends TestCase { |
41 | | - /** @var IConfig */ |
42 | | - private $config; |
43 | | - |
44 | | - /** @var IDBConnection */ |
45 | | - private $connection; |
46 | | - |
47 | | - /** @var IManager | \PHPUnit\Framework\MockObject\MockObject */ |
48 | | - private $shareManager; |
49 | | - |
50 | | - /** @var IL10N | \PHPUnit\Framework\MockObject\MockObject */ |
51 | | - private $l; |
52 | | - |
53 | | - /** @var LoggerInterface | \PHPUnit\Framework\MockObject\MockObject */ |
54 | | - private $logger; |
55 | | - |
56 | | - /** @var IRootFolder | \PHPUnit\Framework\MockObject\MockObject */ |
57 | | - private $rootFolder; |
58 | | - |
59 | | - /** @var IUserManager | \PHPUnit\Framework\MockObject\MockObject */ |
60 | | - private $userManager; |
61 | | - |
62 | | - /** @var ISecureRandom | \PHPUnit\Framework\MockObject\MockObject */ |
63 | | - private $secureRandom; |
64 | | - |
65 | | - /** @var IMailer | \PHPUnit\Framework\MockObject\MockObject */ |
66 | | - private $mailer; |
67 | | - |
68 | | - /** @var IURLGenerator | \PHPUnit\Framework\MockObject\MockObject */ |
69 | | - private $urlGenerator; |
70 | | - |
71 | | - /** @var IShare | \PHPUnit\Framework\MockObject\MockObject */ |
72 | | - private $share; |
73 | | - |
74 | | - /** @var \OCP\Activity\IManager | \PHPUnit\Framework\MockObject\MockObject */ |
75 | | - private $activityManager; |
76 | | - |
77 | | - /** @var SettingsManager | \PHPUnit\Framework\MockObject\MockObject */ |
78 | | - private $settingsManager; |
79 | | - |
80 | | - /** @var Defaults|\PHPUnit\Framework\MockObject\MockObject */ |
81 | | - private $defaults; |
82 | | - |
83 | | - /** @var IHasher | \PHPUnit\Framework\MockObject\MockObject */ |
84 | | - private $hasher; |
85 | | - |
86 | | - /** @var IEventDispatcher */ |
87 | | - private $eventDispatcher; |
| 45 | + |
| 46 | + private IDBConnection $connection; |
| 47 | + |
| 48 | + private IL10N&MockObject $l; |
| 49 | + private IShare&MockObject $share; |
| 50 | + private IConfig&MockObject $config; |
| 51 | + private IMailer&MockObject $mailer; |
| 52 | + private IHasher&MockObject $hasher; |
| 53 | + private Defaults&MockObject $defaults; |
| 54 | + private IManager&MockObject $shareManager; |
| 55 | + private LoggerInterface&MockObject $logger; |
| 56 | + private IRootFolder&MockObject $rootFolder; |
| 57 | + private IUserManager&MockObject $userManager; |
| 58 | + private ISecureRandom&MockObject $secureRandom; |
| 59 | + private IURLGenerator&MockObject $urlGenerator; |
| 60 | + private SettingsManager&MockObject $settingsManager; |
| 61 | + private IActivityManager&MockObject $activityManager; |
| 62 | + private IEventDispatcher&MockObject $eventDispatcher; |
88 | 63 |
|
89 | 64 | protected function setUp(): void { |
90 | 65 | parent::setUp(); |
91 | 66 |
|
92 | | - $this->config = $this->getMockBuilder(IConfig::class)->getMock(); |
93 | | - $this->connection = \OC::$server->getDatabaseConnection(); |
| 67 | + $this->connection = \OCP\Server::get(IDBConnection::class); |
94 | 68 |
|
95 | 69 | $this->l = $this->getMockBuilder(IL10N::class)->getMock(); |
96 | 70 | $this->l->method('t') |
97 | 71 | ->willReturnCallback(function ($text, $parameters = []) { |
98 | 72 | return vsprintf($text, $parameters); |
99 | 73 | }); |
| 74 | + $this->config = $this->getMockBuilder(IConfig::class)->getMock(); |
100 | 75 | $this->logger = $this->getMockBuilder(LoggerInterface::class)->getMock(); |
101 | 76 | $this->rootFolder = $this->getMockBuilder('OCP\Files\IRootFolder')->getMock(); |
102 | 77 | $this->userManager = $this->getMockBuilder(IUserManager::class)->getMock(); |
@@ -165,7 +140,10 @@ private function getInstance(array $mockedMethods = []) { |
165 | 140 | } |
166 | 141 |
|
167 | 142 | protected function tearDown(): void { |
168 | | - $this->connection->getQueryBuilder()->delete('share')->execute(); |
| 143 | + $this->connection |
| 144 | + ->getQueryBuilder() |
| 145 | + ->delete('share') |
| 146 | + ->executeStatement(); |
169 | 147 |
|
170 | 148 | parent::tearDown(); |
171 | 149 | } |
@@ -305,7 +283,11 @@ public function testCreateSendPasswordByMailWithPasswordAndWithoutEnforcedPasswo |
305 | 283 | // Assume the mail address is valid. |
306 | 284 | $this->mailer->expects($this->any())->method('validateMailAddress')->willReturn(true); |
307 | 285 |
|
308 | | - $instance = $this->getInstance(['getSharedWith', 'createMailShare', 'getRawShare', 'createShareObject', 'createShareActivity', 'autoGeneratePassword', 'createPasswordSendActivity', 'sendEmail', 'sendPassword', 'sendPasswordToOwner']); |
| 286 | + $instance = $this->getInstance([ |
| 287 | + 'getSharedWith', 'createMailShare', 'getRawShare', 'createShareObject', |
| 288 | + 'createShareActivity', 'autoGeneratePassword', 'createPasswordSendActivity', |
| 289 | + 'sendEmail', 'sendPassword', 'sendPasswordToOwner', |
| 290 | + ]); |
309 | 291 |
|
310 | 292 | $instance->expects($this->once())->method('getSharedWith')->willReturn([]); |
311 | 293 | $instance->expects($this->once())->method('createMailShare')->with($share)->willReturn(42); |
@@ -361,7 +343,7 @@ public function testCreateSendPasswordByMailWithEnforcedPasswordProtectionWithPe |
361 | 343 | ->willReturn('autogeneratedPassword'); |
362 | 344 | $this->eventDispatcher->expects($this->once()) |
363 | 345 | ->method('dispatchTyped') |
364 | | - ->with(new GenerateSecurePasswordEvent()); |
| 346 | + ->with(new GenerateSecurePasswordEvent(PasswordContext::SHARING)); |
365 | 347 |
|
366 | 348 | // Assume the mail address is valid. |
367 | 349 | $this->mailer->expects($this->any())->method('validateMailAddress')->willReturn(true); |
@@ -822,7 +804,7 @@ public function dataUpdateSendPassword() { |
822 | 804 | * @param bool sendMail |
823 | 805 | */ |
824 | 806 | public function testUpdateSendPassword($plainTextPassword, string $originalPassword, string $newPassword, $originalSendPasswordByTalk, $newSendPasswordByTalk, bool $sendMail) { |
825 | | - $node = $this->getMockBuilder(File::class)->getMock(); |
| 807 | + $node = $this->createMock(File::class); |
826 | 808 | $node->expects($this->any())->method('getName')->willReturn('filename'); |
827 | 809 |
|
828 | 810 | $this->settingsManager->method('sendPasswordByMail')->willReturn(true); |
@@ -927,7 +909,7 @@ public function testGetShareByPath() { |
927 | 909 | $permissions = 1; |
928 | 910 | $token = 'token'; |
929 | 911 |
|
930 | | - $node = $this->getMockBuilder('OCP\Files\Node')->getMock(); |
| 912 | + $node = $this->createMock(Node::class); |
931 | 913 | $node->expects($this->once())->method('getId')->willReturn($itemSource); |
932 | 914 |
|
933 | 915 |
|
|
0 commit comments