mirror of https://github.com/docker/docker-py.git
Properly close files and sockets in unit tests
This commit is contained in:
parent
39ee5981b4
commit
a86bfffd89
|
@ -2115,11 +2115,10 @@ class DockerClientTest(Cleanup, unittest.TestCase):
|
||||||
folder = tempfile.mkdtemp()
|
folder = tempfile.mkdtemp()
|
||||||
self.addCleanup(shutil.rmtree, folder)
|
self.addCleanup(shutil.rmtree, folder)
|
||||||
dockercfg_path = os.path.join(folder, '.dockercfg')
|
dockercfg_path = os.path.join(folder, '.dockercfg')
|
||||||
f = open(dockercfg_path, 'w')
|
with open(dockercfg_path, 'w') as f:
|
||||||
auth_ = base64.b64encode(b'sakuya:izayoi').decode('ascii')
|
auth_ = base64.b64encode(b'sakuya:izayoi').decode('ascii')
|
||||||
f.write('auth = {0}\n'.format(auth_))
|
f.write('auth = {0}\n'.format(auth_))
|
||||||
f.write('email = sakuya@scarlet.net')
|
f.write('email = sakuya@scarlet.net')
|
||||||
f.close()
|
|
||||||
cfg = docker.auth.load_config(dockercfg_path)
|
cfg = docker.auth.load_config(dockercfg_path)
|
||||||
self.assertTrue(docker.auth.INDEX_URL in cfg)
|
self.assertTrue(docker.auth.INDEX_URL in cfg)
|
||||||
self.assertNotEqual(cfg[docker.auth.INDEX_URL], None)
|
self.assertNotEqual(cfg[docker.auth.INDEX_URL], None)
|
||||||
|
@ -2175,7 +2174,7 @@ class DockerClientTest(Cleanup, unittest.TestCase):
|
||||||
(['test/foo', 'a.txt'], ['bar', 'bar/a.txt', 'bar/b.py',
|
(['test/foo', 'a.txt'], ['bar', 'bar/a.txt', 'bar/b.py',
|
||||||
'bar/other.png', 'test']),
|
'bar/other.png', 'test']),
|
||||||
):
|
):
|
||||||
archive = docker.utils.tar(base, exclude=exclude)
|
with docker.utils.tar(base, exclude=exclude) as archive:
|
||||||
tar = tarfile.open(fileobj=archive)
|
tar = tarfile.open(fileobj=archive)
|
||||||
self.assertEqual(sorted(tar.getnames()), names)
|
self.assertEqual(sorted(tar.getnames()), names)
|
||||||
|
|
||||||
|
@ -2184,7 +2183,7 @@ class DockerClientTest(Cleanup, unittest.TestCase):
|
||||||
self.addCleanup(shutil.rmtree, base)
|
self.addCleanup(shutil.rmtree, base)
|
||||||
for d in ['foo', 'bar']:
|
for d in ['foo', 'bar']:
|
||||||
os.makedirs(os.path.join(base, d))
|
os.makedirs(os.path.join(base, d))
|
||||||
archive = docker.utils.tar(base)
|
with docker.utils.tar(base) as archive:
|
||||||
tar = tarfile.open(fileobj=archive)
|
tar = tarfile.open(fileobj=archive)
|
||||||
self.assertEqual(sorted(tar.getnames()), ['bar', 'foo'])
|
self.assertEqual(sorted(tar.getnames()), ['bar', 'foo'])
|
||||||
|
|
||||||
|
@ -2195,7 +2194,7 @@ class DockerClientTest(Cleanup, unittest.TestCase):
|
||||||
f.write("content")
|
f.write("content")
|
||||||
os.makedirs(os.path.join(base, 'bar'))
|
os.makedirs(os.path.join(base, 'bar'))
|
||||||
os.symlink('../foo', os.path.join(base, 'bar/foo'))
|
os.symlink('../foo', os.path.join(base, 'bar/foo'))
|
||||||
archive = docker.utils.tar(base)
|
with docker.utils.tar(base) as archive:
|
||||||
tar = tarfile.open(fileobj=archive)
|
tar = tarfile.open(fileobj=archive)
|
||||||
self.assertEqual(sorted(tar.getnames()), ['bar', 'bar/foo', 'foo'])
|
self.assertEqual(sorted(tar.getnames()), ['bar', 'bar/foo', 'foo'])
|
||||||
|
|
||||||
|
@ -2205,7 +2204,7 @@ class DockerClientTest(Cleanup, unittest.TestCase):
|
||||||
for d in ['foo', 'bar']:
|
for d in ['foo', 'bar']:
|
||||||
os.makedirs(os.path.join(base, d))
|
os.makedirs(os.path.join(base, d))
|
||||||
os.symlink('../foo', os.path.join(base, 'bar/foo'))
|
os.symlink('../foo', os.path.join(base, 'bar/foo'))
|
||||||
archive = docker.utils.tar(base)
|
with docker.utils.tar(base) as archive:
|
||||||
tar = tarfile.open(fileobj=archive)
|
tar = tarfile.open(fileobj=archive)
|
||||||
self.assertEqual(sorted(tar.getnames()), ['bar', 'bar/foo', 'foo'])
|
self.assertEqual(sorted(tar.getnames()), ['bar', 'bar/foo', 'foo'])
|
||||||
|
|
||||||
|
@ -2293,7 +2292,8 @@ class StreamTest(Cleanup, unittest.TestCase):
|
||||||
b'\r\n'
|
b'\r\n'
|
||||||
) + b'\r\n'.join(lines)
|
) + b'\r\n'.join(lines)
|
||||||
|
|
||||||
client = docker.Client(base_url="http+unix://" + self.socket_file)
|
with docker.Client(base_url="http+unix://" + self.socket_file) \
|
||||||
|
as client:
|
||||||
for i in range(5):
|
for i in range(5):
|
||||||
try:
|
try:
|
||||||
stream = client.build(
|
stream = client.build(
|
||||||
|
@ -2308,6 +2308,5 @@ class StreamTest(Cleanup, unittest.TestCase):
|
||||||
self.assertEqual(list(stream), [
|
self.assertEqual(list(stream), [
|
||||||
str(i).encode() for i in range(50)])
|
str(i).encode() for i in range(50)])
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
unittest.main()
|
unittest.main()
|
||||||
|
|
Loading…
Reference in New Issue