appdb/include testResults.php version.php

WineHQ wineowner at wine.codeweavers.com
Mon Jul 10 10:42:00 CDT 2006


ChangeSet ID:	26392
CVSROOT:	/opt/cvs-commit
Module name:	appdb
Changes by:	wineowner at winehq.org	2006/07/10 10:42:00

Modified files:
	include        : testResults.php version.php 

Log message:
	Chris Morgan <cmorgan at alum.wpi.edu>
	Eliminate redundant parameters from testData function

Patch: http://cvs.winehq.org/patch.py?id=26392

Old revision  New revision  Changes     Path
 1.32          1.33          +24 -27     appdb/include/testResults.php
 1.72          1.73          +16 -7      appdb/include/version.php

Index: appdb/include/testResults.php
diff -u -p appdb/include/testResults.php:1.32 appdb/include/testResults.php:1.33
--- appdb/include/testResults.php:1.32	10 Jul 2006 15:42: 0 -0000
+++ appdb/include/testResults.php	10 Jul 2006 15:42: 0 -0000
@@ -38,7 +38,7 @@ class testData{
                 if($hResult = query_parameters($sQuery, $iTestingId))
                 {
                     $oRow = mysql_fetch_object($hResult);
-                    $this->iTestingId = $iTestingId;
+                    $this->iTestingId = $oRow->testingId;
                     $this->iVersionId = $oRow->versionId;
                     $this->sWhatWorks = $oRow->whatWorks;
                     $this->sWhatDoesnt = $oRow->whatDoesnt;
@@ -348,38 +348,20 @@ class testData{
             mail_appdb($sEmail, $sSubject ,$sMsg);
     }
  
-    function ShowTestResult($iCurrentTest,$iVersionId)
+    function ShowTestResult()
     {
-        $hResult = query_parameters("SELECT * 
-                                FROM testResults
-                                WHERE testingId = '?'",
-                                $iCurrentTest);
-        if(!$hResult || mysql_num_rows($hResult) == 0)
-        {
-            $hResult = query_parameters("SELECT * 
-                                    FROM testResults
-                                    WHERE versionId = '?'
-                                    ORDER BY testedDate DESC ;",
-                                    $iVersionId);
-            if(!$hResult || mysql_num_rows($hResult) == 0)
-                return false;
-        }
-        $oRow = mysql_fetch_object($hResult);
         echo '<p><b>What works</b><br />',"\n";
-        echo $oRow->whatWorks;
+        echo $this->sWhatWorks;
         echo '<p><b>What does not</b><br />',"\n";
-        echo $oRow->whatDoesnt;
+        echo $this->sWhatDoesnt;
         echo '<p><b>What was not tested</b><br />',"\n";
-        echo $oRow->whatNotTested;
-        return $oRow->testingId;
+        echo $this->sWhatNotTested;
     }
 
     // Show the Test results for a application version
-    function ShowVersionsTestingTable($iVersionId, $iCurrentTest, $link, $iDisplayLimit)
+    function ShowVersionsTestingTable($link, $iDisplayLimit)
     {
         /* escape input parameters */
-        $iVersionId = mysql_real_escape_string($iVersionId);
-        $iCurrentTest = mysql_real_escape_string($iCurrentTest);
         $link = mysql_real_escape_string($link);
         $iDisplayLimit = mysql_real_escape_string($iDisplayLimit);
 
@@ -390,7 +372,7 @@ class testData{
 
         $sQuery = "SELECT * 
                    FROM testResults
-                   WHERE versionId = '".$iVersionId."'
+                   WHERE versionId = '".$this->iVersionId."'
                    ORDER BY testedDate DESC";
 	
         if(!$showAll)
@@ -427,7 +409,9 @@ class testData{
             $bgcolor = $oTest->sTestedRating;
             echo '<tr class='.$bgcolor.'>',"\n";
 
-            if ($oTest->iTestingId == $iCurrentTest)
+            /* if the test we are displaying is this test then */
+            /* mark it as the current test */
+            if ($oTest->iTestingId == $this->iTestingId)
             {
                 echo '    <td align="center" class="color2"><b>Current</b></td>',"\n";
             } else
@@ -474,7 +458,7 @@ class testData{
         echo '</table>',"\n";
 
         echo '<form method=get action="'.$PHP_SELF.'">';
-        echo '<input name="iVersionId" type=hidden value="',$iVersionId,'" />';
+        echo '<input name="iVersionId" type=hidden value="',$this->iVersionId,'" />';
         if($rowsUsed >= $iDisplayLimit && !is_string($showAll))
             echo '<input class="button" name="showAll" type=submit value="Show All Tests" />';
 
@@ -485,6 +469,19 @@ class testData{
         echo '</form>';
     }
 
+    /* retrieve the latest test result for a given version id */
+    function get_test_for_versionid($iVersionId)
+    {
+        $sQuery = "SELECT testingId from testResults where versionId = '?' 
+                     ORDER BY testedDate DESC limit 1";
+        $hResult = query_parameters($sQuery, $iVersionId);
+        if(!$hResult)
+            return 0;
+
+        $oRow = mysql_fetch_object($hResult);
+        return $oRow->testingId;
+    }
+
     // show the fields for editing
     function OutputEditor($sDistribution="", $bNewDist=false)
     {
Index: appdb/include/version.php
diff -u -p appdb/include/version.php:1.72 appdb/include/version.php:1.73
--- appdb/include/version.php:1.72	10 Jul 2006 15:42: 0 -0000
+++ appdb/include/version.php	10 Jul 2006 15:42: 0 -0000
@@ -782,14 +782,23 @@ class Version {
         echo "<table width='100%' border=0><tr><td width='100%' valign=top> <b>Description</b><br />\n";
         echo $this->sDescription;
 
+
         // Show testing data
-        $oTest = new TestData($iTestingId);
-        $iCurrentTest = $oTest->ShowTestResult($oTest->iTestingId, $this->iVersionId);
-        if($iCurrentTest)
-        {
-            $oTest->ShowVersionsTestingTable($this->iVersionId,
-                                             $iCurrentTest,
-                                             $_SERVER['PHP_SELF']."?iVersionId=".$this->iVersionId."&iTestingId=",
+
+        $oTest = new testData($iTestingId);
+
+        /* if $iTestingId wasn't valid then it won't be valid in $oTest */
+        if(!$oTest->iTestingId)
+        {
+            /* fetch a new testing id for this version */
+            $iTestingId = testData::get_test_for_versionid($this->iVersionId);
+            $oTest = new testData($iTestingId);
+        }
+
+        $oTest->ShowTestResult();
+        if($oTest->iTestingId)
+        {
+            $oTest->ShowVersionsTestingTable($_SERVER['PHP_SELF']."?iVersionId=".$this->iVersionId."&iTestingId=",
                                              5);
         }
         echo '<form method=post name=sMessage action=testResults.php?sSub=view&iVersionId='.$this->iVersionId.'>';



More information about the wine-cvs mailing list