Exemplo n.º 1
0
    def test_cli_rename_backup_path_to_file(self):
        driver = Driver()
        dirs = helper.mkdtemps(1,
                               root=self.TMP_ROOT,
                               prefix=self.TMPFILE_PREFIX)
        backup_filename = os.sep.join([dirs[0], '123'])
        kwargs = {
            'settings_json': {
                'CHECK_DIRS': dirs,
                "DIR_FORMATS": {
                    "LETTER_CASE": "upper_case",
                },
            },
            'rename': True,
            'rename_backup_path': backup_filename,
        }
        logger().debug('before')
        logger().info(os.listdir(dirs[0]))
        assert os.path.isdir(dirs[0])
        assert not os.path.isfile(backup_filename)

        driver.entry(**kwargs)

        logger().debug('after')
        logger().info(driver.result['rename_backup_name'])
        if not os.path.isdir(dirs[0]):
            dirs[0] = os.sep.join(dirs[0].split(os.sep)[:-1] +
                                  [dirs[0].split(os.sep)[-1].upper()])
            backup_filename = os.sep.join([dirs[0], '123'])
            assert os.path.isdir(dirs[0])
        assert os.path.isfile(backup_filename)
        assert driver.result['errors'] == []
Exemplo n.º 2
0
    def rename_backup(self, rename_pairs, **kwargs):
        am = ArchieveManager()
        RENAME_BACKUP = kwargs.get('rename_backup', True)
        logger().info('backup flag: {0}'.format(RENAME_BACKUP))

        if RENAME_BACKUP:
            RENAME_BACKUP_PATH = kwargs.get('rename_backup_path', os.getcwd())
            if os.path.isdir(RENAME_BACKUP_PATH):
                RENAME_BACKUP_PATH = os.sep.join([
                    RENAME_BACKUP_PATH,
                    self.get_bak_filename(prefix='namanager_rename_')])
            logger().info('backup path: {0}'.format(RENAME_BACKUP_PATH))
            test_writing_permission(
                dirname=os.path.dirname(RENAME_BACKUP_PATH))
            revert_pairs = am.gen_revert_path_pairs(rename_pairs)
            self._result['rename_backup_name'] = RENAME_BACKUP_PATH
            with open(RENAME_BACKUP_PATH, 'w') as f:
                f.write(json.dumps(revert_pairs, indent=4, sort_keys=True))
                logger().info('successfully wrote backup: {0}.'.format(
                    RENAME_BACKUP_PATH))
Exemplo n.º 3
0
def test_writing_permission(**kwargs):
    """
    param dirname:
    type dirname: str
    param required: default True
    type required: True, False
    param error_msg:
    type error_msg: str
    """

    try:
        dirname = kwargs.get('dirname', os.getcwd())
        if dirname[-1] != os.sep:
            dirname += os.sep
        # test directory is exists or not and raise
        os.path.realpath(dirname)
        logger().info('dirname: {0}'.format(dirname))

        filename = ''.join([dirname, 'test_file'])
        while os.path.exists(filename):
            filename += '_'

        with open(filename, 'w') as f:
            f.write('test...')
            logger().info('successfully wrote: {0}.'.format(filename))

        with open(filename, 'r') as f:
            f.read()
            logger().info('successfully read: {0}.'.format(filename))

        os.remove(filename)

    except Exception as e:
        print(kwargs.get('error_msg', ''))
        required = kwargs.get('required', True)
        if required:
            raise e
Exemplo n.º 4
0
 def dir_sep(self):
     logger().debug('dir_sep')
     logger().info(self._DIR_SEP)
     return self._DIR_SEP
Exemplo n.º 5
0
 def file_sep(self):
     logger().debug('file_sep')
     logger().info(self._FILE_SEP)
     return self._FILE_SEP
Exemplo n.º 6
0
 def file_letter_case(self):
     logger().debug('file_letter_case')
     logger().info(self._FILE_LETTER_CASE)
     return self._FILE_LETTER_CASE
Exemplo n.º 7
0
 def dir_prefix(self):
     logger().debug('dir_prefix')
     logger().info(self._DIR_PREFIX)
     return self._DIR_PREFIX
Exemplo n.º 8
0
 def dir_suffix(self):
     logger().debug('dir_suffix')
     logger().info(self._DIR_SUFFIX)
     return self._DIR_SUFFIX
Exemplo n.º 9
0
 def include_files(self):
     logger().debug('include_files')
     logger().info(self._INCLUDE_FILES)
     return self._INCLUDE_FILES
Exemplo n.º 10
0
 def dir_suffix_mode(self):
     logger().debug('dir_suffix_mode')
     logger().info(self._DIR_SUFFIX_MODE)
     return self._DIR_SUFFIX_MODE
Exemplo n.º 11
0
 def file_formats(self):
     logger().debug('file_formats')
     logger().info(self._FILE_FORMATS)
     return self._FILE_FORMATS
Exemplo n.º 12
0
 def error_info_count(self):
     logger().debug('error_info_count')
     logger().info(self._error_info_count)
     return self._error_info_count
Exemplo n.º 13
0
 def file_prefix_mode(self):
     logger().debug('file_prefix_mode')
     logger().info(self._FILE_PREFIX_MODE)
     return self._FILE_PREFIX_MODE
Exemplo n.º 14
0
 def file_suffix_mode(self):
     logger().debug('file_suffix_mode')
     logger().info(self._FILE_SUFFIX_MODE)
     return self._FILE_SUFFIX_MODE
Exemplo n.º 15
0
 def ignore_dirs(self):
     logger().debug('ignore_dirs')
     logger().info(self._IGNORE_DIRS)
     return self._IGNORE_DIRS
Exemplo n.º 16
0
 def ignore_files(self):
     logger().debug('ignore_files')
     logger().info(self._IGNORE_FILES)
     return self._IGNORE_FILES
Exemplo n.º 17
0
 def include_dirs(self):
     logger().debug('include_dirs')
     logger().info(self._INCLUDE_DIRS)
     return self._INCLUDE_DIRS
Exemplo n.º 18
0
 def dir_letter_case(self):
     logger().debug('dir_letter_case')
     logger().info(self._DIR_LETTER_CASE)
     return self._DIR_LETTER_CASE
Exemplo n.º 19
0
 def dir_prefix_mode(self):
     logger().debug('dir_prefix_mode')
     logger().info(self._DIR_PREFIX_MODE)
     return self._DIR_PREFIX_MODE
Exemplo n.º 20
0
 def file_prefix(self):
     logger().debug('file_prefix')
     logger().info(self._FILE_PREFIX)
     return self._FILE_PREFIX
Exemplo n.º 21
0
 def dir_formats(self):
     logger().debug('dir_formats')
     logger().info(self._DIR_FORMATS)
     return self._DIR_FORMATS
Exemplo n.º 22
0
 def file_suffix(self):
     logger().debug('file_suffix')
     logger().info(self._FILE_SUFFIX)
     return self._FILE_SUFFIX
Exemplo n.º 23
0
 def error_info(self):
     logger().debug('error_info:')
     logger().info(self._error_info)
     return self._error_info