IF.Lastfm/IF.Lastfm.Core.Tests/Objects/AlbumTests.cs

54 lines
1.9 KiB
C#
Raw Normal View History

using System;
using System.Collections.Generic;
using System.Text;
using IF.Lastfm.Core.Api;
using IF.Lastfm.Core.Objects;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Moq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace IF.Lastfm.Core.Tests.Objects
{
[TestClass]
public class AlbumTests
{
[TestMethod]
public void AlbumParsesValidJson()
{
var jo = ResourceManager.LoadResource(Encoding.UTF8.GetString(TestData.AlbumGetInfo));
var parsed = Album.ParseJToken(jo.SelectToken("album"));
2013-06-13 17:27:51 +01:00
var expected = new Album
{
ArtistId = "283786832",
ArtistName = "Grimes",
ListenerCount = 293542,
TotalPlayCount = 10540575,
Mbid = "2fd00edb-391a-41ec-8f2f-01e2c202d9eb",
Name = "Visions",
ReleaseDateUtc = new DateTime(2012, 02, 21, 0, 0, 0),
Url = new Uri("http://www.last.fm/music/Grimes/Visions", UriKind.Absolute),
TopTags = new List<Tag>
{
2013-06-13 17:27:51 +01:00
new Tag
{
Name = "2012",
Url = new Uri("http://www.last.fm/tag/2012", UriKind.Absolute)
},
new Tag
{
Name = "best of 2012",
Url = new Uri("http://www.last.fm/tag/best%20of%202012", UriKind.Absolute)
}
},
Tracks = new List<Track>
{
}
};
Assert.AreEqual(parsed, expected);
}
}
}