From 17882f4b4d5f4309602ebae6c5823b2ec9ded478 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 29 Aug 2013 17:49:39 +0200 Subject: [PATCH] [SIGNED-OFF] Bug 10806: The staff benchmark script does not check authentication failure. Currently, if you launch the script misc/load_testing/benchmark_staff.pl, it always displays "Authentication successful" or continue to execute the script even if nothing is done. This patch checks if the url is right and if the authentication is correctly done. Test plan: Suppose that a correct login/pwd is koha/koha 1/ perl misc/load_testing/benchmark_staff.pl --steps=1 --url=http://admin.koha.local/cgi-bin/koha/ --password="koha" --user="koha" should produce: Authentication successful ... Step 1 ... 2/ perl misc/load_testing/benchmark_staff.pl --steps=1 --url=http://admin.koha.local/cgi-bin/koha/ --password="KOHA" --user="KOHA" should produce: Authentication failure: bad login/password 3/ perl misc/load_testing/benchmark_staff.pl --steps=1 --url=http://admin.kobe.local/cgi-bin/koha/ --password="koha" --user="koha" should produce: Authentication failure: 500 Can't connect to admin.kobe.local:80 (Bad hostname) Signed-off-by: Bernardo Gonzalez Kriegel Comment: Works as described, detects bad url and user credentials. No koha-qa errors --- misc/load_testing/benchmark_staff.pl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/misc/load_testing/benchmark_staff.pl b/misc/load_testing/benchmark_staff.pl index 1d225d9..786b04a 100644 --- a/misc/load_testing/benchmark_staff.pl +++ b/misc/load_testing/benchmark_staff.pl @@ -76,13 +76,17 @@ my $cookie_jar = HTTP::Cookies->new(); my $cookie; $ua->cookie_jar($cookie_jar); my $resp = $ua->post( "$baseurl"."/svc/authentication" , {userid =>$user, password => $password} ); -if( $resp->is_success ) { +if( $resp->is_success and $resp->content =~ m|ok| ) { $cookie_jar->extract_cookies( $resp ); $cookie = $cookie_jar->as_string; unless ($short_print) { print "Authentication successful\n"; print "Auth:\n $resp->content" if $debug; } +} elsif ( $resp->is_success ) { + die "Authentication failure: bad login/password"; +} else { + die "Authentication failure: \n\t" . $resp->status_line; } # remove some unnecessary garbage from the cookie -- 1.7.9.5