mmtestenv/mmtesttools/Scripts/RunTests.bat
author hgs
Thu, 07 Oct 2010 22:34:12 +0100
changeset 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk40
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
@rem
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
@rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
@rem All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
@rem This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
@rem under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
@rem which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
@rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
@rem
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
@rem Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
@rem Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
@rem
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
@rem Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
@rem
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
@rem Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
@rem
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
@rem = '--*-Perl-*--
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
@echo off
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
if "%OS%" == "Windows_NT" goto WinNT
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
goto endofperl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
:WinNT
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
perl -x -S "%0" %*
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" goto endofperl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
if %errorlevel% == 9009 echo You do not have Perl in your PATH.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
goto endofperl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
@rem ';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
#!perl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
#line 14
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
    eval 'exec perl.exe -S $0 ${1+"$@"}'
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
    if $running_under_some_shell;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
use strict; # important pragma
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
use File::Copy;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
use File::Find;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
my @Month =("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
my ($sec,my $min,my $hour,my $mday,my $mon,my $year,my $wday,my $yday,my $isdst); 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
my $BuildToUse="winscw";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
my $EpocCDrive = "$ENV{EPOCROOT}epoc32\\$BuildToUse\\c";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
my $ResultsDirectory = "$EpocCDrive\\Logs\\TestResults";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
my $TestFrameworkOpts="";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
my $TestFrameworkNoDelay="";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
my $Debug=0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
my $Warning=0; #controls how pernickety the output is
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
my $Cmd; #general variable to carry system commands
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
my $CodeCover=0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
my $ScriptToRun='[\S]+\.script';
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
my $TimesToRun=1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
if(@ARGV && (($ARGV[0] eq "-h") ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
     ($ARGV[0] eq "--h") ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
     ($ARGV[0] eq "-help") ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
     ($ARGV[0] eq "--help") ||
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
     ($ARGV[0] eq "help"))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
	 )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
    print "Runs all the Test Framework and Test Execute script files.\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
    print "\nSyntax : runtests -b=sss -d -c -a -v=nnn -cc -rep=nnn -q\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
	print "-b   Compiler version to use [wins\|winscw) (default=$BuildToUse)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
    print "-d   Force to run testframework at debug mode \n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
    print "-c   Clean results directory ($ResultsDirectory)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
    print "-a   Full output in testframework console\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
    print "-v   Provide verbose output 1=limited 2=maximum\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
    print "-s   Define a script to be executed (ommitting causes all scripts to be run)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
    print "-cc  Only run release builds for Code Cover\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
    print "-rep Repeat the test run a number of times\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
    print "-q      Start testframework without the 20 second delay\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
    exit 0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
use Getopt::Long;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
my %optctl = ();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
keys(%optctl)=10;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
unless (GetOptions (\%optctl, "b=s","d","c","v=i", "cc", "s=s","rep=i","a","q")) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
  {exit 1;}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
if($optctl{"b"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
  $BuildToUse=$optctl{"b"};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
  if((lc($BuildToUse) ne "wins") && (lc($BuildToUse) ne "winscw"))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
	print STDERR "only wins and winscw builds are supported\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
	exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
   $EpocCDrive = "$ENV{EPOCROOT}epoc32\\$BuildToUse\\c";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
   $ResultsDirectory = "$EpocCDrive\\Logs\\TestResults";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
#repeat test run a number of times
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
if($optctl{"rep"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
  $TimesToRun = $optctl{"rep"};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
  if(($TimesToRun < 1))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
    print STDERR "must specify a positive number of repeates\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
    exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
#debug on
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
if($optctl{"v"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
  {$Debug=$optctl{"v"};}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
if($Debug ==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
  print "Command line options:-\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
  while ((my $key, my $val) = each %optctl) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
    {print "$key  =>  $val\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
#Code Cover run
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
if($optctl{"cc"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
  {$CodeCover=1;}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
if($Debug ==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
  print "Command line options:-\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   130
  while ((my $key, my $val) = each %optctl) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   131
    {print "$key  =>  $val\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   132
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   133
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
if($optctl{"c"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
  print "Deleting Existing Results FIles\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
  my @ExistingResultsFiles;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
  my $ExistingResultsFile;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
  find( sub { push @ExistingResultsFiles, $File::Find::name if /\.htm/ }, ($ResultsDirectory) );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
  foreach $ExistingResultsFile (@ExistingResultsFiles)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
    $ExistingResultsFile =~ s/\//\\/g;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
    $Cmd="del $ExistingResultsFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
    if($Debug==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
	  {print "executing $Cmd\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
    system($Cmd);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
if($optctl{"a"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
  print "Full output in testframework console\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
  $TestFrameworkOpts .= " -a";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
if($optctl{"s"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
  $ScriptToRun = $optctl{"s"};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
  print "Looking for script file $ScriptToRun\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
# Only add -q flag to textframework request
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
if($optctl{"q"})
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
  	$TestFrameworkNoDelay .= " -q";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
  	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
my $UrelTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testframework.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
my $UdebTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\udeb\\testframework.exe -t" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
my $RecogUrelTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testframeworkrecognizer.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
my $RecogUdebTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\udeb\\testframeworkrecognizer.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
my $NoneUrelTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testframeworkNone.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
my $NoneUdebTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\udeb\\testframeworkNone.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
my $MMDDCapUrelTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testframeworkMMDDCap.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
my $UECapUrelTestFramework = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testframeworkUECap.exe" . $TestFrameworkOpts . $TestFrameworkNoDelay;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
my $UrelEpocEmulator  = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\epoc.exe" . $TestFrameworkOpts;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
my $UdebEpocEmulator  = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\udeb\\epoc.exe" . $TestFrameworkOpts;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
my $eka2IdentifyFile  = "$ENV{EPOCROOT}epoc32\\release\\winscw\\udeb\\winsgui.dll"; # if file present, is EKA2 build
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
my $UrelTestExecute = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\urel\\testexecute.exe" . $TestFrameworkOpts;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
my $UdebTestExecute = "$ENV{EPOCROOT}epoc32\\release\\$BuildToUse\\udeb\\testexecute.exe" . $TestFrameworkOpts;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
my $RecogniserCfgFile = "$EpocCDrive\\mm\\AutorunTests.cfg";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
my $copy_ini_secdisp = "perl secdisp_ini_append.pl append"; 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
my $delete_ini_secdisp = "perl secdisp_ini_append.pl restore";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
if($Debug>=1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
  print "\nUsing $RecogniserCfgFile to configure the Epoc recogniser\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
print "\nScanning $EpocCDrive for script files\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
my @ScriptFilesFound;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
my $ScriptFile;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   200
my $ScriptToRunTmp = $ScriptToRun;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   201
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   202
#Firstly, try to find an exact script name
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   203
print "ScriptToRunTmp = $ScriptToRunTmp\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   204
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   205
if(!($ScriptToRun =~ /\.script/i))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   206
  {$ScriptToRunTmp = $ScriptToRun .'\.script';}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   207
 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   208
#find all the required script files
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   209
find( sub { push @ScriptFilesFound, $File::Find::name if /^$ScriptToRunTmp$/i }, ($EpocCDrive) );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   210
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   211
#if no scripts were found, look for scripts that wildcard match
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   212
if(@ScriptFilesFound < 1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   213
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   214
  if(!($ScriptToRun =~ /\.script/i))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   215
    {$ScriptToRunTmp = '[\S]*' . $ScriptToRun .'[\S]*\.script';}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   216
  else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   217
    {$ScriptToRunTmp = $ScriptToRun;}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   218
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   219
  find( sub { push @ScriptFilesFound, $File::Find::name if /$ScriptToRunTmp/i }, ($EpocCDrive) );
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   220
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   221
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   222
if($Debug>=1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   223
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   224
  my $len = @ScriptFilesFound;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   225
  print "\nScanned $len script files in $EpocCDrive\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   226
  foreach $ScriptFile (@ScriptFilesFound)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   227
    {print "$ScriptFile\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   228
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   229
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   230
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   231
#look for any scripts that are called from other scripts; no need to call these directly
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   232
my @IndirectScripts;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   233
my $IndirectScript;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   234
foreach $ScriptFile (@ScriptFilesFound)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   235
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   236
  unless (open(SCRIPTFILE,"$ScriptFile")) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   237
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   238
    print STDERR "Can't open $ScriptFile: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   239
    exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   240
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   241
 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   242
  my $ScriptFileLine;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   243
  my @ResultFileContents = <SCRIPTFILE>;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   244
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   245
  foreach $ScriptFileLine (@ResultFileContents)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   246
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   247
    if($ScriptFileLine =~ /^RUN_SCRIPT[\s]+[\S]+[\s]*$/)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   248
      { 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   249
	  if($Debug==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   250
        {print "File: $ScriptFile Line:  $ScriptFileLine\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   251
	  
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   252
	  $IndirectScript =  $ScriptFileLine;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   253
	  $_ = $IndirectScript;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   254
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   255
	  m/^RUN_SCRIPT[\s]+([\S]+)[\s]*$/;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   256
      $IndirectScript=($1);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   257
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   258
	  if($Debug==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   259
        {print "Secondary Script = $IndirectScript\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   260
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   261
	  push @IndirectScripts, $IndirectScript;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   262
	  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   263
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   264
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   265
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   266
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   267
#produce a list of the script files that need running
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   268
my @ScriptsToRun;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   269
ScriptFile_LBL: foreach $ScriptFile (@ScriptFilesFound)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   270
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   271
  
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   272
  foreach $IndirectScript (@IndirectScripts)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   273
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   274
	if($ScriptFile =~ /$IndirectScript/)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   275
	  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   276
	  if($Debug==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   277
        {print "Not running $ScriptFile directly\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   278
	  next ScriptFile_LBL;}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   279
	}   
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   280
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   281
  push @ScriptsToRun, $ScriptFile;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   282
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   283
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   284
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   285
if($Debug>=1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   286
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   287
  foreach $ScriptFile (@ScriptsToRun)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   288
    {print "Running $ScriptFile\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   289
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   290
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   291
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   292
unless (open(TESTRUNLOG,">TestRunLog.txt")) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   293
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   294
  print STDERR "Can't open orphanedtests.txt: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   295
  exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   296
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   297
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   298
unless (open(MASTERSCRIPT,">master.script")) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   299
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   300
  print STDERR "Can't open master.script: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   301
  exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   302
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   303
unless (open(MASTERALLOCSCRIPT,">master_alloc.script")) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   304
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   305
  print STDERR "Can't open master_alloc.script: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   306
  exit 1;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   307
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   308
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   309
#create a master script file, this could be usefull for running on hardware.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   310
foreach $ScriptFile (@ScriptsToRun)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   311
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   312
  $ScriptFile =~ s/\//\\/g;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   313
  $ScriptFile =~ s/^[\s]*[a-z]://i;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   314
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   315
  my $regex = quotemeta $EpocCDrive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   316
  $ScriptFile =~ s/$regex//gi;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   317
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   318
  #alloc tests must be run under debug
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   319
  if($ScriptFile =~ /_alloc(_wm)?.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   320
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   321
    print MASTERALLOCSCRIPT "RUN_SCRIPT $ScriptFile\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   322
  else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   323
    {print MASTERSCRIPT "RUN_SCRIPT $ScriptFile\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   324
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   325
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   326
close MASTERSCRIPT;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   327
close MASTERALLOCSCRIPT;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   328
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   329
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   330
#remove any alloc tests from list. Alloc tests must be run on debug builds, Code Cover tests 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   331
#are only done against release builds.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   332
if($CodeCover==1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   333
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   334
  my @ScriptsToRunTmp=();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   335
  foreach $ScriptFile (@ScriptsToRun)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   336
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   337
    if(!($ScriptFile =~ /_alloc(_wm)?.script/i))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   338
	  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   339
      push @ScriptsToRunTmp, $ScriptFile;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   340
	  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   341
	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   342
  @ScriptsToRun = @ScriptsToRunTmp;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   343
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   344
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   345
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   346
my $TotalScriptFiles = @ScriptsToRun;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   347
if($TimesToRun > 1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   348
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   349
  print "Running $TotalScriptFiles scripts  $TimesToRun times\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   350
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   351
else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   352
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   353
  print "Running $TotalScriptFiles scripts\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   354
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   355
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   356
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   357
my $RunCount=0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   358
for ($RunCount = 0; $RunCount < $TimesToRun; $RunCount++) 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   359
  {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   360
  my $ScriptsRun=0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   361
  #run each script
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   362
  foreach $ScriptFile (@ScriptsToRun)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   363
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   364
    $ScriptFile =~ s/\//\\/g;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   365
    $ScriptFile =~ s/^[\s]*[a-z]://i;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   366
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   367
    my $regex = quotemeta $EpocCDrive;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   368
    $ScriptFile =~ s/$regex//gi;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   369
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   370
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   371
    #alloc tests must be run under debug
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   372
    if($ScriptFile =~ /_recog_alloc.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   373
	    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   374
	    $Cmd = "$RecogUdebTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   375
        }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   376
    elsif($ScriptFile =~ /_nocap_alloc.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   377
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   378
      	$Cmd = "$NoneUdebTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   379
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   380
    elsif(($ScriptFile =~ /_alloc.script/i) || ($ScriptFile =~ /_alloc_wm.script/i) || ($ScriptFile =~ /_debug.script/i) || ($optctl{"d"}) )
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   381
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   382
      	$Cmd = "$UdebTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   383
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   384
    elsif($ScriptFile =~ /_recog.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   385
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   386
      	$Cmd = "$RecogUrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   387
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   388
    elsif($ScriptFile =~ /_nocap.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   389
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   390
      	$Cmd = "$NoneUrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   391
       	}	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   392
    elsif($ScriptFile =~ /_mmddcap.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   393
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   394
      	$Cmd = "$MMDDCapUrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   395
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   396
    elsif($ScriptFile =~ /_uecap.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   397
       	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   398
      	$Cmd = "$UECapUrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   399
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   400
    elsif($ScriptFile =~ /_secdisp.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   401
      	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   402
     	#Take a backup of the existing ini files to .OLD and copy our ini files from the current dir to \epoc folders
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   403
	    if(!(system($copy_ini_secdisp)==0))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   404
      	    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   405
      	    print "Failure to execute - $Cmd: $!";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   406
      	    print TESTRUNLOG "Failure to execute - $Cmd: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   407
      	    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   408
	    $Cmd = "$UrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   409
	    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   410
    elsif($ScriptFile =~ /\\te_/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   411
 	    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   412
 	    $Cmd = "$UdebTestExecute $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   413
 	    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   414
    elsif($ScriptFile =~ /_te.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   415
 	    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   416
 	    $Cmd = "$UdebTestExecute $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   417
 	    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   418
    else
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   419
     	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   420
       	$Cmd = "$UrelTestFramework $ScriptFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   421
       	}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   422
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   423
    ($sec,my $min,my $hour,my $mday,my $mon,my $year,my $wday,my $yday,my $isdst) = localtime(time);  
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   424
    print "Starting script at $hour:$min:$sec\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   425
    print TESTRUNLOG "Starting script at $hour:$min:$sec\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   426
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   427
    $ScriptsRun++;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   428
    print "executing $Cmd ($ScriptsRun of $TotalScriptFiles)\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   429
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   430
    print TESTRUNLOG "executing $Cmd\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   431
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   432
    if(!(system($Cmd)==0))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   433
      {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   434
      print "Failure to execute - $Cmd: $!";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   435
      print TESTRUNLOG "Failure to execute - $Cmd: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   436
      }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   437
   if($ScriptFile =~ /_secdisp.script/i)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   438
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   439
    #Delete .ini files and rename  .OLD files to .ini files
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   440
    if(!(system($delete_ini_secdisp)==0))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   441
         {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   442
          print "Failure to execute - $Cmd: $!";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   443
          print TESTRUNLOG "Failure to execute - $Cmd: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   444
          }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   445
    } 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   446
   
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   447
    }#foreach $ScriptFile (@ScriptsToRun)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   448
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   449
  if($TimesToRun > 1)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   450
    {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   451
    #now copy the results to a new numbered directory 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   452
    $Cmd = "xcopy /E /R /I /Y P:\\epoc32\\wins\\c\\Logs\\TestResults P:\\epoc32\\wins\\c\\Logs\\TestResults$RunCount";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   453
    print "executing $Cmd";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   454
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   455
    if(!(system($Cmd)==0))
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   456
      {
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   457
      print "Failure to execute - $Cmd: $!";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   458
      print TESTRUNLOG "Failure to execute - $Cmd: $!\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   459
      }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   460
    }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   461
  }
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   462
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   463
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   464
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   465
$Cmd="del /F /Q $RecogniserCfgFile";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   466
if($Debug==2)
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   467
  {print "executing $Cmd\n";}
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   468
system($Cmd);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   469
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   470
($sec,my $min,my $hour,my $mday,my $mon,my $year,my $wday,my $yday,my $isdst) = localtime(time);  
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   471
print "Test run completed at $hour:$min:$sec\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   472
print TESTRUNLOG "Test run completed at $hour:$min:$sec\n";
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   473
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   474
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   475
__END__
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   476
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   477
:endofperl
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   478