def test_parse_args(self): actual_args = dict( app_name = 'sample_django_app', server = 'maximus.webiken.net', server_ssh_key = '/Users/sam/.ssh/id_rsa', repo = 'https://github.com/webiken/bvd.git', username = '******', db_config = dict( db_system = 'mysql', db_app_user = '******', ) ) py_django_provision.provision_args.subprocess.check_call = Mock(return_value=0) py_django_provision.provision_args.socket.gethostbyname = Mock(return_value='127.0.0.1') py_django_provision.provision_args.ProvisionConfigParser.parse_args = Mock(return_value=actual_args) py_django_provision.provision_args.sshclient.paramiko.SSHClient.connect = Mock(return_value=True) sys.argv[1:] = ['-config', './sample-config.json'] parser = ProvisionArgsParser() args = parser.parse_args() self.assertEquals('app_name' in args, True)
def main(): parser = ProvisionArgsParser() args, sshclient = parser.parse_args() installer = Provision(args, sshclient) installer.provision()