Building on SimonPratt's work:

#!/usr/bin/perl use strict; use warnings; use Getopt::Long; my $VERBOSE; my @TESTSUITES; my %TESTCASES_hash; my @TESTCASES; GetOptions ( "testsuite=s" => \@TESTSUITES, "verbose" => \$VERBOSE ); # Often it is useful to allow comma-separated lists of values as well +as multiple occurrences of the options. @TESTSUITES = split(/\s*,\s*/,join(',', @TESTSUITES)); open my $fh, '<', 'an.ini' or die "Failed to open an.ini for reading: +$! <$^E>\n"; my (%settings, $head); while (chomp(my $line = <$fh>)) { if ($line =~ /^\s*\[([^\[\]]+)\]\s*$/) { $head = $1; } elsif ($line !~ /^\s*$/) { push @{$settings{$head}}, $line; } } close $fh; for my $suite (@TESTSUITES){ for my $test (@{$settings{$suite}}){ $TESTCASES_hash{$test}++; } } @TESTCASES = sort keys %TESTCASES_hash; use Data::Dumper; print Dumper \%settings; print Dumper \@TESTCASES; for my $testcase (@TESTCASES){ # now iterate through your testcases }

Which would work like:

./an.pl -t Test_suit_name ./an.pl -t Test_suit_name -t AnotherTest_suit_name ./an.pl -t Test_suit_name,AnotherTest_suit_name

latter two are the same, multiple testsuites are merged to produce a bigger list of testcases.

Hope this extra push in the back helps you...


In reply to Re^3: Read INI file by FreeBeerReekingMonk
in thread Read INI file by bhushanQA

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.