mirror of https://github.com/docker/compose.git
Move config hash tests to service_test.py
Signed-off-by: Daniel Nephin <dnephin@docker.com>
This commit is contained in:
parent
50f06c6ba2
commit
ce322047a0
tests/integration
|
@ -14,6 +14,7 @@ from .. import mock
|
|||
from .testcases import DockerClientTestCase
|
||||
from .testcases import pull_busybox
|
||||
from compose import __version__
|
||||
from compose.const import LABEL_CONFIG_HASH
|
||||
from compose.const import LABEL_CONTAINER_NUMBER
|
||||
from compose.const import LABEL_ONE_OFF
|
||||
from compose.const import LABEL_PROJECT
|
||||
|
@ -23,6 +24,7 @@ from compose.container import Container
|
|||
from compose.service import build_extra_hosts
|
||||
from compose.service import ConfigError
|
||||
from compose.service import ConvergencePlan
|
||||
from compose.service import ConvergenceStrategy
|
||||
from compose.service import Net
|
||||
from compose.service import Service
|
||||
from compose.service import VolumeFromSpec
|
||||
|
@ -930,3 +932,38 @@ class ServiceTest(DockerClientTestCase):
|
|||
|
||||
self.assertEqual(set(service.containers(stopped=True)), set([original, duplicate]))
|
||||
self.assertEqual(set(service.duplicate_containers()), set([duplicate]))
|
||||
|
||||
|
||||
def converge(service,
|
||||
strategy=ConvergenceStrategy.changed,
|
||||
do_build=True):
|
||||
"""Create a converge plan from a strategy and execute the plan."""
|
||||
plan = service.convergence_plan(strategy)
|
||||
return service.execute_convergence_plan(plan, do_build=do_build, timeout=1)
|
||||
|
||||
|
||||
class ConfigHashTest(DockerClientTestCase):
|
||||
def test_no_config_hash_when_one_off(self):
|
||||
web = self.create_service('web')
|
||||
container = web.create_container(one_off=True)
|
||||
self.assertNotIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
def test_no_config_hash_when_overriding_options(self):
|
||||
web = self.create_service('web')
|
||||
container = web.create_container(environment={'FOO': '1'})
|
||||
self.assertNotIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
def test_config_hash_with_custom_labels(self):
|
||||
web = self.create_service('web', labels={'foo': '1'})
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
self.assertIn('foo', container.labels)
|
||||
|
||||
def test_config_hash_sticks_around(self):
|
||||
web = self.create_service('web', command=["top"])
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
web = self.create_service('web', command=["top", "-d", "1"])
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
|
|
@ -10,7 +10,6 @@ import tempfile
|
|||
|
||||
from .testcases import DockerClientTestCase
|
||||
from compose.config import config
|
||||
from compose.const import LABEL_CONFIG_HASH
|
||||
from compose.project import Project
|
||||
from compose.service import ConvergenceStrategy
|
||||
|
||||
|
@ -180,14 +179,6 @@ class ProjectWithDependenciesTest(ProjectTestCase):
|
|||
self.assertEqual(len(containers), 2)
|
||||
|
||||
|
||||
def converge(service,
|
||||
strategy=ConvergenceStrategy.changed,
|
||||
do_build=True):
|
||||
"""Create a converge plan from a strategy and execute the plan."""
|
||||
plan = service.convergence_plan(strategy)
|
||||
return service.execute_convergence_plan(plan, do_build=do_build, timeout=1)
|
||||
|
||||
|
||||
class ServiceStateTest(DockerClientTestCase):
|
||||
"""Test cases for Service.convergence_plan."""
|
||||
|
||||
|
@ -278,30 +269,3 @@ class ServiceStateTest(DockerClientTestCase):
|
|||
self.assertEqual(('recreate', [container]), web.convergence_plan())
|
||||
finally:
|
||||
shutil.rmtree(context)
|
||||
|
||||
|
||||
class ConfigHashTest(DockerClientTestCase):
|
||||
def test_no_config_hash_when_one_off(self):
|
||||
web = self.create_service('web')
|
||||
container = web.create_container(one_off=True)
|
||||
self.assertNotIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
def test_no_config_hash_when_overriding_options(self):
|
||||
web = self.create_service('web')
|
||||
container = web.create_container(environment={'FOO': '1'})
|
||||
self.assertNotIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
def test_config_hash_with_custom_labels(self):
|
||||
web = self.create_service('web', labels={'foo': '1'})
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
self.assertIn('foo', container.labels)
|
||||
|
||||
def test_config_hash_sticks_around(self):
|
||||
web = self.create_service('web', command=["top"])
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
||||
web = self.create_service('web', command=["top", "-d", "1"])
|
||||
container = converge(web)[0]
|
||||
self.assertIn(LABEL_CONFIG_HASH, container.labels)
|
||||
|
|
Loading…
Reference in New Issue