using System.Linq; using Microsoft.VisualStudio.TestTools.UnitTesting; using Nancy; using Nancy.Testing; using Sony.Filtr.AdminAPI.ViewModels.PlaylistCuration; namespace Sony.Filtr.AdminAPI.Testing { [TestClass] public class PlaylistCurationModuleTest : FiltrUnitTestBase { private static Browser _DefaultLoggedInBrowser; [ClassInitialize] public static void InitTestSuite(TestContext testContext) { _DefaultLoggedInBrowser = BuildDefaultBrowser(); } [TestMethod] public void Can_Get_PlaylistSuggestion_For_TrackUri() { var url = "/playlistCuration/Moodagent/PlaylistSuggestion"; var result = _DefaultLoggedInBrowser.Get(url, with => { with.Query("trackUri", "spotify:track:6OuV4vfyb8v3vGGGksqyKf"); }); Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); var responseModel = result.Body.DeserializeJson(); Assert.IsNotNull(responseModel); Assert.IsNotNull(responseModel.Track); Assert.IsNotNull(responseModel.Items); Assert.IsTrue(responseModel.Items.Any()); } [TestMethod] public void Can_Get_TrackSuggestion_For_PlaylistUri() { var url = "/playlistCuration/Moodagent/TrackSuggestion"; var result = _DefaultLoggedInBrowser.Get(url, with => { with.Query("playlistUri", "spotify:user:sonymusicentertainment:playlist:7AnvOrPIQLV8VIASFhN07Z"); }); Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); var responseModel = result.Body.DeserializeJson(); Assert.IsNotNull(responseModel); Assert.IsNotNull(responseModel.Playlist); Assert.IsNotNull(responseModel.Items); Assert.IsTrue(responseModel.Items.Any()); } } }