David Sansome
1aee5e4667
Split all the source files up into seven new directories.
2010-05-10 21:50:31 +00:00
David Sansome
481dbae992
Save magnatune playlist items properly, also fix tests from before
2010-05-10 14:19:43 +00:00
David Sansome
88ab9a8299
Add a table for the Magnatune library, and add the Magnatune database to it when the Magnatune node is expanded. Sort the Magnatune library model properly, and don't crash when adding or removing items.
2010-05-09 16:53:35 +00:00
David Sansome
6b8d6c93f9
Add a MergedProxyModel that lets us merge two models into one...
2010-05-09 15:51:04 +00:00
David Sansome
1b00aaa8b3
Big refactoring of the Library <-> LibraryBackend <-> SQLite interaction.
...
The LibraryBackend has now been split into a Database class that deals with setting up sqlite, and PlaylistBackend that contains the functions for persisting the playlist. The LibraryBackend now only contains functions for accessing "a collection of songs", and can be parameterised with table names to access different collections. It also no longer lives in a background thread, and follows the Qt memory management model instead of using shared_ptr.
Most of Library has been moved into LibraryModel - a QAbstractItemModel for any LibraryBackend. What's left of Library is now specific to the user's local library on disk.
2010-05-09 00:10:26 +00:00
David Sansome
0c9e69ed30
Group "remove" undo commands in the playlist. Fixes issue #262
2010-04-29 23:58:31 +00:00
David Sansome
48bd5020cd
Don't crash when editing a song that doesn't exist any more, also don't even add deleted songs to the playlist. Fixes issue #253 .
2010-04-27 17:37:26 +00:00
David Sansome
36af3ddbe4
After shuffling the playlist, make sure next works as expected. Fixes issue #248
2010-04-26 11:36:10 +00:00
David Sansome
5fed8efc44
Test WMA files too
2010-04-21 18:21:27 +00:00
David Sansome
7263983e0c
More debug output in CanDecode, and set the gst path in GstEngine rather than main()
2010-04-21 17:11:50 +00:00
David Sansome
4eedddd57c
Make the gst engine emit Error() instead of showing its own dialog when a plugin couldn't be found.
2010-04-21 11:14:12 +00:00
David Sansome
0656330548
Test we can load various popular file formats
2010-04-20 22:00:02 +00:00
David Sansome
58ae505377
If you remove the currently playing song, then undo it, keep the "currently playing" status on the newly re-added song. Updates issue #152 .
2010-04-20 19:08:12 +00:00
David Sansome
57c9a0d00a
Tests for playlist undo/redo
2010-04-20 18:41:12 +00:00
David Sansome
2a33954725
Codereview comments from r701
2010-04-14 22:36:28 +00:00
David Sansome
ed152be391
Scoped transaction test
2010-04-14 22:32:07 +00:00
David Sansome
c29742a739
Fix the playlist test to use shared_ptrs
2010-04-14 22:11:59 +00:00
David Sansome
d1966aa7f6
Check these additional tables exist
2010-04-14 21:09:28 +00:00
David Sansome
af07b5becd
Store the playlist in the database. This is still quite slow.
2010-04-14 21:03:00 +00:00
David Sansome
04f467b2fe
Add missing file - buildbot is useful!
2010-04-14 16:25:04 +00:00
David Sansome
76ef868c0a
Don't pass non-const references
2010-04-14 16:12:33 +00:00
David Sansome
65440dd374
Codereview comments from r685
2010-04-14 16:00:45 +00:00
David Sansome
3172f6b950
Basic playlist manipulation tests
2010-04-14 15:57:58 +00:00
David Sansome
747ae61620
More playlist tests
2010-04-14 15:39:24 +00:00
David Sansome
921eb94a21
Abstract the QSettings usage out of Playlist and PlaylistSequence, create a mock for it, and add a basic playlist test
2010-04-14 14:48:10 +00:00
John Maguire
f429b53212
Use static version of qsqlite plugin on mac as well & disable qxt for mac.
...
The plugin shipped with Qt has the sqlite symbols set to hidden. It seems dlsym() actually cares about that on Snow Leopard whereas it doesn't in Leopard.
If it can't find the sqlite functions in the given library, then it will go fishing and find /usr/lib/libsqlite3.dylib and that's bad :-(
2010-04-13 19:43:08 +00:00
David Sansome
7238bd7014
Fix tests
2010-04-11 21:45:01 +00:00
David Sansome
a4e14afdbb
Load translations from an empty context too.
2010-04-08 14:29:08 +00:00
David Sansome
9f3fc3d8ab
Add the library test back in
2010-04-04 16:28:34 +00:00
David Sansome
fd2da463b1
Update library backend tests
2010-04-04 13:17:07 +00:00
David Sansome
48270bfeec
Fix tests
2010-04-01 17:03:42 +00:00
David Sansome
29ba8d5bd3
Fix tests on windows
2010-03-31 19:33:12 +00:00
David Sansome
b8be261700
Some little fixes for compilation on Windows
2010-03-31 02:55:05 +00:00
David Sansome
4c42813d9f
Add "group by" support to the library, and improve the whole library model to make it more robust.
...
Still todo: the "Group by advanced..." dialog, unit tests.
Updates issue #94 .
2010-03-31 00:30:57 +00:00
John Maguire
df38ebf9d9
A few little mac fixes.
2010-03-30 15:53:45 +00:00
David Sansome
1081c948ae
Add missing copyright headers
2010-03-29 19:25:08 +00:00
David Sansome
ea1df6dbff
Fix the translation resource file generation - thanks Henry Sylvain. Also add a test to make sure they're always found.
2010-03-29 19:12:06 +00:00
John Maguire
5e482b99ec
Namespace test only targets.
2010-03-29 13:52:29 +00:00
John Maguire
813fa70db1
Only build test main twice rather than once per test.
2010-03-29 13:47:46 +00:00
David Sansome
0e4fb1b789
Fix loading songs with a # (or other URL special characters) in the name. Fixes issue #117
2010-03-27 15:53:02 +00:00
John Maguire
2afd94ce47
Switch cover manager filter from OR to AND.
2010-03-26 15:04:38 +00:00
John Maguire
1cad21a3e0
Only enable gui in tests that need it.
2010-03-26 12:50:27 +00:00
John Maguire
2b812a76fd
Split search query in cover manager.
...
Add unit tests.
Fixes issue #119
2010-03-26 12:22:19 +00:00
John Maguire
2e71390acd
Switch from OR to AND in split queries.
...
Fixes issue #116
2010-03-25 15:59:58 +00:00
John Maguire
95252ccc71
Support query splitting in library search.
...
Improve performance of LIKE().
Fixes issue #104
2010-03-25 13:58:24 +00:00
David Sansome
ceb225c236
More tests for edge cases when removing songs from the library
2010-03-24 19:53:00 +00:00
David Sansome
1103ef77da
More library tests
2010-03-24 19:05:49 +00:00
David Sansome
af5ede8dd0
Library tests for some corner cases
2010-03-24 17:48:25 +00:00
John Maguire
fc522602bd
Only link QtTest in unit tests.
2010-03-24 14:56:03 +00:00
David Sansome
fa00ee971d
Add license headers to all our source files
2010-03-23 23:11:46 +00:00
David Sansome
ea83789f17
Some more library model tests
2010-03-23 21:52:42 +00:00
David Sansome
dfc972be63
Use the global QApplication now
2010-03-23 21:44:43 +00:00
David Sansome
16e1deaade
Make it possible for the LibraryBackend to be mocked, and add a simple test for Library.
2010-03-23 17:26:54 +00:00
John Maguire
777cc79b95
Fix unit test to build in release mode.
2010-03-23 15:37:22 +00:00
John Maguire
2f350c1ae6
Add unit tests for custom LIKE() function.
2010-03-22 16:03:24 +00:00
John Maguire
e809019bef
Fix code review comment for r353
...
Add more tests for XSPF parser.
2010-03-11 15:25:25 +00:00
John Maguire
11330d0177
XSPF parser with test.
2010-03-09 17:17:32 +00:00
David Sansome
9f0e399fba
Fix a failing test
2010-03-08 18:07:18 +00:00
John Maguire
1aebf19077
Ensure Song is valid from m3u parser.
...
Fix tests.
2010-03-07 15:26:54 +00:00
John Maguire
08416e2c51
Make M3U parser grab tags from file.
2010-03-07 14:04:17 +00:00
John Maguire
4219dfa718
Add test for taglib usage in Song, will be more helpful testing M3U/XSPF parsing.
...
Dave: I'm sorry.
2010-03-06 20:08:01 +00:00
John Maguire
1bf373b184
remove test targets from "make all"
2010-03-06 18:51:15 +00:00
John Maguire
1ad24804cc
Finish m3u parser
2010-03-05 11:57:06 +00:00
John Maguire
64abef1cd4
Make tracks with no album show up.
...
Fixes issue #57
2010-03-05 10:51:16 +00:00
John Maguire
84d80f6a10
Explicitly link test_utils.cpp with Qt.
...
Fixes issue #58
2010-03-05 10:11:04 +00:00
John Maguire
534d7f0fb6
Change cmake script to actually use the input param rather than ARGV.
2010-03-04 16:14:16 +00:00
John Maguire
1f23f2e64d
Check last.fm method in AlbumCoverFetcherTest.
2010-03-04 11:48:19 +00:00
John Maguire
3734f23325
Tidy up AlbumCoverFetcherTest.
2010-03-04 11:43:44 +00:00
John Maguire
7b520ab361
Fix code review comments for r313.
2010-03-03 20:35:19 +00:00
John Maguire
7763d7da89
Add test for AlbumCoverFetcher.
...
Comes with infrastructure for testing network requests.
2010-03-03 19:14:14 +00:00
David Sansome
15797e07c6
Test updating and deleting songs
2010-03-03 18:38:20 +00:00
David Sansome
4652e47c65
Test adding a song without required fields set
2010-03-03 01:39:39 +00:00
David Sansome
fa3858266a
Fixed review comments from r307
2010-03-03 00:49:44 +00:00
David Sansome
3f861654ec
Some more backend tests
2010-03-03 00:33:31 +00:00
David Sansome
3296bf7b7d
LibraryBackend tests should test at a higher level
2010-03-02 23:37:12 +00:00
David Sansome
72aa271b23
Fixes for mingw32 cross-compiling
2010-03-02 20:46:46 +00:00
John Maguire
6a43c8f6c6
Refactor LibraryBackendTest to make it easier to write tests.
2010-03-02 13:35:39 +00:00
John Maguire
864215cb23
Adds a test for LibraryBackend (not as trivial as it sounds :-)
...
Adds Googlemock.
Adds mock Qt database drivers.
2010-03-01 22:00:15 +00:00
John Maguire
84786c7bc8
Add more tests to m3uparser including one windows-only test.
...
Fix code review comments from r291.
2010-03-01 16:31:19 +00:00
John Maguire
0c49e0dd94
Automatically add test dependencies.
2010-03-01 15:43:27 +00:00
John Maguire
c043eaba0c
Add mostly done M3UParser with basic unit tests.
...
Add lots of test infrastructure.
2010-03-01 15:40:12 +00:00
John Maguire
7e500a2fa8
fix build and move gtest to 3rdparty
2010-03-01 12:55:51 +00:00
John Maguire
269957e7ca
Add infrastructure for unit tests.
2010-03-01 01:47:50 +00:00