public function testCheckAccess() { $this->prepareData(); $testSuites = ['reader A' => ['createPost' => false, 'readPost' => true, 'updatePost' => false, 'updateAnyPost' => false], 'author B' => ['createPost' => true, 'readPost' => true, 'updatePost' => true, 'deletePost' => true, 'updateAnyPost' => false], 'admin C' => ['createPost' => true, 'readPost' => true, 'updatePost' => false, 'updateAnyPost' => true]]; $params = ['authorID' => 'author B']; foreach ($testSuites as $user => $tests) { foreach ($tests as $permission => $result) { $this->assertEquals($result, $this->auth->checkAccess($user, $permission, $params), "Checking {$user} can {$permission}"); } } }