Remove getStatus and setStatus in Session::Http, and replace them with status, from $session->status.

This commit is contained in:
Colin Kuskie 2010-11-21 21:11:41 -08:00
parent b830bd8e71
commit e5adc07a05
27 changed files with 88 additions and 129 deletions

View file

@ -20,11 +20,12 @@ use Data::Dumper;
use Test::More; # increment this value for each test you create
use Test::Deep;
plan tests => 48;
plan tests => 46;
my $session = WebGUI::Test->session;
my $http = $session->http;
my $http = $session->http;
my $response = $session->response;
use Test::MockObject::Extends;
@ -38,37 +39,21 @@ $http->mock( getCookies => sub { return {$cookieName => $varId} } );
isa_ok($http, 'WebGUI::Session::Http', 'session has correct object type');
####################################################
#
# setStatus, getStatus
#
####################################################
$http->setStatus('123');
is($http->getStatus, '123', 'getStatus: returns correct code');
$http->setStatus('');
is($http->getStatus, '200', 'getStatus: returns default code');
$http->setStatus('', 'packets are great');
####################################################
#
# isRedirect
#
####################################################
$http->setStatus('200');
$response->status('200');
ok(!$http->isRedirect, 'isRedirect: 200 is not');
$http->setStatus('301');
$response->status('301');
ok($http->isRedirect, '... 301 is');
$http->setStatus('302');
$response->status('302');
ok($http->isRedirect, '... 302 is too');
$http->setStatus('200');
$response->status('200');
####################################################
#
@ -151,7 +136,7 @@ $http->setCacheControl(undef);
$session->request->uri('/here/later');
$http->setRedirect('/here/now');
is($http->getStatus, 302, 'setRedirect: sets HTTP status');
is($response->status, 302, 'setRedirect: sets HTTP status');
is($http->getRedirectLocation, '/here/now', 'setRedirect: redirect location');
$session->style->useEmptyStyle(1);
@ -234,7 +219,7 @@ is($http->sendHeader, undef, 'sendHeader returns undef when no request object is
my $guard = WebGUI::Test->cleanupGuard($session);
my $http = $session->http;
my $response = $session->response;
$http->setStatus(200, 'Just spiffy');
$response->status(200);
$http->setMimeType('');
$session->request->protocol('');
$http->setLastModified(1200);

View file

@ -83,7 +83,7 @@ my $i18n = WebGUI::International->new($session);
foreach my $test (@simpleTests) {
my $method = $test->{method};
my $output = $privilege->$method;
is($session->http->getStatus(), $test->{status}, "$method: status code");
is($session->response->status(), $test->{status}, "$method: status code");
my $title = $i18n->get($test->{titleCode});
like($output, qr{<h1>$title</h1>}, "$method: correct title");
like($output, qr{^USERSTYLE}, "$method: renders in WebGUI User Style");
@ -97,7 +97,7 @@ foreach my $test (@simpleTests) {
####################################################
my $output = $privilege->insufficient(1);
is($session->http->getStatus(), '401', 'insufficient: status code with Visitor');
is($session->response->status(), '401', 'insufficient: status code with Visitor');
my $title = $i18n->get(37);
unlike($output, qr{^USERSTYLE}, "insufficient: when noStyle is true the user style is not used");
like($output, qr{<h1>$title</h1>}, "insufficient: when noStyle is true the title is still okay");
@ -111,7 +111,7 @@ like($output, qr{<h1>$title</h1>}, "insufficient: when noStyle is true the title
$session->user({userId=>1});
my $output = $privilege->noAccess;
is($session->http->getStatus(), '401', 'noAccess: status code with Visitor');
is($session->response->status(), '401', 'noAccess: status code with Visitor');
##Is the auth screen returned, not validating the auth screen
is($output, WebGUI::Operation::Auth::www_auth($session, "init"), 'noAccess: visitor sees auth screen');

View file

@ -445,8 +445,8 @@ ok( ! $session->url->forceSecureConnection(), 'HTTPS must not be "on" to force S
ok( ! $session->url->forceSecureConnection('/test/url'), 'all conditions must be met, even if a URL is directly passed in');
##Validate the HTTP object state before we start
$session->http->setStatus('200', 'OK');
is($session->http->getStatus, 200, 'http status is okay, 200');
$session->response->status('200');
is($session->response->status, 200, 'http status is okay, 200');
is($session->http->getRedirectLocation, undef, 'redirect location is empty');
$env->{'psgi.url_scheme'} = "http";
@ -455,10 +455,10 @@ my $secureUrl = $session->url->getSiteURL . '/foo/bar/baz/buz';
$secureUrl =~ s/http:/https:/;
ok($session->url->forceSecureConnection('/foo/bar/baz/buz'), 'forced secure connection');
is($session->http->getStatus, 302, 'http status set to redirect, 302');
is($session->response->status, 302, 'http status set to redirect, 302');
is($session->http->getRedirectLocation, $secureUrl, 'redirect location set to proper passed in URL with SSL and sitename added');
$session->http->setStatus('200', 'OK');
$session->response->status('200', 'OK');
$session->http->setRedirectLocation(undef);
$secureUrl = $session->url->getSiteURL . $session->url->page();