diff options
Diffstat (limited to 'xt/webservice/jsonp.t')
-rw-r--r-- | xt/webservice/jsonp.t | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/xt/webservice/jsonp.t b/xt/webservice/jsonp.t new file mode 100644 index 000000000..75a0c0cfb --- /dev/null +++ b/xt/webservice/jsonp.t @@ -0,0 +1,34 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# This Source Code Form is "Incompatible With Secondary Licenses", as +# defined by the Mozilla Public License, v. 2.0. + +use 5.10.1; +use strict; +use warnings; + +use FindBin qw($RealBin); +use lib "$RealBin/../lib"; + +use Test::More tests => 85; +use QA::Util; +my $jsonrpc_get = QA::Util::get_jsonrpc_client('GET'); + +my @chars = (0..9, 'A'..'Z', 'a'..'z', '_[].'); + +our @tests = ( + { args => { callback => join('', @chars) }, + test => 'callback accepts all legal characters.' }, +); +foreach my $char (qw(! ~ ` @ $ % ^ & * - + = { } ; : ' " < > / ? |), + '(', ')', '\\', '#', ',') +{ + push(@tests, + { args => { callback => "a$char" }, + error => "as your 'callback' parameter", + test => "$char is not valid in callback" }); +} + +$jsonrpc_get->bz_run_tests(method => 'Bugzilla.version', tests => \@tests); |