/** * @dataProvider dataTestDeleteUser */ function testDeleteUser($toDelete, $expected, $remainingUsers) { $this->createDummyS2SShares(); $manager = new OCA\Files_Sharing\External\Manager(\OC::$server->getDatabaseConnection(), \OC\Files\Filesystem::getMountManager(), \OC\Files\Filesystem::getLoader(), \OC::$server->getHTTPHelper(), \OC::$server->getNotificationManager(), $toDelete); $manager->removeUserShares($toDelete); $query = $this->connection->prepare('SELECT `user` FROM `*PREFIX*share_external`'); $query->execute(); $result = $query->fetchAll(); foreach ($result as $r) { $remainingShares[$r['user']] = isset($remainingShares[$r['user']]) ? $remainingShares[$r['user']] + 1 : 1; } $this->assertSame($remainingUsers, count($remainingShares)); foreach ($expected as $key => $value) { if ($key === $toDelete) { $this->assertArrayNotHasKey($key, $remainingShares); } else { $this->assertSame($value, $remainingShares[$key]); } } }