summaryrefslogtreecommitdiff
path: root/tests/integration/api_container_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/api_container_test.py')
-rw-r--r--tests/integration/api_container_test.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/integration/api_container_test.py b/tests/integration/api_container_test.py
index 5e30eee..5d06bc4 100644
--- a/tests/integration/api_container_test.py
+++ b/tests/integration/api_container_test.py
@@ -1,6 +1,7 @@
import os
import signal
import tempfile
+from datetime import datetime
import docker
from docker.constants import IS_WINDOWS_PLATFORM
@@ -9,6 +10,7 @@ from docker.utils.socket import read_exactly
import pytest
+import requests
import six
from .base import BUSYBOX, BaseAPIIntegrationTest
@@ -816,6 +818,21 @@ class WaitTest(BaseAPIIntegrationTest):
self.assertIn('ExitCode', inspect['State'])
self.assertEqual(inspect['State']['ExitCode'], exitcode)
+ @requires_api_version('1.30')
+ def test_wait_with_condition(self):
+ ctnr = self.client.create_container(BUSYBOX, 'true')
+ self.tmp_containers.append(ctnr)
+ with pytest.raises(requests.exceptions.ConnectionError):
+ self.client.wait(ctnr, condition='removed', timeout=1)
+
+ ctnr = self.client.create_container(
+ BUSYBOX, ['sleep', '3'],
+ host_config=self.client.create_host_config(auto_remove=True)
+ )
+ self.tmp_containers.append(ctnr)
+ self.client.start(ctnr)
+ assert self.client.wait(ctnr, condition='removed', timeout=5) == 0
+
class LogsTest(BaseAPIIntegrationTest):
def test_logs(self):
@@ -888,6 +905,22 @@ Line2'''
logs = self.client.logs(id, tail=0)
self.assertEqual(logs, ''.encode(encoding='ascii'))
+ @requires_api_version('1.35')
+ def test_logs_with_until(self):
+ snippet = 'Shanghai Teahouse (Hong Meiling)'
+ container = self.client.create_container(
+ BUSYBOX, 'echo "{0}"'.format(snippet)
+ )
+
+ self.tmp_containers.append(container)
+ self.client.start(container)
+ exitcode = self.client.wait(container)
+ assert exitcode == 0
+ logs_until_1 = self.client.logs(container, until=1)
+ assert logs_until_1 == b''
+ logs_until_now = self.client.logs(container, datetime.now())
+ assert logs_until_now == (snippet + '\n').encode(encoding='ascii')
+
class DiffTest(BaseAPIIntegrationTest):
def test_diff(self):