1
from tests import TestCase, add
3
from quodlibet import config
4
from quodlibet import widgets
6
from quodlibet.browsers.paned import PanedBrowser
7
from quodlibet.formats._audio import AudioFile
8
from quodlibet.library import SongLibrary
11
AudioFile({"title": "one", "artist": "piman", "~filename": "/dev/null"}),
12
AudioFile({"title": "two", "artist": "mu", "~filename": "/dev/zero"}),
13
AudioFile({"title": "three", "artist": "boris", "~filename": "/bin/ls"})
17
class TPanedBrowser(TestCase):
22
config.set("browsers", "panes", "artist")
23
library = SongLibrary()
24
PanedBrowser.init(library)
28
self.bar = self.Bar(library, False)
30
def test_can_filter(self):
31
for key in ["foo", "title", "fake~key", "~woobar", "~#huh"]:
32
self.failIf(self.bar.can_filter(key))
33
self.failUnless(self.bar.can_filter("artist"))
35
def test_dynamic(self):
36
self.failUnless(self.bar.dynamic(SONGS[0]))
38
def test_filter_value(self):
39
self.expected = [SONGS[0]]
40
self.bar.filter("artist", ["boris"])
42
def test_filter_notvalue(self):
43
self.expected = SONGS[1:3]
44
self.bar.filter("artist", ["notvalue", "mu", "piman"])