John Maguire
124ceb2db9
Fix compiling with Clang.
2010-07-27 13:21:28 +00:00
David Sansome
692e5715e3
Replace slashes with underscores when organising files. Fixes issue #503
2010-07-24 13:56:49 +00:00
John Maguire
579c7cc592
Fix some Latin1 encoding guessing.
2010-07-15 12:46:08 +00:00
David Sansome
384ff16f2b
Add a parser for a weird playlist format that looks like a cross between ASX and PLS. I don't know what it's called...
2010-07-10 18:39:41 +00:00
David Sansome
f0b984cbe9
Prepend a 0 to single-digit track numbers in the organiser. Fixes issue #438
2010-06-25 15:15:02 +00:00
David Sansome
093f198556
Use this handy cmake variable
2010-06-25 12:34:04 +00:00
David Sansome
0848f62c3d
Move OrganiseFormat to core/ and add an Organise class that actually does the work.
2010-06-24 18:33:38 +00:00
David Sansome
3de7311c36
Add tests for the various format flags
2010-06-24 16:44:12 +00:00
David Sansome
b2dcaf5cd4
Add a dialog for organising files in a library. Doesn't work yet
2010-06-24 16:26:49 +00:00
David Sansome
f0d043d19f
Build test libraries as static libs
2010-06-23 15:16:54 +00:00
David Sansome
6f9341bff8
Fix test
2010-06-23 15:16:44 +00:00
David Sansome
ed422c3743
Set a longer remote timeout on unit tests so they don't fail when they run on buildbit with high load.
2010-06-23 11:51:13 +00:00
David Sansome
0e278adb70
Disable this test for now until it can be made more reliable
2010-06-22 14:55:10 +00:00
John Maguire
b91a61c260
Tidy unicode length detection & add Cyrillic FTS test.
2010-06-21 12:07:56 +00:00
John Maguire
2f1a2fa9c7
More FTS tests.
2010-06-20 20:58:32 +00:00
John Maguire
abf79ca447
Tests and refactoring for FTS.
2010-06-20 20:51:57 +00:00
David Sansome
492d8fec87
Use sqlite's Full Text Search on the songs table
2010-06-20 16:30:10 +00:00
David Sansome
80837ce652
Oops - it helps if we actually remember to set the URL of the song we just loaded. Fixes issue #426
2010-06-20 12:50:08 +00:00
David Sansome
8dd0b9902b
When album cover art changes, update songs matching those albums in the playlist
2010-06-18 14:26:46 +00:00
David Sansome
b7a8e43a53
Not just OCD - Qt creator uses this order too
2010-06-18 14:26:14 +00:00
John Maguire
82b728528e
Better unicode search.
...
Fixes issue #419
2010-06-18 12:54:11 +00:00
David Sansome
91057acd78
Fix some test values
2010-06-17 16:54:23 +00:00
David Sansome
d423d008d4
Fix this stupid test, *again*
2010-06-16 22:32:02 +00:00
David Sansome
747d466bcc
Fix this test on Windows properly maybe
2010-06-16 13:13:34 +00:00
David Sansome
43309a13d0
Fix for lame OSs that don't have mkdtemp
2010-06-15 18:34:01 +00:00
David Sansome
02d01b1314
PLS playlists aren't really INI files - they don't follow the same rules with escaping characters, so parse them the old fashioned way.
2010-06-15 17:34:00 +00:00
David Sansome
8c7539f02e
ASF files aren't really XML - try to correct the mismatching case
2010-06-15 17:00:48 +00:00
David Sansome
25ff2bca59
Always treat text/uri-list as M3U
2010-06-15 14:52:42 +00:00
David Sansome
032374c74b
Oops, misleading comment
2010-06-15 14:25:18 +00:00
David Sansome
de630e0a9f
Run LoadLocalDirectory in another thread so it doesn't block
2010-06-15 14:24:17 +00:00
David Sansome
2c3e9276aa
Fix some of the comments on r1148
2010-06-15 13:56:41 +00:00
David Sansome
08a01d6997
The start of some code to automagically determine whether a URL is a playlist or a song, and load the songs in the playlist if it's a playlist. Still to do: timeout, forcing M3U for text/uri-list.
2010-06-15 13:24:17 +00:00
David Sansome
b3fd856e4a
Add an m4a to fileformats_test
2010-06-10 12:38:26 +00:00
David Sansome
f33604580c
Stop ASCII from voting, and add a failing test
2010-06-03 15:16:15 +00:00
John Maguire
2ad15ffec6
Code review comments for r1023
2010-06-03 13:26:46 +00:00
John Maguire
b9df2a09d4
Add voting for codecs, eg. if 3/4 tags in a file are windows-1251 then they will all be decoded with windows-1251.
2010-06-03 12:36:43 +00:00
David Sansome
6dd32da591
Make the M3U parser use the local 8-bit encoding instead of latin1. Yes I know the spec says m3us are always latin1 - you didn't expect anyone else to actually follow that did you? Fixes issue #364 .
2010-06-02 20:06:47 +00:00
David Sansome
531fa90cbd
Fix test compilation
2010-06-02 16:58:34 +00:00
David Sansome
21c990e3c7
Test for UTF8 in a Latin1 field
2010-06-02 13:11:51 +00:00
John Maguire
f4385d4545
Detect cp866 & windows-1251 in "latin1" tags.
2010-06-02 12:31:40 +00:00
John Maguire
4836b8d420
Fix XML parsers to output file URLs.
2010-05-27 22:43:07 +00:00
John Maguire
e8dab5c065
ASX support.
...
Fixes issue #325
2010-05-27 20:55:34 +00:00
David Sansome
c59a819068
Fix a warning
2010-05-25 22:19:30 +00:00
John Maguire
07b2c38690
Save support for M3U.
2010-05-23 17:00:45 +00:00
John Maguire
1b76ead951
Implement playlist saving for XSPF.
2010-05-23 16:26:32 +00:00
John Maguire
a59f5a3887
*Fix m3u parsing
...
*Add regression test
*Fix clang warnings
2010-05-23 15:35:28 +00:00
David Sansome
06c6bebe15
Support for saving .pls files
2010-05-22 21:27:51 +00:00
David Sansome
211ae65e3d
.pls parser. Fixes issue #302
2010-05-22 21:11:22 +00:00
David Sansome
c9c44ca592
Move the playlist parsers to another directory, and add a PlaylistParser class that magically uses the right parser.
2010-05-22 20:06:19 +00:00
David Sansome
1572124962
Seperate last played values for each playlist
2010-05-20 22:30:55 +00:00
David Sansome
3d8c11ff5a
Fix tests
2010-05-19 17:00:09 +00:00
David Sansome
b9438a3a90
Fix tests
2010-05-18 20:56:28 +00:00
John Maguire
6794b67a2f
Fix LibraryModel tests.
2010-05-11 19:03:29 +00:00
John Maguire
5dd0a9c35f
Autodetect weird encodings in ID3v1 tags.
...
Fixes issue #254
2010-05-11 12:03:55 +00:00
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