public function scope(ApiTester $I) { $user = $I->createAndLoginUser(); $I->createProjectAndSetHeader(); $I->loginClient($I->getCurrentClient()); $second_user = $I->createUser(true); $I->loginUser($user); $I->sendPOST('api/v1/projects/users', ['user_id' => $second_user->_id, 'role' => 'manager', 'scope' => ['tables_view', 'tables_update']]); $I->loginUser($second_user); $I->sendPOST('api/v1/admin/tables', $I->getTableData()); $I->seeResponseCodeIs(403); $I->seeResponseContains('"meta":{"error_message":"Bad Scopes","scopes":["tables_create"],"code":403,"error":"access_denied"}'); }
public function update(ApiTester $I) { $user = $I->createAndLoginUser(); $I->createProjectAndSetHeader(); $I->createTable(); $I->sendGET('api/v1/admin/tables'); $I->assertListTable(); $id = $I->getResponseFields()->data[0]->_id; $data = $I->getTableData(); $data['title'] = 'Updated title'; $data['description'] = 'Updated description'; $data['fields'] = [["key" => 'test_key', "title" => 'Test key', "source" => "request", "type" => 'string', 'preset' => null]]; $data['variants'] = [['default_decision' => 'Decline', 'rules' => [['_id' => $I->getMongoId(), 'than' => 'Approve', 'description' => 'New rule', 'conditions' => [['_id' => $I->getMongoId(), 'field_key' => 'test_key', 'condition' => '$eq', 'value' => 'test']]]]]]; $I->sendPUT('api/v1/admin/tables/' . $id, $data); $I->assertTable(); $I->assertResponseDataFields($data); $I->sendGET('api/v1/admin/changelog/tables'); $I->assertResponseDataFields(['author' => $user->username]); }