예제 #1
0
    def test_id3(self):
        self.assertFilesEqual('missing-ok', 'good-empty-id3', lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty', 'good-empty-id3', lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty-id3', 'good-empty-id3', lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty-id3-only', 'good-empty-id3', lambda: ApeTag.createtags('test.tag'))

        self.assertFilesEqual('good-empty-id3', 'good-simple-4', lambda: ApeTag.createtags('test.tag', {'track':'1', 'genre':'Game', 'year':'1999', 'title':'Test Title', 'artist':'Test Artist', 'album':'Test Album', 'comment':'Test Comment'}))
        self.assertFilesEqual('good-empty-id3', 'good-simple-4-uc', lambda: ApeTag.createtags('test.tag', {'Track':'1', 'Genre':'Game', 'Year':'1999', 'Title':'Test Title', 'Artist':'Test Artist', 'Album':'Test Album', 'Comment':'Test Comment'}))
        self.assertFilesEqual('good-empty-id3', 'good-simple-4-date', lambda: ApeTag.createtags('test.tag', {'track':'1', 'genre':'Game', 'date':'12/31/1999', 'title':'Test Title', 'artist':'Test Artist', 'album':'Test Album', 'comment':'Test Comment'}))
        self.assertFilesEqual('good-empty-id3', 'good-simple-4-long', lambda: ApeTag.createtags('test.tag', {'track':'1', 'genre':'Game', 'year':'1999'*2, 'title':'Test Title'*5, 'artist':'Test Artist'*5, 'album':'Test Album'*5, 'comment':'Test Comment'*5}))
예제 #2
0
    def test_id3(self):
        self.assertFilesEqual('missing-ok', 'good-empty-id3',
                              lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty', 'good-empty-id3',
                              lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty-id3', 'good-empty-id3',
                              lambda: ApeTag.createtags('test.tag'))
        self.assertFilesEqual('good-empty-id3-only', 'good-empty-id3',
                              lambda: ApeTag.createtags('test.tag'))

        self.assertFilesEqual(
            'good-empty-id3', 'good-simple-4', lambda: ApeTag.createtags(
                'test.tag', {
                    'track': '1',
                    'genre': 'Game',
                    'year': '1999',
                    'title': 'Test Title',
                    'artist': 'Test Artist',
                    'album': 'Test Album',
                    'comment': 'Test Comment'
                }))
        self.assertFilesEqual(
            'good-empty-id3', 'good-simple-4-uc', lambda: ApeTag.createtags(
                'test.tag', {
                    'Track': '1',
                    'Genre': 'Game',
                    'Year': '1999',
                    'Title': 'Test Title',
                    'Artist': 'Test Artist',
                    'Album': 'Test Album',
                    'Comment': 'Test Comment'
                }))
        self.assertFilesEqual(
            'good-empty-id3', 'good-simple-4-date', lambda: ApeTag.createtags(
                'test.tag', {
                    'track': '1',
                    'genre': 'Game',
                    'date': '12/31/1999',
                    'title': 'Test Title',
                    'artist': 'Test Artist',
                    'album': 'Test Album',
                    'comment': 'Test Comment'
                }))
        self.assertFilesEqual(
            'good-empty-id3', 'good-simple-4-long', lambda: ApeTag.createtags(
                'test.tag', {
                    'track': '1',
                    'genre': 'Game',
                    'year': '1999' * 2,
                    'title': 'Test Title' * 5,
                    'artist': 'Test Artist' * 5,
                    'album': 'Test Album' * 5,
                    'comment': 'Test Comment' * 5
                }))
예제 #3
0
    def tag_test(self, f):
        size = filesize(f)
        self.assertEqual(False, ApeTag.hasapetag(f))
        self.assertEqual(size, filesize(f))
        self.assertEqual(False, ApeTag.hasid3tag(f))
        self.assertEqual(size, filesize(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size, filesize(f))

        self.assertEqual(0, ApeTag.deleteape(f))
        self.assertEqual(size, filesize(f))
        self.assertEqual(0, ApeTag.deleteid3(f))
        self.assertEqual(size, filesize(f))
        self.assertEqual(0, ApeTag.deletetags(f))
        self.assertEqual(size, filesize(f))
        
        self.assertRaises(ApeTag.TagError, ApeTag.getrawape, f)
        self.assertRaises(ApeTag.TagError, ApeTag.getrawid3, f)
        self.assertRaises(ApeTag.TagError, ApeTag.getrawtags, f)
        self.assertRaises(ApeTag.TagError, ApeTag.printapetag, f)
        self.assertRaises(ApeTag.TagError, ApeTag.printid3tag, f)
        self.assertRaises(ApeTag.TagError, ApeTag.printtags, f)
        self.assertRaises(ApeTag.TagError, ApeTag.updateape, f)
        self.assertRaises(ApeTag.TagError, ApeTag.updateid3, f)
        self.assertRaises(ApeTag.TagError, ApeTag.updatetags, f)
        
        self.assertEqual({}, ApeTag.createape(f, {}))
        self.assertEqual({}, ApeTag.getapefields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(False, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+64, filesize(f))
        self.assertEqual(EMPTY_APE_TAG[:64], ApeTag.getrawape(f))
        self.assertEqual(0, ApeTag.deleteape(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual(EMPTY_ID3_FIELDS, ApeTag.createid3(f, {}))
        self.assertEqual(EMPTY_ID3_FIELDS, ApeTag.getid3fields(f))
        self.assertEqual(False, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+128, filesize(f))
        self.assertEqual(EMPTY_APE_TAG[64:], ApeTag.getrawid3(f))
        self.assertEqual(0, ApeTag.deleteid3(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual({}, ApeTag.createtags(f, {}))
        self.assertEqual(({},EMPTY_ID3_FIELDS), ApeTag.gettagfields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(True, ApeTag.hastags(f))
        self.assertEqual(size+192, filesize(f))
        self.assertEqual((EMPTY_APE_TAG[:64], EMPTY_APE_TAG[64:]), ApeTag.getrawtags(f))
        self.assertEqual(0, ApeTag.deletetags(f))
        self.assertEqual(size, filesize(f))
        
        
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createape(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.getapefields(f))
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createape(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(False, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+208, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG[:-128], ApeTag.getrawape(f))
        self.assertEqual(0, ApeTag.deleteape(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.createid3(f, EXAMPLE_ID3_FIELDS))
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.getid3fields(f))
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.createid3(f, EXAMPLE_ID3_FIELDS))
        self.assertEqual(False, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+128, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG[-128:], ApeTag.getrawid3(f))
        self.assertEqual(0, ApeTag.deleteid3(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createtags(f, EXAMPLE_APE_FIELDS))
        self.assertEqual((EXAMPLE_APE_FIELDS,EXAMPLE_ID3_FIELDS), ApeTag.gettagfields(f))
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createtags(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(True, ApeTag.hastags(f))
        self.assertEqual(size+336, filesize(f))
        self.assertEqual((EXAMPLE_APE_TAG[:-128], EXAMPLE_APE_TAG[-128:]), ApeTag.getrawtags(f))
        self.assertEqual(0, ApeTag.deletetags(f))
        self.assertEqual(size, filesize(f))
        
        
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createape(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(EXAMPLE_APE_FIELDS2, ApeTag.updateape(f, {'Blah':'Blah'}, ['Track', 'Title']))
        self.assertEqual(EXAMPLE_APE_FIELDS2, ApeTag.getapefields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(False, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+185, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG2[:-128], ApeTag.getrawape(f))
            
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.replaceape(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.getapefields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(False, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+208, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG[:-128], ApeTag.getrawape(f))
        self.assertEqual(EXAMPLE_APE_FIELDS2, ApeTag.updateape(f, {'Blah':'Blah'}, ['track', 'title']))
        self.assertEqual(EXAMPLE_APE_TAG2[:-128], ApeTag.getrawape(f))
        self.assertEqual(0, ApeTag.deleteape(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.createid3(f, EXAMPLE_ID3_FIELDS))
        self.assertEqual(EXAMPLE_ID3_FIELDS2, ApeTag.updateid3(f, {'Track':0, 'Title':''}))
        self.assertEqual(EXAMPLE_ID3_FIELDS2, ApeTag.getid3fields(f))
        self.assertEqual(False, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+128, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG2[-128:], ApeTag.getrawid3(f))
            
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.replaceid3(f, EXAMPLE_ID3_FIELDS))
        self.assertEqual(EXAMPLE_ID3_FIELDS, ApeTag.getid3fields(f))
        self.assertEqual(False, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(False, ApeTag.hastags(f))
        self.assertEqual(size+128, filesize(f))
        self.assertEqual(EXAMPLE_APE_TAG[-128:], ApeTag.getrawid3(f))
        self.assertEqual(0, ApeTag.deleteid3(f))
        self.assertEqual(size, filesize(f))
        
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.createtags(f, EXAMPLE_APE_FIELDS))
        self.assertEqual(EXAMPLE_APE_FIELDS2, ApeTag.updatetags(f, {'Blah':'Blah'}, ['Track', 'Title']))
        self.assertEqual((EXAMPLE_APE_FIELDS2, EXAMPLE_ID3_FIELDS2), ApeTag.gettagfields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(True, ApeTag.hastags(f))
        self.assertEqual(size+313, filesize(f))
        self.assertEqual((EXAMPLE_APE_TAG2[:-128], EXAMPLE_APE_TAG2[-128:]), ApeTag.getrawtags(f))
            
        self.assertEqual(EXAMPLE_APE_FIELDS, ApeTag.replacetags(f, EXAMPLE_APE_FIELDS))
        self.assertEqual((EXAMPLE_APE_FIELDS, EXAMPLE_ID3_FIELDS), ApeTag.gettagfields(f))
        self.assertEqual(True, ApeTag.hasapetag(f))
        self.assertEqual(True, ApeTag.hasid3tag(f))
        self.assertEqual(True, ApeTag.hastags(f))
        self.assertEqual(size+336, filesize(f))
        self.assertEqual((EXAMPLE_APE_TAG[:-128], EXAMPLE_APE_TAG[-128:]), ApeTag.getrawtags(f))
        self.assertEqual(EXAMPLE_APE_FIELDS2, ApeTag.updatetags(f, {'Blah':'Blah'}, ['track', 'title']))
        self.assertEqual((EXAMPLE_APE_TAG2[:-128], EXAMPLE_APE_TAG2[-128:]), ApeTag.getrawtags(f))
        self.assertEqual(0, ApeTag.deletetags(f))
        self.assertEqual(size, filesize(f))