Adjust risk scoring for established users
This commit is contained in:
@@ -35,9 +35,25 @@ class RiskScoringServiceTests(unittest.TestCase):
|
||||
self.assertEqual(assessment.decision, "manual_review")
|
||||
self.assertGreaterEqual(assessment.score, 60)
|
||||
self.assertIn("new_account", assessment.reasons)
|
||||
self.assertIn("large_amount", assessment.reasons)
|
||||
self.assertIn("new_account_large_amount", assessment.reasons)
|
||||
self.assertIn("velocity_spike", assessment.reasons)
|
||||
|
||||
|
||||
def test_old_verified_individual_can_pay_large_amount_without_risk_penalty(self):
|
||||
service = RiskScoringService()
|
||||
user = UserEntity(
|
||||
id="user_1",
|
||||
account_type="individual",
|
||||
kyc_verified=True,
|
||||
created_at=datetime.now(timezone.utc) - timedelta(days=90),
|
||||
)
|
||||
|
||||
assessment = service.assess_order(user=user, total_price=Decimal("999999.00"), recent_order_count=0)
|
||||
|
||||
self.assertEqual(assessment.decision, "allow")
|
||||
self.assertEqual(assessment.score, 0)
|
||||
self.assertEqual(assessment.reasons, [])
|
||||
|
||||
def test_legal_entity_is_not_scored(self):
|
||||
service = RiskScoringService()
|
||||
user = UserEntity(id="org_1", account_type="legal_entity", kyc_verified=False)
|
||||
|
||||
Reference in New Issue
Block a user