Beispiel #1
0
    def _run_dbshell(self):
        """Run runshell command and capture its arguments."""
        def _mock_subprocess_run(*args, **kwargs):
            self.subprocess_args = list(*args)
            return CompletedProcess(self.subprocess_args, 0)

        client = DatabaseClient(connection)
        with mock.patch('subprocess.run', new=_mock_subprocess_run):
            client.runshell()
        return self.subprocess_args
    def __init__(self, *args, **kwargs):
        super(DatabaseWrapper, self).__init__(*args, **kwargs)

        self.features = DatabaseFeatures()
        self.ops = DatabaseOperations()
        self.client = DatabaseClient(self)
        self.creation = DatabaseCreation(self)
        self.introspection = DatabaseIntrospection(self)
        self.validation = BaseDatabaseValidation(self)
Beispiel #3
0
    def __init__(self, *args, **kwargs):
        super(DatabaseWrapper, self).__init__(*args, **kwargs)

        self.features = DatabaseFeatures(self)
        self.ops = DatabaseOperations()
        self.client = DatabaseClient(self)
        self.creation = DatabaseCreation(self)
        self.introspection = DatabaseIntrospection(self)
        self.validation = BaseDatabaseValidation(self)
        if 'PREFIX' in self.settings_dict:
            self.prefixes = ['prefix %s: %s' % (key, value) \
                for key, value in self.settings_dict['PREFIX'].items()]
        else:
            self.prefixes = ''
Beispiel #4
0
 def test_fail_exec(self):
     client = DatabaseClient(connection)
     self.assertRaises(CalledProcessError, client.runshell, input=b'.invalid\n', stdout=PIPE, stderr=PIPE)
Beispiel #5
0
 def test_exec(self):
     client = DatabaseClient(connection)
     run_result = client.runshell(input=b'.databases\n', stdout=PIPE, stderr=PIPE)
     self.assertTrue(run_result.stdout)
     self.assertFalse(run_result.stderr)
Beispiel #6
0
 def settings_to_cmd_args_env(self, settings_dict, parameters=None):
     if parameters is None:
         parameters = []
     return DatabaseClient.settings_to_cmd_args_env(settings_dict,
                                                    parameters)