comparison helper.py @ 29:07620fe97c88 draft default tip

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/deseq2 commit d033f887f37ec95f83a8786e8463e0c744773cc4
author bgruening
date Sat, 10 Dec 2016 18:33:07 -0500
parents 6947d8ed51cc
children
comparison
equal deleted inserted replaced
28:6947d8ed51cc 29:07620fe97c88
1
2 from galaxy.tools.parameters import DataToolParameter
3
4 def validate_input( trans, error_map, param_values, page_param_map ):
5 """
6 Validates the user input, before execution.
7 """
8 factors = param_values['rep_factorName']
9 factor_name_list = []
10 factor_duplication = False
11 level_duplication = False
12
13 for factor in factors:
14 # factor names should be unique
15 fn = factor['factorName']
16 if fn in factor_name_list:
17 factor_duplication = True
18 break
19 factor_name_list.append( fn )
20
21 level_name_list = list()
22 factor_index_list = list()
23
24 for level in factor['rep_factorLevel']:
25 # level names under one factor should be unique
26 fl = level['factorLevel']
27 if fl in level_name_list:
28 level_duplication = True
29 level_name_list.append( fl )
30
31 if level_duplication:
32 error_map['rep_factorName'] = [ dict() for t in factors ]
33 for i in range( len( factors ) ):
34 error_map['rep_factorName'][i]['rep_factorLevel'] = [ {'factorLevel': 'Factor levels for each factor need to be unique'} for t in factor['rep_factorLevel'] ]
35 break
36
37 if factor_duplication:
38 error_map['rep_factorName'] = [ dict() for t in factors ]
39 for i in range( len( factors ) ):
40 error_map['rep_factorName'][i]['factorName'] = 'Factor names need to be unique.'
41