Ejemplo n.º 1
0
    def restart(self, iss, tag, ev):
        """
        Restart a test instance

        :param iss: 
        :param tag: 
        :param ev: 
        :return: 
        """
        logger.info('restart test tool: {} {}'.format(iss, tag))
        uqp, qp = unquote_quote(iss, tag)
        url = self.app.run_test_instance(*qp)

        if isinstance(url, Response):
            return conv_response(None, url)

        if url:
            # redirect back to entity page
            loc = '{}entity/{}'.format(self.rest.base_url, qp[0])
            raise cherrypy.HTTPRedirect(loc)
        else:
            args = {
                'title': "Action Failed", 'base': self.baseurl,
                'note': 'Could not restart your test instance'}

        _msg = self.html['message.html'].format(**args)
        return as_bytes(_msg)
Ejemplo n.º 2
0
    def restart(self, iss, tag, ev):
        """
        Restart a test instance

        :param iss: 
        :param tag: 
        :param ev: 
        :return: 
        """
        logger.info('restart test tool: {} {}'.format(iss, tag))
        uqp, qp = unquote_quote(iss, tag)
        url = self.app.run_test_instance(*qp)

        if isinstance(url, Response):
            return conv_response(None, url)

        if url:
            # redirect back to entity page
            loc = '{}entity/{}'.format(self.rest.base_url, qp[0])
            raise cherrypy.HTTPRedirect(loc)
        else:
            args = {
                'title': "Action Failed",
                'base': self.baseurl,
                'note': 'Could not restart your test instance'
            }

        _msg = self.html['message.html'].format(**args)
        return as_bytes(_msg)
Ejemplo n.º 3
0
    def restart_instance(self, iss, tag, action='restart'):
        uqp, qp = unquote_quote(iss, tag)
        logger.info('{} iss="{}", tag="{}"'.format(action, uqp[0], uqp[1]))
        url = self.app.run_test_instance(qp[0], qp[1])

        if isinstance(url, Response):
            return conv_response(None, url)

        if url:
            args = {
                'title':
                "Action performed",
                'base':
                self.baseurl,
                'note':
                'Your test instance "{iss}:{tag}" has been '
                '{act} as <a href="{url}">{url}</a>'.format(iss=uqp[0],
                                                            tag=uqp[1],
                                                            url=url,
                                                            act=action)
            }
        else:
            args = {
                'title': "Action Failed",
                'base': self.baseurl,
                'note': 'Could not {} your test instance'.format(action)
            }

        _msg = self.html['message.html'].format(**args)
        return as_bytes(_msg)
Ejemplo n.º 4
0
    def run(self, test):
        resp = self.tester.run(test, **self.webenv)
        self.sh['session_info'] = self.info.session

        if resp is False or resp is True:
            pass
        elif isinstance(resp, list):
            return conv_response(self.sh.events, resp)
        elif isinstance(resp, bytes):
            return resp

        self.opresult()
Ejemplo n.º 5
0
 def next(self, **kwargs):
     resp = self.tester.cont(**kwargs)
     self.sh['session_info'] = self.info.session
     if resp:
         if isinstance(resp, int):
             if resp == CRITICAL:
                 exp = self.tester.conv.events.get_data(EV_EXCEPTION)
                 if exp:
                     raise cherrypy.HTTPError(message=exp[0])
             else:
                 self.opresult()
         else:
             return conv_response(self.sh['conv'].events, resp)
     else:
         self.opresult()
Ejemplo n.º 6
0
 def next(self, **kwargs):
     resp = self.tester.cont(**kwargs)
     self.sh['session_info'] = self.info.session
     if resp:
         if isinstance(resp, int):
             if resp == CRITICAL:
                 exp = self.tester.conv.events.get_data(EV_EXCEPTION)
                 if exp:
                     raise cherrypy.HTTPError(message=exp[0])
             else:
                 self.opresult()
         else:
             return conv_response(self.sh['conv'].events, resp)
     else:
         self.opresult()
Ejemplo n.º 7
0
    def restart_instance(self, iss, tag, action='restart'):
        uqp, qp = unquote_quote(iss, tag)
        logger.info('{} iss="{}", tag="{}"'.format(action, uqp[0], uqp[1]))
        url = self.app.run_test_instance(qp[0], qp[1])

        if isinstance(url, Response):
            return conv_response(None, url)

        if url:
            args = {
                'title': "Action performed", 'base': self.baseurl,
                'note': 'Your test instance "{iss}:{tag}" has been '
                        '{act} as <a href="{url}">{url}</a>'.format(
                    iss=uqp[0], tag=uqp[1], url=url, act=action)}
        else:
            args = {
                'title': "Action Failed", 'base': self.baseurl,
                'note': 'Could not {} your test instance'.format(action)}

        _msg = self.html['message.html'].format(**args)
        return as_bytes(_msg)
Ejemplo n.º 8
0
    def run(self, test):
        try:
            resp = self.tester.run(test, **self.webenv)
        except HTTPRedirect:
            raise
        except Exception as err:
            #test_id = list(self.flows.complete.keys())[0]
            _trace = exception_trace('run', err, logger)
            self.tester.conv.events.store(EV_FAULT, _trace)
            return self.display_exception(exception_trace=_trace)

        self.sh['session_info'] = self.info.session

        if isinstance(resp, dict):
            return self.display_exception(**resp)
        elif resp is False or resp is True:
            pass
        elif isinstance(resp, list):
            return conv_response(self.sh.events, resp)
        elif isinstance(resp, bytes):
            return resp

        self.opresult()
Ejemplo n.º 9
0
    def run(self, test):
        try:
            resp = self.tester.run(test, **self.webenv)
        except HTTPRedirect:
            raise
        except Exception as err:
            #test_id = list(self.flows.complete.keys())[0]
            _trace = exception_trace('run', err, logger)
            self.tester.conv.events.store(EV_FAULT, _trace)
            return self.display_exception(exception_trace=_trace)

        self.sh['session_info'] = self.info.session

        if isinstance(resp, dict):
            return self.display_exception(**resp)
        elif resp is False or resp is True:
            pass
        elif isinstance(resp, list):
            return conv_response(self.sh.events, resp)
        elif isinstance(resp, bytes):
            return resp

        self.opresult()
Ejemplo n.º 10
0
 def reset(self):
     self.sh.reset_session()
     return conv_response(self.sh.events, self.info.flow_list())
Ejemplo n.º 11
0
 def handle_response(self, resp, index, oper=None):
     if resp:
         self.sh["index"] = index
         return conv_response(self.conv.events, resp)
     else:
         return None
Ejemplo n.º 12
0
 def reset(self):
     self.sh.reset_session()
     return conv_response(self.sh.events, self.info.flow_list())
Ejemplo n.º 13
0
 def handle_response(self, resp, index, oper=None):
     if resp:
         self.sh["index"] = index
         return conv_response(self.conv.events, resp)
     else:
         return None