]> diplodocus.org Git - flac-archive/blob - test/testtags.py
From Martin Michlmayr:
[flac-archive] / test / testtags.py
1 #! /usr/bin/python2.4
2
3 import cStringIO, sys
4
5 from unittest import TestCase, main
6
7 sys.path.insert(0, '.')
8 from flac_archive.tags import Tags
9
10 _tags1 = """ARTIST=Basil
11 ALBUM=The Rat
12 DATE=1994
13 TITLE[1]=Song 1
14 ARTIST[1]=Manuel
15 TITLE[2]=Song 2
16 TITLE[3]=Song 3
17 PART[3]=Part the First
18 """
19
20 class TagsTestCase(TestCase):
21 def testBasic(self):
22 tags = Tags()
23 tags.load(cStringIO.StringIO(_tags1))
24 self.assertEquals(tags.gets('ARTIST'), 'Basil')
25 self.assertEquals(tags.gets('ARTIST', 1), 'Basil\nManuel')
26 self.assertEquals(tags.gets('ARTIST', 1, ' foo ' ), 'Basil foo Manuel')
27 self.assertEquals(tags.gets('ARTIST', 2), 'Basil')
28
29 self.assertEquals(sorted(tags.all()),
30 sorted(_tags1.strip().split('\n')))
31 self.assertEquals(sorted(tags.track(1)),
32 ['ALBUM=The Rat', 'ARTIST=Basil', 'ARTIST=Manuel',
33 'DATE=1994', 'TITLE=Song 1', 'TRACKNUMBER=1'])
34 self.assertEquals(sorted(tags.track(3)),
35 ['ALBUM=The Rat', 'ARTIST=Basil', 'DATE=1994',
36 'PART=Part the First', 'TITLE=Song 3',
37 'TRACKNUMBER=3'])
38
39 if __name__ == '__main__':
40 main()