Esempio n. 1
0
class GroupDetailTest(TestCase):
    def setUp(self):
        super(GroupDetailTest, self).setUp()

        self.user = UserFactory()

        # setup for books
        self.book = BookFactory()

        # setup for groups
        self.bookGroup = self.book.group

        # add members
        self.bookGroup.members.add(1)

    def tearDown(self):
        self.user.delete()

    def test_accounts(self):
        self.dispatcher = reverse('portal:group', kwargs={'groupid': self.bookGroup.url_name})
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)

    def test_group(self):
        self.dispatcher = reverse('portal:group', kwargs={'groupid': self.bookGroup.url_name})
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)
Esempio n. 2
0
    def setUp(self):
        """
        Sets common attributes for test cases
        """
        self.superuser = UserFactory(is_superuser=True)
        self.user = UserFactory()
        self.staffuser = UserFactory(is_staff=True)

        # create a permission in DB
        self.can_test_permission = PermissionFactory(app_name=APP_NAME,
                                                     name=CODE_NAME)

        # create role with permission
        self.bookrole = BookRoleFactory()
        self.role = self.bookrole.role
        self.role.permissions.add(self.can_test_permission)

        # add bookrole to common user
        self.user.roles.add(self.bookrole)

        # create role "registered_user"
        self.role_registered_user = RoleFactory()
        # create "content.register" permission
        self.can_content_register_permission = PermissionFactory(
            app_name="content", name="register")
        # add permission to role
        self.role_registered_user.permissions.add(
            self.can_content_register_permission)
Esempio n. 3
0
class GroupDetailTest(TestCase):
    def setUp(self):
        super(GroupDetailTest, self).setUp()

        self.user = UserFactory()

        # setup for books
        self.book = BookFactory()

        # setup for groups
        self.bookGroup = self.book.group

        # add members
        self.bookGroup.members.add(1)

    def tearDown(self):
        self.user.delete()

    def test_accounts(self):
        self.dispatcher = reverse('portal:group',
                                  kwargs={'groupid': self.bookGroup.url_name})
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)

    def test_group(self):
        self.dispatcher = reverse('portal:group',
                                  kwargs={'groupid': self.bookGroup.url_name})
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)
Esempio n. 4
0
    def setUp(self):
        super(GroupListTest, self).setUp()

        self.dispatcher = reverse('portal:list_groups')
        self.user = UserFactory()

        # setup for groups
        self.bookGroup = BookGroupFactory(members=(0, 1))
Esempio n. 5
0
    def setUp(self):
        super(FrontpageTest, self).setUp()

        self.dispatcher = reverse('portal:frontpage')
        self.user = UserFactory()

        # setup for groups
        BookGroupFactory(members=(0, 1))

        # setup for books
        BookFactory()
Esempio n. 6
0
    def setUp(self):
        super(GroupDetailTest, self).setUp()

        self.user = UserFactory()

        # setup for books
        self.book = BookFactory()

        # setup for groups
        self.bookGroup = self.book.group

        # add members
        self.bookGroup.members.add(1)
Esempio n. 7
0
    def setUp(self):
        """
        Sets common attributes for test cases
        """
        self.superuser = UserFactory(is_superuser=True)
        self.user = UserFactory()

        # create a permission in DB
        self.can_test_permission = PermissionFactory(app_name=APP_NAME,
                                                     name=CODE_NAME)

        # create role with permission
        self.bookrole = BookRoleFactory()
        self.role = self.bookrole.role
        self.role.permissions.add(self.can_test_permission)
Esempio n. 8
0
    def setUp(self):
        super(LogBookHistoryTestCase, self).setUp()

        self.book = BookFactory()
        self.book_version = BookVersionFactory(book=self.book)
        self.chapter = ChapterFactory(book=self.book)
        self.user = UserFactory()
Esempio n. 9
0
    def setUp(self):
        super(GroupListTest, self).setUp()

        self.dispatcher = reverse('portal:list_groups')
        self.user = UserFactory()

        # setup for groups
        self.bookGroup = BookGroupFactory(members=(0, 1))
Esempio n. 10
0
    def setUp(self):
        super(FrontpageTest, self).setUp()

        self.dispatcher = reverse('portal:frontpage')
        self.user = UserFactory()

        # setup for groups
        BookGroupFactory(members=(0, 1))

        # setup for books
        BookFactory()
Esempio n. 11
0
class FrontpageTest(TestCase):

    def setUp(self):
        super(FrontpageTest, self).setUp()

        self.dispatcher = reverse('portal:frontpage')
        self.user = UserFactory()

        # setup for groups
        BookGroupFactory(members=(0, 1))

        # setup for books
        BookFactory()

    def tearDown(self):
        self.user.delete()

    def test_frontpage(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertEquals(response.context['title'], 'Home')

    def test_books(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertNotContains(response, 'book title')

    def test_people(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertNotContains(response, 'user_')

    def test_groups(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)

        self.assertNotContains(response, 'group name')
        self.assertNotContains(response, 'url_group_name')
        self.assertNotContains(response, 'booki group description')
        self.assertNotContains(response, 'Members: 1')
        self.assertNotContains(response, 'Books: ')
Esempio n. 12
0
class GroupListTest(TestCase):
    def setUp(self):
        super(GroupListTest, self).setUp()

        self.dispatcher = reverse('portal:list_groups')
        self.user = UserFactory()

        # setup for groups
        self.bookGroup = BookGroupFactory(members=(0, 1))

    def tearDown(self):
        self.user.delete()

    def test_accounts(self):
        response = self.client.get(self.dispatcher)

        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)

    def test_anonymous_group(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)
Esempio n. 13
0
class FrontpageTest(TestCase):
    def setUp(self):
        super(FrontpageTest, self).setUp()

        self.dispatcher = reverse('portal:frontpage')
        self.user = UserFactory()

        # setup for groups
        BookGroupFactory(members=(0, 1))

        # setup for books
        BookFactory()

    def tearDown(self):
        self.user.delete()

    def test_frontpage(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertEquals(response.context['title'], 'Home')

    def test_books(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertNotContains(response, 'book title')

    def test_people(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)
        self.assertNotContains(response, 'user_')

    def test_groups(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_200_OK)

        self.assertNotContains(response, 'group name')
        self.assertNotContains(response, 'url_group_name')
        self.assertNotContains(response, 'booki group description')
        self.assertNotContains(response, 'Members: 1')
        self.assertNotContains(response, 'Books: ')
Esempio n. 14
0
class GroupListTest(TestCase):

    def setUp(self):
        super(GroupListTest, self).setUp()

        self.dispatcher = reverse('portal:list_groups')
        self.user = UserFactory()

        # setup for groups
        self.bookGroup = BookGroupFactory(members=(0, 1))

    def tearDown(self):
        self.user.delete()

    def test_accounts(self):
        response = self.client.get(self.dispatcher)

        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)

    def test_anonymous_group(self):
        response = self.client.get(self.dispatcher)
        self.assertEquals(response.status_code, status.HTTP_403_FORBIDDEN)
Esempio n. 15
0
    def setUp(self):
        super(GroupDetailTest, self).setUp()

        self.user = UserFactory()

        # setup for books
        self.book = BookFactory()

        # setup for groups
        self.bookGroup = self.book.group

        # add members
        self.bookGroup.members.add(1)
Esempio n. 16
0
    def test_as_not_owner(self):
        # first login as other user not owner or admin
        other_user = UserFactory()

        self.client.login(username=other_user.username,
                          password=PLAIN_USER_PASSWORD)

        # ---- POST method -----
        response = self.client.post(self.dispatcher,
                                    dict(title=self.book.title))

        # response status code should be 200
        self.assertEquals(response.status_code, status.HTTP_200_OK)

        # template must be the delete_error_template, because user doesn't
        # have enough rights to delete the book
        self.assertTemplateUsed(response, "reader/book_delete_error.html")
Esempio n. 17
0
    def setUp(self):
        super(DashboardTest, self).setUp()

        self.book = BookFactory()
        self.book.version = BookVersionFactory(
            book=self.book)  # TODO: improve this
        self.book.save()
        self.user_1 = self.book.owner

        # need two users to be able to test collaboration within a book
        self.user_2 = UserFactory()

        # setup book content
        chapter_1 = ChapterFactory(book=self.book, version=self.book.version)
        chapter_2 = ChapterFactory(book=self.book, version=self.book.version)

        # setup content for user two in same book
        # call this "Contribution"
        book_history = BookHistoryFactory(book=self.book,
                                          user=self.user_2,
                                          chapter=chapter_2)

        self.dispatcher = reverse('accounts:view_profile',
                                  args=[self.user_1.username])