class TFileSelector(TestCase): def setUp(self): quodlibet.config.init() self.fs = FileSelector(initial="/dev", filter=(lambda s: s in ["/dev/null", "/dev/zero"])) self.fs.connect("changed", self.changed) self.expected = [] self.fs.rescan() def changed(self, fs, selection): self.selection = selection model, rows = selection.get_selected_rows() files = [model[row][0] for row in rows] files.sort() self.expected.sort() self.assertEqual(files, self.expected) self.expected = None def test_select(self): self.expected = ["/dev/null", "/dev/zero"] self.selection.select_all() self.failUnless(self.expected is None) def tearDown(self): self.fs.destroy() quodlibet.config.quit()
class TFileSelector(TestCase): def setUp(self): quodlibet.config.init() self.ROOTS = [mkdtemp(), mkdtemp()] self.INITIAL = self.ROOTS[0] self.PATHS = [ os.path.join(self.ROOTS[0], "a"), os.path.join(self.ROOTS[0], "b"), ] for path in self.PATHS: open(path, "wb").close() self.fs = FileSelector( initial=self.INITIAL, filter=(lambda s: s in self.PATHS), folders=self.ROOTS) self.fs.connect('changed', self._changed) self.files = None self.fs.rescan() def tearDown(self): self.fs.destroy() quodlibet.config.quit() for file_ in self.PATHS: os.unlink(file_) for dir_ in self.ROOTS: os.rmdir(dir_) def _changed(self, fs, selection): self.selection = selection self.files = fs.get_selected_paths() self.files.sort() def test_select(self): expected = self.PATHS expected.sort() self.selection.select_all() self.assertEqual(self.files, expected) def test_select_rescan(self): expected = self.PATHS expected.sort() self.selection.select_all() self.assertEqual(self.files, expected) files_prev = self.fs.get_selected_paths() self.fs.rescan() self.assertEqual(self.files, expected) self.assertEqual(self.files, files_prev) def test_main(self): MainFileSelector()
class TFileSelector(TestCase): def setUp(self): quodlibet.config.init() self.ROOTS = [mkdtemp(), mkdtemp()] self.INITIAL = self.ROOTS[0] self.PATHS = [ os.path.join(self.ROOTS[0], "a"), os.path.join(self.ROOTS[0], "b"), ] for path in self.PATHS: open(path, "wb").close() self.fs = FileSelector(initial=self.INITIAL, filter=(lambda s: s in self.PATHS), folders=self.ROOTS) self.fs.connect('changed', self._changed) self.files = None self.fs.rescan() def tearDown(self): self.fs.destroy() quodlibet.config.quit() for file_ in self.PATHS: os.unlink(file_) for dir_ in self.ROOTS: os.rmdir(dir_) def _changed(self, fs, selection): self.selection = selection self.files = fs.get_selected_paths() self.files.sort() def test_select(self): expected = self.PATHS expected.sort() self.selection.select_all() self.assertEqual(self.files, expected) def test_select_rescan(self): expected = self.PATHS expected.sort() self.selection.select_all() self.assertEqual(self.files, expected) files_prev = self.fs.get_selected_paths() self.fs.rescan() self.assertEqual(self.files, expected) self.assertEqual(self.files, files_prev) def test_main(self): MainFileSelector()