|
18 | 18 | # Copyright 2018-2021 by it's authors.
|
19 | 19 | # Some rights reserved, see README and LICENSE.
|
20 | 20 |
|
| 21 | +import os |
| 22 | + |
21 | 23 | import transaction
|
22 |
| -from senaite.core.exportimport.load_setup_data import LoadSetupData |
| 24 | +from bika.lims import api |
23 | 25 | from plone.app.testing import PLONE_FIXTURE
|
24 | 26 | from plone.app.testing import SITE_OWNER_NAME
|
25 | 27 | from plone.app.testing import FunctionalTesting
|
|
28 | 30 | from plone.app.testing import login
|
29 | 31 | from plone.app.testing import logout
|
30 | 32 | from plone.testing import zope
|
| 33 | +from Products.GenericSetup.context import TarballImportContext |
31 | 34 |
|
32 | 35 |
|
33 | 36 | class BaseLayer(PloneSandboxLayer):
|
@@ -73,20 +76,30 @@ class DataLayer(BaseLayer):
|
73 | 76 | """
|
74 | 77 |
|
75 | 78 | def setup_data_load(self, portal, request):
|
76 |
| - login(portal.aq_parent, SITE_OWNER_NAME) # again |
| 79 | + """Provision site with demo data |
| 80 | + """ |
| 81 | + login(portal.aq_parent, SITE_OWNER_NAME) |
| 82 | + |
| 83 | + setup_tool = api.get_tool("portal_setup") |
| 84 | + curdir = os.path.dirname(__file__) |
| 85 | + path = os.path.join(curdir, "setup_tool-demodata.tar.gz") |
| 86 | + |
| 87 | + with open(path, "rb") as tarball: |
| 88 | + context = TarballImportContext( |
| 89 | + tool=setup_tool, |
| 90 | + archive_bits=tarball.read(), |
| 91 | + encoding="UTF-8", |
| 92 | + should_purge=True) |
| 93 | + setup_tool._doRunImportStep("senaite.core.import", context) |
| 94 | + |
| 95 | + transaction.commit() |
77 | 96 |
|
78 |
| - # load test data |
79 |
| - request.form["setupexisting"] = 1 |
80 |
| - request.form["existing"] = "bika.lims:test" |
81 |
| - lsd = LoadSetupData(portal, request) |
82 |
| - lsd() |
83 | 97 | logout()
|
84 | 98 |
|
85 | 99 | def setUpPloneSite(self, portal):
|
86 | 100 | super(DataLayer, self).setUpPloneSite(portal)
|
87 | 101 | # Install Demo Data
|
88 | 102 | self.setup_data_load(portal, portal.REQUEST)
|
89 |
| - transaction.commit() |
90 | 103 |
|
91 | 104 |
|
92 | 105 | BASE_LAYER_FIXTURE = BaseLayer()
|
|
0 commit comments