Hacked By AnonymousFox

Current Path : /lib/python2.7/site-packages/test/mock/
Upload File :
Current File : //lib/python2.7/site-packages/test/mock/mock_backup.py

import random
import string
from datetime import datetime

from hw_cpbackup.consts import TODAY
from test.mock.common import S3_MOCKDATA


class MockBackupRoutine:
    """Mock BackupRoutine class"""

    def __init__(self):
        self.null_routed = False
        self.acct_packaged = False
        self.upload_complete = False
        self.backup = 1
        self.suspended = 0

    @property
    def backup_root(self):
        return '/backup/{today}/accounts/'.format(today=TODAY)

    @property
    def username(self):
        return 'mockuser'

    @property
    def user_data(self):
        _user_data = []
        _user_data_obj = S3_MOCKDATA
        _user_data.append(_user_data_obj)
        for index, user_acct in enumerate(_user_data):
            if self.whm_data()['data']['acct'][0]['backup'] != 1:
                del _user_data[index]
                continue
            if self.whm_data()['data']['acct'][0]['suspended'] == 1:
                del _user_data[index]
                continue
            if datetime.fromtimestamp(
                    self.whm_data()['data']['acct'][0]['unix_startdate']).strftime('%Y-%m-%d') == TODAY \
                    and not self.user_archive(username=user_acct['user']):
                del _user_data[index]
                continue
            if self.null_routed:
                del _user_data[index]
                continue
        return _user_data

    def whm_data(self):
        _whm_data = {
            'data': {
                'acct': [
                    {
                        'backup': self.backup,
                        'suspended': self.suspended,
                        'unix_startdate': int(datetime.today().strftime('%s'))
                    }
                ]
            }
        }
        return _whm_data

    @property
    def backup_archives(self):
        _backup_archives = ['%s.tar.gz' % self.username]
        for _ in range(10):
            _backup_archives.append('%s.tar.gz' % ''.join(
                random.SystemRandom().choice(string.ascii_letters.lower() + string.digits) for _ in range(8)))
        return _backup_archives

    def user_archive(self, username, block=False):
        """Obtain archive for user"""
        for archive in self.backup_archives:
            if archive == username + '.tar.gz' and not block:
                return archive

    def pkg_account(self, username):
        created_archive = '{root}cpmove-{user}.tar.gz'.format(root=self.backup_root, user=username)
        self.acct_packaged = True
        return created_archive

    def run(self, pkg=False):
        if self.user_data:
            for user_account in self.user_data:
                user = user_account['user']
                if not self.user_archive(username=user, block=pkg):
                    self.pkg_account(username=user)
                self.upload_complete = True

    def reset(self):
        self.null_routed = False
        self.acct_packaged = False
        self.upload_complete = False
        self.backup = 1
        self.suspended = 0

Hacked By AnonymousFox1.0, Coded By AnonymousFox
Warning: unlink(/tmp/138.201.207.117:802): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/142.11.217.94:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1

Warning: unlink(/tmp/94.217.11.142:80): Is a directory in /home/wxcglxzi/public_html/network/function.php on line 1