def test_node_request_urllib2_urlerror(self): def raise_exc(*args, **kwargs): raise URLError("something bad") controller = BaseController({}, self.app) with patch(base, 'urlopen', raise_exc): with self.assertRaises(NodeError) as cm: controller.node_request(self.node, 'PUT', '/volumes/vol-01') # Assert the exception details are correct self.assertEquals(cm.exception.detail, "PUT on http://localhost:8080/volumes/vol-01 " "failed with 'something bad'") self.assertEquals(cm.exception.code, 503) self.assertEquals(cm.exception.reason, "something bad")
def test_node_request_urllib2_urlerror(self): def raise_exc(*args, **kwargs): raise URLError("something bad") controller = BaseController({}, self.app) with patch(base, 'urlopen', raise_exc): with self.assertRaises(NodeError) as cm: controller.node_request(self.node, 'PUT', '/volumes/vol-01') # Assert the exception details are correct self.assertEquals( cm.exception.detail, "PUT on http://localhost:8080/volumes/vol-01 " "failed with 'something bad'") self.assertEquals(cm.exception.code, 503) self.assertEquals(cm.exception.reason, "something bad")
def test_node_request_urllib2_httperror(self): def raise_exc(*args, **kwargs): fp = StringIO('{"reason": "something bad"}') raise HTTPError('http://localhost/volumes/vol-01', 500, 'Internal Error', {}, fp) controller = BaseController({}, self.app) with patch(base, 'urlopen', raise_exc): with self.assertRaises(NodeError) as cm: controller.node_request(self.node, 'PUT', '/volumes/vol-01') # Assert the exception details are correct self.assertEquals(cm.exception.detail, "PUT on http://localhost:8080/volumes/vol-01 " "returned '500' with 'something bad'") self.assertEquals(cm.exception.code, 500) self.assertEquals(cm.exception.reason, "something bad")
def test_node_request_urllib2_httperror(self): def raise_exc(*args, **kwargs): fp = StringIO('{"reason": "something bad"}') raise HTTPError('http://localhost/volumes/vol-01', 500, 'Internal Error', {}, fp) controller = BaseController({}, self.app) with patch(base, 'urlopen', raise_exc): with self.assertRaises(NodeError) as cm: controller.node_request(self.node, 'PUT', '/volumes/vol-01') # Assert the exception details are correct self.assertEquals( cm.exception.detail, "PUT on http://localhost:8080/volumes/vol-01 " "returned '500' with 'something bad'") self.assertEquals(cm.exception.code, 500) self.assertEquals(cm.exception.reason, "something bad")