예제 #1
0
 def test_missing_testrun_id(self, config_prop, captured_log):
     with patch('requests.post'):
         submit.submit('<testsuites><properties></properties></testsuites>',
                       config=config_prop,
                       user='******',
                       password='******')
     assert 'missing testrun id' in captured_log.getvalue()
예제 #2
0
 def test_missing_target(self, config_prop, captured_log):
     with patch('requests.post'):
         submit.submit('<foo/>',
                       config=config_prop,
                       user='******',
                       password='******')
     assert 'submit target not found' in captured_log.getvalue()
예제 #3
0
 def test_fill_testrun_submit(self, config_prop):
     fname = 'properties.xml'
     with patch('requests.post'):
         submit.submit(xml_file=os.path.join(conf.DATA_PATH, fname),
                       testrun_id='5_8_0_17',
                       config=config_prop,
                       user='******',
                       password='******')
예제 #4
0
 def test_missing_testrun_id(self, config_prop, captured_log):
     submit.submit(
         '<testsuites><properties></properties></testsuites>',
         config=config_prop,
         user='******',
         password='******',
         session='foo',
     )
     assert 'missing testrun id' in captured_log.getvalue()
예제 #5
0
 def test_fill_testrun_submit(self, config_prop):
     fname = 'properties.xml'
     submit.submit(
         xml_file=os.path.join(conf.DATA_PATH, fname),
         testrun_id='5_8_0_17',
         config=config_prop,
         user='******',
         password='******',
         session=DummySession(DummyResponse),
     )
예제 #6
0
 def test_file_testcases_success(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'testcases.xml')
     with patch('requests.post'):
         response = submit.submit(
             xml_file=input_file, config=config_prop, user='******', password='******')
     assert response
     assert 'Results received' in captured_log.getvalue()
예제 #7
0
 def test_file_testsuites_none(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
     with patch('requests.post', return_value=None):
         response = submit.submit(
             xml_file=input_file, config=config_prop, user='******', password='******')
     assert not response
     assert 'Failed to submit results' in captured_log.getvalue()
예제 #8
0
 def test_file_testsuites_exception(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
     with patch('requests.post', side_effect=KeyError('request failed')):
         response = submit.submit(
             xml_file=input_file, config=config_prop, user='******', password='******')
     assert not response
     assert 'request failed' in captured_log.getvalue()
     assert 'Failed to submit results' in captured_log.getvalue()
예제 #9
0
 def test_file_testsuites_none(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
     response = submit.submit(xml_file=input_file,
                              config=config_prop,
                              user='******',
                              password='******',
                              session=DummySession(lambda: None))
     assert not response
     assert 'Failed to submit' in captured_log.getvalue()
예제 #10
0
 def test_file_testsuites_success(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
     with patch('requests.post'):
         response = submit.submit(xml_file=input_file,
                                  config=config_prop,
                                  user='******',
                                  password='******')
     assert response
     logged_data = captured_log.getvalue()
     assert 'Results received' in logged_data
     assert 'Job ID' in logged_data
예제 #11
0
    def test_file_testsuites_failure(self, config_prop, captured_log):
        class Response(object):
            def __init__(self):
                self.status_code = 404

            def __len__(self):
                return 0

        input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
        with patch('requests.post', return_value=Response()):
            response = submit.submit(
                xml_file=input_file, config=config_prop, user='******', password='******')
        assert not response
        assert 'HTTP status 404: failed to submit results' in captured_log.getvalue()
예제 #12
0
    def test_file_testsuites_exception(self, config_prop, captured_log):
        def _raise():
            raise Exception('request failed')

        input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
        response = submit.submit(xml_file=input_file,
                                 config=config_prop,
                                 user='******',
                                 password='******',
                                 session=DummySession(_raise))
        assert not response
        logged_data = captured_log.getvalue()
        assert 'request failed' in logged_data
        assert 'Failed to submit' in logged_data
예제 #13
0
    def test_file_testsuites_failure(self, config_prop, captured_log):
        class Response(object):
            def __init__(self):
                self.status_code = 404

            def __len__(self):
                return 0

        input_file = os.path.join(conf.DATA_PATH, 'complete_transform.xml')
        response = submit.submit(xml_file=input_file,
                                 config=config_prop,
                                 user='******',
                                 password='******',
                                 session=DummySession(Response))
        assert not response
        assert 'HTTP status 404: failed to submit' in captured_log.getvalue()
예제 #14
0
 def test_file_testcases_success(self, config_prop, captured_log):
     input_file = os.path.join(conf.DATA_PATH, 'testcases.xml')
     response = submit.submit(
         xml_file=input_file,
         config=config_prop,
         user='******',
         password='******',
         session=DummySession(lambda: DummyResponse(
             {'files': {
                 'results.xml': {
                     'job-ids': [1, 2]
                 }
             }})))
     assert response
     logged_data = captured_log.getvalue()
     assert 'Results received' in logged_data
     assert 'Job ID' in logged_data
예제 #15
0
 def test_missing_credentials(self, config_prop, captured_log):
     with patch('requests.post'):
         submit.submit('<foo/>', config=config_prop)
     assert 'missing credentials' in captured_log.getvalue()
예제 #16
0
 def test_missing_input(self, config_prop, captured_log):
     with patch('requests.post'):
         submit.submit('', config=config_prop)
     assert 'no data supplied' in captured_log.getvalue()