/** * @vcr PersonTests/testDeleteDiscussionReference.json * @link https://familysearch.org/developers/docs/api/tree/Delete_Discussion_Reference_usecase */ public function testDeleteDiscussionReference() { $factory = new FamilyTreeStateFactory(); $this->collectionState($factory); $userState = $this->collectionState()->readCurrentUser(); $discussion = DiscussionBuilder::createDiscussion($userState->getUser()->getTreeUserId()); /** @var DiscussionState $discussionState */ $discussionState = $this->collectionState()->addDiscussion($discussion); $this->queueForDelete($discussionState); $ref = new DiscussionReference(); $ref->setResource($discussionState->getSelfUri()); /** @var FamilyTreePersonState $person */ $person = $this->collectionState()->readPersonForCurrentUser(); $newState = $person->deleteDiscussionReference($ref); $this->assertEquals(HttpStatus::NO_CONTENT, $newState->getStatus(), $this->buildFailMessage(__METHOD__, $newState)); }
/** * @vcr DiscussionsTests/testDeleteDiscussionReference.json * @link https://familysearch.org/developers/docs/api/tree/Delete_Discussion_Reference_usecase */ public function testDeleteDiscussionReference() { $factory = new FamilyTreeStateFactory(); $this->collectionState($factory); $testSubject = $this->createPerson(); $userState = $this->collectionState()->readCurrentUser(); $discussion = DiscussionBuilder::createDiscussion($userState->getUser()->getTreeUserId()); $discussionState = $this->collectionState()->addDiscussion($discussion); $this->queueForDelete($discussionState); $ref = new DiscussionReference(); $ref->setResource($discussionState->getSelfUri()); $newState = $testSubject->deleteDiscussionReference($ref); $this->assertAttributeEquals(HttpStatus::NO_CONTENT, "statusCode", $newState->getResponse(), $this->buildFailMessage(__METHOD__, $newState)); }
/** * Add a discussion reference to this person using a state object * * @param \Gedcomx\Extensions\FamilySearch\Rs\Client\DiscussionState $discussion * @param \Gedcomx\Rs\Client\Options\StateTransitionOption $option,... * * @return FamilyTreePersonState */ public function addDiscussionState(DiscussionState $discussion, StateTransitionOption $option = null) { $reference = new DiscussionReference(); $reference->setResource($discussion->getSelfUri()); return $this->passOptionsTo('addDiscussionReference', array($reference), func_get_args()); }