Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
bugzilla
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
etersoft
bugzilla
Commits
8e9c6c35
Commit
8e9c6c35
authored
Oct 02, 2010
by
Max Kanat-Alexander
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bug 601364: Make xt/search.t also test the normal field=value search params
r=mkanat, a=mkanat (module owner)
parent
49cf9cce
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
66 additions
and
3 deletions
+66
-3
Search.pm
xt/lib/Bugzilla/Test/Search.pm
+2
-2
FieldTest.pm
xt/lib/Bugzilla/Test/Search/FieldTest.pm
+1
-1
FieldTestNormal.pm
xt/lib/Bugzilla/Test/Search/FieldTestNormal.pm
+59
-0
OperatorTest.pm
xt/lib/Bugzilla/Test/Search/OperatorTest.pm
+4
-0
No files found.
xt/lib/Bugzilla/Test/Search.pm
View file @
8e9c6c35
...
...
@@ -99,8 +99,8 @@ sub num_tests {
?
(
$top_combinations
*
$all_combinations
)
:
0
;
# And AND tests, which means we run 2x $join_tests;
$join_tests
=
$join_tests
*
2
;
# Also, because of NOT tests
, we run 2
x $top_combinations.
my
$basic_tests
=
$top_combinations
*
2
;
# Also, because of NOT tests
and Normal tests, we run 3
x $top_combinations.
my
$basic_tests
=
$top_combinations
*
3
;
my
$operator_field_tests
=
(
$basic_tests
+
$join_tests
)
*
TESTS_PER_RUN
;
# Then we test each field/operator combination for SQL injection.
...
...
xt/lib/Bugzilla/Test/Search/FieldTest.pm
View file @
8e9c6c35
...
...
@@ -279,7 +279,7 @@ sub join_broken {
# Accessors: Bugzilla::Search Arguments #
#########################################
# The
CGI object
that will get passed to Bugzilla::Search as its arguments.
# The
data
that will get passed to Bugzilla::Search as its arguments.
sub
search_params
{
my
(
$self
)
=
@_
;
return
$self
->
{
search_params
}
if
$self
->
{
search_params
};
...
...
xt/lib/Bugzilla/Test/Search/FieldTestNormal.pm
0 → 100644
View file @
8e9c6c35
# -*- Mode: perl; indent-tabs-mode: nil -*-
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is the Bugzilla Bug Tracking System.
#
# The Initial Developer of the Original Code is Everything Solved, Inc.
# Portions created by the Initial Developer are Copyright (C) 2010 the
# Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Max Kanat-Alexander <mkanat@bugzilla.org>
# This is the same as a FieldTest, except that it uses normal URL
# parameters instead of Boolean Charts.
package
Bugzilla::Test::Search::
FieldTestNormal
;
use
strict
;
use
warnings
;
use
base
qw(Bugzilla::Test::Search::FieldTest)
;
# We just clone a FieldTest because that's the best for performance,
# overall--that way we don't have to translate the value again.
sub
new
{
my
(
$class
,
$field_test
)
=
@_
;
my
$self
=
{
%
$field_test
};
return
bless
$self
,
$class
;
}
sub
name
{
my
$self
=
shift
;
my
$name
=
$self
->
SUPER::
name
(
@_
);
return
"$name (Normal Params)"
;
}
sub
search_params
{
my
(
$self
)
=
@_
;
return
$self
->
{
search_params
}
if
$self
->
{
search_params
};
my
$field
=
$self
->
field
;
my
$value
=
$self
->
translated_value
;
my
%
params
=
(
$field
=>
$value
,
"${field}_type"
=>
$self
->
operator
,
);
$self
->
{
search_params
}
=
\%
params
;
return
$self
->
{
search_params
};
}
1
;
\ No newline at end of file
xt/lib/Bugzilla/Test/Search/OperatorTest.pm
View file @
8e9c6c35
...
...
@@ -27,6 +27,7 @@ use strict;
use
warnings
;
use
Bugzilla::Test::Search::
Constants
;
use
Bugzilla::Test::Search::
FieldTest
;
use
Bugzilla::Test::Search::
FieldTestNormal
;
use
Bugzilla::Test::Search::
InjectionTest
;
use
Bugzilla::Test::Search::
OrTest
;
use
Bugzilla::Test::Search::
AndTest
;
...
...
@@ -64,6 +65,9 @@ sub run {
my
$field_test
=
new
Bugzilla::Test::Search::
FieldTest
(
$self
,
$field
,
$test
);
$field_test
->
run
();
my
$normal_test
=
new
Bugzilla::Test::Search::
FieldTestNormal
(
$field_test
);
$normal_test
->
run
();
my
$not_test
=
new
Bugzilla::Test::Search::
NotTest
(
$field_test
);
$not_test
->
run
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment