Ejemplo n.º 1
0
 def test_is_submission_allowed_pass(self, incr_mock):
     checker = utils.UploadRestrictionChecker(self.request)
     assert checker.is_submission_allowed()
     assert incr_mock.call_count == 1
     assert incr_mock.call_args_list[0][0] == (
         'devhub.is_submission_allowed.success', )
     assert not UserRestrictionHistory.objects.exists()
Ejemplo n.º 2
0
 def test_user_is_allowed_to_bypass_restrictions(self, incr_mock):
     IPNetworkUserRestriction.objects.create(network='10.0.0.0/24')
     self.request.user.update(bypass_upload_restrictions=True)
     checker = utils.UploadRestrictionChecker(self.request)
     assert checker.is_submission_allowed()
     assert not UserRestrictionHistory.objects.exists()
     assert incr_mock.call_count == 0
Ejemplo n.º 3
0
 def test_is_submission_allowed_ip_restricted(self):
     IPNetworkUserRestriction.objects.create(network='127.0.0.0/24')
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'Multiple add-ons violating our policies have been submitted '
         'from your location. The IP address has been blocked.')
Ejemplo n.º 4
0
 def test_is_submission_allowed_email_restricted(self):
     EmailUserRestriction.objects.create(
         email_pattern=self.request.user.email)
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'The email address you used for your developer account is not '
         'allowed for add-on submission.')
Ejemplo n.º 5
0
 def test_is_submission_allowed_bypassing_read_dev_agreement(
         self, incr_mock):
     self.request.user.update(read_dev_agreement=None)
     checker = utils.UploadRestrictionChecker(self.request)
     assert checker.is_submission_allowed(check_dev_agreement=False)
     assert incr_mock.call_count == 1
     assert incr_mock.call_args_list[0][0] == (
         'devhub.is_submission_allowed.success', )
     assert not UserRestrictionHistory.objects.exists()
Ejemplo n.º 6
0
 def test_is_submission_allowed_hasnt_read_agreement(self):
     self.request.user.update(read_dev_agreement=None)
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'Before starting, please read and accept our Firefox Add-on '
         'Distribution Agreement as well as our Review Policies and Rules. '
         'The Firefox Add-on Distribution Agreement also links to our '
         'Privacy Notice which explains how we handle your information.')
Ejemplo n.º 7
0
 def test_is_submission_allowed_ip_restricted(self, incr_mock):
     IPNetworkUserRestriction.objects.create(network='10.0.0.0/24')
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'Multiple add-ons violating our policies have been submitted '
         'from your location. The IP address has been blocked.')
     assert incr_mock.call_count == 2
     assert incr_mock.call_args_list[0][0] == (
         'devhub.is_submission_allowed.IPNetworkUserRestriction.failure', )
     assert incr_mock.call_args_list[1][0] == (
         'devhub.is_submission_allowed.failure', )
     assert UserRestrictionHistory.objects.count() == 1
     history = UserRestrictionHistory.objects.get()
     assert history.get_restriction_display() == 'IPNetworkUserRestriction'
     assert history.user == self.request.user
     assert history.last_login_ip == self.request.user.last_login_ip
     assert history.ip_address == '10.0.0.1'
Ejemplo n.º 8
0
 def test_is_submission_allowed_email_restricted(self, incr_mock):
     EmailUserRestriction.objects.create(
         email_pattern=self.request.user.email)
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'The email address used for your account is not '
         'allowed for add-on submission.')
     assert incr_mock.call_count == 2
     assert incr_mock.call_args_list[0][0] == (
         'devhub.is_submission_allowed.EmailUserRestriction.failure', )
     assert incr_mock.call_args_list[1][0] == (
         'devhub.is_submission_allowed.failure', )
     assert UserRestrictionHistory.objects.count() == 1
     history = UserRestrictionHistory.objects.get()
     assert history.get_restriction_display() == 'EmailUserRestriction'
     assert history.user == self.request.user
     assert history.last_login_ip == self.request.user.last_login_ip
     assert history.ip_address == '10.0.0.1'
Ejemplo n.º 9
0
 def test_is_submission_allowed_hasnt_read_agreement(self, incr_mock):
     self.request.user.update(read_dev_agreement=None)
     checker = utils.UploadRestrictionChecker(self.request)
     assert not checker.is_submission_allowed()
     assert checker.get_error_message() == (
         'Before starting, please read and accept our Firefox Add-on '
         'Distribution Agreement as well as our Review Policies and Rules. '
         'The Firefox Add-on Distribution Agreement also links to our '
         'Privacy Notice which explains how we handle your information.')
     assert incr_mock.call_count == 2
     assert incr_mock.call_args_list[0][0] == (
         'devhub.is_submission_allowed.DeveloperAgreementRestriction'
         '.failure', )
     assert incr_mock.call_args_list[1][0] == (
         'devhub.is_submission_allowed.failure', )
     assert UserRestrictionHistory.objects.count() == 1
     history = UserRestrictionHistory.objects.get()
     assert history.get_restriction_display() == (
         'DeveloperAgreementRestriction')
     assert history.user == self.request.user
     assert history.last_login_ip == self.request.user.last_login_ip
     assert history.ip_address == '10.0.0.1'
Ejemplo n.º 10
0
 def test_is_submission_allowed_bypassing_read_dev_agreement(self):
     self.request.user.update(read_dev_agreement=None)
     checker = utils.UploadRestrictionChecker(self.request)
     assert checker.is_submission_allowed(check_dev_agreement=False)
Ejemplo n.º 11
0
 def test_is_submission_allowed_pass(self):
     checker = utils.UploadRestrictionChecker(self.request)
     assert checker.is_submission_allowed()