当前位置: 首页>>代码示例>>Python>>正文


Python AudioFile.sanitize方法代码示例

本文整理汇总了Python中quodlibet.formats.AudioFile.sanitize方法的典型用法代码示例。如果您正苦于以下问题:Python AudioFile.sanitize方法的具体用法?Python AudioFile.sanitize怎么用?Python AudioFile.sanitize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在quodlibet.formats.AudioFile的用法示例。


在下文中一共展示了AudioFile.sanitize方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: TRatingsMenuItem

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
class TRatingsMenuItem(TestCase):

    def setUp(self):
        config.RATINGS = config.HardCodedRatingsPrefs()
        self.failUnlessEqual(config.RATINGS.number, NUM_RATINGS)
        self.library = SongLibrary()
        self.library.librarian = SongLibrarian()
        self.af = AudioFile({"~filename": fsnative(u"/foo"), "~#rating": 1.0})
        self.af.sanitize()
        self.rmi = RatingsMenuItem([self.af], self.library)

    def tearDown(self):
        self.rmi.destroy()
        self.library.destroy()
        self.library.librarian.destroy()

    def test_menuitem_children(self):
        children = [mi for mi in self.rmi.get_submenu().get_children()
                    if isinstance(mi, Gtk.CheckMenuItem)]
        self.failUnlessEqual(len(children), NUM_RATINGS + 1)
        highest = children[-1]
        self.failUnlessEqual(highest.get_active(), True)
        self.failUnlessEqual(children[1].get_active(), False)

    def test_set_remove_rating(self):
        self.rmi.set_rating(0.5, [self.af], self.library)
        self.failUnless(self.af.has_rating)
        self.failUnlessEqual(self.af('~#rating'), 0.5)
        self.rmi.remove_rating([self.af], self.library)
        self.failIf(self.af.has_rating)
开发者ID:hongquan,项目名称:quodlibet,代码行数:32,代码来源:test_qltk_ratingsmenu.py

示例2: test

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
    def test(self):
        lib = SongFileLibrary()

        with temp_filename() as song_fn:
            song = AudioFile({"~filename": song_fn})
            song.sanitize()
            lib.add([song])

            with temp_filename() as xml_fn:
                with open(xml_fn, "wb") as h:
                    x = get_example_xml(song("~filename"), 1, 1371802107)
                    h.write(x)

                handler = self.mod.RBDBContentHandler(lib)
                xml.sax.parse(xml_fn, handler)

                self.assertEqual(song("~#rating"), 0.2)
                self.assertEqual(song("~#lastplayed"), 1371802107)
                self.assertEqual(song("~#playcount"), 1)

                with open(xml_fn, "wb") as h:
                    x = get_example_xml(song("~filename"), 2, 1371802107 - 1)
                    h.write(x)

                handler = self.mod.RBDBContentHandler(lib)
                xml.sax.parse(xml_fn, handler)

                self.assertEqual(song("~#rating"), 0.4)
                self.assertEqual(song("~#lastplayed"), 1371802107)
开发者ID:bernd-wechner,项目名称:quodlibet,代码行数:31,代码来源:test_rbimport.py

示例3: test_masked_handling

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
    def test_masked_handling(self):
        if os.name == "nt":
            # FIXME: masking isn't properly implemented on Windows
            return
        # playlists can contain songs and paths for masked handling..
        lib = FileLibrary("foobar")
        with self.wrap("playlist", lib) as pl:
            song = Fakesong({"date": "2038", "~filename": fsnative(u"/fake")})
            song.sanitize()
            lib.add([song])

            # mask and update
            lib.mask("/")
            pl.append(song)
            pl.remove_songs([song])
            self.failUnless("/fake" in pl)

            pl.extend(self.TWO_SONGS)

            # check if collections can handle the mix
            self.failUnlessEqual(pl("date"), "2038")

            # unmask and update
            lib.unmask("/")
            pl.add_songs(["/fake"], lib)
            self.failUnless(song in pl)

            lib.destroy()
开发者ID:bp0,项目名称:quodlibet,代码行数:30,代码来源:test_util_collection.py

示例4: test_msic

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_msic(self):
     with realized(self.b):
         self.b.activate()
         self.b.status_text(1000)
         self.b.status_text(1)
         song = AudioFile({"~filename": dummy_path(u"/fake")})
         song.sanitize()
         self.b.scroll(song)
开发者ID:bernd-wechner,项目名称:quodlibet,代码行数:10,代码来源:test_browsers__base.py

示例5: test_msic

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_msic(self):
     with realized(self.b):
         self.b.activate()
         self.b.statusbar(1000)
         self.b.statusbar(1)
         song = AudioFile({"~filename": fsnative(u"/fake")})
         song.sanitize()
         self.b.scroll(song)
开发者ID:akdor1154,项目名称:quodlibet,代码行数:10,代码来源:test_browsers__base.py

示例6: setUp

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def setUp(self):
     config.init()
     player = NullPlayer()
     song = AudioFile()
     song.bookmarks = [(10, "bla")]
     song.sanitize(fsnative(u"/"))
     player.song = song
     self.player = player
     self.library = SongLibrary()
开发者ID:LudoBike,项目名称:quodlibet,代码行数:11,代码来源:test_qltk_bookmarks.py

示例7: _print_playing

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
def _print_playing(app, fstring="<artist~album~tracknumber~title>"):
    from quodlibet.formats import AudioFile
    from quodlibet.pattern import Pattern

    song = app.player.info
    if song is None:
        song = AudioFile({"~filename": fsnative(u"/")})
        song.sanitize()

    return Pattern(fstring).format(song) + "\n"
开发者ID:piotrdrag,项目名称:quodlibet,代码行数:12,代码来源:commands.py

示例8: test_sanitize

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_sanitize(self):
     q = AudioFile(quux)
     b = AudioFile(bar_1_1)
     q.sanitize()
     b.pop("~filename")
     self.failUnlessRaises(ValueError, b.sanitize)
     n = AudioFile({"artist": u"foo\0bar", "title": u"baz\0", "~filename": fsnative(u"whatever")})
     n.sanitize()
     self.failUnlessEqual(n["artist"], "foo\nbar")
     self.failUnlessEqual(n["title"], "baz")
开发者ID:mistotebe,项目名称:quodlibet,代码行数:12,代码来源:test_formats__audio.py

示例9: test_menuitem

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_menuitem(self):
     library = SongLibrary()
     library.librarian = SongLibrarian()
     a = AudioFile({"~filename": fsnative(u"/foo")})
     a.sanitize()
     x = RatingsMenuItem([a], library)
     x.set_rating(0, [a], library)
     x.destroy()
     library.destroy()
     library.librarian.destroy()
开发者ID:bossjones,项目名称:quodlibet,代码行数:12,代码来源:test_qltk_ratingsmenu.py

示例10: getline

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def getline(key, value):
     song = AudioFile({"~filename": "/dev/null"})
     song.sanitize()
     song[key] = value
     lines = format_tags(song).splitlines()
     if not lines:
         return ""
     if len(lines) == 1:
         return lines[0]
     # hackery since title defaults to the filename..
     for l in lines:
         if not l.startswith("Title"):
             return l
开发者ID:mistotebe,项目名称:quodlibet,代码行数:15,代码来源:test_mpdserver.py

示例11: test_lyrics_from_file

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_lyrics_from_file(self):
     with temp_filename() as filename:
         af = AudioFile(artist='Motörhead', title='this: again')
         af.sanitize(filename)
         lyrics = "blah!\nblasé 😬\n"
         lyrics_dir = os.path.dirname(af.lyric_filename)
         mkdir(lyrics_dir)
         with io.open(af.lyric_filename, "w", encoding='utf-8') as lf:
             lf.write(text_type(lyrics))
         self.failUnlessEqual(af("~lyrics").splitlines(),
                              lyrics.splitlines())
         os.remove(af.lyric_filename)
         os.rmdir(lyrics_dir)
开发者ID:Muges,项目名称:quodlibet,代码行数:15,代码来源:test_formats__audio.py

示例12: test_album_key

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_album_key(self):
     album_key_tests = [
         ({}, ("", "", "")),
         ({"album": "foo"}, (("foo",), "", "")),
         ({"labelid": "foo"}, ("", "", "foo")),
         ({"musicbrainz_albumid": "foo"}, ("", "", "foo")),
         ({"album": "foo", "labelid": "bar"}, (("foo",), "", "bar")),
         ({"album": "foo", "labelid": "bar", "musicbrainz_albumid": "quux"}, (("foo",), "", "bar")),
         ({"albumartist": "a"}, ("", ("a",), "")),
     ]
     for tags, expected in album_key_tests:
         afile = AudioFile(**tags)
         afile.sanitize(fsnative(u"/dir/fn"))
         self.failUnlessEqual(afile.album_key, expected)
开发者ID:mistotebe,项目名称:quodlibet,代码行数:16,代码来源:test_formats__audio.py

示例13: test_album_key

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
 def test_album_key(self):
     album_key_tests = [
         ({}, ((), (), '')),
         ({'album': 'foo'}, (('foo',), (), '')),
         ({'labelid': 'foo'}, ((), (), 'foo')),
         ({'musicbrainz_albumid': 'foo'}, ((), (), 'foo')),
         ({'album': 'foo', 'labelid': 'bar'}, (('foo',), (), 'bar')),
         ({'album': 'foo', 'labelid': 'bar', 'musicbrainz_albumid': 'quux'},
             (('foo',), (), 'bar')),
         ({'albumartist': 'a'}, ((), ('a',), '')),
         ]
     for tags, expected in album_key_tests:
         afile = AudioFile(**tags)
         afile.sanitize(fsnative(u'/dir/fn'))
         self.failUnlessEqual(afile.album_key, expected)
开发者ID:pensadorramm,项目名称:quodlibet,代码行数:17,代码来源:test_formats__audio.py

示例14: test_header_menu

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
    def test_header_menu(self):
        from quodlibet import browsers
        from quodlibet.library import SongLibrary, SongLibrarian

        song = AudioFile({"~filename": fsnative(u"/dev/null")})
        song.sanitize()
        self.songlist.set_songs([song])

        library = SongLibrary()
        library.librarian = SongLibrarian()
        browser = browsers.get("SearchBar")(library)

        self.songlist.set_column_headers(["foo"])

        self.assertFalse(self.songlist.Menu("foo", browser, library))
        sel = self.songlist.get_selection()
        sel.select_all()
        self.assertTrue(self.songlist.Menu("foo", browser, library))
开发者ID:ZDBioHazard,项目名称:quodlibet,代码行数:20,代码来源:test_qltk_songlist.py

示例15: AudioFile

# 需要导入模块: from quodlibet.formats import AudioFile [as 别名]
# 或者: from quodlibet.formats.AudioFile import sanitize [as 别名]
from tests import skipUnless
from tests.plugin import PluginTestCase, init_fake_app, destroy_fake_app

from quodlibet.formats import AudioFile
from quodlibet import config
from quodlibet import app
from quodlibet.compat import iteritems


A1 = AudioFile(
        {'album': u'greatness', 'title': 'excellent', 'artist': 'fooman\ngo',
         '~#lastplayed': 1234, '~#rating': 0.75,
         '~filename': fsnative(u'/foo a/b'),
         "~#length": 123, "albumartist": "aa\nbb", "bpm": "123.5",
         "tracknumber": "6/7"})
A1.sanitize()

A2 = AudioFile(
        {'album': u'greatness2\ufffe', 'title': 'superlative',
         'artist': u'fooman\ufffe', '~#lastplayed': 1234, '~#rating': 1.0,
         '~filename': fsnative(u'/foo')})
A2.sanitize()

MAX_TIME = 3


@skipUnless(dbus, "no dbus")
class TMPRIS(PluginTestCase):

    def setUp(self):
        self.plugin = self.plugins["mpris"].cls
开发者ID:ZDBioHazard,项目名称:quodlibet,代码行数:33,代码来源:test_mpris.py


注:本文中的quodlibet.formats.AudioFile.sanitize方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。