Commit Graph

229 Commits

Author SHA1 Message Date
Melvyn
5b38910dd5 format the date in the progress report using the invariant culture. regenerated the progress report. 2015-06-20 12:37:51 +02:00
Melvyn
ff753c906c only allows the ApiMethodName attribute to be defined on classes. 2015-06-20 12:36:44 +02:00
Melvyn
512009f187 updated the progress reporter so that it uses the custom ApiMethodNameAttribute instead of trying to instantiate each command to get its Method property. 2015-06-20 12:36:14 +02:00
Melvyn
83fd97e85a implemented the "Method" property of each Command using the constants defined in LastMethodsNames. Each Command now also has a custom ApiMethodName attribute returning its correct api method name. 2015-06-20 12:24:23 +02:00
Melvyn
f05c76181b Added an auto-generated class containing all the Last.fm api methods names as constants, and an attribute to use them on the Commands. 2015-06-20 11:48:49 +02:00
Melvyn
dabe563a2f fix an ArgumentOutOfRangeException in the Unit Tests causing a few tests to fail.
The exception probably occured only with a local time zone with a positive offset, while performing the implicit conversion from DateTime.MinValue to a DateTimeOffset. http://stackoverflow.com/questions/6924198/converting-datetime-minvalue-to-datetimeoffset
2015-06-20 10:16:31 +02:00
Rikki Tooley
b28c3c1471 Fixing syro after httpclient changes 2015-04-29 13:45:52 +01:00
Rikki Tooley
57092d7bc9 Tidying up ScrobbleCommand and ScrobbleResponse 2015-04-28 14:35:27 +01:00
Rikki Tooley
65448d6032 Scrobbler.SendCachedScrobblesAsync() 2015-04-26 19:36:17 +01:00
Rikki Tooley
33a969c6df Match method names of *Api classes match REST api method names 2015-04-26 19:03:42 +01:00
Rikki Tooley
24d0c40f59 Return ignored scrobbles on ScrobbleResponses
Closes #59
2015-04-26 18:32:20 +01:00
Rikki Tooley
48be3af2c9 Update assembly info 2015-04-26 18:32:20 +01:00
Rikki Tooley
93a371674d Dispose classes created by LastfmClient #67, Scrobble command needs SSL for multiple scrobbles #61 2015-04-26 18:32:20 +01:00
Rikki Tooley
a44e158e95 LastfmClient class, closes #64 2015-04-26 01:13:12 +01:00
Rikki Tooley
6fcb990259 Add HttpClient parameter to api classes + pass them down to commands, make api classes disposable
Closes #66, closes #41
2015-04-26 00:36:52 +01:00
Rikki Tooley
742844b819 Move Scrobbler class to Objects namespace 2015-04-25 23:56:07 +01:00
Rikki Tooley
6fe0c71e25 Test to ensure existng cached track is sent along with a new scrobble 2015-04-25 14:49:59 +01:00
Rikki Tooley
ea3a7eb2c3 Scrobble batching
TODO test batching combined with caching in unit tests
2015-04-24 00:47:30 +01:00
Rikki Tooley
64170d9a7c Merge branch 'master' into scrobbler
Conflicts:
	src/IF.Lastfm.Core/Api/Enums/LastResponseStatus.cs
2015-04-23 23:56:04 +01:00
Rikki Tooley
f16528f5ad Enums can only have 32 types! 2015-04-23 23:42:52 +01:00
Rikki Tooley
0ad13f4463 Let's see what the problem is... 2015-04-23 23:31:19 +01:00
Rikki Tooley
d10bdd79f6 Fix scrobble request body tests 2015-04-23 22:51:26 +01:00
Rikki Tooley
92d69f3619 Fix tests failure in different timezone 2015-04-17 18:13:41 -07:00
Rikki Tooley
211fb3a559 Support batch scrobbling
Adjusted generate method signature to sort by ASCII order
2015-04-17 01:54:19 +01:00
Rikki Tooley
7bff9c698b Scrobble command parameter test 2015-04-12 04:16:13 +01:00
Rikki Tooley
2aa4ab68de Testing for correct request as well as response for scrobble command, marking ITrackApi.ScrobbleAsync as obsolete 2015-04-12 03:50:50 +01:00
Rikki Tooley
16af668c8e Parameter correct tests for library.removeScrobble and library.removeTrack 2015-04-11 00:03:51 +01:00
Rikki Tooley
d30519e38d Fixing enum collision bug caused by #62
it was impossible to represent Cached, CachedFailed or RequestFailed because their auto assigned int overlapped with other members at 2, 3, 4.
2015-04-10 22:52:45 +01:00
Rikki Tooley
7da15fd8f4 SQLiteScrobbler, tests passing 2015-04-06 01:57:01 +01:00
Rikki Tooley
a0209625c2 Fixing enum collision bug 2015-04-06 00:17:01 +01:00
Rikki Tooley
e30bc37f41 Fix build, upgrade SQLite integration tests to NUnit 2015-04-05 23:30:50 +01:00
Rikki Tooley
f299b1f8e9 Merge branch 'master' into scrobbler
Conflicts:
	src/IF.Lastfm.Core.Tests.Integration/packages.config
	src/IF.Lastfm.Core.Tests/TestHelper.cs
2015-04-05 23:26:34 +01:00
Rikki Tooley
1c9b87a3f1 Switching MSTest to NUnit 2015-04-05 22:26:10 +01:00
Rikki Tooley
8db319d342 Base SQLiteScrobbler, plus ScrobblerTestsBase... but MSTest doesn't support unit tests across assemblies 2015-04-05 21:46:03 +01:00
Rikki Tooley
7207d05b3d Update PROGRESS.md, 27% 2015-04-05 01:04:49 +01:00
Rikki Tooley
ba826e9da5 Putting Success property back on ILastResponse 2015-04-05 00:57:42 +01:00
kasthack
7faa2d5b15 fix build on .net 4.5 2015-04-05 01:58:55 +03:00
kasthack
f61bea9173 library.removeTrack 2015-04-05 01:23:37 +03:00
kasthack
0769feac68 library.removeScrobble, typo fix 2015-04-05 00:31:00 +03:00
kasthack
aca940e25c LastResponseStatus parsing 2015-04-05 00:05:19 +03:00
Rikki Tooley
8a04cde0f4 #61 Scrobbler class with support for external HttpClient (#41), + tests
Also add Alt+T key combo to Syro to insert timestamp to focussed field, and fix unit tests
2015-04-04 21:23:14 +01:00
Rikki Tooley
0e074ec1bf Merge branch 'master' into scrobbler 2015-04-04 14:57:41 +01:00
Rikki Tooley
a06f01bfa7 Fixing the change from yesterday 2015-04-04 14:57:21 +01:00
Rikki Tooley
1eeba5648b Started implementing SQLiteScrobbler to cache scrobbles when on dodgy internet connections 2015-04-04 04:30:21 +01:00
Rikki Tooley
de2eb870a8 LastResponse wouldn't return Successful status 2015-04-04 03:33:49 +01:00
Rikki Tooley
4d3e60685e Rename LastFmApiError to LastResponseStatus, more command tidying 2015-04-04 03:30:40 +01:00
Rikki Tooley
e3ca4f3b14 Tidying command classes
Closes #43
2015-04-04 02:24:45 +01:00
Rikki Tooley
bac183be0b Json.NET serialising datetimeoffets weirdly, fix the scrobble integration test by testing track.TimePlayed separately 2015-04-03 21:06:59 +01:00
Rikki Tooley
b38cd0fe45 Accidentally broke a bunch of tests, fixing 2015-04-03 18:24:22 +01:00
Rikki Tooley
4afe00f663 Response tests for user.getTopAlbums 2015-04-03 18:04:50 +01:00
Rikki Tooley
4e6446b744 Syro now saves/loads session state to solution directory 2015-04-03 17:34:28 +01:00
Rikki Tooley
cd157882eb user get top albums command 2015-04-03 16:13:53 +01:00
Harry
4af69f16d8 Renaming TotalPlayCount and fixing possible bug
also added play count to artist
2015-02-28 11:05:15 -04:00
Harry
0b31173925 Fixing memory leaks 2015-02-28 10:49:00 -04:00
Rikki Tooley
6a82519acb Updating NuGet packages
Json.Net -> 6.0.8
Closes #55
2015-02-19 19:16:19 +00:00
Rikki Tooley
6ce2fac64b Merge branch 'master' of https://github.com/inflatablefriends/lastfm 2015-02-19 19:04:35 +00:00
Rikki Tooley
9ef3f8f933 Fixing the scrobbling integration test. 2015-02-19 19:04:13 +00:00
Rikki Tooley
09ed4132b9 Moving demo Windows Phone app to https://github.com/inflatablefriends/lastfm-samples 2015-02-19 18:51:01 +00:00
Rikki Tooley
82b71c36de Making test logging ~30% better 2015-02-17 10:06:18 +00:00
Rikki Tooley
56fd461b5f Use DateTimeOffset internally instead of DateTime, closes #26 2015-01-14 18:51:49 +00:00
Rikki Tooley
c6990545b9 Merge pull request #53 from zumicts/master
Round duration on update now playing (integer)
2015-01-12 01:23:52 +00:00
Rikki Tooley
1a4290be22 Set a fractional duration for scrobble in track.updateNowPlaying integration test, will break build (see #52, #53) 2015-01-12 01:16:40 +00:00
Harry
bbffb27e63 Round duration on update now playing 2015-01-11 19:12:21 -04:00
Rikki Tooley
27f0d2dbb4 Update PROGRESS.md - 100 remain 2015-01-04 03:55:22 +00:00
Rikki Tooley
d2d4a595a8 artist.getTags (by username) command 2015-01-04 03:53:15 +00:00
Rikki Tooley
b13bef5ea6 Actually expose artist.getTopTags to api.. 2015-01-04 03:36:20 +00:00
Rikki Tooley
1533b0f987 artist.getTopTags 2015-01-04 03:31:13 +00:00
Rikki Tooley
b49b0aa442 Made PageResponse<T> covariant and readonly, changed signature of PageResponse.CreateSuccessResponse method, tests for album.getTagsByUserCommand 2015-01-04 02:47:08 +00:00
Rikki Tooley
74da6afee5 Merge branch 'master' into pr/40 2015-01-04 00:57:09 +00:00
Prashant Khandelwal
bd9a9d9240 album.getTags command 2015-01-04 00:26:36 +00:00
Rikki Tooley
7920432d0a Fix Apollo project build, change Scrobble constructor again 2015-01-03 23:54:29 +00:00
Rikki Tooley
adf6d7316b Moved track.updateNowPlaying to a command
Also
- Fix for track.scrobble test failing half the time
- Changed signature of user.getRecentTracks method to make since parameter optional, added note about different behaviour with 0 or 1 as page number
- Changed constructors for Scrobble
- Fixed DateTime issue in test serialise method
2015-01-03 23:32:19 +00:00
Rikki Tooley
85474f2ea2 Fix track.scrobble test 2015-01-03 21:40:28 +00:00
Rikki Tooley
1d0c433555 Merge remote-tracking branch 'remotes/zumicts/master' into pr/46
Conflicts:
	src/IF.Lastfm.Core/Api/Commands/UserApi/GetRecommendedArtistsCommand.cs
	src/IF.Lastfm.Core/Api/TrackApi.cs
2015-01-03 21:30:46 +00:00
Rikki Tooley
b21d0e1a6c track.scrobble integration test, fix for LastAuth not working 2015-01-03 21:18:35 +00:00
Rikki Tooley
fd66ad42aa Forgot to commit project 2015-01-03 03:13:59 +00:00
Rikki Tooley
b0743de028 Moving track.scrobble to a command, handle missing auth in PostAsyncCommandBase 2015-01-03 02:36:01 +00:00
Rikki Tooley
e96010bcd7 UserGetRecommendedArtistsCommand tests
Fix bug in syro with post commands
2015-01-03 02:17:13 +00:00
Rikki Tooley
525810528b Probably shouldn't be checking in my Last.fm password... 😓 2015-01-03 00:50:05 +00:00
Rikki Tooley
577beae9c5 artist.getInfo tests
(also fix auth test, oops)
2015-01-03 00:17:54 +00:00
Rikki Tooley
cc8d6cd2cc LastAuth tests 2015-01-02 23:15:56 +00:00
Harry
06e2a1b121 Fix bug with playcount prop 2015-01-01 19:25:28 -04:00
Harry
a003d38325 Move api method to correct class
recommended artist is in the userapi
2014-12-30 12:16:10 -04:00
Harry
5d452642a6 Recommend artist (user) api 2014-12-30 12:05:34 -04:00
Harry
6788074731 Fix bugs with updateNowPlaying
duration must be an int or else it will fail.

no need for timestamp
2014-12-24 17:42:40 -04:00
Harry
86020cad1d Use duration for scrobble 2014-12-24 17:10:29 -04:00
Harry
e2f380ac24 Add track.updateNowPlaying
and duration prop
2014-12-24 15:21:10 -04:00
Harry
ea0ed95ca0 Fix time bug with scrobbles
no need for "ToUniversalTime" to the epoch DateTime
2014-12-24 14:31:03 -04:00
Harry
2a67393ada Fix scrobble bug
adding the user session token multiple times
2014-12-24 14:10:48 -04:00
Harry
1299f51c81 Using custom MD5 implementation
instead of the MyConvert package
2014-12-24 13:54:10 -04:00
Harry
34b2008286 Hnadling unauth on scrobble
should make it in a more generic and easier way for all apis
2014-12-24 12:30:28 -04:00
Harry
9ff8b5fbaf Comment on LastWiki bug 2014-12-24 12:01:10 -04:00
Harry
39a17b4349 Merge remote-tracking branch 'upstream/master' 2014-12-24 11:58:15 -04:00
Rikki Tooley
f267ab1735 Remove CatchRequestExceptions option, closes #23 2014-12-23 00:07:37 +00:00
Rikki Tooley
65c21565ab Make ILastFmObject internal so it's only visible to Syro, closes #44 2014-12-22 23:34:04 +00:00
Rikki Tooley
564b0dc8de Forgot to commit the project file.....
http://i.imgur.com/QDgKUpw.jpg
2014-12-22 23:29:53 +00:00
Rikki Tooley
73835fc447 Style changes and a bit of tidying, rename some commands (#43)
Also excluding Object tests temporarily
2014-12-22 23:19:29 +00:00
Peter Curd
596cd285fb Updating GetTracksCommand to use new style CreateSuccessResponse 2014-12-20 16:01:57 +00:00
Peter Curd
367724390d Added TotalPlayCount to Track parsing
Added Name as a possible field for album name
Allowed HandleResponse for GetTracksCommand handle single results as an object instead of an array
Added working tests for GetTracksCommand
2014-12-20 15:32:02 +00:00
Peter Curd
7ce8527f1c Tests for Multiple and Single track returns for GetRecentScrobbles 2014-12-20 14:20:16 +00:00