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 __authors__ = ["Jérôme Kieffer", "Olof Svensson"]
30 __contact__ = "Jerome.Kieffer@esrf.eu"
31 __license__ = "LGPLv3+"
32 __copyright__ = "European Synchrotron Radiation Facility, Grenoble, France"
33 __date__ = "20110722"
34
35 """Test cases for testing EDShare"""
36
37 import time, tempfile, os
38 from EDVerbose import EDVerbose
39 from EDTestCase import EDTestCase
40 from EDAssert import EDAssert
41 from EDShare import EDShare
42 from EDFactoryPluginStatic import EDFactoryPluginStatic
43 from EDUtilsPath import EDUtilsPath
44 EDFactoryPluginStatic.loadModule("EDInstallNumpyv1_3")
45 EDFactoryPluginStatic.loadModule("EDInstallH5Pyv1_3_0")
46 if "USER" not in os.environ:
47 os.environ["USER"] = "ednatester"
48
49
50
52 """
53 Unit test for EDNA-share for sharing large objects between plugins
54 """
55
57 """
58 Check the initialization of the share:
59 """
60 EDAssert.equal(False, EDShare.isInitialized(), "Check that EDShare is uninitialized")
61 strEdnaUserTempFolder = EDUtilsPath.getEdnaUserTempFolder()
62 EDShare.initialize(strEdnaUserTempFolder)
63 EDShare["test1"] = range(10)
64 EDVerbose.screen("Backend used is %s" % EDShare.backend)
65 EDAssert.equal(1, len(EDShare.items()))
66 EDAssert.equal(True, "test1" in EDShare, "list is actually present")
67 for i, j in zip(range(10), EDShare["test1"]):
68 EDAssert.equal(i, j, "elements are the same")
69 EDShare.close()
70 EDShare.initialize(strEdnaUserTempFolder)
71 EDAssert.equal(True, "test1" in EDShare, "list is still present")
72 for i, j in zip(range(10), EDShare["test1"]):
73 EDAssert.equal(i, j, "elements are still the same")
74 filename = EDShare.filename
75 EDShare.close(remove=True)
76 EDAssert.equal(False, os.path.isfile(filename), "dump-file has been removed")
77
78
81
82
83 if __name__ == '__main__':
84
85 edTestCase = EDTestCaseEDShare("EDTestCaseEDShare")
86 edTestCase.execute()
87