Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#!/usr/bin/python
import os
import os.path
import settings
import systemtest.testcase
import systemtest.util as util
class TestCase(systemtest.testcase.TestCase):
def execute(self):
openbisController = self.setUpAndStartOpenbis()
testDataFolder = self.getTestDataFolder(openbisController)
# for exampleName in sorted(os.listdir(testDataFolder)):
# if os.path.isdir("%s/%s" % (testDataFolder, exampleName)):
# self.dropTestExample(openbisController, testDataFolder, exampleName)
def executeInDevMode(self):
# openbisController = self.setUpAndStartOpenbis()
openbisController = self.createOpenbisController(dropDatabases=False)
testDataFolder = self.getTestDataFolder(openbisController)
self.dropTestExample(openbisController, testDataFolder, "ivmtcbeb087rjsmilcus17nu18")
self.dropTestExample(openbisController, testDataFolder, "m9du561cidup7n0gdp97k8gh6u")
for exampleName in sorted(os.listdir(testDataFolder)):
if os.path.isdir("%s/%s" % (testDataFolder, exampleName)):
break
def setUpAndStartOpenbis(self):
util.printWhoAmI()
self.installOpenbis(technologies = ['screening'])
openbisController = self.createOpenbisController(databasesToDrop=['openbis', 'pathinfo'])
corePluginsPropertiesFile = "%s/servers/core-plugins/core-plugins.properties" % openbisController.installPath
corePluginsProperties = util.readProperties(corePluginsPropertiesFile)
corePluginsProperties['disabled-core-plugins'] = 'screening:dropboxes, screening:initialize-master-data, ' \
+ 'screening:image-overview-plugins, screening:maintenance-tasks, screening:reporting-plugins, ' \
+ 'openbis:data-sources, openbis:services'
util.writeProperties(corePluginsPropertiesFile, corePluginsProperties)
openbisController.setDssMaxHeapSize("3g")
openbisController.createTestDatabase("openbis")
openbisController.allUp()
return openbisController
def getTestDataFolder(self, openbisController):
testDataFolder = "%s/../../test-data/integration_%s" % (self.playgroundFolder, self.name)
if os.path.exists(testDataFolder):
util.printAndFlush("Path exists as expected: %s" % testDataFolder)
else:
self.fail("Test data folder missing: %s" % testDataFolder)
return testDataFolder
def dropTestExample(self, openbisController, testDataFolder, exampleName):
header = "\n/\\/\\/\\/\\/\\/\\ %s /\\/\\/\\/\\/\\/\\ %%s" % exampleName
util.printWhoAmI(template = header)
expectations = Expectations(openbisController, exampleName)
destination = "%s/data/incoming-microscopy" % (openbisController.installPath)
exampleFolder = "%s/%s" % (testDataFolder, exampleName)
util.copyFromTo(testDataFolder, destination, exampleName)
markerFile = "%s/.MARKER_is_finished_%s" % (destination, exampleName)
open(markerFile, 'a').close()
openbisController.waitUntilDataSetRegistrationFinished(expectations.numberOfPhysicalDataSets, timeOutInMinutes = 10)
class Expectations(object):
def __init__(self, openbisController, exampleName):
properties = util.readProperties(openbisController.dataFile("%s.properties" % exampleName))
self.numberOfSeries = int(properties['number-of-series'])
numberOfAdditinalDataSets = int(properties['number-of-additional-data-sets'])
self.numberOfPhysicalDataSets = self.numberOfSeries + 1 + numberOfAdditinalDataSets
self.numberOfDataSets = self.numberOfPhysicalDataSets + self.numberOfSeries
TestCase(settings, __file__).runTest()