• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openvax / topiary / 25186739369

30 Apr 2026 08:05PM UTC coverage: 89.171% (+0.3%) from 88.876%
25186739369

push

github

web-flow
Improve CLI validation errors (#147)

22 of 24 new or added lines in 3 files covered. (91.67%)

3829 of 4294 relevant lines covered (89.17%)

2.68 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

77.78
/topiary/cli/script.py
1
# Licensed under the Apache License, Version 2.0 (the "License");
2
# you may not use this file except in compliance with the License.
3
# You may obtain a copy of the License at
4
#
5
#       http://www.apache.org/licenses/LICENSE-2.0
6
#
7
# Unless required by applicable law or agreed to in writing, software
8
# distributed under the License is distributed on an "AS IS" BASIS,
9
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
# See the License for the specific language governing permissions and
11
# limitations under the License.
12

13
"""
14
Script to generate epitope predictions from somatic cancer variants
15
and (optionally) tumor RNA-seq data.
16

17
Example usage:
18
    topiary \
19
        --mhc-predictor netmhcpan
20
        --mhc-alleles-file HLA.txt
21
        --vcf somatic.vcf
22
        --rna-gene-fpkm-file genes.fpkm_tracking
23
        --rna-transcript-fpkm-file isoforms.fpkm_tracking
24
        --filter-ic50 500
25
        --filter-percentile 2
26
        --output results.csv
27
"""
28

29
import sys
3✔
30

31
import argcomplete
3✔
32

33
from .args import arg_parser, predict_epitopes_from_args
3✔
34

35
from .outputs import write_outputs
3✔
36

37

38
def parse_args(args_list=None):
3✔
39
    if args_list is None:
3✔
40
        args_list = sys.argv[1:]
×
41
    argcomplete.autocomplete(arg_parser)
3✔
42
    return arg_parser.parse_args(args_list)
3✔
43

44

45
def main(args_list=None):
3✔
46
    """
47
    Script entry-point to predict neo-epitopes from genomic variants using
48
    Topiary.
49
    """
50
    args = parse_args(args_list)
3✔
51
    try:
3✔
52
        df = predict_epitopes_from_args(args)
3✔
53
    except (OSError, ValueError) as e:
3✔
54
        arg_parser.error(str(e))
3✔
55
    write_outputs(df, args)
×
56
    print("Total count: %d" % len(df))
×
NEW
57
    return 0
×
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc