Skip to content

Commit

Permalink
Fixed tests
Browse files Browse the repository at this point in the history
Signed-off-by: John Molakvoæ (skjnldsv) <[email protected]>
  • Loading branch information
skjnldsv committed Mar 27, 2018
1 parent c3f3d8a commit 4b4f4dc
Show file tree
Hide file tree
Showing 5 changed files with 58 additions and 53 deletions.
17 changes: 8 additions & 9 deletions apps/provisioning_api/lib/Controller/GroupsController.php
Original file line number Diff line number Diff line change
Expand Up @@ -76,15 +76,14 @@ class GroupsController extends OCSController {
* @param ILogger $logger
* @param UsersController $userController
*/
public function __construct(
string $appName,
IRequest $request,
IUserManager $userManager,
IConfig $config,
IGroupManager $groupManager,
IUserSession $userSession,
AccountManager $accountManager,
ILogger $logger) {
public function __construct(string $appName,
IRequest $request,
IUserManager $userManager,
IConfig $config,
IGroupManager $groupManager,
IUserSession $userSession,
AccountManager $accountManager,
ILogger $logger) {
parent::__construct($appName, $request);

$this->groupManager = $groupManager;
Expand Down
80 changes: 43 additions & 37 deletions apps/provisioning_api/tests/Controller/GroupsControllerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,61 +26,67 @@

namespace OCA\Provisioning_API\Tests\Controller;

use OC\Accounts\AccountManager;
use OC\Group\Manager;
use OC\SubAdmin;
use OCA\Provisioning_API\Controller\GroupsController;
use OCP\IGroupManager;
use OCP\IConfig;
use OCP\ILogger;
use OCP\IRequest;
use OCP\IUser;
use OCP\IUserManager;
use OCP\IUserSession;

class GroupsControllerTest extends \Test\TestCase {
/** @var IGroupManager|\PHPUnit_Framework_MockObject_MockObject */

/** @var IRequest|PHPUnit_Framework_MockObject_MockObject */
protected $request;
/** @var IUserManager|PHPUnit_Framework_MockObject_MockObject */
protected $userManager;
/** @var IConfig|PHPUnit_Framework_MockObject_MockObject */
protected $config;
/** @var Manager|PHPUnit_Framework_MockObject_MockObject */
protected $groupManager;
/** @var IUserSession|\PHPUnit_Framework_MockObject_MockObject */
/** @var IUserSession|PHPUnit_Framework_MockObject_MockObject */
protected $userSession;
/** @var \OC\SubAdmin|\PHPUnit_Framework_MockObject_MockObject */
protected $subAdminManager;
/** @var OCA\Provisioning_API\Controller\UsersController|\PHPUnit_Framework_MockObject_MockObject */
protected $userController;
/** @var AccountManager|PHPUnit_Framework_MockObject_MockObject */
protected $accountManager;
/** @var ILogger|PHPUnit_Framework_MockObject_MockObject */
protected $logger;

/** @var GroupsController */
/** @var GroupsController|PHPUnit_Framework_MockObject_MockObject */
protected $api;

protected function setUp() {
parent::setUp();

$this->subAdminManager = $this->getMockBuilder('OC\SubAdmin')
->disableOriginalConstructor()
->getMock();
$this->request = $this->createMock(IRequest::class);
$this->userManager = $this->createMock(IUserManager::class);
$this->config = $this->createMock(IConfig::class);
$this->groupManager = $this->createMock(Manager::class);
$this->userSession = $this->createMock(IUserSession::class);
$this->accountManager = $this->createMock(AccountManager::class);
$this->logger = $this->createMock(ILogger::class);

$this->subAdminManager = $this->createMock(SubAdmin::class);

$this->groupManager = $this->getMockBuilder('OC\Group\Manager')
->disableOriginalConstructor()
->getMock();
$this->groupManager
->method('getSubAdmin')
->willReturn($this->subAdminManager);

$this->userSession = $this->getMockBuilder(IUserSession::class)
->disableOriginalConstructor()
->getMock();
$request = $this->getMockBuilder(IRequest::class)
->disableOriginalConstructor()
->method('getSubAdmin')
->willReturn($this->subAdminManager);

$this->api = $this->getMockBuilder(GroupsController::class)
->setConstructorArgs([
'provisioning_api',
$this->request,
$this->userManager,
$this->config,
$this->groupManager,
$this->userSession,
$this->accountManager,
$this->logger
])
->setMethods(['fillStorageInfo'])
->getMock();

$logger = $this->createMock(ILogger::class);

$this->userController = $this->getMockBuilder('OCA\Provisioning_API\Controller\UsersController')
->disableOriginalConstructor()
->getMock();

$this->api = new GroupsController(
'provisioning_api',
$request,
$this->groupManager,
$this->userSession,
$logger,
$this->userController
);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -640,8 +640,8 @@ public function testAddUserAsSubAdminExistingGroups() {

/**
* @expectedException \OCP\AppFramework\OCS\OCSException
* @expectedExceptionCode 998
* @expectedExceptionMessage The requested user could not be found
* @expectedExceptionCode 404
* @expectedExceptionMessage User does not exist
*/
public function testGetUserTargetDoesNotExist() {
$loggedInUser = $this->getMockBuilder(IUser::class)
Expand Down Expand Up @@ -2818,7 +2818,7 @@ public function testRemoveSubAdminUnsuccessful() {

/**
* @expectedException \OCP\AppFramework\OCS\OCSException
* @expectedExceptionCode 101
* @expectedExceptionCode 404
* @expectedExceptionMessage User does not exist
*/
public function testGetUserSubAdminGroupsNotExistingTargetUser() {
Expand Down
Empty file modified build/autoloaderchecker.sh
100644 → 100755
Empty file.
8 changes: 4 additions & 4 deletions build/integration/features/provisioning-v1.feature
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ Feature: provisioning
Scenario: Getting an not existing user
Given As an "admin"
When sending "GET" to "/cloud/users/test"
Then the OCS status code should be "998"
And the HTTP status code should be "200"
Then the OCS status code should be "404"
And the HTTP status code should be "404"

Scenario: Listing all users
Given As an "admin"
Expand Down Expand Up @@ -264,8 +264,8 @@ Feature: provisioning
And user "not-user" does not exist
And group "new-group" exists
When sending "GET" to "/cloud/users/not-user/subadmins"
Then the OCS status code should be "101"
And the HTTP status code should be "200"
Then the OCS status code should be "404"
And the HTTP status code should be "404"

Scenario: Getting subadmin users of a group
Given As an "admin"
Expand Down

0 comments on commit 4b4f4dc

Please sign in to comment.