Beispiel #1
0
    def test_set_user_language(self):
        from dbas.views import set_user_lang as ajax
        request = testing.DummyRequest(json_body={'lang': 'en'})
        response = ajax(request)
        self.assertTrue(400 == response.status_code)

        self.config.testing_securitypolicy(userid='Tobias', permissive=True)
        request = testing.DummyRequest(json_body={'lang': 'en'})
        response = ajax(request)
        self.assertIn('error', response)
        self.assertIn('ui_locales', response)
        self.assertIn('current_lang', response)
        self.assertTrue(response['error'] == '')
        self.assertTrue(response['ui_locales'] == 'en')
        self.assertTrue(response['current_lang'] == 'English')
        request = testing.DummyRequest(json_body={'lang': 'de'})
        response = ajax(request)
        self.assertIn('error', response)
        self.assertIn('ui_locales', response)
        self.assertIn('current_lang', response)
        self.assertTrue(response['error'] == '')
        self.assertTrue(response['ui_locales'] == 'de')
        self.assertTrue(response['current_lang'] == 'Deutsch')
        request = testing.DummyRequest(json_body={'lang': 'li'})
        response = ajax(request)
        self.assertIn('error', response)
        self.assertIn('ui_locales', response)
        self.assertIn('current_lang', response)
        self.assertTrue(response['error'] != '')
        self.assertTrue(response['ui_locales'] == 'li')
        self.assertTrue(response['current_lang'] == '')
Beispiel #2
0
 def test_switch_language(self):
     from dbas.views import switch_language as ajax
     lang = ['de', 'en']
     for l in lang:
         request = testing.DummyRequest(json_body={'lang': l})
         response = ajax(request)
         self.assertTrue(response['_LOCALE_'] == l)
 def test_notification_read_failure2(self):
     self.config.testing_securitypolicy(userid='Tobias', permissive=True)
     from dbas.views import send_some_notification as ajax
     request = testing.DummyRequest(json_body={'id': 2})
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(400, response.status_code)
Beispiel #4
0
    def test_set_user_setting_no_service(self):
        from dbas.views import set_user_settings as ajax
        request = construct_dummy_request(json_body={'ui_locales': 'en'})
        response = ajax(request)
        self.assertEqual(response.status_code, 400)

        self.config.testing_securitypolicy(userid='Tobias', permissive=True)
        request = construct_dummy_request(json_body={'service': 'oha', 'settings_value': False})
        response = ajax(request)
        self.assertIn('error', response)
        self.assertIn('public_nick', response)
        self.assertIn('public_page_url', response)
        self.assertIn('gravatar_url', response)
        self.assertTrue(response['error'] != '')
        self.assertTrue(response['public_nick'] != '')
        self.assertTrue(response['public_page_url'] != '')
        self.assertTrue(response['gravatar_url'] != '')
Beispiel #5
0
 def test_fuzzy_search_failure_mode(self):
     from dbas.views import fuzzy_search as ajax
     request = testing.DummyRequest(json_body={
         'value': 'cat',
         'type': '6',
         'statement_uid': 0,
         'issue': 2
     })
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(400, response.status_code)
Beispiel #6
0
    def test_send_news_failure(self):
        from dbas.views import send_news as ajax
        request = testing.DummyRequest(json_body={
            'title': 'some new title',
            'text': 'some new text'
        })
        response = ajax(request)
        self.assertEqual(400, response.status_code)

        DBDiscussionSession.query(News).filter_by(
            title='some new title').delete()
Beispiel #7
0
    def test_set_user_setting_notification(self):
        from dbas.views import set_user_settings as ajax
        request = testing.DummyRequest(json_body={'ui_locales': 'en'})
        response = ajax(request)
        self.assertTrue(400 == response.status_code)

        self.config.testing_securitypolicy(userid='Tobias', permissive=True)
        request = testing.DummyRequest(json_body={
            'service': 'notification',
            'settings_value': True
        })
        response = ajax(request)
        self.assertIn('error', response)
        self.assertIn('public_nick', response)
        self.assertIn('public_page_url', response)
        self.assertIn('gravatar_url', response)
        self.assertTrue(response['error'] == '')
        self.assertTrue(response['public_nick'] != '')
        self.assertTrue(response['public_page_url'] != '')
        self.assertTrue(response['gravatar_url'] != '')
Beispiel #8
0
    def test_mark_statement_or_argument(self):
        from dbas.views import mark_or_unmark_statement_or_argument as ajax
        request = testing.DummyRequest(json_body={'ui_locales': 'en'})
        response = ajax(request)
        self.assertEqual(400, response.status_code)

        self.config.testing_securitypolicy(userid='Tobias', permissive=True)
        for b1 in [True, False]:
            for b2 in [True, False]:
                for b3 in [True, False]:
                    request = testing.DummyRequest(
                        json_body={
                            'uid': 4,
                            'is_argument': b1,
                            'should_mark': b2,
                            'step': 'reaction/4/undercut/6',
                            'is_supportive': b3
                        })
                    response = ajax(request)
                    self.assertTrue(len(response['text']) > 0)
Beispiel #9
0
 def test_fuzzy_search_mode_0(self):
     from dbas.views import fuzzy_search as ajax
     request = testing.DummyRequest(json_body={
         'value': 'cat',
         'type': 0,
         'statement_uid': 0,
         'issue': 2
     })
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertIn('values', response)
Beispiel #10
0
 def test_user_login_wrong_password(self):
     from dbas.views import user_login as ajax
     request = construct_dummy_request(json_body={
         'user': '******',
         'password': '******',
         'keep_login': False,
         'url': ''
     })
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertNotEqual(len(response['error']), 0)
Beispiel #11
0
 def test_send_news(self):
     self.config.testing_securitypolicy(userid='Tobias', permissive=True)
     from dbas.views import send_news as ajax
     request = testing.DummyRequest(json_body={
         'title': 'some new title',
         'text': 'some new text'
     })
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertEqual('success', response['status'])
     DBDiscussionSession.query(News).filter_by(
         title='some new title').delete()
 def test_send_notification_failure2(self):
     self.config.testing_securitypolicy(userid='Tobias', permissive=True)
     from dbas.views import send_some_notification as ajax
     request = testing.DummyRequest(
         json_body={
             'recipient': 'Tobias',
             'title': 'Some new text for a message',
             'text': 'Some new text for a message',
         })
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(400, response.status_code)
Beispiel #13
0
 def test_user_login_wrong_password(self):
     from dbas.views import user_login as ajax
     request = testing.DummyRequest(json_body={
         'user': '******',
         'password': '******',
         'keep_login': False,
         'url': ''
     },
                                    mailer=DummyMailer)
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(len(response['error']) != 0)
Beispiel #14
0
 def test_user_login(self):
     db_user = DBDiscussionSession.query(User).filter_by(nickname='Tobias').first()
     db_user.password = get_hashed_password('tobias')
     transaction.commit()
     from dbas.views import user_login as ajax
     request = construct_dummy_request(json_body={
         'user': '******',
         'password': '******',
         'keep_login': False,
         'url': ''
     })
     response = ajax(request)
     self.assertIsInstance(response, HTTPFound)
Beispiel #15
0
    def test_mark_statement_or_argument(self):
        request = construct_dummy_request(json_body={'ui_locales': 'en'})
        response = mark_or_unmark_statement_or_argument(request)
        self.assertEqual(400, response.status_code)

        self.config.testing_securitypolicy(userid='Tobias', permissive=True)
        binary_combination = list(itertools.product([True, False], repeat=3))
        for b1, b2, b3 in binary_combination:
            request = construct_dummy_request(
                json_body={
                    'uid': 4, 'is_argument': b1, 'should_mark': b2, 'step': 'reaction/4/undercut/6',
                    'is_supportive': b3
                })
            response = ajax(request)
            self.assertTrue(len(response['text']) > 0)
Beispiel #16
0
 def test_user_login(self):
     db_user = DBDiscussionSession.query(User).filter_by(
         nickname='Tobias').first()
     db_user.password = get_hashed_password('tobias')
     transaction.commit()
     from dbas.views import user_login as ajax
     request = testing.DummyRequest(json_body={
         'user': '******',
         'password': '******',
         'keep_login': False,
         'url': ''
     },
                                    mailer=DummyMailer)
     response = ajax(request)
     self.assertTrue(type(response) is HTTPFound)
Beispiel #17
0
 def test_switch_language_failure(self):
     from dbas.views import switch_language as ajax
     request = testing.DummyRequest(json_body={'lang': 'sw'})
     response = ajax(request)
     self.assertEqual(400, response.status_code)
 def test_send_notification_failure1(self):
     from dbas.views import send_some_notification as ajax
     request = testing.DummyRequest(json_body={})
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(400, response.status_code)
Beispiel #19
0
 def test_user_logout(self):
     from dbas.views import user_logout as ajax
     request = testing.DummyRequest(params={})
     response = ajax(request)
     self.assertTrue(type(response) is HTTPFound)
Beispiel #20
0
 def test_notification_delete_failure(self):
     from dbas.views import set_notifications_delete as ajax
     request = construct_dummy_request(json_body={})
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(400, response.status_code)
Beispiel #21
0
 def test_user_logout(self):
     from dbas.views import user_logout as ajax
     request = construct_dummy_request(params={})
     response = ajax(request)
     self.assertIsInstance(response, HTTPFound)
Beispiel #22
0
 def test_get_news_view(self):
     from dbas.views import get_news as ajax
     request = testing.DummyRequest(params={}, matchdict={})
     response = ajax(request)
     self.assertIsNotNone(response)
     self.assertTrue(len(response) > 0)