Lines 84-89
pod2usage(1) if $options{'help'};
Link Here
|
84 |
# Set skip options based on check options |
84 |
# Set skip options based on check options |
85 |
set_skip_options(); |
85 |
set_skip_options(); |
86 |
|
86 |
|
|
|
87 |
# Set check options based on skip options |
88 |
set_check_options(); |
89 |
|
87 |
# Set all check options to 1 if none are provided, unless specified skip options |
90 |
# Set all check options to 1 if none are provided, unless specified skip options |
88 |
set_all_check_options_if_none_provided(); |
91 |
set_all_check_options_if_none_provided(); |
89 |
|
92 |
|
Lines 127-136
sub set_skip_options {
Link Here
|
127 |
return %options; |
130 |
return %options; |
128 |
} |
131 |
} |
129 |
|
132 |
|
130 |
# Set all check options to 1 if none are provided, considering skip options |
133 |
# Set check options based on skip options |
|
|
134 |
sub set_check_options { |
135 |
|
136 |
my @has_skip_option = grep { $options{$_} } grep { /^skip-/ } keys %options; |
137 |
|
138 |
#warn $has_skip_option;exit; |
139 |
if (@has_skip_option) { |
140 |
|
141 |
# enable all check-* options |
142 |
$options{$_} = 1 for grep { /^check-/ } keys %options; |
143 |
|
144 |
# disable the corresponding check-* for each active skip-* option |
145 |
foreach my $key (@has_skip_option) { |
146 |
my $check_key = $key; |
147 |
$check_key =~ s/^skip-/check-/; |
148 |
$options{$check_key} = 0 if exists $options{$check_key}; |
149 |
} |
150 |
} |
151 |
return %options; |
152 |
} |
153 |
|
154 |
# Set all check options to 1 if check-all are provided, considering skip options |
131 |
sub set_all_check_options_if_none_provided { |
155 |
sub set_all_check_options_if_none_provided { |
132 |
my $check_all_option_provided = grep { $options{$_} && $_ eq "check-all" } grep { /^check-/ } keys %options; |
156 |
if ( $options{'check-all'} ) { |
133 |
if ($check_all_option_provided) { |
|
|
134 |
foreach my $key ( keys %options ) { |
157 |
foreach my $key ( keys %options ) { |
135 |
if ( $key =~ /^check-/ ) { |
158 |
if ( $key =~ /^check-/ ) { |
136 |
my $skip_key = $key; |
159 |
my $skip_key = $key; |
Lines 140-148
sub set_all_check_options_if_none_provided {
Link Here
|
140 |
$options{$key} = 1 unless $options{$skip_key}; |
163 |
$options{$key} = 1 unless $options{$skip_key}; |
141 |
} |
164 |
} |
142 |
} |
165 |
} |
143 |
} elsif ( 0 == grep { $options{$_} && $_ ne "check-all" } grep { /^check-/ } keys %options ) { |
166 |
} else { |
144 |
handle_invalid_options("No options selected"); |
167 |
unless ( grep { $options{$_} && /^(check-|skip-)/ } keys %options ) { |
145 |
die; |
168 |
handle_invalid_options("No options selected"); |
|
|
169 |
die; |
170 |
} |
146 |
} |
171 |
} |
147 |
} |
172 |
} |
148 |
|
173 |
|
149 |
- |
|
|