Esempio n. 1
0
    def setUp(self):
        super().setUp()

        # Create a floating resource
        self.user = UserFactory.build(
            full_name='John Lennon',
            username='******'
        )
        self.last_updated = datetime.now()
        self.resource = ResourceFactory.build(
            name='Resource Name',
            file='https://example.com/file.txt',
            original_file='original_file.jpg',
            mime_type='image/png',
            contributor=self.user,
            last_updated=self.last_updated,
        )

        # Attach it to a project
        project = ProjectFactory.create()
        ContentObject.objects.create(
            resource=self.resource,
            content_type=ContentType.objects.get_for_model(project),
            object_id=project.id,
        )
Esempio n. 2
0
 def setUp(self):
     self.user = UserFactory.build()
     self.user.save()
     self.order = PaymentOrderFactory.build(
         user=self.user,
         backend=models.BACKEND_LIQPAY,
         sum=Decimal('150.00')
     )
     self.order.save()
     order_json = order2json(self.order)
     order_crypted = encrypt(get_password(), order_json)
     liqpay = LiqPayIntegration({
         'sandbox': 1
     })
     self.payment_attributes = {
         'status': 'sandbox',
         'public_key': liqpay._public_key,
         'description': 'Test payment 1',
         'order_id': order_crypted,
         'liqpay_order_id': '3495616u1427211195433822',
         'currency': LIQPAY_CCY_UAH,
         'amount': Decimal('150.00'),
         'version': '2',
         'receiver_commission': [u'4.13'],
         'signature': '',
         'sender_phone': '380971234567',
         'type': 'buy',
         'transaction_id': '53444440'
     }
     signature = liqpay.res_signature(self.payment_attributes)
     self.payment_attributes['signature'] = signature
Esempio n. 3
0
 def test_init(self):
     ensure_dirs()
     user = UserFactory.build()
     project = ProjectFactory.build()
     form = forms.DownloadForm(project, user)
     assert form.project == project
     assert form.user == user
Esempio n. 4
0
 def test_repr(self):
     user = UserFactory.build(username='******')
     org = OrganizationFactory.build(slug='org')
     role = OrganizationRole(id='abc123', user=user, organization=org,
                             admin=True)
     assert repr(role) == ('<OrganizationRole id=abc123 user=john'
                           ' organization=org admin=True>')
Esempio n. 5
0
 def test_init(self):
     ensure_dirs()
     user = UserFactory.build()
     project = ProjectFactory.build()
     form = forms.DownloadForm(project, user)
     assert form.project == project
     assert form.user == user
Esempio n. 6
0
 def setUp(self):
     self.user = UserFactory.build(username='******',
                                   email='*****@*****.**',
                                   full_name='Bob Smith')
     self.widget = widgets.ProjectRoleWidget(user=self.user,
                                             role='A',
                                             choices=FORM_CHOICES)
Esempio n. 7
0
    def test_clean_username(self) -> None:
        # A user with proto_user params does not exist yet.
        proto_user = UserFactory.build()

        form = UserCreationForm({
            "username": proto_user.username,
            "password1": proto_user._password,
            "password2": proto_user._password,
        })

        assert form.is_valid()
        assert form.clean_username() == proto_user.username

        # Creating a user.
        form.save()

        # The user with proto_user params already exists,
        # hence cannot be created.
        form = UserCreationForm({
            "username": proto_user.username,
            "password1": proto_user._password,
            "password2": proto_user._password,
        })

        assert not form.is_valid()
        assert len(form.errors) == 1
        assert "username" in form.errors
Esempio n. 8
0
 def setUp(self):
     self.user = UserFactory.build(username='******',
                                   email='*****@*****.**',
                                   full_name='Bob Smith')
     self.prj = ProjectFactory.create(name='Project One')
     self.widget = widgets.ProjectRoleEditWidget(admin=True,
                                                 project=self.prj,
                                                 choices=FORM_CHOICES)
Esempio n. 9
0
def test_pings_on_user_save(fake_send_update_ping, settings):
    settings.SSO_ENDPOINTS = TEST_SSO_ENDPOINTS

    user = UserFactory.build()
    fake_send_update_ping.assert_not_called()

    user.save()
    fake_send_update_ping.assert_called_once_with(user)
Esempio n. 10
0
 def test_init(self):
     user = UserFactory.build()
     choices = ((
         'Ab',
         'Ahh Bee',
     ), )
     field = org_fields.ProjectRoleField(user, choices=choices)
     assert field.widget.user == user
     assert field.widget.choices == [choices[0]]
Esempio n. 11
0
def test_pings_on_user_save(fake_send_update_ping, settings):
    settings.DISCOURSE_SERVER = 'http://discourse.example.com'
    settings.DISCOURSE_API_KEY = 'discourse-api-key'

    user = UserFactory.build()
    fake_send_update_ping.assert_not_called()

    user.save()
    fake_send_update_ping.assert_called_once_with(user)
Esempio n. 12
0
 def setUp(self):
     self.user = UserFactory.build(
         username='******',
         email='*****@*****.**',
         full_name='Bob Smith'
     )
     self.widget = widgets.ProjectRoleWidget(user=self.user,
                                             role='A',
                                             choices=FORM_CHOICES)
Esempio n. 13
0
 def test_repr(self):
     user = UserFactory.build(username='******')
     org = OrganizationFactory.build(slug='org')
     role = OrganizationRole(id='abc123',
                             user=user,
                             organization=org,
                             admin=True)
     assert repr(role) == ('<OrganizationRole id=abc123 user=john'
                           ' organization=org admin=True>')
Esempio n. 14
0
 def setUp(self):
     self.user = UserFactory.build(
         username='******',
         email='*****@*****.**',
         full_name='Bob Smith'
     )
     self.prj = ProjectFactory.create(name='Project One')
     self.widget = widgets.ProjectRoleEditWidget(admin=True,
                                                 project=self.prj,
                                                 choices=FORM_CHOICES)
Esempio n. 15
0
 def setUp(self):
     test_avatar_path = settings.DEFAULT_AVATAR
     self.user = UserFactory.build(
         username='******',
         email='*****@*****.**',
         full_name='Bob Smith',
         avatar=test_avatar_path,
     )
     self.widget = widgets.ProjectRoleWidget(user=self.user,
                                             role='A',
                                             choices=FORM_CHOICES)
Esempio n. 16
0
 def test_repr(self):
     user = UserFactory.build(username='******')
     questionnaire = QuestionnaireFactory(title='questions')
     json = {'key': 'value'}
     instanceID = '19f004e7-d16f-49d0-abcc-a73762c6d102'
     submission = XFormSubmission(id='abc123',
                                  user=user,
                                  questionnaire=questionnaire,
                                  instanceID=instanceID,
                                  json_submission=json)
     assert repr(submission) == ('<XFormSubmission id=abc123 user=john'
                                 ' questionnaire=questions'
                                 ' json_submission={json}'
                                 ' instanceID={instance}'
                                 ' spatial_units=[]'
                                 ' parties=[]'
                                 ' tenure_relationships=[]>'
                                 ).format(json=dumps(json),
                                          instance=instanceID)
Esempio n. 17
0
    def setUp(self):
        super().setUp()

        # Create a floating resource
        self.user = UserFactory.build(full_name='John Lennon', username='******')
        self.last_updated = datetime.now()
        self.resource = ResourceFactory.build(
            name='Resource Name',
            file='https://example.com/file.txt',
            original_file='original_file.jpg',
            mime_type='image/png',
            contributor=self.user,
            last_updated=self.last_updated,
        )

        # Attach it to a project
        project = ProjectFactory.create()
        ContentObject.objects.create(
            resource=self.resource,
            content_type=ContentType.objects.get_for_model(project),
            object_id=project.id,
        )
Esempio n. 18
0
def test_send_update_ping(settings):
    fake_send_post = unittest.mock.MagicMock()
    fake_discourse_signer = unittest.mock.MagicMock()
    fake_discourse_signer.sign.return_value = ('payload', 'signature')

    user = UserFactory.build(pk=10101,
                             email='*****@*****.**',
                             username='******',
                             mc_username='******',
                             gh_username='******',
                             irc_nick='XxXmeepXxX')

    settings.DISCOURSE_SERVER = 'http://discourse.example.com'
    settings.DISCOURSE_API_KEY = 'discourse-api-key'
    send_update_ping(user, send_post=fake_send_post, sso=fake_discourse_signer)

    fake_send_post.assert_called_once_with(
        'http://discourse.example.com/admin/users/sync_sso',
        data={
            'sso': 'payload',
            'sig': 'signature',
            'api_key': 'discourse-api-key',
            'api_username': '******'
        })
    fake_discourse_signer.sign.assert_called_once_with({
        'nonce': '10101',
        'email': '*****@*****.**',
        'require_activation': 'false',
        'external_id': 10101,
        'username': '******',
        'name': 'foo_',
        'custom.user_field_1': 'meep',
        'custom.user_field_2': 'XxXmeepXxX',
        'custom.user_field_3': 'meeep',
        'moderator': False,
        'admin': False
    })
Esempio n. 19
0
    def test_schedule_project_export(self, export_task, token_mgr):
        proj = ProjectFactory.build(id='abcd')
        user = UserFactory.build(id=123)
        output_type = 'all'
        token_mgr.return_value.generate_token.return_value = 'fakeKey'

        schedule_project_export(proj, user, output_type)

        # Assert token generated
        token_mgr.assert_called_once_with(
            endpoints={
                'GET': [
                    reverse('api:v1:organization:project_detail',
                            kwargs={
                                'organization': proj.organization.slug,
                                'project': proj.slug
                            })
                ]
            },
            max_age=43200,
            recipient='export-service',
            user=user,
        )
        token_mgr.return_value.generate_token.assert_called_once_with()

        # Assert task scheduled
        export_task.apply_async.assert_called_once_with(
            kwargs={
                'output_type': output_type,
                'org_slug': proj.organization.slug,
                'project_slug': proj.slug,
                'api_key': 'fakeKey',
            },
            creator_id=user.id,
            related_content_type_id=ContentType.objects.get_for_model(proj).id,
            related_object_id=proj.id,
        )
Esempio n. 20
0
def test_str_user():
    user = UserFactory.build(first_name='julian', last_name='cortes')
    assert user.__str__() == 'julian cortes'
Esempio n. 21
0
def test_send_email():
    user = UserFactory.build()
    was_sent = user.send_email(subject='test',
                               message='message test',
                               from_email='*****@*****.**')
    assert was_sent is True
Esempio n. 22
0
def test_get_full_name_without_first_name_or_last_name(first_name, last_name):
    user = UserFactory.build(first_name=first_name, last_name=last_name)
    assert user.get_full_name() == '*****@*****.**'
Esempio n. 23
0
def test_get_full_name():
    user = UserFactory.build(first_name='julian', last_name='cortes')
    assert user.get_full_name() == 'julian cortes'
Esempio n. 24
0
def test_str_user_without_first_name_or_last_name(first_name, last_name):
    user = UserFactory.build(first_name=first_name, last_name=last_name)
    assert user.__str__() == '*****@*****.**'
Esempio n. 25
0
 def test_init(self):
     user = UserFactory.build()
     choices = (("Ab", "Ahh Bee"),)
     field = org_fields.ProjectRoleField(user, choices=choices)
     assert field.widget.user == user
     assert field.widget.choices == [choices[0]]
Esempio n. 26
0
 def test_repr(self):
     user = UserFactory.build(username='******')
     project = ProjectFactory.build(slug='prj')
     role = ProjectRole(id='abc123', user=user, project=project, role='DC')
     assert repr(role) == ('<ProjectRole id=abc123 user=john project=prj '
                           'role=DC>')
Esempio n. 27
0
 def test_repr(self):
     user = UserFactory.build(username='******')
     project = ProjectFactory.build(slug='prj')
     role = ProjectRole(id='abc123', user=user, project=project, role='DC')
     assert repr(role) == ('<ProjectRole id=abc123 user=john project=prj '
                           'role=DC>')