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
import tempfile
import os
import pandas
from numpy.testing import assert_equal
from mhcflurry import predict_command
TEST_CSV = '''
Allele,Peptide,Experiment
HLA-A0201,SYNFEKKL,17
HLA-B4403,AAAAAAAAA,17
HLA-B4403,PPPPPPPP,18
'''.strip()
def test_csv():
args = ["--allele-column", "Allele", "--peptide-column", "Peptide"]
deletes = []
try:
with tempfile.NamedTemporaryFile(delete=False, suffix=".csv") as fd:
fd.write(TEST_CSV.encode())
deletes.append(fd.name)
fd_out = tempfile.NamedTemporaryFile(delete=False, suffix=".csv")
deletes.append(fd_out.name)
full_args = [fd.name] + args + ["--out", fd_out.name]
print("Running with args: %s" % full_args)
predict_command.run(full_args)
result = pandas.read_csv(fd_out.name)
print(result)
finally:
for delete in deletes:
os.unlink(delete)
assert_equal(result.shape, (3, 4))
def test_no_csv():
args = [
"--alleles", "HLA-A0201", "H-2-Kb",
"--peptides", "SIINFEKL", "DENDREKLLL", "PICKLEEE",
"--prediction-column", "prediction",
]
deletes = []
try:
fd_out = tempfile.NamedTemporaryFile(delete=False, suffix=".csv")
deletes.append(fd_out.name)
full_args = args + ["--out", fd_out.name]
print("Running with args: %s" % full_args)
predict_command.run(full_args)
result = pandas.read_csv(fd_out.name)
print(result)
finally:
for delete in deletes:
os.unlink(delete)
assert_equal(result.shape, (6, 3))
sub_result1 = result.ix[result.peptide == "SIINFEKL"].set_index("allele")
assert (