summaryrefslogtreecommitdiff
path: root/contrib/python/podman/test/test_tunnel.py
diff options
context:
space:
mode:
authorJhon Honce <jhonce@redhat.com>2019-01-09 15:05:58 -0700
committerJhon Honce <jhonce@redhat.com>2019-01-10 11:27:50 -0700
commit45fb935fe44a383ae14f16ab533281687d642c5e (patch)
treef40e0fd8fae389398a5aa6d35888944cde9f03d8 /contrib/python/podman/test/test_tunnel.py
parent2169b9fe14516b724b257437ed97e32046a4d611 (diff)
downloadpodman-45fb935fe44a383ae14f16ab533281687d642c5e.tar.gz
podman-45fb935fe44a383ae14f16ab533281687d642c5e.tar.bz2
podman-45fb935fe44a383ae14f16ab533281687d642c5e.zip
Move python code from contrib to it's own repo python-podman
Signed-off-by: Jhon Honce <jhonce@redhat.com>
Diffstat (limited to 'contrib/python/podman/test/test_tunnel.py')
-rw-r--r--contrib/python/podman/test/test_tunnel.py86
1 files changed, 0 insertions, 86 deletions
diff --git a/contrib/python/podman/test/test_tunnel.py b/contrib/python/podman/test/test_tunnel.py
deleted file mode 100644
index 9a33e76cd..000000000
--- a/contrib/python/podman/test/test_tunnel.py
+++ /dev/null
@@ -1,86 +0,0 @@
-from __future__ import absolute_import
-
-import logging
-import time
-import unittest
-from unittest.mock import MagicMock, patch
-
-from podman.libs.tunnel import Context, Portal, Tunnel
-
-
-class TestTunnel(unittest.TestCase):
- def setUp(self):
- self.tunnel_01 = MagicMock(spec=Tunnel)
- self.tunnel_02 = MagicMock(spec=Tunnel)
-
- def test_portal_ops(self):
- portal = Portal(sweap=500)
- portal['unix:/01'] = self.tunnel_01
- portal['unix:/02'] = self.tunnel_02
-
- self.assertEqual(portal.get('unix:/01'), self.tunnel_01)
- self.assertEqual(portal.get('unix:/02'), self.tunnel_02)
-
- del portal['unix:/02']
- with self.assertRaises(KeyError):
- portal['unix:/02']
- self.assertEqual(len(portal), 1)
-
- def test_portal_reaping(self):
- portal = Portal(sweap=0.5)
- portal['unix:/01'] = self.tunnel_01
- portal['unix:/02'] = self.tunnel_02
-
- self.assertEqual(len(portal), 2)
- for entry in portal:
- self.assertIn(entry, (self.tunnel_01, self.tunnel_02))
-
- time.sleep(1)
- portal.reap()
- self.assertEqual(len(portal), 0)
-
- def test_portal_no_reaping(self):
- portal = Portal(sweap=500)
- portal['unix:/01'] = self.tunnel_01
- portal['unix:/02'] = self.tunnel_02
-
- portal.reap()
- self.assertEqual(len(portal), 2)
- for entry in portal:
- self.assertIn(entry, (self.tunnel_01, self.tunnel_02))
-
- @patch('subprocess.Popen')
- @patch('os.path.exists', return_value=True)
- @patch('weakref.finalize')
- def test_tunnel(self, mock_finalize, mock_exists, mock_Popen):
- mock_Popen.return_value.returncode = 0
-
- context = Context(
- 'unix:/01',
- 'io.podman',
- '/tmp/user/socket',
- '/run/podman/socket',
- 'user',
- 'hostname',
- None,
- '~/.ssh/id_rsa',
- )
- tunnel = Tunnel(context).bore()
-
- cmd = ['ssh', '-fNT']
- if logging.getLogger().getEffectiveLevel() == logging.DEBUG:
- cmd.append('-v')
- else:
- cmd.append('-q')
-
- cmd.extend((
- '-L',
- '{}:{}'.format(context.local_socket, context.remote_socket),
- '-i',
- context.identity_file,
- '{}@{}'.format(context.username, context.hostname),
- ))
-
- mock_finalize.assert_called_once_with(tunnel, tunnel.close)
- mock_exists.assert_called_once_with(context.local_socket)
- mock_Popen.assert_called_once_with(cmd, close_fds=True)