Beispiel #1
0
 def test_other_error(self):
     session = Session('test')
     self.server.add(url='/',
                     params='method=GET',
                     response=Exception('boom!'))
     with ShouldRaise(Exception('boom!')):
         session.get('/')
     self.server.assert_called(times=1)
 def test_other_error(self):
     session = Session('test')
     self.server.add(
         url='/',
         params='method=GET',
         response=Exception('boom!')
     )
     with ShouldRaise(Exception('boom!')):
         session.get('/')
     self.server.assert_called(times=1)
 def test_http_error(self):
     # somewhat hypothetical, error is usually in the return json
     session = Session('test')
     self.server.add(
         url='/login',
         params='method=GET',
         response=MockHTTPError('{"data": "foo"}', 500),
     )
     with ShouldRaise(WorkfrontAPIError('Unknown error, check log', 500)):
         session.get('/login')
     self.server.assert_called(times=1)
Beispiel #4
0
 def test_http_error(self):
     # somewhat hypothetical, error is usually in the return json
     session = Session('test')
     self.server.add(
         url='/login',
         params='method=GET',
         response=MockHTTPError('{"data": "foo"}', 500),
     )
     with ShouldRaise(WorkfrontAPIError('Unknown error, check log', 500)):
         session.get('/login')
     self.server.assert_called(times=1)
 def test_bad_json(self):
     session = Session('test')
     self.server.add(
         url='/',
         params='method=GET',
         response="{'oops': 'not json'}"
     )
     with ShouldRaise(WorkfrontAPIError(
             {'exception': 'Expecting property name enclosed in double '
                           'quotes: line 1 column 2 (char 1)',
              'response': u"{'oops': 'not json'}"},
             200
     )):
         session.get('/')
     self.server.assert_called(times=1)
Beispiel #6
0
 def test_bad_json(self):
     session = Session('test')
     self.server.add(url='/',
                     params='method=GET',
                     response="{'oops': 'not json'}")
     with ShouldRaise(
             WorkfrontAPIError(
                 {
                     'exception':
                     'Expecting property name enclosed in double '
                     'quotes: line 1 column 2 (char 1)',
                     'response': u"{'oops': 'not json'}"
                 }, 200)):
         session.get('/')
     self.server.assert_called(times=1)
Beispiel #7
0
 def test_api_error(self):
     session = Session('test')
     self.server.add(url='/',
                     params='method=GET',
                     response='{"error":{'
                     '"class":"java.lang.UnsupportedOperationException",'
                     '"message":"you must specify an action"}}')
     with ShouldRaise(
             WorkfrontAPIError(
                 {
                     u'message': u'you must specify an action',
                     u'class': u'java.lang.UnsupportedOperationException'
                 }, 200)):
         session.get('/')
     self.server.assert_called(times=1)
 def test_api_error(self):
     session = Session('test')
     self.server.add(
         url='/',
         params='method=GET',
         response='{"error":{'
                  '"class":"java.lang.UnsupportedOperationException",'
                  '"message":"you must specify an action"}}'
     )
     with ShouldRaise(WorkfrontAPIError(
             {u'message': u'you must specify an action',
              u'class': u'java.lang.UnsupportedOperationException'},
             200
     )):
         session.get('/')
     self.server.assert_called(times=1)
Beispiel #9
0
 def test_different_protocol_and_version(self):
     self.server.base_url = ''
     session = Session('test', protocol='http', api_version='v4.0')
     self.server.add(
         url='http://test.attask-ondemand.com/attask/api/v4.0/login',
         params='method=GET',
         response='{"data": "foo"}')
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #10
0
 def test_insecure_context(self):
     context = ssl._create_stdlib_context()
     session = Session('test', ssl_context=context)
     self.server.add(url='/login',
                     params='method=GET',
                     response='{"data": "foo"}',
                     ssl_context=context)
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #11
0
 def test_different_url_template(self):
     self.server.base_url = ''
     session = Session('test', url_template=SANDBOX_TEMPLATE)
     self.server.add(
         url='https://test.attasksandbox.com/attask/api/unsupported/login',
         params='method=GET',
         response='{"data": "foo"}'
     )
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #12
0
 def test_different_protocol_and_version(self):
     self.server.base_url = ''
     session = Session('test', protocol='http', api_version='v4.0')
     self.server.add(
         url='http://test.attask-ondemand.com/attask/api/v4.0/login',
         params='method=GET',
         response='{"data": "foo"}'
     )
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #13
0
 def test_different_url_template(self):
     self.server.base_url = ''
     session = Session('test', url_template=SANDBOX_TEMPLATE)
     self.server.add(
         url=
         'https://test.preview.workfront.com/attask/api/unsupported/login',
         params='method=GET',
         response='{"data": "foo"}')
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #14
0
 def test_insecure_context(self):
     context = ssl._create_stdlib_context()
     session = Session('test', ssl_context=context)
     self.server.add(
         url='/login',
         params='method=GET',
         response='{"data": "foo"}',
         ssl_context=context
     )
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
Beispiel #15
0
 def test_basic_request(self):
     session = Session('test')
     self.server.add(url='/login',
                     params='method=GET',
                     response='{"data": "foo"}')
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
     self.log.check(
         ('workfront', 'INFO',
          "url: https://test.attask-ondemand.com/attask/api/unsupported"
          "/login "
          "params: {'method': 'GET'}"),
         ('workfront', 'DEBUG', 'returned: {\n    "data": "foo"\n}'))
Beispiel #16
0
 def test_basic_request(self):
     session = Session('test')
     self.server.add(
         url='/login',
         params='method=GET',
         response='{"data": "foo"}'
     )
     compare(session.get('/login'), expected='foo')
     self.server.assert_called(times=1)
     self.log.check(
         ('workfront', 'INFO',
          "url: https://test.attask-ondemand.com/attask/api/unsupported"
          "/login "
          "params: {'method': 'GET'}"),
         ('workfront', 'DEBUG',
          'returned: {\n    "data": "foo"\n}')
     )