Skip to content
This repository was archived by the owner on Sep 12, 2024. It is now read-only.

Commit c63cb43

Browse files
committed
add unittests for utils.checkTransferApproval
1 parent 8d5b1ff commit c63cb43

1 file changed

Lines changed: 42 additions & 3 deletions

File tree

tests/test_utils.py

Lines changed: 42 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77

88
from StringIO import StringIO
99

10+
sys.modules['dbs'] = MagicMock()
11+
sys.modules['dbs.apis'] = MagicMock()
12+
sys.modules['dbs.apis.dbsClient'] = MagicMock()
13+
1014

1115
class ContextualStringIO(StringIO):
1216
def __enter__(self):
@@ -29,9 +33,6 @@ def setUp(self):
2933
"first": {"a": "B"},
3034
"second": "C"
3135
}
32-
sys.modules['dbs'] = MagicMock()
33-
sys.modules['dbs.apis'] = MagicMock()
34-
sys.modules['dbs.apis.dbsClient'] = MagicMock()
3536
from WmAgentScripts.utils import deep_update
3637
self.deep_update = deep_update
3738

@@ -448,5 +449,43 @@ def getresponse(self):
448449
self.assertEqual(response, 200)
449450

450451

452+
class TestCheckTransferApproval(unittest.TestCase):
453+
454+
def test_checkTransferApproval(self):
455+
class MockResponseStringIo:
456+
def __init__(self, *args, **kwargs):
457+
self.response = None
458+
459+
def request(self, *args, **kwargs):
460+
self.response = {"phedex": {
461+
"request": [{
462+
"node": [
463+
{
464+
"name": "someSite",
465+
"decision": "approved",
466+
},
467+
{
468+
"name": "someSite1",
469+
"decision": "pending",
470+
},
471+
],
472+
}]}
473+
}
474+
475+
def getresponse(self):
476+
return ContextualStringIO(json.dumps(self.response))
477+
478+
from WmAgentScripts.utils import checkTransferApproval
479+
with patch('WmAgentScripts.utils.make_x509_conn', MockResponseStringIo):
480+
response = checkTransferApproval(
481+
url='http://someurl.com/',
482+
phedexid='someid'
483+
)
484+
self.assertDictEqual(
485+
response, {
486+
'someSite': True,
487+
'someSite1': False})
488+
489+
451490
if __name__ == '__main__':
452491
unittest.main()

0 commit comments

Comments
 (0)