[otrs-cvs] UnitTest/bin UnitTestAutoSetup.pl,1.246,1.247

"CVS commits notifications of OTRS.org" <[email protected]>
Newsgroups gmane.comp.otrs.cvs
Message-ID <[email protected]>
Comments:
Update of /home/cvs/UnitTest/bin
In directory lancelot:/tmp/cvs-serv20185/bin

Modified Files:
	UnitTestAutoSetup.pl 
Log Message:
Improved configuration for a better maintainability.

Author: mh

Index: UnitTestAutoSetup.pl
===================================================================
RCS file: /home/cvs/UnitTest/bin/UnitTestAutoSetup.pl,v
retrieving revision 1.246
retrieving revision 1.247
diff -2 -u -d -r1.246 -r1.247
--- UnitTestAutoSetup.pl	25 Jan 2013 11:43:05 -0000	1.246
+++ UnitTestAutoSetup.pl	25 Jan 2013 12:59:26 -0000	1.247
@@ -58,9 +58,6 @@
         Name      => 'OTRS 3.2.x CVS',
         Framework => 'HEAD',
-        Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
+        Packages  => [
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
         ],
     },
@@ -73,13 +70,7 @@
         Name      => 'OTRS 3.2.x CVS + internal OrderManagement',
         Framework => 'HEAD',
-        Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSOrderManagement',
-            },
+        Packages  => [
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSOrderManagement',
         ],
         Tests => [
@@ -98,9 +89,6 @@
         Name      => 'OTRS 3.1.x CVS',
         Framework => 'rel-3_1',
-        Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
+        Packages  => [
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
         ],
     },
@@ -113,13 +101,7 @@
         Name      => 'OTRS 3.1.x + SAP SolMan Connector for GenericInterface',
         Framework => 'rel-3_1',
-        Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSGenericInterfaceConnectorSAPSolMan',
-            },
+        Packages  => [
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSGenericInterfaceConnectorSAPSolMan',
         ],
         Tests => [
@@ -145,5 +127,5 @@
         Name      => 'ITSM 3.2.x CVS (OTRS 3.2.x CVS) upgraded from ITSM 3.1.x',
         Framework => 'HEAD',
-        Package   => [
+        Packages  => [
             {
                 URL =>
@@ -248,37 +230,13 @@
         Name      => 'ITSM 3.2.x CVS (OTRS 3.2.x CVS)',
         Framework => 'HEAD',
-        Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMIncidentProblemManagement',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMServiceLevelManagement',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ImportExport',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMChangeManagement',
-            },
+        Packages  => [
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMIncidentProblemManagement',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMServiceLevelManagement',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ImportExport',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMChangeManagement',
         ],
         Tests => [
@@ -310,36 +268,12 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMIncidentProblemManagement&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMServiceLevelManagement&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ImportExport&Branch=rel-3_1',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMChangeManagement&Branch=rel-3_1',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMIncidentProblemManagement&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMServiceLevelManagement&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ImportExport&Branch=rel-3_1',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMChangeManagement&Branch=rel-3_1',
         ],
         Tests => [
@@ -371,12 +305,6 @@
         Framework => 'HEAD',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=FAQ',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=FAQ',
         ],
         Tests => [
@@ -395,12 +323,6 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=FAQ&Branch=rel-2_1',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=FAQ&Branch=rel-2_1',
         ],
         Tests => [
@@ -418,12 +340,6 @@
         Framework => 'HEAD',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=Survey',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=Survey',
         ],
         Tests => [
@@ -441,12 +357,6 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=Survey&Branch=rel-2_1',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=Survey&Branch=rel-2_1',
         ],
         Tests => [
@@ -464,12 +374,6 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=TimeAccounting&Branch=rel-2_1',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=TimeAccounting&Branch=rel-2_1',
         ],
         Tests => [
@@ -487,12 +391,6 @@
         Framework => 'HEAD',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=TimeAccounting',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=TimeAccounting',
         ],
         Tests => [
@@ -510,12 +408,6 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSTicketMaskExtensions',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSTicketMaskExtensions',
         ],
         Tests => [
@@ -533,12 +425,6 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSTicketProcesses',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSTicketProcesses',
         ],
         Tests => [
@@ -569,24 +455,9 @@
         Framework => 'rel-3_1',
         Package   => [
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement',
-            },
-            {
-                URL =>
-                    'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSGenericInterfaceFusionInventory',
-            },
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=UnitTest',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=GeneralCatalog',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMCore',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=ITSMConfigurationManagement',
+            'https://opms.otrs.com/otrs/:public.pl?Action=PublicOPMSTestBuild&NoDoc=1&Package=OTRSGenericInterfaceFusionInventory',
         ],
         Tests => [
@@ -1482,28 +1353,46 @@
         }
 
-        # install packages and execute package tests
-        if ( ref $Scenario->{Package} eq 'ARRAY' ) {
+        my @Packages;
+        if ( $Scenario->{Packages} && ref $Scenario->{Packages} eq 'ARRAY' ) {
 
-            my @PackageTests;
             PACKAGE:
-            for my $Package ( @{ $Scenario->{Package} } ) {
+            for my $Package ( @{ $Scenario->{Packages} } ) {
 
-                print STDOUT "NOTICE: install $Package->{URL}\n";
+                next PACKAGE if !$Package;
 
-                # set action (default is install)
-                my $Action = $Package->{Upgrade} ? 'upgrade' : 'install';
+                if ( ref $Package eq 'HASH' ) {
+                    push @Packages, $Package;
+                }
+                else {
 
-                # build package manager command
-                my $Command = "$Scenario->{PackageManager} -a $Action -p '$Package->{URL}'";
+                    my %PackageData = (
+                        URL => $Package,
+                    );
 
-                # enable force mode
-                if ( $Package->{Force} ) {
-                    $Command .= ' -f on';
+                    push @Packages, \%PackageData;
                 }
+            }
+        }
 
-                system($Command) && next SCENARIO;
+        # install packages
+        PACKAGE:
+        for my $Package (@Packages) {
 
-                sleep 1;
+            print STDOUT "NOTICE: install $Package->{URL}\n";
+
+            # set action (default is install)
+            my $Action = $Package->{Upgrade} ? 'upgrade' : 'install';
+
+            # build package manager command
+            my $Command = "$Scenario->{PackageManager} -a $Action -p '$Package->{URL}'";
+
+            # enable force mode
+            if ( $Package->{Force} ) {
+                $Command .= ' -f on';
             }
+
+            system($Command) && next SCENARIO;
+
+            sleep 1;
         }
 
@@ -1537,7 +1426,7 @@
 
         # uninstall packages
-        if ( $Scenario->{Package} && ref $Scenario->{Package} eq 'ARRAY' && !$Opts{j} ) {
+        if ( @Packages && !$Opts{j} ) {
 
-            for my $Package ( reverse @{ $Scenario->{Package} } ) {
+            for my $Package ( reverse @Packages ) {
                 print STDOUT "NOTICE: uninstall $Package->{URL}\n";
                 system("$Scenario->{PackageManager} -a uninstall -p '$Package->{URL}'");
---------------------------------------------------------------------
OTRS mailing list: cvs-log - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/cvs-log
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/cvs-log
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.