Skip to content

Commit

Permalink
feat: remove all traces of ZopeTestCase
Browse files Browse the repository at this point in the history
  • Loading branch information
gforcada committed Feb 8, 2019
1 parent 74c5267 commit b83b0a0
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 51 deletions.
71 changes: 71 additions & 0 deletions plone/session/testing.py
@@ -0,0 +1,71 @@
# -*- coding: utf-8 -*-
from AccessControl.Permissions import access_contents_information
from AccessControl.Permissions import view
from OFS.Folder import Folder
from OFS.Folder import manage_addFolder
from plone.app.testing import PLONE_FIXTURE
from plone.app.testing import PloneSandboxLayer
from plone.app.testing.layers import FunctionalTesting
from plone.app.testing.layers import IntegrationTesting
from plone.session.plugins.session import SessionPlugin

import doctest


folder_name = 'test_folder_1_'
user_name = 'test_user_1_'
user_password = 'secret'
user_role = 'test_role_1_'
standard_permissions = [access_contents_information, view]


class FakePAS(Folder):
plugins = None

def updateCredentials(self, request, response, userid, password):
self.credentials = (userid, password)

def _verifyUser(self, plugin, user_id=None, login=None):
assert user_id is None
if login == 'our_user':
return dict(id=login, login=login, pluginid="session")
return None


class PloneSessionLayer(PloneSandboxLayer):
defaultBases = (PLONE_FIXTURE,)

def setUpZope(self, app, configurationContext):
import plone.session
import plone.session.tests

self.loadZCML(package=plone.session, name='meta.zcml')
self.loadZCML(package=plone.session)
self.loadZCML(package=plone.session.tests)

self._create_folder(app)
self._create_structure()

def _create_folder(self, app):
manage_addFolder(app, folder_name)
self.folder = getattr(app, folder_name)
self.folder._addRole(user_role)
self.folder.manage_role(user_role, standard_permissions)

def _create_structure(self):
self.folder._setObject("pas", FakePAS("pas"))
self.folder.pas._setObject("session", SessionPlugin("session"))


PLONE_SESSION_FIXTURE = PloneSessionLayer()

PLONE_SESSION_INTEGRATION_TESTING = IntegrationTesting(
bases=(PLONE_SESSION_FIXTURE,), name='PloneSessionLayer:Integration'
)
PLONE_SEESION_FUNCTIONAL_TESTING = FunctionalTesting(
bases=(PLONE_SESSION_FIXTURE,), name='PloneSessionLayer:Functional',
)

optionflags = (
doctest.ELLIPSIS | doctest.NORMALIZE_WHITESPACE | doctest.REPORT_ONLY_FIRST_FAILURE
)
43 changes: 0 additions & 43 deletions plone/session/tests/sessioncase.py

This file was deleted.

15 changes: 7 additions & 8 deletions plone/session/tests/testPAS.py
Expand Up @@ -2,10 +2,11 @@
from DateTime import DateTime
from zope.publisher.browser import TestRequest
from plone.session.interfaces import ISessionPlugin
from plone.session.tests.sessioncase import FunctionalPloneSessionTestCase
from plone.session.testing import PLONE_SEESION_FUNCTIONAL_TESTING

import base64
import six
import unittest


class MockResponse(object):
Expand All @@ -18,10 +19,14 @@ def setCookie(self, name, value, path,
self.secure = secure


class TestSessionPlugin(FunctionalPloneSessionTestCase):
class TestSessionPlugin(unittest.TestCase):

layer = PLONE_SEESION_FUNCTIONAL_TESTING
userid = 'jbloggs'

def setUp(self):
self.folder = self.layer['app']['test_folder_1_']

def testInterfaces(self):
session = self.folder.pas.session
self.assertEqual(ISessionPlugin.providedBy(session), True)
Expand Down Expand Up @@ -136,9 +141,3 @@ def testSpecialCharUserid(self):
# This step would fail.
session._setupSession(unicode_userid, response)


def test_suite():
from unittest import TestSuite, makeSuite
suite = TestSuite()
suite.addTest(makeSuite(TestSessionPlugin))
return suite

0 comments on commit b83b0a0

Please sign in to comment.