Rename "service collection" to "project"
This commit is contained in:
parent
818728b825
commit
2d2d81d33f
5 changed files with 92 additions and 91 deletions
59
tests/project_test.py
Normal file
59
tests/project_test.py
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
from plum.project import Project
|
||||
from plum.service import Service
|
||||
from .testcases import DockerClientTestCase
|
||||
|
||||
|
||||
class ProjectTest(DockerClientTestCase):
|
||||
def test_from_dict(self):
|
||||
project = Project.from_dicts('test', [
|
||||
{
|
||||
'name': 'web',
|
||||
'image': 'ubuntu'
|
||||
},
|
||||
{
|
||||
'name': 'db',
|
||||
'image': 'ubuntu'
|
||||
}
|
||||
], self.client)
|
||||
self.assertEqual(len(project.services), 2)
|
||||
self.assertEqual(project.get_service('web').name, 'web')
|
||||
self.assertEqual(project.get_service('web').options['image'], 'ubuntu')
|
||||
self.assertEqual(project.get_service('db').name, 'db')
|
||||
self.assertEqual(project.get_service('db').options['image'], 'ubuntu')
|
||||
|
||||
def test_from_dict_sorts_in_dependency_order(self):
|
||||
project = Project.from_dicts('test', [
|
||||
{
|
||||
'name': 'web',
|
||||
'image': 'ubuntu',
|
||||
'links': ['db'],
|
||||
},
|
||||
{
|
||||
'name': 'db',
|
||||
'image': 'ubuntu'
|
||||
}
|
||||
], self.client)
|
||||
|
||||
self.assertEqual(project.services[0].name, 'db')
|
||||
self.assertEqual(project.services[1].name, 'web')
|
||||
|
||||
def test_get_service(self):
|
||||
web = self.create_service('web')
|
||||
project = Project('test', [web], self.client)
|
||||
self.assertEqual(project.get_service('web'), web)
|
||||
|
||||
def test_start_stop(self):
|
||||
project = Project('test', [
|
||||
self.create_service('web'),
|
||||
self.create_service('db'),
|
||||
], self.client)
|
||||
|
||||
project.start()
|
||||
|
||||
self.assertEqual(len(project.get_service('web').containers()), 1)
|
||||
self.assertEqual(len(project.get_service('db').containers()), 1)
|
||||
|
||||
project.stop()
|
||||
|
||||
self.assertEqual(len(project.get_service('web').containers()), 0)
|
||||
self.assertEqual(len(project.get_service('db').containers()), 0)
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
from plum.service import Service
|
||||
from plum.service_collection import ServiceCollection
|
||||
from .testcases import DockerClientTestCase
|
||||
|
||||
|
||||
class ServiceCollectionTest(DockerClientTestCase):
|
||||
def test_from_dict(self):
|
||||
collection = ServiceCollection.from_dicts(None, [
|
||||
{
|
||||
'name': 'web',
|
||||
'image': 'ubuntu'
|
||||
},
|
||||
{
|
||||
'name': 'db',
|
||||
'image': 'ubuntu'
|
||||
}
|
||||
])
|
||||
self.assertEqual(len(collection), 2)
|
||||
self.assertEqual(collection.get('web').name, 'web')
|
||||
self.assertEqual(collection.get('web').options['image'], 'ubuntu')
|
||||
self.assertEqual(collection.get('db').name, 'db')
|
||||
self.assertEqual(collection.get('db').options['image'], 'ubuntu')
|
||||
|
||||
def test_from_dict_sorts_in_dependency_order(self):
|
||||
collection = ServiceCollection.from_dicts(None, [
|
||||
{
|
||||
'name': 'web',
|
||||
'image': 'ubuntu',
|
||||
'links': ['db'],
|
||||
},
|
||||
{
|
||||
'name': 'db',
|
||||
'image': 'ubuntu'
|
||||
}
|
||||
])
|
||||
|
||||
self.assertEqual(collection[0].name, 'db')
|
||||
self.assertEqual(collection[1].name, 'web')
|
||||
|
||||
def test_get(self):
|
||||
web = self.create_service('web')
|
||||
collection = ServiceCollection([web])
|
||||
self.assertEqual(collection.get('web'), web)
|
||||
|
||||
def test_start_stop(self):
|
||||
collection = ServiceCollection([
|
||||
self.create_service('web'),
|
||||
self.create_service('db'),
|
||||
])
|
||||
|
||||
collection.start()
|
||||
|
||||
self.assertEqual(len(collection[0].containers()), 1)
|
||||
self.assertEqual(len(collection[1].containers()), 1)
|
||||
|
||||
collection.stop()
|
||||
|
||||
self.assertEqual(len(collection[0].containers()), 0)
|
||||
self.assertEqual(len(collection[1].containers()), 0)
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue