本文整理汇总了C#中MusicClient.SearchArtistsAsync方法的典型用法代码示例。如果您正苦于以下问题:C# MusicClient.SearchArtistsAsync方法的具体用法?C# MusicClient.SearchArtistsAsync怎么用?C# MusicClient.SearchArtistsAsync使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MusicClient
的用法示例。
在下文中一共展示了MusicClient.SearchArtistsAsync方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EnsureSearchArtistsReturnsErrorForFailedCall
public async Task EnsureSearchArtistsReturnsErrorForFailedCall()
{
IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.search_noresults));
ListResponse<Artist> result = await client.SearchArtistsAsync("muse");
Assert.IsNotNull(result, "Expected a result");
Assert.IsNotNull(result.StatusCode, "Expected a status code");
Assert.IsTrue(result.StatusCode.HasValue, "Expected a status code");
Assert.AreEqual(HttpStatusCode.OK, result.StatusCode.Value, "Expected a 200 response");
Assert.IsNotNull(result.Result, "Expected a list of results");
Assert.IsNull(result.Error, "Expected no error");
Assert.AreEqual(result.Result.Count, 0, "Expected 0 results");
}
示例2: GetArtwork
public async Task<bool> GetArtwork(string searchTerm, int numberItems)
{
var musicClient = new MusicClient(MixRadioApiConstants.MixRadioClientId);
var artists = await musicClient.SearchArtistsAsync(searchTerm);
if (artists.Succeeded && artists.Count > 0)
{
var chosenArtist = artists.FirstOrDefault(x => x.Name.Equals(searchTerm, StringComparison.CurrentCultureIgnoreCase));
chosenArtist = chosenArtist ?? artists[0];
var products = await musicClient.GetArtistProductsAsync(chosenArtist.Id, MixRadio.Types.Category.Album, MixRadio.Types.OrderBy.Relevance, itemsPerPage: 50);
if (products.Succeeded && products.Count >= numberItems)
{
_artwork = products.Result.Select(x => x.Thumb320Uri).OrderBy(x => Guid.NewGuid()).Take(numberItems).ToList();
return true;
}
}
return false;
}
示例3: EnsureSearchArtistsReturnsArtistsForValidSearch
public async Task EnsureSearchArtistsReturnsArtistsForValidSearch()
{
IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.search_artists));
ListResponse<Artist> result = await client.SearchArtistsAsync("muse");
Assert.IsNotNull(result, "Expected a result");
Assert.IsNotNull(result.StatusCode, "Expected a status code");
Assert.IsTrue(result.StatusCode.HasValue, "Expected a status code");
Assert.AreEqual(HttpStatusCode.OK, result.StatusCode.Value, "Expected a 200 response");
Assert.IsNotNull(result.Result, "Expected a list of results");
Assert.IsNull(result.Error, "Expected no error");
Assert.Greater(result.Result.Count, 0, "Expected more than 0 results");
foreach (Artist artist in result.Result)
{
Assert.IsFalse(string.IsNullOrEmpty(artist.Id), "Expected Id to be populated");
Assert.IsFalse(string.IsNullOrEmpty(artist.Name), "Expected Name to be populated");
Assert.IsNotNull(artist.Genres, "Expected a genre list");
Assert.Greater(artist.Genres.Length, 0, "Expected more than 0 genres");
}
}
示例4: EnsureAsyncSearchArtistsReturnsItems
public async void EnsureAsyncSearchArtistsReturnsItems()
{
// Only test happy path, as the MusicClient tests cover the unhappy path
IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.search_artists));
ListResponse<Artist> result = await client.SearchArtistsAsync("test");
Assert.Greater(result.Result.Count, 0, "Expected more than 0 results");
}
示例5: EnsureSearchArtistsThrowsExceptionForNullSearchTerm
public async Task EnsureSearchArtistsThrowsExceptionForNullSearchTerm()
{
IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.search_artists));
await client.SearchArtistsAsync(null);
}
示例6: EnsureRequestIdComesBackInResponse
public async Task EnsureRequestIdComesBackInResponse()
{
IMusicClient client = new MusicClient("test", "gb", new MockApiRequestHandler(Resources.search_suggestions));
var requestId = Guid.NewGuid();
ListResponse<Artist> result = await client.SearchArtistsAsync("muse", requestId: requestId);
Assert.IsNotNull(result, "Expected a result");
Assert.AreEqual(requestId, result.RequestId);
}