def getBandwidth(measure_type): result = "" queryparameters = parse_request(request) if measure_type == "active": json, query, params = build_active_bandwidth_query( queryparameters["json"], queryparameters["keyword"], queryparameters["likeKeyword"], queryparameters["fromInterval"], queryparameters["toInterval"], queryparameters["command"], queryparameters["direction"], queryparameters["group_by"]) if measure_type == "passive_self" or measure_type == "passive_mim": json, query, params = build_passive_bandwidth_query( measure_type.replace("passive_", ""), queryparameters["json"], queryparameters["keyword"], queryparameters["likeKeyword"], queryparameters["fromInterval"], queryparameters["toInterval"], queryparameters["direction"], queryparameters["dashfilename"], queryparameters["numberofclients"], queryparameters["limit"], queryparameters["offset"]) cur = mysql.connection.cursor() cur.execute(query, params) queryRes = cur.fetchall() cur.close() print("asked compact " + str(queryparameters["compact"])) print("json output = " + str(json)) print("keyword " + str(queryparameters["keyword"])) print("keyword LIKE " + str(queryparameters["likeKeyword"])) print("fromInterval " + str(queryparameters["fromInterval"])) print("toInterval " + str(queryparameters["toInterval"])) print("group_by " + str(queryparameters["group_by"])) if (queryparameters["compact"] != "True"): result += "<b>" + str(query) + "</b><br><br>" result += "json " + json + "<br>" result += "keyword \"" + queryparameters["keyword"] + "\"<br>" result += "likeKeyword " + queryparameters["likeKeyword"] + "<br>" result += "fromInterval \"" + queryparameters[ "fromInterval"] + "\"<br>" result += "toInterval \"" + queryparameters["toInterval"] + "\"<br>" result += "group_by \"" + str( queryparameters["group_by"]) + "\"<br><br>" if len(queryRes) != 0: result += "[" for row in queryRes: if queryparameters["json"] == 'False': result += str(row) + " <br>" else: result += str(row[0]).replace("}", "},") result = result[:-1] + "]" else: result += "<b>0 rows returned </b>" return result
def test_headers_split_on_colon(self): result = parse_request(self.request) expected = { 'Host': 'localhost:5000', 'User-Agent': 'curl/7.47.0', 'Accept': '*/*', 'Content-Type': 'application/json', 'Content-Length': '18' } for key, value in expected.items(): self.assertEqual(value, result['headers'][key])
def parser(): args_parser = argv_parser() args = args_parser.parse_args(sys.argv[1:]) url = args.url flag_href = args.href in ['True', 'true'] request = requests.get(url) if request.status_code is not 200: print('Connection error with code ' + str(request.status_code)) lines = parse_request(request, url, flag_href) text = new_formatter(lines) write_file(url, text)
def test_parse_returns_cookies_content(self): result = parse_request(self.request) self.assertEqual('value', result['cookies']['cookie1']['value']) self.assertEqual('false', result['cookies']['cookie1']['httponly']) self.assertEqual('othervalue', result['cookies']['cookie2']['value'])
def test_parse_returns_cookies(self): result = parse_request(self.request) self.assertTrue('cookies' in result)
def test_parse_body_content(self): result = parse_request(self.request) expected = '{ "json": "info" }' self.assertEqual(expected, result['body'])
def test_parse_includes_body(self): result = parse_request(self.request) self.assertTrue('body' in result)
def test_parse_returns_headers(self): result = parse_request(self.request) self.assertGreater(len(result['headers']), 0)
def test_parse_returns_version(self): result = parse_request(self.request) self.assertEqual("HTTP/1.1", result['version'])
def test_parse_returns_path(self): result = parse_request(self.request) self.assertEqual("/", result['path'])
def test_parse_returns_method(self): result = parse_request(self.request) self.assertEqual("POST", result['method'])