Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class IdScoreCheck(SaveTestResults, unittest.TestCase):
- def setUp(self):
- fake = Faker()
- self.payload = {
- "user_id": fake.isbn10(),
- "email": fake.ascii_email(),
- "address_street": fake.street_address(),
- "address_subdivision": fake.secondary_address(),
- "address_city": fake.city(),
- "address_postal_code": fake.postcode(),
- "address_country_code": fake.country_code(),
- "ip_address": fake.ipv4(),
- "name": fake.name(),
- "phone_number": fake.phone_number()
- }
- def test_payload_requires_user_id(self):
- del self.payload["user_id"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'user_id' is a required property")
- def test_payload_requires_a_email(self):
- del self.payload["email"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'email' is a required property")
- def test_payload_requires_address_street(self):
- del self.payload["address_street"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'address_street' is a required property")
- def test_payload_requires_address_subdivision(self):
- del self.payload["address_subdivision"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'address_subdivision' is a required property")
- def test_payload_requires_address_city(self):
- del self.payload["address_city"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'address_city' is a required property")
- def test_payload_requires_address_postal_code(self):
- del self.payload["address_postal_code"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'address_postal_code' is a required property")
- def test_payload_requires_address_country_code(self):
- del self.payload["address_country_code"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'address_country_code' is a required property")
- def test_payload_requires_ip_address(self):
- del self.payload["ip_address"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'ip_address' is a required property")
- def test_payload_requires_name(self):
- del self.payload["name"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'name' is a required property")
- def test_payload_requires_phone_number(self):
- del self.payload["phone_number"]
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 400)
- self.assertRegex(response_json["message"], "'phone_number' is a required property")
- def test_id_score_class_requires_a_object(self):
- self.assertRaises(TypeError, lambda: IdScore())
- def test_id_score_instance_has_result_attribute(self):
- id_score = IdScore(self.payload)
- self.assertTrue(hasattr(id_score, 'result'))
- def test_id_score_instance_has_document_attribute(self):
- id_score = IdScore(self.payload)
- self.assertTrue(hasattr(id_score, 'document'))
- def test_id_score_instance_has_id_score_attribute(self):
- id_score = IdScore(self.payload)
- self.assertTrue(hasattr(id_score, 'id_score'))
- self.assertEqual(id_score.id_score, 0)
- def test_id_score_instance_has_cost_attribute(self):
- id_score = IdScore(self.payload)
- self.assertTrue(hasattr(id_score, 'cost'))
- def test_id_score_instance_with_result_attribute_contains_email_obj(self):
- id_score = IdScore(self.payload)
- self.assertEqual(id_score.result["EMAIL"]["result"], "ERROR")
- self.assertEqual(id_score.result["EMAIL"]["api"], {})
- def test_id_score_instance_with_result_attribute_contains_phone_number_obj(self):
- id_score = IdScore(self.payload)
- self.assertEqual(id_score.result["PHONE_NUMBER"]["result"], "ERROR")
- self.assertEqual(id_score.result["PHONE_NUMBER"]["api"], {})
- def test_id_score_instance_with_result_attribute_contains_ip_address_obj(self):
- id_score = IdScore(self.payload)
- self.assertEqual(id_score.result["IP"]["result"], "ERROR")
- self.assertEqual(id_score.result["IP"]["api"], {})
- def test_id_score_instance_with_result_attribute_contains_address_obj(self):
- id_score = IdScore(self.payload)
- self.assertEqual(id_score.result["ADDRESS"]["result"], "ERROR")
- self.assertEqual(id_score.result["ADDRESS"]["api"], {})
- @patch('data.log_call')
- @patch('data.IdScore.calculate_score')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- class IdScoreCheckIpWithAPIS(SaveTestResults, unittest.TestCase):
- def setUp(self):
- fake = Faker()
- self.payload = {
- "user_id": fake.isbn10(),
- "email": fake.ascii_email(),
- "address_street": fake.street_address(),
- "address_subdivision": fake.secondary_address(),
- "address_city": fake.city(),
- "address_postal_code": fake.postcode(),
- "address_country_code": fake.country_code(),
- "ip_address": fake.ipv4(),
- "name": fake.name(),
- "phone_number": fake.phone_number()
- }
- def test_ip_address_found_on_fraudguard_api(self, mock_check_email, mock_check_phone, mock_check_address, mock_calculate_score, mock_log_call):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_calculate_score.return_value=mock_log_call.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertTrue(response_json["base_result"]["IP"]["api"]["fraudguard"])
- self.assertEqual(response_json["results"]["fraudguard_response"], 1)
- self.assertEqual(response_json["cost"]["fraudguard_cost"], 0.001)
- def test_ip_address_found_on_ip_stack_api(self, mock_check_email, mock_check_phone, mock_check_address, mock_calculate_score, mock_log_call):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_calculate_score.return_value=mock_log_call.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertTrue(response_json["base_result"]["IP"]["api"]["ip_stack"])
- self.assertEqual(response_json["results"]["ip_stack_response"], 1)
- self.assertEqual(response_json["cost"]["ip_stack_cost"], 0.001)
- class IdScoreCheckIpCalculateScore(SaveTestResults, unittest.TestCase):
- def setUp(self):
- fake = Faker()
- self.payload = {
- "user_id": fake.isbn10(),
- "email": fake.ascii_email(),
- "address_street": fake.street_address(),
- "address_subdivision": fake.secondary_address(),
- "address_city": fake.city(),
- "address_postal_code": fake.postcode(),
- "address_country_code": fake.country_code(),
- "ip_address": fake.ipv4(),
- "name": fake.name(),
- "phone_number": fake.phone_number()
- }
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_total_score(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- @patch('data.location_match')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_with_location_match(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_location_match):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_location_match.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_location_match"],1)
- @patch('data.location_match')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_without_location_match(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_location_match):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_location_match.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_location_match"],-1)
- @patch('data.IdScore.fraudguard_risk_level_is_no_risk_or_open_proxy')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_with_risk_level_is_unknown_or_open_proxy(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_fraudguard_risk_level_is_no_risk_or_open_proxy):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_fraudguard_risk_level_is_no_risk_or_open_proxy.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_risk_level_no_risk_or_open_proxy"],1)
- @patch('data.IdScore.fraudguard_risk_level_is_no_risk_or_open_proxy')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_with_risk_level_is_not_unknown_or_open_proxy(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_fraudguard_risk_level_is_no_risk_or_open_proxy):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_fraudguard_risk_level_is_no_risk_or_open_proxy.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_risk_level_no_risk_or_open_proxy"],-1)
- @patch('data.IdScore.fraudguard_threat_level_is_unknown')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_with_threat_level_unknown(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_fraudguard_threat_level_is_unknown):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_fraudguard_threat_level_is_unknown.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_threat_unknown"],1)
- @patch('data.IdScore.fraudguard_threat_level_is_unknown')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_fraudguard_without_threat_level_unknown(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_fraudguard_threat_level_is_unknown):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_fraudguard_threat_level_is_unknown.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_threat_unknown"],-1)
- @patch('orm.FraudguardAPI.check')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_no_response_from_fraudguard(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_check):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_check.return_value = {}
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["fg_location_match"],0)
- self.assertEqual(response_json["chart"]["fg_risk_level_no_risk_or_open_proxy"],0)
- self.assertEqual(response_json["chart"]["fg_risk_level_no_risk_or_open_proxy"],0)
- self.assertEqual(response_json["chart"]["fg_threat_unknown"],0)
- @patch('data.location_match')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_with_location_match(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_location_match):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_location_match.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_location_match"],1)
- @patch('data.location_match')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_without_location_match(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_location_match):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_location_match.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_location_match"],-1)
- @patch('data.IdScore.ip_stack_is_a_proxy')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_a_proxy(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_proxy):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_ip_stack_is_a_proxy.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_proxy"],1)
- @patch('data.IdScore.ip_stack_is_a_proxy')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_not_proxy(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_proxy):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_ip_stack_is_a_proxy.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_proxy"],-1)
- @patch('data.IdScore.ip_stack_is_a_crawler')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_a_crawler(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_crawler):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_ip_stack_is_a_crawler.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_crawler"],1)
- @patch('data.IdScore.ip_stack_is_a_crawler')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_not_a_crawler(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_crawler):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_ip_stack_is_a_crawler.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_crawler"],-1)
- @patch('data.IdScore.ip_stack_is_a_tor')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_a_tor(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_tor):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_ip_stack_is_a_tor.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_tor"],1)
- @patch('data.IdScore.ip_stack_is_a_tor')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_not_a_tor(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_a_tor):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_ip_stack_is_a_tor.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_is_tor"],-1)
- @patch('data.IdScore.ip_stack_is_low_threat_level')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_low_threat_level(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_low_threat_level):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_ip_stack_is_low_threat_level.return_value = True
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_threat_level_low"],1)
- @patch('data.IdScore.ip_stack_is_low_threat_level')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_on_ip_stack_is_not_low_threat_level(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_ip_stack_is_low_threat_level):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value=mock_ip_stack_is_low_threat_level.return_value = False
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_threat_level_low"],-1)
- @patch('orm.IPStack.check')
- @patch('data.log_call')
- @patch('data.IdScore.check_address')
- @patch('data.IdScore.check_phone')
- @patch('data.IdScore.check_email')
- def test_ip_address_no_response_from_ip_stack(self, mock_check_email, mock_check_phone, mock_check_address, mock_log_call, mock_check):
- mock_check_email.return_value=mock_check_phone.return_value=mock_check_address.return_value=mock_log_call.return_value = False
- mock_check.return_value = {}
- tester = app.test_client(self)
- response = tester.post('/id_score', data=json.dumps(self.payload), content_type="application/json")
- response_json = json.loads(response.data)
- self.assertEqual(response.status_code, 200)
- self.assertEqual(response_json["chart"]["ip_stack_location_match"],0)
- self.assertEqual(response_json["chart"]["ip_stack_is_proxy"],0)
- self.assertEqual(response_json["chart"]["ip_stack_is_crawler"],0)
- self.assertEqual(response_json["chart"]["ip_stack_is_tor"],0)
- self.assertEqual(response_json["chart"]["ip_stack_threat_level_low"],0)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement