def run(self,*argv): from trashcli.trash import FileSystemReader file_reader = FileSystemReader() file_reader.list_volumes = lambda: self.volumes ListCmd( out = self.stdout, err = self.stderr, environ = self.environ, getuid = self.fake_getuid, file_reader = file_reader, ).run(*argv)
def run(self, *argv): from trashcli.trash import FileSystemReader file_reader = FileSystemReader() file_reader.list_volumes = lambda: self.volumes ListCmd( out=self.stdout, err=self.stderr, environ=self.environ, getuid=self.fake_getuid, file_reader=file_reader, list_volumes=lambda: self.volumes, ).run(*argv)
def test_help_output(self): err, out = StringIO(), StringIO() cmd = EmptyCmd( err=err, out=out, environ={}, list_volumes=no_volumes, now=None, file_reader=FileSystemReader(), getuid=None, file_remover=None, version=None, ) cmd.run('trash-empty', '--help') assert_equals( out.getvalue(), dedent("""\ Usage: trash-empty [days] Purge trashed files. Options: --version show program's version number and exit -h, --help show this help message and exit Report bugs to https://github.com/andreafrancia/trash-cli/issues """))
def setUp(self): self.err, self.out = StringIO(), StringIO() self.cmd = EmptyCmd( err = self.err, out = self.out, environ = {}, list_volumes = no_volumes, now = None, file_reader = FileSystemReader(), getuid = None, file_remover = None, version = None, )
def setUp(self): require_empty_dir('topdir') self.empty=EmptyCmd( out = StringIO(), err = StringIO(), environ = {}, list_volumes = lambda: ['topdir'], now = None, file_reader = FileSystemReader(), getuid = lambda: 123, file_remover = FileRemover(), version = None, )
def test_it_print_version(self): err, out = StringIO(), StringIO() cmd = EmptyCmd(err = err, out = out, environ = {}, list_volumes = no_volumes, now = None, file_reader = FileSystemReader(), getuid = None, file_remover = None, version = '1.2.3', ) cmd.run('trash-empty', '--version') assert_equals(out.getvalue(), dedent("""\ trash-empty 1.2.3 """))
def setUp(self): require_empty_dir('XDG_DATA_HOME') self.xdg_data_home = 'XDG_DATA_HOME' self.environ = {'XDG_DATA_HOME':'XDG_DATA_HOME'} self.now = MagicMock(side_effect=RuntimeError) self.empty_cmd=EmptyCmd( out = StringIO(), err = StringIO(), environ = self.environ, list_volumes = no_volumes, now = self.now, file_reader = FileSystemReader(), getuid = None, file_remover = FileRemover(), version = None, )
def setUp(self): require_empty_dir('XDG_DATA_HOME') self.info_dir_path = 'XDG_DATA_HOME/Trash/info' self.files_dir_path = 'XDG_DATA_HOME/Trash/files' self.environ = {'XDG_DATA_HOME':'XDG_DATA_HOME'} now = MagicMock(side_effect=RuntimeError) self.empty_cmd = EmptyCmd( out = StringIO(), err = StringIO(), environ = self.environ, list_volumes = no_volumes, now = now, file_reader = FileSystemReader(), getuid = None, file_remover = FileRemover(), version = None, )
def test_trash_empty_last_line(self): from trashcli.empty import EmptyCmd from trashcli.trash import FileSystemReader cmd = EmptyCmd( self.out, StringIO(), [], lambda: [], now=None, file_reader=FileSystemReader(), getuid=None, file_remover=None, version=None, ) cmd.run('', '--help') self.assert_last_line_of_output_is( 'Report bugs to https://github.com/andreafrancia/trash-cli/issues')
def main(argv=sys.argv, stdout=sys.stdout, stderr=sys.stderr, environ=os.environ): from trashcli.list_mount_points import os_mount_points from datetime import datetime from trashcli.trash import FileSystemReader from trashcli.fs import FileRemover from trashcli.trash import version return EmptyCmd( out=stdout, err=stderr, environ=environ, list_volumes=os_mount_points, now=datetime.now, file_reader=FileSystemReader(), getuid=os.getuid, file_remover=FileRemover(), version=version, ).run(*argv)
run('chmod +t sandbox/sticky') assert has_sticky_bit('sandbox/sticky') def test_has_sticky_bit_returns_false(self): having_file("sandbox/non-sticky") run('chmod -t sandbox/non-sticky') assert not has_sticky_bit("sandbox/non-sticky") def setUp(self): require_empty_dir('sandbox') is_sticky_dir = FileSystemReader().is_sticky_dir class Test_is_sticky_dir: def test_dir_non_sticky(self): mkdirs('sandbox/dir') assert not is_sticky_dir('sandbox/dir') def test_dir_sticky(self): mkdirs('sandbox/dir') set_sticky_bit('sandbox/dir') assert is_sticky_dir('sandbox/dir') def test_non_dir_but_sticky(self): having_file('sandbox/dir') set_sticky_bit('sandbox/dir')