|
@@ -6,6 +6,7 @@ import datetime
|
|
import json
|
|
import json
|
|
import os
|
|
import os
|
|
import os.path
|
|
import os.path
|
|
|
|
+import re
|
|
import signal
|
|
import signal
|
|
import subprocess
|
|
import subprocess
|
|
import time
|
|
import time
|
|
@@ -448,6 +449,20 @@ class CLITestCase(DockerClientTestCase):
|
|
assert self.dispatch(['pull', '--quiet']).stderr == ''
|
|
assert self.dispatch(['pull', '--quiet']).stderr == ''
|
|
assert self.dispatch(['pull', '--quiet']).stdout == ''
|
|
assert self.dispatch(['pull', '--quiet']).stdout == ''
|
|
|
|
|
|
|
|
+ def test_pull_with_parallel_failure(self):
|
|
|
|
+ result = self.dispatch([
|
|
|
|
+ '-f', 'ignore-pull-failures.yml', 'pull', '--parallel'],
|
|
|
|
+ returncode=1
|
|
|
|
+ )
|
|
|
|
+
|
|
|
|
+ self.assertRegexpMatches(result.stderr, re.compile('^Pulling simple', re.MULTILINE))
|
|
|
|
+ self.assertRegexpMatches(result.stderr, re.compile('^Pulling another', re.MULTILINE))
|
|
|
|
+ self.assertRegexpMatches(result.stderr,
|
|
|
|
+ re.compile('^ERROR: for another .*does not exist.*', re.MULTILINE))
|
|
|
|
+ self.assertRegexpMatches(result.stderr,
|
|
|
|
+ re.compile('''^(ERROR: )?(b')?.* nonexisting-image''',
|
|
|
|
+ re.MULTILINE))
|
|
|
|
+
|
|
def test_build_plain(self):
|
|
def test_build_plain(self):
|
|
self.base_dir = 'tests/fixtures/simple-dockerfile'
|
|
self.base_dir = 'tests/fixtures/simple-dockerfile'
|
|
self.dispatch(['build', 'simple'])
|
|
self.dispatch(['build', 'simple'])
|