def run(self):
        with warnings.catch_warnings():
            warnings.simplefilter("error")
            try:
                LOG.debug("Verify is a: {0}, with value: {1}".format(type(self.verify), self.verify))
                start = int(round(time.time() * 1000))
                if self.test["protocol"] != 'tcp':
                    self.req = getattr(requests, self.test['method'].lower())(verify=self.verify, **self.inputs)
                else:
                    tcptest.tcp_test(self.host, self.port)
                end = int(round(time.time() * 1000))
                self.duration_ms = end - start
            except (RuntimeWarning, requests.exceptions.SSLError):
                warnings.simplefilter("ignore")
                start = int(round(time.time() * 1000))
                try:
                    self.req = getattr(requests, self.test['method'].lower())(verify=self.verify, **self.inputs)
                except requests.exceptions.SSLError:
                    message, status = self.fail_test("Certificate verify failed and not ignored by inputs['verify']")
                    self.add_output("SSLVerify", message, status)
                    return
                end = int(round(time.time() * 1000))
                self.duration_ms = end - start
                if not self.verify_specified:
                    message, status = self.fail_test("Insecure request not ignored by inputs['verify']")
                    self.add_output("SecureRequest", message, status)
                else:
                    if self.verify:
                        message, status = self.fail_test("Insecure request made")
                        self.add_output("SecureRequest", message, status)
                    else:
                        message, status = self.warn_test("Insecure request made and ignored")
                        self.add_output("SecureRequest", message, status)
        if self.test["protocol"] != 'tcp':
            self.output.append(dict(self.req.headers), sec='response_headers')
            self.output.append(self.req.status_code, sec='response_status_code')
            if 'show_body' in self.test:
                try:
                    req_content = self.req.content.decode()
                except UnicodeDecodeError:
                    req_content = self.req.content
                self.output.append(req_content)

            for plugin_info in manager.getAllPlugins():
                for outcome in self.test['outcomes']:
                    if plugin_info.name == outcome:
                        manager.activatePluginByName(plugin_info.name)
                        message, status = plugin_info.plugin_object.run(self)
                        self.add_output(plugin_info.name, message, status)
                        manager.deactivatePluginByName(plugin_info.name)
dataset/ETHPy150Open sky-shiny/smolder/charcoal/charcoal.py/Charcoal.run/original