public function deleteDiscussion(ApiTester $I) { $I->wantTo('delete a discussion via API'); $user = $I->amAuthenticated(); $user->groups()->attach(4); // Make the user a moderator $discussion = Factory::create('Flarum\\Core\\Models\\Discussion', ['start_user_id' => $user->id]); $I->sendDELETE($this->endpoint . '/' . $discussion->id); $I->seeResponseCodeIs(204); $I->seeResponseEquals(''); $I->expect('the discussion was deleted in the database'); $I->dontSeeRecord('discussions', ['id' => $discussion->id]); }
} $data[0] = 'A'; $data[1] = 'B'; $data[2] = 'C'; $data[3] = 'D'; $treeHash = new TreeHash(); $treeHash->update($data); $treeHash = bin2hex($treeHash->complete()); $hash = hash('sha256', $data); $I->haveHttpHeader('Content-Type', 'application/octet-stream'); $I->haveHttpHeader('x-amz-archive-description', 'test123'); $I->haveHttpHeader('x-amz-sha256-tree-hash', $treeHash); $I->haveHttpHeader('x-amz-content-sha256', $hash); $I->sendPOST('/-/vaults/testvault/archives', $data); $I->seeResponseCodeIs(201); $I->seeResponseEquals(''); $archiveID = $I->grabHttpHeader('x-amz-archive-id'); $I->haveHttpHeader('Content-Type', 'application/json'); $I->sendPOST('/-/vaults/testvault/jobs', ['Type' => 'archive-retrieval', 'ArchiveId' => $archiveID]); $I->seeResponseCodeIs(202); $jobID = $I->grabHttpHeader('x-amz-job-id'); $I->sendGET("/-/vaults/testvault/jobs/{$jobID}"); $I->seeResponseCodeIs(200); $I->seeResponseContainsJson(['StatusCode' => 'InProgress']); $I->sendPOST("/-/vaults/testvault/jobs/{$jobID}/force-complete", []); $I->seeResponseCodeIs(200); $I->sendGET("/-/vaults/testvault/jobs/{$jobID}"); $I->seeResponseCodeIs(200); $I->seeResponseContainsJson(['StatusCode' => 'Succeeded']); $I->sendGET("/-/vaults/testvault/jobs/{$jobID}/output"); $I->seeResponseCodeIs(200);