def test_teams_empty(self, get): m = Mock(status_code=204) get.return_value = m request = RequestFactory().get("/") request.session = {"tsuru_token": "tokentest"} view = CreateApp() teams = view.teams(request) self.assertEqual([("", "")], teams)
def test_teams(self, get): content = u"""[{"name": "team1"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().get("/") request.session = {"tsuru_token": "tokentest"} view = CreateApp() teams = view.teams(request) self.assertEqual([("", ""), ('team1', 'team1')], teams)
def test_should_use_create_template(self, get): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().get("/") request.session = {} view = CreateApp() view.plans = lambda r: ("small", [("small", "small")]) view.teams = lambda r: [] view.pools = lambda r: [] response = view.get(request) self.assertEqual("apps/create.html", response.template_name)
def test_AppForm_should_be_in_context(self, get): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().get("/") request.session = {} view = CreateApp() view.plans = lambda r: ("basic", [("basic", "basic")]) view.teams = lambda r: [] view.pools = lambda r: [] response = view.get(request) app_form = response.context_data['app_form'] self.assertIsInstance(app_form, forms.AppForm)
def test_post_without_name_should_return_form_with_errors(self, get): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().post("/", {"name": ""}) request.session = {} view = CreateApp() view.plans = lambda r: ("small", [("small", "small")]) view.teams = lambda r: [] view.pools = lambda r: [] response = view.post(request) form = response.context_data.get('app_form') self.assertIn('name', form.errors) self.assertIn(u'This field is required.', form.errors.get('name'))
def test_post_with_invalid_name_should_return_500(self, post, get): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().post( "/", {"name": "myepe", "platform": "python"}) request.session = {} post.return_value = Mock(status_code=500, content='Error') view = CreateApp() view.plans = lambda r: ("small", [("small", "small")]) view.teams = lambda r: [] view.pools = lambda r: [] response = view.post(request) self.assertEqual('Error', response.context_data.get("errors"))
def test_post_with_invalid_name_should_return_500(self, post, get, error): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().post( "/", {"name": "myepe", "platform": "python"}) request.session = {} post.return_value = Mock(status_code=500, content='Error') view = CreateApp() view.plans = lambda r: ("small", [("small", "small")]) view.teams = lambda r: [] view.pools = lambda r: [] view.post(request) error.assert_called_with(request, u'Error', fail_silently=True)
def test_post_with_invalid_name_should_return_500(self, post, get, error): content = u"""[{"Name":"python"},{"Name":"ruby"},{"Name":"static"}]""" m = Mock(status_code=200, content=content) m.json.return_value = json.loads(content) get.return_value = m request = RequestFactory().post("/", { "name": "myepe", "platform": "python" }) request.session = {} post.return_value = Mock(status_code=500, content='Error') view = CreateApp() view.plans = lambda r: ("small", [("small", "small")]) view.teams = lambda r: [] view.pools = lambda r: [] view.post(request) error.assert_called_with(request, u'Error', fail_silently=True)