-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtestEmailDelivered.py
77 lines (72 loc) · 2.53 KB
/
testEmailDelivered.py
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
73
74
75
76
77
import json
import copy
import EmailDelivered
import DeliveryConstants
test_case_info = {
"samples": [{
"cmoId": "A-4158-PY-P-3m-Bas",
"concentration": "0.0 null",
"dropOffDate": 0,
"estimatedPurity": 0,
"organism": "Mouse",
"project": "13032_B",
"recipe": "ATACSeq",
"userId": "A-4158-PY-P-3m-Bas",
"volume": 0,
"yield": 0,
"numberOfAmplicons": 0,
"basicQcs": [
{
"run": "DIANA_0482_AHLFYJDSX3",
"sampleName": "A-4158-PY-P-3m-Bas",
"qcStatus": "Passed",
"restStatus": "SUCCESS",
"totalReads": 334868354,
"createDate": 1653144565916,
"reviewedDates": [
{
"timestamp": 1653403297252,
"event": "Passed"
}
]
}
],
"cancerType": "null",
"expName": "A-4158-PY-P-3m-Bas",
"vol": 0,
"baseId": "13032_B_1",
"species": "Mouse"
}],
"requestId": "08749_D",
"investigator": "Jing Hu",
"dataAccessEmails": "[email protected]",
"pi": "Joan Massague",
"investigatorEmail": "[email protected]",
"piEmail": "[email protected]",
"deliveryDate": 1651846477928,
"analysisRequested": "true",
}
test_case = EmailDelivered.DeliveryDescription(test_case_info)
def test_determine_email_recipient_recipt():
test_case.recipe = "Impact"
recipient = ["[email protected]"]
runType = EmailDelivered.recipe2RunType(test_case.recipe)
(toList, ccList) = EmailDelivered.determineDataAccessRecipients(test_case, recipient, runType, copy.deepcopy(DeliveryConstants.addressMap))
assert (ccList == DeliveryConstants.addressMap["standard"] + DeliveryConstants.addressMap["impact"])
assert (toList == recipient)
def test_determine_email_recipient_analysisType():
test_case.recipe = "ATACSeq"
test_case.analysisType = "BIC"
recipient = ["[email protected]"]
runType = EmailDelivered.recipe2RunType(test_case.recipe)
(toList, ccList) = EmailDelivered.determineDataAccessRecipients(test_case, recipient, runType, copy.deepcopy(DeliveryConstants.addressMap))
assert (ccList == DeliveryConstants.addressMap["standard"] + DeliveryConstants.addressMap["pipelineDefault"])
def test_determine_email_content():
runType = EmailDelivered.recipe2RunType(test_case.recipe)
email = EmailDelivered.determineDataAccessContent(test_case, runType)
assert (email["subject"] == (DeliveryConstants.genericSubject
% (test_case.recipe, test_case.requestId)))
assert (email["content"] == (DeliveryConstants.genericAnalysisContent) % (
test_case.recipe,
test_case.requestId,
) )