Exemple #1
0
    def test_put_relative_path(self):
        conn_params = {"hostname": "dummy.host.org", "username": "******"}
        client = ParamikoSSHClient(**conn_params)

        mock_client = Mock()
        mock_sftp_client = Mock()
        mock_transport = Mock()

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = "/mock/cwd"
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path="path2.txt",
                            contents="foo bar 2",
                            chmod=466,
                            mode="a")
        self.assertEqual(result, "/mock/cwd/path2.txt")

        calls = [call(".")]
        mock_sftp_client.chdir.assert_has_calls(calls, any_order=False)

        calls = [
            call("path2.txt", mode="a"),
            call().write("foo bar 2"),
            call().chmod(466),
            call().close(),
        ]
        mock_sftp_client.file.assert_has_calls(calls, any_order=False)
    def test_put_relative_path(self):
        conn_params = {'hostname': 'dummy.host.org', 'username': '******'}
        client = ParamikoSSHClient(**conn_params)

        mock_client = Mock()
        mock_sftp_client = Mock()
        mock_transport = Mock()

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = '/mock/cwd'
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path='path2.txt',
                            contents='foo bar 2',
                            chmod=466,
                            mode='a')
        self.assertEqual(result, '/mock/cwd/path2.txt')

        calls = [call('.')]
        mock_sftp_client.chdir.assert_has_calls(calls, any_order=False)

        calls = [
            call('path2.txt', mode='a'),
            call().write('foo bar 2'),
            call().chmod(466),
            call().close()
        ]
        mock_sftp_client.file.assert_has_calls(calls, any_order=False)
Exemple #3
0
    def test_put_absolute_path_windows(self):
        conn_params = {"hostname": "dummy.host.org", "username": "******"}
        client = ParamikoSSHClient(**conn_params)

        mock_client = Mock()
        mock_sftp_client = Mock()
        mock_transport = Mock()

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = "C:\\Administrator"
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path="C:\\users\\user1\\1.txt",
                            contents="foo bar",
                            chmod=455,
                            mode="w")
        self.assertEqual(result, "C:\\users\\user1\\1.txt")

        result = client.put(path="\\users\\user1\\1.txt",
                            contents="foo bar",
                            chmod=455,
                            mode="w")
        self.assertEqual(result, "\\users\\user1\\1.txt")

        result = client.put(path="1.txt",
                            contents="foo bar",
                            chmod=455,
                            mode="w")
        self.assertEqual(result, "C:\\Administrator\\1.txt")

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = "/C:\\User1"
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path="1.txt",
                            contents="foo bar",
                            chmod=455,
                            mode="w")
        self.assertEqual(result, "C:\\User1\\1.txt")
    def test_put_absolute_path_windows(self):
        conn_params = {'hostname': 'dummy.host.org', 'username': '******'}
        client = ParamikoSSHClient(**conn_params)

        mock_client = Mock()
        mock_sftp_client = Mock()
        mock_transport = Mock()

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = 'C:\\Administrator'
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path='C:\\users\\user1\\1.txt',
                            contents='foo bar',
                            chmod=455,
                            mode='w')
        self.assertEqual(result, 'C:\\users\\user1\\1.txt')

        result = client.put(path='\\users\\user1\\1.txt',
                            contents='foo bar',
                            chmod=455,
                            mode='w')
        self.assertEqual(result, '\\users\\user1\\1.txt')

        result = client.put(path='1.txt',
                            contents='foo bar',
                            chmod=455,
                            mode='w')
        self.assertEqual(result, 'C:\\Administrator\\1.txt')

        mock_client.get_transport.return_value = mock_transport
        mock_sftp_client.getcwd.return_value = '/C:\\User1'
        client.client = mock_client
        client.sftp_client = mock_sftp_client

        result = client.put(path='1.txt',
                            contents='foo bar',
                            chmod=455,
                            mode='w')
        self.assertEqual(result, 'C:\\User1\\1.txt')