def test_soft_deletes_are_not_retrieved_from_builder_helpers(self):
        self.create_users()

        count = 0
        query = SoftDeletesTestUser.query()
        for users in query.chunk(2):
            count += len(users)

        self.assertEqual(1, count)

        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.lists("email")))

        Paginator.current_page_resolver(lambda: 1)
        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.paginate(2).items))

        Paginator.current_page_resolver(lambda: 1)
        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.simple_paginate(2).items))

        self.assertEqual(
            0, SoftDeletesTestUser.where("email", "*****@*****.**").increment("id")
        )
        self.assertEqual(
            0, SoftDeletesTestUser.where("email", "*****@*****.**").decrement("id")
        )
Ejemplo n.º 2
0
    def test_returns_relevant_context(self):
        p = Paginator(['item3', 'item4', 'item5'], 2, 2)

        self.assertEqual(2, p.current_page)
        self.assertTrue(p.has_pages())
        self.assertTrue(p.has_more_pages())
        self.assertEqual(['item3', 'item4'], p.items)
        self.assertEqual(2, p.per_page)
        self.assertEqual(3, p.next_page)
        self.assertEqual(1, p.previous_page)
        self.assertEqual(3, p.first_item)
        self.assertEqual(4, p.last_item)

        self.assertEqual('item4', p[1])
Ejemplo n.º 3
0
    def init_app(self, app):
        if 'ORATOR_DATABASES' not in app.config:
            raise RuntimeError('Missing "ORATOR_DATABASES" configuration')

        self._config = app.config['ORATOR_DATABASES']

        self.Model.set_connection_resolver(self)

        # Setting current page resolver
        def current_page_resolver():
            return int(request.args.get('page', 1))

        Paginator.current_page_resolver(current_page_resolver)

        self.init_commands(app)
Ejemplo n.º 4
0
    def init_app(self, app):
        if 'ORATOR_DATABASES' not in app.config:
            raise RuntimeError('Missing "ORATOR_DATABASES" configuration')

        # Register request hooks
        self.register_handlers(app)

        # Getting config databases
        self._config = app.config['ORATOR_DATABASES']

        # Initializing database manager
        self._db = self._manager_class(self._config)

        self.Model.set_connection_resolver(self._db)

        # Setting current page resolver
        Paginator.current_page_resolver(self._current_page_resolver)

        # Setting commands
        self.init_commands()
Ejemplo n.º 5
0
    def init_app(self, app):
        if 'ORATOR_DATABASES' not in app.config:
            raise RuntimeError('Missing "ORATOR_DATABASES" configuration')

        # Register request hooks
        self.register_handlers(app)

        # Getting config databases
        self._config = app.config['ORATOR_DATABASES']

        # Initializing database manager
        self._db = self._manager_class(self._config)

        self.Model.set_connection_resolver(self._db)

        # Setting current page resolver
        Paginator.current_page_resolver(self._current_page_resolver)

        # Setting commands
        self.init_commands()
    def test_soft_deletes_are_not_retrieved_from_builder_helpers(self):
        self.create_users()

        count = 0
        query = SoftDeletesTestUser.query()
        for users in query.chunk(2):
            count += len(users)

        self.assertEqual(1, count)

        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.lists('email')))

        Paginator.current_page_resolver(lambda: 1)
        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.paginate(2).items))

        Paginator.current_page_resolver(lambda: 1)
        query = SoftDeletesTestUser.query()
        self.assertEqual(1, len(query.simple_paginate(2).items))

        self.assertEqual(0, SoftDeletesTestUser.where('email', '*****@*****.**').increment('id'))
        self.assertEqual(0, SoftDeletesTestUser.where('email', '*****@*****.**').decrement('id'))
Ejemplo n.º 7
0
    def test_current_page_resolver(self):
        def current_page_resolver():
            return 7

        Paginator.current_page_resolver(current_page_resolver)
        self.assertEqual(7, Paginator.resolve_current_page())