Beispiel #1
0
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        self.account = self.accounts_factory.create_account()

        self.task = ChangeCredentialsTaskPrototype.create(self.account,
                                                          new_email='*****@*****.**',
                                                          new_password='******',
                                                          new_nick='test_nick',
                                                          relogin_required=True)

        self.postponed_task = ChangeCredentials(task_id=self.task.id)
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        result, account_id, bundle_id = register_user('test_user', '*****@*****.**', '111111')
        self.account = AccountPrototype.get_by_id(account_id)

        self.task = ChangeCredentialsTaskPrototype.create(self.account,
                                                          new_email='*****@*****.**',
                                                          new_password='******',
                                                          new_nick='test_nick',
                                                          relogin_required=True)

        self.postponed_task = ChangeCredentials(task_id=self.task.id)
Beispiel #3
0
    def change_credentials(self):
        from the_tale.accounts.postponed_tasks import ChangeCredentials

        change_credentials_task = ChangeCredentials(task_id=self.id)
        task = PostponedTaskPrototype.create(change_credentials_task)

        environment.workers.accounts_manager.cmd_task(task.id)

        return task
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        result, account_id, bundle_id = register_user('test_user', '*****@*****.**', '111111')
        self.account = AccountPrototype.get_by_id(account_id)

        self.task = ChangeCredentialsTaskPrototype.create(self.account,
                                                          new_email='*****@*****.**',
                                                          new_password='******',
                                                          new_nick='test_nick',
                                                          relogin_required=True)

        self.postponed_task = ChangeCredentials(task_id=self.task.id)
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        self.account = self.accounts_factory.create_account()

        self.task = ChangeCredentialsTaskPrototype.create(
            self.account,
            new_email="*****@*****.**",
            new_password="******",
            new_nick="test_nick",
            relogin_required=True,
        )

        self.postponed_task = ChangeCredentials(task_id=self.task.id)
 def test_serialization(self):
     self.assertEqual(
         self.postponed_task.serialize(),
         ChangeCredentials.deserialize(
             self.postponed_task.serialize()).serialize())
class PostponedChangeCredentialsTaskTests(testcase.TestCase):
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        self.account = self.accounts_factory.create_account()

        self.task = ChangeCredentialsTaskPrototype.create(
            self.account,
            new_email='*****@*****.**',
            new_password='******',
            new_nick='test_nick',
            relogin_required=True)

        self.postponed_task = ChangeCredentials(task_id=self.task.id)

    def test_create(self):
        self.assertEqual(self.postponed_task.processed_data,
                         {'next_url': url('accounts:profile:edited')})
        self.assertEqual(self.postponed_task.task_id, self.task.id)
        self.assertTrue(self.postponed_task.state.is_UNPROCESSED)

    def test_serialization(self):
        self.assertEqual(
            self.postponed_task.serialize(),
            ChangeCredentials.deserialize(
                self.postponed_task.serialize()).serialize())

    def test_processed_view__real(self):
        self.assertEqual(self.task.process(logger=mock.Mock()),
                         None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(
            self.client.get(url('postponed-tasks:status', postponed_taks.id)))
        self.assertNotIn('_auth_user_id', self.client.session)

    def test_processed_view__logout__same_user(self):
        self.request_login(self.account.email)

        self.assertEqual(self.task.process(logger=mock.Mock()),
                         None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(
            self.client.get(url('postponed-tasks:status', postponed_taks.id)))

        self.assertNotIn('_auth_user_id', self.client.session)

    def test_processed_view__logout__other_user(self):
        account_2 = self.accounts_factory.create_account()

        self.request_login(account_2.email)

        self.assertEqual(self.task.process(logger=mock.Mock()),
                         None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(
            self.client.get(url('postponed-tasks:status', postponed_taks.id)))

        self.assertEqual(int(self.client.session.get('_auth_user_id')),
                         account_2.id)

    def test_processed_view__real__without_relogin(self):
        self.task._model.relogin_required = False
        self.task._model.save()

        self.assertEqual(self.task.process(logger=mock.Mock()),
                         None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(
            self.client.get(url('postponed-tasks:status', postponed_taks.id)))
        self.assertEqual(self.client.session.get('_auth_user_id'), None)

    def test_process__wrong_state(self):
        self.postponed_task.state = CHANGE_CREDENTIALS_STATE.PROCESSED
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()),
                         POSTPONED_TASK_LOGIC_RESULT.ERROR)
        self.assertTrue(self.postponed_task.state.is_WRONG_STATE)

    def test_process(self):
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()),
                         POSTPONED_TASK_LOGIC_RESULT.SUCCESS)
        self.assertTrue(self.postponed_task.state.is_PROCESSED)
        self.assertEqual(
            django_authenticate(nick='test_nick', password='******').email,
            '*****@*****.**')
 def test_serialization(self):
     self.assertEqual(
         self.postponed_task.serialize(), ChangeCredentials.deserialize(self.postponed_task.serialize()).serialize()
     )
class PostponedChangeCredentialsTaskTests(testcase.TestCase):
    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        self.account = self.accounts_factory.create_account()

        self.task = ChangeCredentialsTaskPrototype.create(
            self.account,
            new_email="*****@*****.**",
            new_password="******",
            new_nick="test_nick",
            relogin_required=True,
        )

        self.postponed_task = ChangeCredentials(task_id=self.task.id)

    def test_create(self):
        self.assertEqual(self.postponed_task.processed_data, {"next_url": url("accounts:profile:edited")})
        self.assertEqual(self.postponed_task.task_id, self.task.id)
        self.assertTrue(self.postponed_task.state.is_UNPROCESSED)

    def test_serialization(self):
        self.assertEqual(
            self.postponed_task.serialize(), ChangeCredentials.deserialize(self.postponed_task.serialize()).serialize()
        )

    def test_processed_view__real(self):
        self.assertEqual(self.task.process(logger=mock.Mock()), None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url("postponed-tasks:status", postponed_taks.id)))
        self.assertNotIn("_auth_user_id", self.client.session)

    def test_processed_view__logout__same_user(self):
        self.request_login(self.account.email)

        self.assertEqual(self.task.process(logger=mock.Mock()), None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url("postponed-tasks:status", postponed_taks.id)))

        self.assertNotIn("_auth_user_id", self.client.session)

    def test_processed_view__logout__other_user(self):
        account_2 = self.accounts_factory.create_account()

        self.request_login(account_2.email)

        self.assertEqual(self.task.process(logger=mock.Mock()), None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url("postponed-tasks:status", postponed_taks.id)))

        self.assertEqual(int(self.client.session.get("_auth_user_id")), account_2.id)

    def test_processed_view__real__without_relogin(self):
        self.task._model.relogin_required = False
        self.task._model.save()

        self.assertEqual(self.task.process(logger=mock.Mock()), None)  # sent mail
        postponed_taks = self.task.process(logger=mock.Mock())  # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url("postponed-tasks:status", postponed_taks.id)))
        self.assertEqual(self.client.session.get("_auth_user_id"), None)

    def test_process__wrong_state(self):
        self.postponed_task.state = CHANGE_CREDENTIALS_STATE.PROCESSED
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()), POSTPONED_TASK_LOGIC_RESULT.ERROR)
        self.assertTrue(self.postponed_task.state.is_WRONG_STATE)

    def test_process(self):
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()), POSTPONED_TASK_LOGIC_RESULT.SUCCESS)
        self.assertTrue(self.postponed_task.state.is_PROCESSED)
        self.assertEqual(django_authenticate(nick="test_nick", password="******").email, "*****@*****.**")
class PostponedChangeCredentialsTaskTests(testcase.TestCase):

    def setUp(self):
        super(PostponedChangeCredentialsTaskTests, self).setUp()
        create_test_map()

        result, account_id, bundle_id = register_user('test_user', '*****@*****.**', '111111')
        self.account = AccountPrototype.get_by_id(account_id)

        self.task = ChangeCredentialsTaskPrototype.create(self.account,
                                                          new_email='*****@*****.**',
                                                          new_password='******',
                                                          new_nick='test_nick',
                                                          relogin_required=True)

        self.postponed_task = ChangeCredentials(task_id=self.task.id)

    def test_create(self):
        self.assertEqual(self.postponed_task.processed_data, {'next_url': url('accounts:profile:edited')})
        self.assertEqual(self.postponed_task.task_id, self.task.id)
        self.assertTrue(self.postponed_task.state.is_UNPROCESSED)

    def test_serialization(self):
        self.assertEqual(self.postponed_task.serialize(), ChangeCredentials.deserialize(self.postponed_task.serialize()).serialize())

    def test_processed_view__real(self):
        self.assertEqual(self.task.process(logger=mock.Mock()), None) # sent mail
        postponed_taks = self.task.process(logger=mock.Mock()) # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url('postponed-tasks:status', postponed_taks.id)))
        self.assertNotIn('_auth_user_id', self.client.session)

    def test_processed_view__logout__same_user(self):
        self.request_login(self.account.email)

        self.assertEqual(self.task.process(logger=mock.Mock()), None) # sent mail
        postponed_taks = self.task.process(logger=mock.Mock()) # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url('postponed-tasks:status', postponed_taks.id)))

        self.assertEqual(int(self.client.session['_auth_user_id']), self.account.id)

    def test_processed_view__logout__other_user(self):
        account_2 = self.accounts_factory.create_account()

        self.request_login(account_2.email)

        self.assertEqual(self.task.process(logger=mock.Mock()), None) # sent mail
        postponed_taks = self.task.process(logger=mock.Mock()) # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url('postponed-tasks:status', postponed_taks.id)))

        self.assertNotIn('_auth_user_id', self.client.session)

    def test_processed_view__real__without_relogin(self):
        self.task._model.relogin_required = False
        self.task._model.save()

        self.assertEqual(self.task.process(logger=mock.Mock()), None) # sent mail
        postponed_taks = self.task.process(logger=mock.Mock()) # create task
        postponed_taks.process(logger=mock.Mock())
        self.check_ajax_ok(self.client.get(url('postponed-tasks:status', postponed_taks.id)))
        self.assertEqual(self.client.session.get('_auth_user_id'), None)

    def test_process__wrong_state(self):
        self.postponed_task.state = CHANGE_CREDENTIALS_STATE.PROCESSED
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()), POSTPONED_TASK_LOGIC_RESULT.ERROR)
        self.assertTrue(self.postponed_task.state.is_WRONG_STATE)

    def test_process(self):
        self.assertEqual(self.postponed_task.process(main_task=mock.Mock()), POSTPONED_TASK_LOGIC_RESULT.SUCCESS)
        self.assertTrue(self.postponed_task.state.is_PROCESSED)
        self.assertEqual(django_authenticate(nick='test_nick', password='******').email, '*****@*****.**')