示例#1
0
def _make_patch(patch_info):
    # Does with the name implies. Used with multiprocessing
    patch = Patch(patch_info)
    patch_name = patch_info['patch_name']
    dst_path = patch_info['dst']
    patch_number = patch_info['patch_num']
    src_path = patch_info['src']
    patch_name += '-' + str(patch_number)
    # Updating with full name - number included
    patch.patch_name = patch_name
    if not os.path.exists(src_path):
        log.warning('Src file does not exist to create patch')

    else:
        log.debug('Patch source path:{}'.format(src_path))
        log.debug('Patch destination path: {}'.format(dst_path))
        if patch.ready is True:
            log.info("Creating patch... "
                     "{}".format(os.path.basename(patch_name)))
            bsdiff4.file_diff(src_path, patch.dst_path, patch.patch_name)
            base_name = os.path.basename(patch_name)
            log.info('Done creating patch... {}'.format(base_name))
        else:
            log.error('Missing patch attr')
    return patch
示例#2
0
    def test_patch(self):
        with io.open('app.py', 'w', encoding='utf-8') as f:
            f.write('a = 0')

        info = {
            'dst': 'app.py',
            'patch_name': 'p-name-1',
            'package': 'filename-mac-0.1.1.tar.gz'
        }
        p = Patch(info)
        assert p.ready is True
示例#3
0
    def test_patch_bad_info(self):
        info = {
            'dst': 'app.py',
            'patch_name': 'p-name-1',
            'package': 'filename-mac-0.1.1.tar.gz'
        }
        temp_dst = info['dst']
        info['dst'] = None
        p = Patch(info)
        assert p.ready is False

        info['dst'] = temp_dst
        temp_patch = info['patch_name']
        info['patch_name'] = None
        p = Patch(info)
        assert p.ready is False

        info['patch_name'] = temp_patch
        info['package'] = None
        p = Patch(info)
        assert p.ready is False
示例#4
0
def _make_patch(patch_info):
    # Does with the name implies. Used with multiprocessing
    patch = Patch(patch_info)
    patch_name = patch_info['patch_name']
    dst_path = patch_info['dst']
    patch_number = patch_info['patch_num']
    src_path = patch_info['src']
    patch_name += '-' + str(patch_number)
    # Updating with full name - number included
    patch.patch_name = patch_name
    if not os.path.exists(src_path):
        log.warning('Src file does not exist to create patch')

    else:
        log.debug('Patch source path: %s', src_path)
        log.debug('Patch destination path: %s', dst_path)
        if patch.ready is True:
            log.info('Creating patch... %s', os.path.basename(patch_name))
            bsdiff4.file_diff(src_path, patch.dst_path, patch.patch_name)
            base_name = os.path.basename(patch_name)
            log.info('Done creating patch... %s', base_name)
        else:
            log.error('Missing patch attr')
    return patch