Example #1
0
    def do_thing(self, expectSuccess):
        def get_stat(v):
            return os.stat(os.path.join(self.temp_dir, 'import', *
                                        v)).st_mode & 0o777

        self.importer = self.create_importer()
        typs = ['file', 'dir']
        self.exp_perms = {
            True: {
                k: convert_perm(self.config['permissions'][k].get())
                for k in typs
            },
            False: {
                k: get_stat(v)
                for (k, v) in zip(typs, (('album 0', 'track 0.mp3'), ()))
            }
        }

        self.importer.run()
        item = self.lib.items().get()

        self.assertPerms(item.path, 'file', expectSuccess)

        for path in dirs_in_library(self.lib.directory, item.path):
            self.assertPerms(path, 'dir', expectSuccess)
Example #2
0
    def do_thing(self, expect_success):
        if platform.system() == 'Windows':
            self.skipTest('permissions not available on Windows')

        def get_stat(v):
            return os.stat(os.path.join(self.temp_dir, b'import', *
                                        v)).st_mode & 0o777

        self.importer = self.create_importer()
        typs = ['file', 'dir']

        track_file = (b'album 0', b'track 0.mp3')
        self.exp_perms = {
            True: {
                k: convert_perm(self.config['permissions'][k].get())
                for k in typs
            },
            False: {k: get_stat(v)
                    for (k, v) in zip(typs, (track_file, ()))}
        }

        self.importer.run()
        item = self.lib.items().get()

        self.assertPerms(item.path, 'file', expect_success)

        for path in dirs_in_library(self.lib.directory, item.path):
            self.assertPerms(path, 'dir', expect_success)
Example #3
0
    def do_thing(self, expect_success):
        def get_stat(v):
            return os.stat(
                os.path.join(self.temp_dir, 'import', *v)).st_mode & 0o777
        self.importer = self.create_importer()
        typs = ['file', 'dir']
        self.exp_perms = {
            True: {k: convert_perm(self.config['permissions'][k].get())
                   for k in typs},
            False: {k: get_stat(v)
                    for (k, v) in zip(typs, (('album 0', 'track 0.mp3'), ()))}}

        self.importer.run()
        item = self.lib.items().get()

        self.assertPerms(item.path, 'file', expect_success)

        for path in dirs_in_library(self.lib.directory, item.path):
            self.assertPerms(path, 'dir', expect_success)
Example #4
0
    def test_permissions_on_album_imported(self):
        self.importer = self.create_importer()
        self.importer.run()
        item = self.lib.items().get()

        file_perm = self.config['permissions']['file'].get()
        file_perm = convert_perm(file_perm)

        dir_perm = self.config['permissions']['dir'].get()
        dir_perm = convert_perm(dir_perm)

        music_dirs = dirs_in_library(self.lib.directory, item.path)

        self.assertTrue(check_permissions(item.path, file_perm))
        self.assertFalse(check_permissions(item.path, convert_perm(644)))

        for path in music_dirs:
            self.assertTrue(check_permissions(path, dir_perm))
            self.assertFalse(check_permissions(path, convert_perm(644)))
Example #5
0
    def test_permissions_on_album_imported(self):
        self.importer = self.create_importer()
        self.importer.run()
        item = self.lib.items().get()

        file_perm = self.config['permissions']['file'].get()
        file_perm = convert_perm(file_perm)

        dir_perm = self.config['permissions']['dir'].get()
        dir_perm = convert_perm(dir_perm)

        music_dirs = dirs_in_library(self.lib.directory, item.path)

        self.assertTrue(check_permissions(item.path, file_perm))
        self.assertFalse(check_permissions(item.path, convert_perm(644)))

        for path in music_dirs:
            self.assertTrue(check_permissions(path, dir_perm))
            self.assertFalse(check_permissions(path, convert_perm(644)))
Example #6
0
    def do_thing(self, expect_success):
        if platform.system() == 'Windows':
            self.skipTest('permissions not available on Windows')

        def get_stat(v):
            return os.stat(
                os.path.join(self.temp_dir, b'import', *v)).st_mode & 0o777
        self.importer = self.create_importer()
        typs = ['file', 'dir']

        track_file = (b'album 0', b'track 0.mp3')
        self.exp_perms = {
            True: {k: convert_perm(self.config['permissions'][k].get())
                   for k in typs},
            False: {k: get_stat(v) for (k, v) in zip(typs, (track_file, ()))}
        }

        self.importer.run()
        item = self.lib.items().get()

        self.assertPerms(item.path, 'file', expect_success)

        for path in dirs_in_library(self.lib.directory, item.path):
            self.assertPerms(path, 'dir', expect_success)