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)