/** * @param $message * @param $field * @param $affToken * @param $expected * * @dataProvider generateITunesUrlDataProvider */ public function testGenerateITunesURL($message, $field, $linkType, $affToken, $expected) { $this->assertEquals($expected, LyricsUtils::generateITunesUrl($field, $linkType, $affToken), $message); }
/** * @desc Builds API requests URLs, images URLs and whole song object returned in response results * * @param Solarium_Document_ReadOnly $solrSong song object retrieved from solr * @param Solarium_Result_Select_Highlighting_Result | null $highlights optional Solarium result object * with highlighting; default === null * @param Boolean $addSongUrl flag which tells if add a song url to results or not; default === false * * @return stdClass */ private function getOutputSong($solrSong, $highlights = null, $addSongUrl = false) { $song = $this->buildSong($solrSong, $addSongUrl); if ($solrSong->itunes) { $song->itunes = LyricsUtils::generateITunesUrl($solrSong->itunes, LyricsUtils::TYPE_SONG, $this->itunesAffiliateToken); } $song->lyrics = $solrSong->lyrics; $song->artist = $this->buildArtist($solrSong); if ($solrSong->album_id) { $song->album = $this->buildAlbum($solrSong); } if ($solrSong->image) { $this->appendImages($song, $solrSong->image); } if (!is_null($highlights)) { $song->highlights = $highlights->getField(self::INDEX_FIELD_NAME_LYRICS); } return $song; }