Make test for logout module
authorKarl O. Pinc <kop@meme.com>
Thu, 25 Oct 2018 02:55:54 +0000 (21:55 -0500)
committerKarl O. Pinc <kop@meme.com>
Thu, 25 Oct 2018 03:03:53 +0000 (22:03 -0500)
tests/views/test_logout.py

index f5ccaeff0ffae12f4c03dcccc805c5d4c7be8ac1..8a3ff7437753ef38e9eab38d2ebe04d15971ab96 100644 (file)
 
 # Karl O. Pinc <kop@meme.com>
 
+import pyramid
+
 from pgwui_logout.views import logout
 
 
-def test_example_func():
-    assert logout.example_func() == 1
+def test_logout_view(monkeypatch):
+    '''Deletes the session, returns no errors'''
+    # Have the pyramid.view.view_config decorator do nothing
+    monkeypatch.setattr(pyramid.view, 'view_config',
+                        lambda **kwargs: (lambda(func): func))
+
+    class MockSession():
+        def __init__(self):
+            self.delete_called = False
+
+        def delete(self):
+            self.delete_called = True
+
+    class MockRequest():
+        def __init__(self, session):
+            self.session = session
+
+    session = MockSession()
+    request = MockRequest(session)
+    result = logout.logout_view(request)
+
+    assert session.delete_called is True
+    assert result == {'errors': []}