|
|
@@ -1,5 +1,5 @@
|
|
|
from __future__ import unicode_literals
|
|
|
-from fig.project import Project
|
|
|
+from fig.project import Project, ConfigurationError
|
|
|
from .testcases import DockerClientTestCase
|
|
|
|
|
|
|
|
|
@@ -37,6 +37,27 @@ class ProjectTest(DockerClientTestCase):
|
|
|
self.assertEqual(project.services[0].name, 'db')
|
|
|
self.assertEqual(project.services[1].name, 'web')
|
|
|
|
|
|
+ def test_from_config(self):
|
|
|
+ project = Project.from_config('figtest', {
|
|
|
+ 'web': {
|
|
|
+ 'image': 'ubuntu',
|
|
|
+ },
|
|
|
+ '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_config_throws_error_when_not_dict(self):
|
|
|
+ with self.assertRaises(ConfigurationError):
|
|
|
+ project = Project.from_config('figtest', {
|
|
|
+ 'web': 'ubuntu',
|
|
|
+ }, self.client)
|
|
|
+
|
|
|
def test_get_service(self):
|
|
|
web = self.create_service('web')
|
|
|
project = Project('test', [web], self.client)
|