test_privacy_chores.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. from datetime import timedelta
  2. from django.core.management import call_command
  3. from django.utils import timezone
  4. from api import settings
  5. from desecapi.models import User
  6. from desecapi.tests.base import DesecTestCase
  7. class PrivacyChoresCommandTest(DesecTestCase):
  8. def test_delete_registration_ip(self):
  9. name1 = self.random_username()
  10. name2 = self.random_username()
  11. User(
  12. email=name1,
  13. registration_remote_ip='1.3.3.7',
  14. ).save()
  15. User(
  16. email=name2,
  17. registration_remote_ip='1.3.3.8',
  18. ).save()
  19. user2 = User.objects.get(email=name2)
  20. user2.created = timezone.now()-timedelta(hours=settings.ABUSE_BY_REMOTE_IP_PERIOD_HRS+1)
  21. user2.save()
  22. user_count = User.objects.all().count()
  23. call_command('privacy-chores')
  24. self.assertEqual(User.objects.all().count(), user_count)
  25. self.assertEqual(User.objects.get(email=name1).registration_remote_ip, '1.3.3.7')
  26. self.assertEqual(User.objects.get(email=name2).registration_remote_ip, '')