- allow admins to mark individual test results as VALID/INVALID, and update the VETTED status automatically

Misc.
- whitespace fix in manage testgroup template


git-svn-id: svn://10.0.0.236/trunk@208732 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
ccooper%deadsquid.com
2006-08-29 19:06:55 +00:00
parent a3a3a4e3ca
commit bcbedd1ce1
4 changed files with 43 additions and 8 deletions

View File

@@ -58,6 +58,8 @@ Litmus::DB::Testresult->column_alias("build_type_id", "build_type");
Litmus::DB::Testresult->column_alias("exit_status_id", "exit_status");
Litmus::DB::Testresult->column_alias("validity_id", "validity");
Litmus::DB::Testresult->column_alias("vetting_status_id", "vetting_status");
Litmus::DB::Testresult->column_alias("validated_by_user_id", "validated_by_user");
Litmus::DB::Testresult->column_alias("vetted_by_user_id", "vetted_by_user");
Litmus::DB::Testresult->column_alias("locale_abbrev", "locale");
Litmus::DB::Testresult->column_alias("is_automated_result", "isAutomated");
@@ -72,6 +74,8 @@ Litmus::DB::Testresult->has_a(exit_status => "Litmus::DB::ExitStatus");
Litmus::DB::Testresult->has_a(locale => "Litmus::DB::Locale");
Litmus::DB::Testresult->has_a(platform =>
[ "Litmus::DB::Opsys" => "platform" ]);
Litmus::DB::Testresult->has_a(vetted_by_user => "Litmus::DB::User");
Litmus::DB::Testresult->has_a(validated_by_user => "Litmus::DB::User");
Litmus::DB::Testresult->has_many(logs =>
["Litmus::DB::LogTestresult" => 'log_id']);

View File

@@ -90,6 +90,23 @@ if ($c->param && $c->param('id')) {
comment => $c->param('new_comment'),
});
}
if (Litmus::Auth::istrusted($cookie) and
$c->param('vet_result')) {
if ($c->param('valid')) {
$result->valid(1);
} else {
$result->valid(0);
}
$result->vetted(1);
$result->vetted_by_user($user);
$result->validated_by_user($user);
$result->vetted_timestamp($time);
$result->validated_timestamp($time);
$result->last_updated($time);
$result->update;
}
}
my $title = 'Test Result #' . $c->param('id') . ' - Details';

View File

@@ -302,9 +302,10 @@ function resetTestgroup() {
<div class="section-content">
<form id="select_testgroup_and_mode_form" name="select_testgroup_and_mode_form" method="post" action="manage_testgroups.cgi">
<div class="info">
<b>Filter:</b>
<table border="0">
<b>Filter:</b>
<table border="0">
<tr>
<td>Product:</td>
</tr>
@@ -314,7 +315,8 @@ function resetTestgroup() {
</td>
</tr>
</table>
</div>
</div>
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td>

View File

@@ -25,6 +25,9 @@
# ***** END LICENSE BLOCK *****
#%]
<form id="update_result" name="update_result" method="post" action="single_result.cgi">
<input type="hidden" name="id" value="[% result.testresult_id | html %]">
[% IF result.isAutomated %]
<div class="automated-result-banner">
<strong>automated test result</strong><br /><br />
@@ -64,6 +67,19 @@ Summary Information
Not provided
[% END %]</td>
</tr>
[% IF show_admin %]
<tr class="even">
<td>Valid?</td>
<td><input id="valid" name="valid" type="checkbox"[% IF result.valid %] checked[% END %]> <input id="vet_result" name="vet_result" class="button" type="submit" value="Vet Result"></td>
</tr>
<tr class="odd">
<td>Vetted By:</td>
<td>[% IF result.vetted_by_user.email %][% result.vetted_by_user.email | html | uri | email %][% ELSE %]Not yet vetted[% END %]</td>
</tr>
<tr class="even">
<td>Vetted on:</td><td>[% IF result.vetted_timestamp %][% result.vetted_timestamp | html %][% ELSE %]Not yet vetted[% END %]</td>
</tr>
[% END %]
</table>
</div> <!--END section-content-->
@@ -102,9 +118,6 @@ Product and Platform
</div> <!--END section-full-->
<form id="update_result" name="update_result" method="post" action="single_result.cgi">
<input type="hidden" name="id" value="[% result.testresult_id | html %]">
<div class="section-full">
<div class="section-header">
Referenced Bugs
@@ -199,8 +212,6 @@ No comments.
</div> <!--END section-full-->
</form>
<div class="section-full">
<div class="section-header">
Logs
@@ -231,5 +242,6 @@ No logs available.
</div> <!--END section-full-->
</form>