class TOperonImageClear(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageClear, self).setUp() fd, self.fcover = mkstemp(".wma") os.close(fd) shutil.copy(os.path.join(DATA_DIR, 'test-2.wma'), self.fcover) self.cover = MusicFile(self.fcover) def tearDown(self): os.unlink(self.fcover) super(TOperonImageClear, self).tearDown() def test_misc(self): self.check_true(["image-clear", "-h"], True, False) self.check_true(["image-clear", self.fcover], False, False) self.check_false(["image-clear"], False, True) def test_not_supported(self): path = os.path.join(DATA_DIR, 'test.mid') out, err = self.check_false(["image-clear", path], False, True) self.assertTrue("supported" in err) def test_clear(self): images = self.cover.get_images() self.assertEqual(len(images), 1) self.check_true(["image-clear", self.fcover], False, False) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 0)
class TOperonImageClear(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageClear, self).setUp() fd, self.fcover = mkstemp(".wma") os.close(fd) shutil.copy(os.path.join(DATA_DIR, 'test-2.wma'), self.fcover) self.cover = MusicFile(self.fcover) def tearDown(self): os.unlink(self.fcover) super(TOperonImageClear, self).tearDown() def test_misc(self): self.check_true(["image-clear", "-h"], True, False) self.check_true(["image-clear", self.fcover], False, False) self.check_false(["image-clear"], False, True) def test_not_supported(self): path = os.path.join(DATA_DIR, 'test.mid') out, err = self.check_false(["image-clear", path], False, True) self.assertTrue("supported" in err) def test_clear(self): images = self.cover.get_images() self.assertEqual(len(images), 1) self.check_true(["image-clear", self.fcover], False, False) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 0)
class TOperonImageSet(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageSet, self).setUp() from gi.repository import GdkPixbuf h, self.filename = mkstemp(".png") os.close(h) wide = GdkPixbuf.Pixbuf.new(GdkPixbuf.Colorspace.RGB, True, 8, 150, 10) wide.savev(self.filename, "png", [], []) self.fcover = get_temp_copy(os.path.join(DATA_DIR, 'test-2.wma')) self.cover = MusicFile(self.fcover) self.fcover2 = get_temp_copy(os.path.join(DATA_DIR, 'test-2.wma')) self.cover2 = MusicFile(self.fcover2) def tearDown(self): os.unlink(self.fcover) os.unlink(self.filename) super(TOperonImageSet, self).tearDown() def test_misc(self): self.check_true(["image-set", "-h"], True, False) self.check_false(["image-set", self.fcover], False, True) self.check_false(["image-set"], False, True) self.check_false(["image-set", self.filename], False, True) def test_not_supported(self): path = os.path.join(DATA_DIR, 'test.mid') out, err = self.check_false(["image-set", self.filename, path], False, True) self.assertTrue("supported" in err) def test_set(self): self.check_true(["image-set", self.filename, self.fcover], False, False) self.check_true(["-v", "image-set", self.filename, self.fcover], False, True) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 1) with open(self.filename, "rb") as h: self.assertEqual(h.read(), images[0].read()) def test_set_two(self): self.check_true( ["image-set", self.filename, self.fcover, self.fcover2], False, False) with open(self.filename, "rb") as h: image_data = h.read() for audio in [self.cover, self.cover2]: audio.reload() image = audio.get_images()[0] self.assertEqual(image.read(), image_data)
class TOperonImageClear(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageClear, self).setUp() self.fcover = get_temp_copy(get_data_path('test-2.wma')) self.cover = MusicFile(self.fcover) def tearDown(self): os.unlink(self.fcover) super(TOperonImageClear, self).tearDown() def test_misc(self): self.check_true(["image-clear", "-h"], True, False) self.check_true(["image-clear", self.fcover], False, False) self.check_false(["image-clear"], False, True) def test_not_supported(self): path = get_data_path('test.mid') out, err = self.check_false(["image-clear", path], False, True) self.assertTrue("supported" in err) def test_clear(self): images = self.cover.get_images() self.assertEqual(len(images), 1) self.check_true(["image-clear", self.fcover], False, False) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 0)
class TOperonImageClear(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageClear, self).setUp() self.fcover = get_temp_copy(get_data_path('test-2.wma')) self.cover = MusicFile(self.fcover) def tearDown(self): os.unlink(self.fcover) super(TOperonImageClear, self).tearDown() def test_misc(self): self.check_true(["image-clear", "-h"], True, False) self.check_true(["image-clear", self.fcover], False, False) self.check_false(["image-clear"], False, True) def test_not_supported(self): path = get_data_path('test.mid') out, err = self.check_false(["image-clear", path], False, True) self.assertTrue("supported" in err) def test_clear(self): images = self.cover.get_images() self.assertEqual(len(images), 1) self.check_true(["image-clear", self.fcover], False, False) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 0)
class TOperonImageSet(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageSet, self).setUp() from gi.repository import GdkPixbuf h, self.filename = mkstemp(".png") os.close(h) wide = GdkPixbuf.Pixbuf.new(GdkPixbuf.Colorspace.RGB, True, 8, 150, 10) wide.savev(self.filename, "png", [], []) self.fcover = get_temp_copy(get_data_path('test-2.wma')) self.cover = MusicFile(self.fcover) self.fcover2 = get_temp_copy(get_data_path('test-2.wma')) self.cover2 = MusicFile(self.fcover2) def tearDown(self): os.unlink(self.fcover) os.unlink(self.filename) super(TOperonImageSet, self).tearDown() def test_misc(self): self.check_true(["image-set", "-h"], True, False) self.check_false(["image-set", self.fcover], False, True) self.check_false(["image-set"], False, True) self.check_false(["image-set", self.filename], False, True) def test_not_supported(self): path = get_data_path('test.mid') out, err = self.check_false( ["image-set", self.filename, path], False, True) self.assertTrue("supported" in err) def test_set(self): self.check_true(["image-set", self.filename, self.fcover], False, False) self.check_true(["-v", "image-set", self.filename, self.fcover], False, True) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 1) with open(self.filename, "rb") as h: self.assertEqual(h.read(), images[0].read()) def test_set_two(self): self.check_true( ["image-set", self.filename, self.fcover, self.fcover2], False, False) with open(self.filename, "rb") as h: image_data = h.read() for audio in [self.cover, self.cover2]: audio.reload() image = audio.get_images()[0] self.assertEqual(image.read(), image_data)
def test_reload_externally_modified(self): config.set("editing", "save_to_songs", True) fn = self.quux("~filename") + ".mp3" shutil.copy(get_data_path('silence-44-s.mp3'), fn) orig = MusicFile(fn) copy = MusicFile(fn) orig["~#rating"] = SOME_RATING copy["~#rating"] = ANOTHER_RATING orig.write() orig.reload() copy.reload() # should pick up the change to the file assert orig("~#rating") == SOME_RATING, "reloading failed" assert copy( "~#rating") == SOME_RATING, "should have picked up external change"
class TOperonImageSet(TOperonBase): # <image-file> <file> [<files>] def setUp(self): super(TOperonImageSet, self).setUp() from gi.repository import GdkPixbuf h, self.filename = mkstemp(".png") os.close(h) wide = GdkPixbuf.Pixbuf.new(GdkPixbuf.Colorspace.RGB, True, 8, 150, 10) wide.savev(self.filename, "png", [], []) h, self.fcover = mkstemp(".wma") os.close(h) shutil.copy(os.path.join(DATA_DIR, 'test-2.wma'), self.fcover) self.cover = MusicFile(self.fcover) def tearDown(self): os.unlink(self.fcover) os.unlink(self.filename) super(TOperonImageSet, self).tearDown() def test_misc(self): self.check_true(["image-set", "-h"], True, False) self.check_false(["image-set", self.fcover], False, True) self.check_false(["image-set"], False, True) self.check_false(["image-set", self.filename], False, True) def test_not_supported(self): path = os.path.join(DATA_DIR, 'test.mid') out, err = self.check_false( ["image-set", self.filename, path], False, True) self.assertTrue("supported" in err) def test_set(self): self.check_true(["image-set", self.filename, self.fcover], False, False) self.check_true(["-v", "image-set", self.filename, self.fcover], False, True) self.cover.reload() images = self.cover.get_images() self.assertEqual(len(images), 1) with open(self.filename, "rb") as h: self.assertEqual(h.read(), images[0].file.read())
def test_reload(self): audio = MusicFile(os.path.join(DATA_DIR, 'silence-44-s.mp3')) audio["title"] = u"foo" audio.reload() self.assertNotEqual(audio.get("title"), u"foo")
def test_reload(self): audio = MusicFile(get_data_path('silence-44-s.mp3')) audio["title"] = u"foo" audio.reload() self.assertNotEqual(audio.get("title"), u"foo")
def test_reload(self): audio = MusicFile(os.path.join(DATA_DIR, 'silence-44-s.mp3')) audio["title"] = u"foo" audio.reload() self.assertNotEqual(audio.get("title"), u"foo")
def test_reload(self): audio = MusicFile(get_data_path('silence-44-s.mp3')) audio["title"] = u"foo" audio.reload() self.assertNotEqual(audio.get("title"), u"foo")