コード例 #1
0
 def test_delete_not_owned_comment(self):
     comment = Comment(user=self.admin)
     self.assertTrue(
         self.superuser.has_perm('comment.delete', comment, self.project)
     )
     self.assertTrue(self.admin.has_perm('comment.delete', comment, self.project))
     self.assertFalse(self.user.has_perm('comment.delete', comment, self.project))
コード例 #2
0
 def check_unit(self, nplurals=3, template=None, source_info=None, **kwargs):
     if nplurals == 3:
         formula = "n==0 ? 0 : n==1 ? 1 : 2"
     else:
         formula = "0"
     lang = Language.objects.create(code="zz")
     plural = Plural.objects.create(language=lang, number=nplurals, formula=formula)
     project = Project(slug="test")
     component = Component(
         slug="comp",
         project=project,
         file_format="xliff",
         template=template,
         source_language=Language.objects.get(code="en"),
     )
     translation = Translation(language=lang, component=component, plural=plural)
     # Fake file format to avoid need for actual files
     translation.store = EmptyFormat(BytesIOMode("", b""))
     unit = Unit(translation=translation, id_hash=-1, **kwargs)
     if source_info:
         for key, value in source_info.items():
             setattr(unit, key, value)
         # The dashes need special handling in XML based formats
         unit.__dict__["unresolved_comments"] = [
             Comment(comment="Weblate translator comment ---- ")
         ]
         unit.__dict__["suggestions"] = [
             Suggestion(target="Weblate translator suggestion")
         ]
     else:
         unit.__dict__["unresolved_comments"] = []
     unit.source_unit = unit
     exporter = self.get_exporter(lang, translation=translation)
     exporter.add_unit(unit)
     return self.check_export(exporter)
コード例 #3
0
ファイル: tests.py プロジェクト: BGforgeNet/weblate
 def test_cache(self):
     comment = Comment(project=self.project)
     key = ('_can_delete_comment', self.project.get_full_slug())
     self.assertTrue(not hasattr(self.user, 'acl_permissions_cache'))
     self.assertFalse(can_delete_comment(self.user, comment))
     self.assertFalse(self.user.acl_permissions_cache[key])
     self.user.acl_permissions_cache[key] = True
     self.assertTrue(can_delete_comment(self.user, comment))
コード例 #4
0
 def test_delete_owned_comment(self):
     comment = Comment(user=self.user)
     self.assertTrue(
         self.superuser.has_perm("comment.delete", comment, self.project))
     self.assertTrue(
         self.admin.has_perm("comment.delete", comment, self.project))
     self.assertTrue(
         self.user.has_perm("comment.delete", comment, self.project))
コード例 #5
0
ファイル: tests.py プロジェクト: tm1000/weblate
 def test_cache(self):
     comment = Comment(project=self.project)
     key = ('_can_delete_comment',
            '{}-{}'.format(self.project.__class__.__name__,
                           self.project.pk))
     self.assertTrue(not hasattr(self.user, 'acl_permissions_cache'))
     self.assertFalse(can_delete_comment(self.user, comment))
     self.assertFalse(self.user.acl_permissions_cache[key])
     self.user.acl_permissions_cache[key] = True
     self.assertTrue(can_delete_comment(self.user, comment))
コード例 #6
0
ファイル: test_permissions.py プロジェクト: APSL/weblate
 def test_override_admin(self):
     comment = Comment(project=self.project, user=self.admin)
     self.assertTrue(
         self.superuser.has_perm('comment.delete', comment, self.project)
     )
     self.assertTrue(
         self.admin.has_perm('comment.delete', comment, self.project)
     )
     self.assertFalse(
         self.user.has_perm('comment.delete', comment, self.project)
     )
コード例 #7
0
ファイル: tests.py プロジェクト: BGforgeNet/weblate
 def test_delete_comment_user(self):
     comment = Comment(project=self.project)
     self.assertFalse(can_delete_comment(self.user, comment))
コード例 #8
0
ファイル: tests.py プロジェクト: BGforgeNet/weblate
 def test_delete_comment_owner(self):
     comment = Comment(project=self.project)
     self.assertTrue(can_delete_comment(self.owner, comment))
コード例 #9
0
def fake_get_comments():
    return [Comment(comment="Weblate translator comment")]
コード例 #10
0
ファイル: test_permissions.py プロジェクト: renatofb/weblate
 def test_delete_not_owned_comment(self):
     comment = Comment(unit=self.get_unit(), user=self.admin)
     self.assertTrue(self.superuser.has_perm("comment.delete", comment))
     self.assertTrue(self.admin.has_perm("comment.delete", comment))
     self.assertFalse(self.user.has_perm("comment.delete", comment))