diff --git a/app/ModelSerializers/Summit/Speakers/PresentationSpeakerSerializer.php b/app/ModelSerializers/Summit/Speakers/PresentationSpeakerSerializer.php index 1f30b709..37691c91 100644 --- a/app/ModelSerializers/Summit/Speakers/PresentationSpeakerSerializer.php +++ b/app/ModelSerializers/Summit/Speakers/PresentationSpeakerSerializer.php @@ -145,7 +145,7 @@ class PresentationSpeakerSerializer extends SilverStripeSerializer foreach ($speaker->getModeratedPresentations($summit_id, $published) as $p) { $moderated_presentations[] = SerializerRegistry::getInstance()->getSerializer($p)->serialize(); } - $values['moderated_presentations'] = $presentations; + $values['moderated_presentations'] = $moderated_presentations; } break; case 'member': { diff --git a/tests/OAuth2SpeakersApiTest.php b/tests/OAuth2SpeakersApiTest.php index a183976f..65f6218c 100644 --- a/tests/OAuth2SpeakersApiTest.php +++ b/tests/OAuth2SpeakersApiTest.php @@ -336,6 +336,36 @@ final class OAuth2SpeakersApiTest extends ProtectedApiTest return $speaker; } + public function testGetSpeakerById($speaker_id=219) + { + $params = [ + + 'speaker_id' => $speaker_id, + 'expand' => 'member,presentations' + ]; + + $headers = [ + "HTTP_Authorization" => " Bearer " . $this->access_token, + "CONTENT_TYPE" => "application/json" + ]; + + $response = $this->action( + "GET", + "OAuth2SummitSpeakersApiController@getSpeaker", + $params, + [], + [], + [], + $headers + ); + + $content = $response->getContent(); + $this->assertResponseStatus(200); + $speaker = json_decode($content); + $this->assertTrue(!is_null($speaker)); + return $speaker; + } + public function testGetCurrentSummitSpeakersOrderByID() { $params = [