Example #1
0
class LogoutTest(TestCase):
    def setUp(self):
        super().setUp()
        self.view = LogoutView()
        self.logout_mock = self.patch('users.views.logout')
        self.logger_mock = self.patch('users.views.logger')

    def test_success(self):
        request_mock = Mock(user=Mock(is_authenticated=True))

        response = self.view.get(request_mock)

        self.logout_mock.assert_called_once_with(request_mock)
        self.logger_mock.info.assert_called_once()

        self.assertEqual(200, response.status_code)

    def test_already_logged_out(self):
        request_mock = Mock(user=Mock(is_authenticated=False))

        response = self.view.get(request_mock)

        self.logout_mock.assert_called_once()
        self.logger_mock.info.assert_not_called()

        self.assertEqual(200, response.status_code)