summaryrefslogtreecommitdiff
path: root/contrib/python/test/test_client.py
blob: e642c8add7a5ca5751439c932df390bfae140ba9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
from __future__ import absolute_import

import unittest
from unittest.mock import patch

import podman
from podman.client import BaseClient, Client, LocalClient, RemoteClient


class TestClient(unittest.TestCase):
    def setUp(self):
        pass

    @patch('podman.libs.system.System.ping', return_value=True)
    def test_local(self, mock_ping):
        p = Client(
            uri='unix:/run/podman',
            interface='io.projectatomic.podman',
        )

        self.assertIsInstance(p._client, LocalClient)
        self.assertIsInstance(p._client, BaseClient)

        mock_ping.assert_called_once()

    @patch('os.path.isfile', return_value=True)
    @patch('podman.libs.system.System.ping', return_value=True)
    def test_remote(self, mock_ping, mock_isfile):
        p = Client(
            uri='unix:/run/podman',
            interface='io.projectatomic.podman',
            remote_uri='ssh://user@hostname/run/podmain/podman',
            identity_file='~/.ssh/id_rsa')

        self.assertIsInstance(p._client, BaseClient)
        mock_ping.assert_called_once()
        mock_isfile.assert_called_once()