|
19 | 19 | # Some rights reserved, see README and LICENSE. |
20 | 20 |
|
21 | 21 | import transaction |
22 | | -import unittest2 as unittest |
23 | | -from plone.app.testing import PLONE_FIXTURE |
24 | | -from plone.app.testing import TEST_USER_ID |
25 | | -from plone.app.testing import FunctionalTesting |
26 | | -from plone.app.testing import PloneSandboxLayer |
27 | 22 | from plone.app.testing import applyProfile |
28 | | -from plone.app.testing import setRoles |
| 23 | +from plone.app.testing import FunctionalTesting |
29 | 24 | from plone.testing import zope |
| 25 | +from senaite.core.tests.base import BaseTestCase |
| 26 | +from senaite.core.tests.layers import BaseLayer |
30 | 27 |
|
31 | 28 |
|
32 | | -class SimpleTestLayer(PloneSandboxLayer): |
33 | | - """Setup Plone with installed AddOn only |
34 | | - """ |
35 | | - defaultBases = (PLONE_FIXTURE,) |
| 29 | +class SimpleTestLayer(BaseLayer): |
36 | 30 |
|
37 | 31 | def setUpZope(self, app, configurationContext): |
38 | 32 | super(SimpleTestLayer, self).setUpZope(app, configurationContext) |
39 | 33 |
|
40 | | - import bika.lims |
41 | | - import senaite.app.listing |
42 | | - import senaite.app.spotlight |
43 | | - import senaite.core |
44 | | - import senaite.impress |
45 | | - import senaite.lims |
46 | | - import senaite.storage |
47 | | - |
48 | 34 | # Load ZCML |
49 | | - self.loadZCML(package=bika.lims) |
50 | | - self.loadZCML(package=senaite.lims) |
51 | | - self.loadZCML(package=senaite.core) |
52 | | - self.loadZCML(package=senaite.app.listing) |
53 | | - self.loadZCML(package=senaite.impress) |
54 | | - self.loadZCML(package=senaite.app.spotlight) |
| 35 | + import senaite.storage |
55 | 36 | self.loadZCML(package=senaite.storage) |
56 | 37 |
|
57 | 38 | # Install product and call its initialize() function |
58 | | - zope.installProduct(app, "bika.lims") |
59 | | - zope.installProduct(app, "senaite.lims") |
60 | | - zope.installProduct(app, "senaite.core") |
61 | | - zope.installProduct(app, "senaite.app.listing") |
62 | | - zope.installProduct(app, "senaite.impress") |
63 | | - zope.installProduct(app, "senaite.app.spotlight") |
64 | 39 | zope.installProduct(app, "senaite.storage") |
65 | 40 |
|
66 | 41 | def setUpPloneSite(self, portal): |
67 | 42 | super(SimpleTestLayer, self).setUpPloneSite(portal) |
68 | | - applyProfile(portal, "senaite.core:default") |
69 | 43 | applyProfile(portal, "senaite.storage:default") |
70 | 44 | transaction.commit() |
71 | 45 |
|
72 | 46 |
|
73 | | -### |
74 | | -# Use for simple tests (w/o contents) |
75 | | -### |
76 | | -SIMPLE_FIXTURE = SimpleTestLayer() |
| 47 | +SIMPLE_TEST_LAYER_FIXTURE = SimpleTestLayer() |
77 | 48 | SIMPLE_TESTING = FunctionalTesting( |
78 | | - bases=(SIMPLE_FIXTURE, ), |
| 49 | + bases=(SIMPLE_TEST_LAYER_FIXTURE,), |
79 | 50 | name="senaite.storage:SimpleTesting" |
80 | 51 | ) |
81 | 52 |
|
82 | 53 |
|
83 | | -class SimpleTestCase(unittest.TestCase): |
| 54 | +class SimpleTestCase(BaseTestCase): |
| 55 | + """Use for test cases which do not rely on demo data |
| 56 | + """ |
84 | 57 | layer = SIMPLE_TESTING |
85 | 58 |
|
86 | 59 | def setUp(self): |
87 | 60 | super(SimpleTestCase, self).setUp() |
88 | | - |
89 | | - self.app = self.layer["app"] |
90 | | - self.portal = self.layer["portal"] |
91 | | - self.request = self.layer["request"] |
92 | | - self.request["ACTUAL_URL"] = self.portal.absolute_url() |
93 | | - setRoles(self.portal, TEST_USER_ID, ["LabManager", "Manager"]) |
94 | | - |
95 | | - |
96 | | -class FunctionalTestCase(unittest.TestCase): |
97 | | - layer = SIMPLE_TESTING |
98 | | - |
99 | | - def setUp(self): |
100 | | - super(FunctionalTestCase, self).setUp() |
101 | | - |
102 | | - self.app = self.layer["app"] |
103 | | - self.portal = self.layer["portal"] |
104 | | - self.request = self.layer["request"] |
105 | | - self.request["ACTUAL_URL"] = self.portal.absolute_url() |
106 | | - setRoles(self.portal, TEST_USER_ID, ["LabManager", "Member"]) |
0 commit comments