Skip to content

Commit d10f769

Browse files
committed
fix: WMS agents py3 only
1 parent 1be0579 commit d10f769

32 files changed

+291
-390
lines changed

src/DIRAC/ConfigurationSystem/Client/Helpers/CSGlobals.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ def __load(self):
1818
return
1919
for extName in extensionsByPriority():
2020
try:
21-
res = importlib.import_module(extName)
21+
res = importlib.import_module(extName)
2222
if res[0]:
2323
res[0].close()
2424
self.__orderedExtNames.append(extName)

src/DIRAC/Core/Utilities/Graphs/GraphUtilities.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ def convert_to_datetime(dstring):
6767
results = dstring
6868
else:
6969
results = eval(str(dstring), {"__builtins__": None, "time": time, "math": math}, {})
70-
if isinstance(results, (int, float)):
70+
if isinstance(results, (int, float)):
7171
results = datetime.datetime.fromtimestamp(int(results))
7272
elif isinstance(results, datetime.datetime):
7373
pass

src/DIRAC/RequestManagementSystem/private/OperationHandlerBase.py

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -56,45 +56,45 @@ class DynamicProps(type):
5656
"""
5757

5858
def __new__(cls, name, bases, classdict):
59-
"""
60-
new operator
61-
"""
62-
63-
def makeProperty(self, name, value, readOnly=False):
64-
"""
65-
Add property :name: to class
66-
67-
This also creates a private :_name: attribute
68-
If you want to make read only property, set :readOnly: flag to True
69-
:warn: could raise AttributeError if :name: of :_name: is already
70-
defined as an attribute
71-
"""
72-
if hasattr(self, "_" + name) or hasattr(self, name):
73-
raise AttributeError("_%s or %s is already defined as a member" % (name, name))
74-
75-
def fget(self):
76-
return self._getProperty(name)
77-
78-
fset = None if readOnly else lambda self, value: self._setProperty(name, value)
79-
setattr(self, "_" + name, value)
80-
setattr(self.__class__, name, property(fget=fget, fset=fset))
81-
82-
def _setProperty(self, name, value):
83-
"""
84-
property setter
85-
"""
86-
setattr(self, "_" + name, value)
87-
88-
def _getProperty(self, name):
89-
"""
90-
property getter
91-
"""
92-
return getattr(self, "_" + name)
93-
94-
classdict["makeProperty"] = makeProperty
95-
classdict["_setProperty"] = _setProperty
96-
classdict["_getProperty"] = _getProperty
97-
return super().__new__(cls, name, bases, classdict)
59+
"""
60+
new operator
61+
"""
62+
63+
def makeProperty(self, name, value, readOnly=False):
64+
"""
65+
Add property :name: to class
66+
67+
This also creates a private :_name: attribute
68+
If you want to make read only property, set :readOnly: flag to True
69+
:warn: could raise AttributeError if :name: of :_name: is already
70+
defined as an attribute
71+
"""
72+
if hasattr(self, "_" + name) or hasattr(self, name):
73+
raise AttributeError("_%s or %s is already defined as a member" % (name, name))
74+
75+
def fget(self):
76+
return self._getProperty(name)
77+
78+
fset = None if readOnly else lambda self, value: self._setProperty(name, value)
79+
setattr(self, "_" + name, value)
80+
setattr(self.__class__, name, property(fget=fget, fset=fset))
81+
82+
def _setProperty(self, name, value):
83+
"""
84+
property setter
85+
"""
86+
setattr(self, "_" + name, value)
87+
88+
def _getProperty(self, name):
89+
"""
90+
property getter
91+
"""
92+
return getattr(self, "_" + name)
93+
94+
classdict["makeProperty"] = makeProperty
95+
classdict["_setProperty"] = _setProperty
96+
classdict["_getProperty"] = _getProperty
97+
return super().__new__(cls, name, bases, classdict)
9898

9999

100100
class OperationHandlerBase(metaclass=DynamicProps):

src/DIRAC/RequestManagementSystem/private/test/Test_OperationHandlerBase.py

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -12,37 +12,37 @@ class DynamicPropTests(unittest.TestCase):
1212
"""
1313

1414
def testDynamicProps(self):
15-
"""test dynamic props"""
16-
17-
class TestClass(metaclass=DynamicProps):
18-
"""
19-
.. class:: TestClass
20-
21-
dummy class
22-
"""
23-
24-
pass
25-
26-
# # dummy instance
27-
testObj = TestClass()
28-
# # makeProperty in
29-
self.assertEqual(hasattr(testObj, "makeProperty"), True)
30-
self.assertEqual(callable(getattr(testObj, "makeProperty")), True)
31-
# # .. and works for rw properties
32-
testObj.makeProperty("rwTestProp", 10) # pylint: disable=no-member
33-
self.assertEqual(hasattr(testObj, "rwTestProp"), True)
34-
self.assertEqual(getattr(testObj, "rwTestProp"), 10)
35-
testObj.rwTestProp += 1 # pylint: disable=no-member
36-
self.assertEqual(getattr(testObj, "rwTestProp"), 11)
37-
# # .. and ro as well
38-
testObj.makeProperty("roTestProp", "I'm read only", True) # pylint: disable=no-member
39-
self.assertEqual(hasattr(testObj, "roTestProp"), True)
40-
self.assertEqual(getattr(testObj, "roTestProp"), "I'm read only")
41-
# # AttributeError for read only property setattr
42-
try:
43-
testObj.roTestProp = 11
44-
except AttributeError as error:
45-
self.assertEqual(str(error), "can't set attribute")
15+
"""test dynamic props"""
16+
17+
class TestClass(metaclass=DynamicProps):
18+
"""
19+
.. class:: TestClass
20+
21+
dummy class
22+
"""
23+
24+
pass
25+
26+
# # dummy instance
27+
testObj = TestClass()
28+
# # makeProperty in
29+
self.assertEqual(hasattr(testObj, "makeProperty"), True)
30+
self.assertEqual(callable(getattr(testObj, "makeProperty")), True)
31+
# # .. and works for rw properties
32+
testObj.makeProperty("rwTestProp", 10) # pylint: disable=no-member
33+
self.assertEqual(hasattr(testObj, "rwTestProp"), True)
34+
self.assertEqual(getattr(testObj, "rwTestProp"), 10)
35+
testObj.rwTestProp += 1 # pylint: disable=no-member
36+
self.assertEqual(getattr(testObj, "rwTestProp"), 11)
37+
# # .. and ro as well
38+
testObj.makeProperty("roTestProp", "I'm read only", True) # pylint: disable=no-member
39+
self.assertEqual(hasattr(testObj, "roTestProp"), True)
40+
self.assertEqual(getattr(testObj, "roTestProp"), "I'm read only")
41+
# # AttributeError for read only property setattr
42+
try:
43+
testObj.roTestProp = 11
44+
except AttributeError as error:
45+
self.assertEqual(str(error), "can't set attribute")
4646

4747

4848
# # test execution

src/DIRAC/RequestManagementSystem/private/test/Test_RequestTask.py

Lines changed: 44 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -30,54 +30,54 @@ class RequestTaskTests(unittest.TestCase):
3030
"""
3131

3232
def setUp(self):
33-
"""test case set up"""
34-
self.handlersDict = {"ForwardDISET": "DIRAC/RequestManagementSystem/private/ForwardDISET"}
35-
self.req = Request()
36-
self.req.RequestName = "foobarbaz"
37-
self.req.OwnerGroup = "lhcb_user"
38-
self.req.OwnerDN = "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=chaen/CN=705305/CN=Christophe Haen"
39-
self.op = Operation({"Type": "ForwardDISET", "Arguments": "tts10:helloWorldee"})
40-
self.req.addOperation(self.op)
41-
self.task = None
42-
self.mockRC = MagicMock()
43-
44-
self.mockObjectOps = MagicMock()
45-
self.mockObjectOps.getSections.return_value = {"OK": True, "Value": ["DataProcessing", "DataManager"]}
46-
self.mockObjectOps.getOptionsDict.return_value = {
47-
"OK": True,
48-
"Value": {"Group": "lhcb_user", "User": "fstagni"},
49-
}
50-
self.mockOps = MagicMock()
51-
self.mockOps.return_value = self.mockObjectOps
33+
"""test case set up"""
34+
self.handlersDict = {"ForwardDISET": "DIRAC/RequestManagementSystem/private/ForwardDISET"}
35+
self.req = Request()
36+
self.req.RequestName = "foobarbaz"
37+
self.req.OwnerGroup = "lhcb_user"
38+
self.req.OwnerDN = "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=chaen/CN=705305/CN=Christophe Haen"
39+
self.op = Operation({"Type": "ForwardDISET", "Arguments": "tts10:helloWorldee"})
40+
self.req.addOperation(self.op)
41+
self.task = None
42+
self.mockRC = MagicMock()
43+
44+
self.mockObjectOps = MagicMock()
45+
self.mockObjectOps.getSections.return_value = {"OK": True, "Value": ["DataProcessing", "DataManager"]}
46+
self.mockObjectOps.getOptionsDict.return_value = {
47+
"OK": True,
48+
"Value": {"Group": "lhcb_user", "User": "fstagni"},
49+
}
50+
self.mockOps = MagicMock()
51+
self.mockOps.return_value = self.mockObjectOps
5252

5353
def tearDown(self):
54-
"""test case tear down"""
55-
del self.req
56-
del self.op
57-
del self.task
54+
"""test case tear down"""
55+
del self.req
56+
del self.op
57+
del self.task
5858

5959
def testAPI(self):
60-
"""test API"""
61-
rt = importlib.import_module("DIRAC.RequestManagementSystem.private.RequestTask")
62-
rt.gMonitor = MagicMock()
63-
rt.Operations = self.mockOps
64-
rt.CS = MagicMock()
65-
66-
self.task = RequestTask(
67-
self.req.toJSON()["Value"],
68-
self.handlersDict,
69-
"csPath",
70-
"RequestManagement/RequestExecutingAgent",
71-
requestClient=self.mockRC,
72-
)
73-
self.task.requestClient = Mock(return_value=Mock(spec=ReqClient))
74-
self.task.requestClient().updateRequest = Mock()
75-
self.task.requestClient().updateRequest.return_value = {"OK": True, "Value": None}
76-
ret = self.task()
77-
self.assertEqual(ret["OK"], True, "call failed")
78-
79-
ret = self.task.setupProxy()
80-
print(ret)
60+
"""test API"""
61+
rt = importlib.import_module("DIRAC.RequestManagementSystem.private.RequestTask")
62+
rt.gMonitor = MagicMock()
63+
rt.Operations = self.mockOps
64+
rt.CS = MagicMock()
65+
66+
self.task = RequestTask(
67+
self.req.toJSON()["Value"],
68+
self.handlersDict,
69+
"csPath",
70+
"RequestManagement/RequestExecutingAgent",
71+
requestClient=self.mockRC,
72+
)
73+
self.task.requestClient = Mock(return_value=Mock(spec=ReqClient))
74+
self.task.requestClient().updateRequest = Mock()
75+
self.task.requestClient().updateRequest.return_value = {"OK": True, "Value": None}
76+
ret = self.task()
77+
self.assertEqual(ret["OK"], True, "call failed")
78+
79+
ret = self.task.setupProxy()
80+
print(ret)
8181

8282

8383
# # tests execution

0 commit comments

Comments
 (0)