1# -*- coding: utf-8 -*-
2
3import os
4import warnings
5
6from tests import TestCase, DATA_DIR
7
8with warnings.catch_warnings():
9    warnings.simplefilter("ignore", DeprecationWarning)
10    from mutagen.m4a import (M4A, M4ATags, M4AInfo, delete, M4ACover,
11                             error)
12
13
14class TM4ADeprecation(TestCase):
15
16    SOME_FILE = os.path.join(DATA_DIR, "no-tags.m4a")
17
18    def test_fail(self):
19        self.assertRaises(error, M4A, self.SOME_FILE)
20        self.assertRaises(error, delete, self.SOME_FILE)
21        self.assertRaises(error, delete, self.SOME_FILE)
22
23        M4AInfo  # pyflakes
24        with warnings.catch_warnings():
25            warnings.simplefilter("ignore", DeprecationWarning)
26            a = M4A()
27        a.add_tags()
28        self.assertEqual(a.tags.items(), [])
29
30        some_cover = M4ACover(b"foo", M4ACover.FORMAT_JPEG)
31        self.assertEqual(some_cover.imageformat, M4ACover.FORMAT_JPEG)
32
33        tags = M4ATags()
34        self.assertRaises(error, tags.save, self.SOME_FILE)
35