Improve error when service is not a dict

Fixes #127
This commit is contained in:
Ben Firshman 2014-03-03 16:21:42 +00:00
commit 3e7360c2c6
3 changed files with 31 additions and 4 deletions

View file

@ -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)