Remove getStatus and setStatus in Session::Http, and replace them with status, from $session->status.
This commit is contained in:
parent
b830bd8e71
commit
e5adc07a05
27 changed files with 88 additions and 129 deletions
|
|
@ -284,3 +284,14 @@ WebGUI::Session::Var
|
|||
==========================
|
||||
WebGUI::Session::Var was removed, and all of its code merged into WebGUI::Session. Any call that used to be
|
||||
made to $session->var should now go directly to $session.
|
||||
|
||||
WebGUI::Session::Http
|
||||
==========================
|
||||
getStatus and setStatus have been removed. To set or get the status of an HTTP response
|
||||
generated by WebGUI, access the WebGUI::Response object in the session:
|
||||
|
||||
OLD: $session->http->getStatus();
|
||||
NEW: $session->response->status();
|
||||
|
||||
OLD: $session->http->setStatus(200);
|
||||
NEW: $session->response->status(200);
|
||||
|
|
|
|||
|
|
@ -180,7 +180,7 @@ sub handle {
|
|||
return;
|
||||
}
|
||||
# Keep processing for success codes
|
||||
elsif ($session->http->getStatus < 200 || $session->http->getStatus > 299) {
|
||||
elsif ($session->response->status < 200 || $session->response->status > 299) {
|
||||
$session->http->sendHeader;
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -619,7 +619,7 @@ sub checkView {
|
|||
return "chunked";
|
||||
}
|
||||
elsif ($self->get("state") ne "published") { # tell em it doesn't exist anymore
|
||||
$http->setStatus(410);
|
||||
$session->response->status(410);
|
||||
my $notFound = WebGUI::Asset->getNotFound($self->session);
|
||||
$self->session->asset($notFound);
|
||||
return $notFound->www_view;
|
||||
|
|
|
|||
|
|
@ -615,7 +615,7 @@ sub www_view {
|
|||
# Check to make sure it's not in the trash or some other weird place
|
||||
if ($self->state ne "published") {
|
||||
my $i18n = WebGUI::International->new($session,'Asset_File');
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return sprintf($i18n->get("file not found"), $self->getUrl());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -466,7 +466,7 @@ sub www_view {
|
|||
$self->session->http->setRedirect($self->getUrl("func=manageClipboard"));
|
||||
return undef;
|
||||
} else { # tell em it doesn't exist anymore
|
||||
$self->session->http->setStatus(410);
|
||||
$self->session->response->status(410);
|
||||
return WebGUI::Asset->getNotFound($self->session)->www_view;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1624,7 +1624,7 @@ sub www_deleteThingDataViaAjax {
|
|||
$session->http->setMimeType("application/json");
|
||||
|
||||
unless ($thingId && $thingDataId) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => "Can't get thing data without a thingId and a thingDataId."});
|
||||
}
|
||||
|
||||
|
|
@ -1639,7 +1639,7 @@ sub www_deleteThingDataViaAjax {
|
|||
return JSON->new->encode({message => "Data with thingDataId $thingDataId was deleted."});
|
||||
}
|
||||
else {
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingId you specified can not be found."});
|
||||
}
|
||||
}
|
||||
|
|
@ -2583,7 +2583,7 @@ sub www_editThingDataSaveViaAjax {
|
|||
my $i18n = WebGUI::International->new($self->session, "Asset_Thingy");
|
||||
|
||||
unless ($thingId && $thingDataId) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => "Can't get thing data without a thingId and a thingDataId."});
|
||||
}
|
||||
|
||||
|
|
@ -2593,22 +2593,22 @@ sub www_editThingDataSaveViaAjax {
|
|||
,$thingProperties);
|
||||
|
||||
if($thingDataId eq 'new' && $self->hasEnteredMaxPerUser($thingId)){
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => $i18n->get("has entered max per user message")});
|
||||
}
|
||||
|
||||
my ($newThingDataId,$errors) = $self->editThingDataSave($thingId,$thingDataId);
|
||||
|
||||
if (@{ $errors }) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode($errors);
|
||||
}
|
||||
$session->http->setStatus("200");
|
||||
$session->response->status("200");
|
||||
return '{}';
|
||||
}
|
||||
else {
|
||||
$session->log->warn("thingId ".$thingProperties->{thingId}." not found in thingProperties");
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingId you requested can not be found."});
|
||||
}
|
||||
}
|
||||
|
|
@ -2707,7 +2707,7 @@ sub www_getThingViaAjax {
|
|||
$session->http->setMimeType("application/json");
|
||||
|
||||
unless ($thingId) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => "Can't return thing properties without a thingId."});
|
||||
}
|
||||
|
||||
|
|
@ -2729,7 +2729,7 @@ sub www_getThingViaAjax {
|
|||
return JSON->new->encode($thingProperties);
|
||||
}
|
||||
else {
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingId you requested can not be found."});
|
||||
}
|
||||
}
|
||||
|
|
@ -2763,7 +2763,7 @@ sub www_getThingsViaAjax {
|
|||
return JSON->new->encode(\@visibleThings);
|
||||
}
|
||||
else {
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "No visible Things were found in this Thingy."});
|
||||
}
|
||||
}
|
||||
|
|
@ -3123,7 +3123,7 @@ sub www_searchViaAjax {
|
|||
my $i18n = WebGUI::International->new($self->session,"Asset_Thingy");
|
||||
|
||||
unless ($thingId) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => "Can't perform search without a thingId."});
|
||||
}
|
||||
|
||||
|
|
@ -3138,7 +3138,7 @@ sub www_searchViaAjax {
|
|||
return JSON->new->encode($var);
|
||||
}
|
||||
else {
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingId you requested can not be found."});
|
||||
}
|
||||
}
|
||||
|
|
@ -3557,7 +3557,7 @@ sub www_viewThingDataViaAjax {
|
|||
$session->http->setMimeType("application/json");
|
||||
|
||||
unless ($thingId && $thingDataId) {
|
||||
$session->http->setStatus(400);
|
||||
$session->response->status(400);
|
||||
return JSON->new->encode({message => "Can't get thing data without a thingId and a thingDataId."});
|
||||
}
|
||||
|
||||
|
|
@ -3572,12 +3572,12 @@ sub www_viewThingDataViaAjax {
|
|||
return JSON->new->encode($output);
|
||||
}
|
||||
else{
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingDataId you requested can not be found."});
|
||||
}
|
||||
}
|
||||
else {
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
return JSON->new->encode({message => "The thingId you requested can not be found."});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -94,7 +94,7 @@ sub addChild {
|
|||
my $temp = WebGUI::Asset->newByPropertyHashRef($session, $properties) || croak "Couldn't create a new $properties->{className} asset!";
|
||||
my $newAsset = $temp->addRevision($properties, $now, $options);
|
||||
$self->updateHistory("added child ".$id);
|
||||
$session->http->setStatus(201);
|
||||
$session->response->status(201);
|
||||
return $newAsset;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -975,7 +975,7 @@ sub www_createAccountSave {
|
|||
return undef;
|
||||
}
|
||||
else {
|
||||
$self->session->http->setStatus(201);
|
||||
$self->session->response->status(201);
|
||||
}
|
||||
|
||||
return undef;
|
||||
|
|
|
|||
|
|
@ -786,7 +786,7 @@ sub www_displayLogin {
|
|||
sub www_login {
|
||||
my $self = shift;
|
||||
if(!$self->authenticate($self->session->form->process("username"),$self->session->form->process("identifier"))){
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
$self->session->log->security("login to account ".$self->session->form->process("username")." with invalid information.");
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
return $self->www_displayLogin("<h1>".$i18n->get(70)."</h1>".$self->error);
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ sub dispatch {
|
|||
# display from cache if page hasn't been modified.
|
||||
if ($session->user->isVisitor
|
||||
&& !$session->http->ifModifiedSince($asset->getContentLastModified, $session->setting->get('maxCacheTimeout'))) {
|
||||
$session->http->setStatus("304","Content Not Modified");
|
||||
$session->response->status("304");
|
||||
$session->http->sendHeader;
|
||||
return "chunked";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ The content handler for this package.
|
|||
|
||||
sub handler {
|
||||
my ($session) = @_;
|
||||
$session->http->setStatus(404);
|
||||
$session->response->status(404);
|
||||
my $output = "";
|
||||
my $notFound = WebGUI::Asset->getNotFound($session);
|
||||
if (defined $notFound) {
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ The content handler for this package.
|
|||
sub handler {
|
||||
my ($session) = @_;
|
||||
if ($session->request->env->{"HTTP_X_MOZ"} eq "prefetch") { # browser prefetch is a bad thing
|
||||
$session->http->setStatus(403);
|
||||
$session->response->status(403);
|
||||
}
|
||||
return undef;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -354,7 +354,7 @@ sub www_ajaxCreateUser {
|
|||
# Verify access
|
||||
if ( !canAdd($session) || !canUseService($session) ) {
|
||||
# We need an automatic way to send a request for an http basic auth
|
||||
$session->http->setStatus(401);
|
||||
$session->response->status(401);
|
||||
return createServiceResponse( $outputFormat, {
|
||||
error => "WebGUI::Error::Unauthorized",
|
||||
message => "",
|
||||
|
|
@ -441,7 +441,7 @@ sub www_ajaxDeleteUser {
|
|||
# Verify access
|
||||
if ( !canEdit($session) || !canUseService($session) ) {
|
||||
# We need an automatic way to send a request for an http basic auth
|
||||
$session->http->setStatus(401);
|
||||
$session->response->status(401);
|
||||
return createServiceResponse( $outputFormat, {
|
||||
error => "WebGUI::Error::Unauthorized",
|
||||
message => "",
|
||||
|
|
@ -458,7 +458,7 @@ sub www_ajaxDeleteUser {
|
|||
} );
|
||||
}
|
||||
elsif ( $userId eq "1" || $userId eq "3" ) {
|
||||
$session->http->setStatus(403);
|
||||
$session->response->status(403);
|
||||
return createServiceResponse( $outputFormat, {
|
||||
error => 'WebGUI::Error::InvalidParam',
|
||||
param => 'userId',
|
||||
|
|
@ -508,7 +508,7 @@ sub www_ajaxUpdateUser {
|
|||
# Verify access
|
||||
if ( !canEdit($session) || !canUseService($session) ) {
|
||||
# We need an automatic way to send a request for an http basic auth
|
||||
$session->http->setStatus(401);
|
||||
$session->response->status(401);
|
||||
return createServiceResponse( $outputFormat, {
|
||||
error => "WebGUI::Error::Unauthorized",
|
||||
message => "",
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ sub _httpBasicLogin {
|
|||
$self->session->request->headers_out->set(
|
||||
'WWW-Authenticate' => 'Basic realm="'.$self->session->setting->get('companyName').'"'
|
||||
);
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
$self->session->http->sendHeader;
|
||||
return '';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -42,7 +42,6 @@ This package allows the manipulation of HTTP protocol information.
|
|||
$http->sendHeader();
|
||||
|
||||
$mimetype = $http->getMimeType();
|
||||
$code = $http->getStatus();
|
||||
$boolean = $http->isRedirect();
|
||||
|
||||
$http->setCookie($name,$value);
|
||||
|
|
@ -138,22 +137,6 @@ sub getRedirectLocation {
|
|||
}
|
||||
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getStatus ( ) {
|
||||
|
||||
Returns the current HTTP status code. If no code has been set,
|
||||
the code returned will be 200.
|
||||
|
||||
=cut
|
||||
|
||||
sub getStatus {
|
||||
my $self = shift;
|
||||
my $status = $self->{_http}{status} || "200";
|
||||
return $status;
|
||||
}
|
||||
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 getStreamedFile ( ) {
|
||||
|
|
@ -212,7 +195,7 @@ Returns a boolean value indicating whether the current page will redirect to som
|
|||
|
||||
sub isRedirect {
|
||||
my $self = shift;
|
||||
my $status = $self->getStatus;
|
||||
my $status = $self->session->response->status;
|
||||
return $status == 302 || $status == 301;
|
||||
}
|
||||
|
||||
|
|
@ -264,7 +247,6 @@ sub sendHeader {
|
|||
my %params;
|
||||
if ($self->isRedirect()) {
|
||||
$response->header(Location => $self->getRedirectLocation);
|
||||
$response->status($self->getStatus);
|
||||
} else {
|
||||
$response->content_type($self->getMimeType);
|
||||
my $cacheControl = $self->getCacheControl;
|
||||
|
|
@ -297,7 +279,6 @@ sub sendHeader {
|
|||
if ($self->getFilename) {
|
||||
$response->header( 'Content-Disposition' => qq{attachment; filename="}.$self->getFilename().'"');
|
||||
}
|
||||
$response->status($self->getStatus());
|
||||
}
|
||||
return undef;
|
||||
}
|
||||
|
|
@ -311,7 +292,6 @@ sub _sendMinimalHeader {
|
|||
"Pragma" => "no-cache",
|
||||
"Cache-Control" => "no-cache",
|
||||
);
|
||||
$response->status($self->getStatus());
|
||||
return undef;
|
||||
}
|
||||
|
||||
|
|
@ -507,7 +487,7 @@ sub setRedirect {
|
|||
return undef if ($url eq $self->session->url->page() && scalar(@params) < 1); # prevent redirecting to self
|
||||
$self->session->log->info("Redirecting to $url");
|
||||
$self->setRedirectLocation($url);
|
||||
$self->setStatus($type);
|
||||
$self->session->response->status($type);
|
||||
$self->session->style->setMeta({"http-equiv"=>"refresh",content=>"0; URL=".$url});
|
||||
}
|
||||
|
||||
|
|
@ -527,23 +507,6 @@ sub setRedirectLocation {
|
|||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 setStatus ( code )
|
||||
|
||||
Sets the HTTP status code.
|
||||
|
||||
=head3 code
|
||||
|
||||
An HTTP status code. It is a 3 digit status number.
|
||||
|
||||
=cut
|
||||
|
||||
sub setStatus {
|
||||
my $self = shift;
|
||||
$self->{_http}{status} = shift;
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
=head2 setStreamedFile ( ) {
|
||||
|
||||
Set a file to be streamed thru mod_perl.
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ Returns a message stating that this functionality can only be used by administra
|
|||
sub adminOnly {
|
||||
my $self = shift;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
my $output = '<h1>'.$i18n->get(35).'</h1>';
|
||||
$output .= $i18n->get(36);
|
||||
return $self->session->style->userStyle($output);
|
||||
|
|
@ -78,7 +78,7 @@ sub insufficient {
|
|||
my $self = shift;
|
||||
my $noStyle = shift;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
my $output = '<h1>'.$i18n->get(37).'</h1>';
|
||||
if ($noStyle) {
|
||||
$self->session->style->useEmptyStyle(1);
|
||||
|
|
@ -103,7 +103,7 @@ sub locked {
|
|||
my $self = shift;
|
||||
my $noStyle = shift;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
my $output = '<h1>'.$i18n->get(37).'</h1>';
|
||||
if ($noStyle) {
|
||||
$self->session->style->useEmptyStyle(1);
|
||||
|
|
@ -148,7 +148,7 @@ Returns a message stating that the user does not have the privileges necessary t
|
|||
|
||||
sub noAccess {
|
||||
my $self = shift;
|
||||
$self->session->http->setStatus(401);
|
||||
$self->session->response->status(401);
|
||||
if ($self->session->user->isVisitor) {
|
||||
return WebGUI::Operation::Auth::www_auth($self->session, "init");
|
||||
} else {
|
||||
|
|
@ -171,7 +171,7 @@ Returns a message stating that the user they requested information about is no l
|
|||
sub notMember {
|
||||
my $self = shift;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->session->http->setStatus(400);
|
||||
$self->session->response->status(400);
|
||||
my ($output);
|
||||
$output = '<h1>'.$i18n->get(345).'</h1>';
|
||||
$output .= $i18n->get(346);
|
||||
|
|
@ -203,7 +203,7 @@ Returns a message stating that the user made a request to delete something that
|
|||
sub vitalComponent {
|
||||
my $self = shift;
|
||||
my $i18n = WebGUI::International->new($self->session);
|
||||
$self->session->http->setStatus(403);
|
||||
$self->session->response->status(403);
|
||||
my ($output);
|
||||
$output = '<h1>'.$i18n->get(40).'</h1>';
|
||||
$output .= $i18n->get(41);
|
||||
|
|
|
|||
|
|
@ -715,7 +715,7 @@ sub www_processRecurringTransactionPostback {
|
|||
# First check whether the original transaction actualy exists
|
||||
if (WebGUI::Error->caught || !(defined $baseTransaction) ) {
|
||||
$session->log->warn("Check recurring postback: No base transction for XID: [$originatingXid]");
|
||||
$session->http->setStatus(500);
|
||||
$session->response->status(500);
|
||||
return "Check recurring postback. No base transction for XID: [$originatingXid]";
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -360,7 +360,7 @@ sub addFileFromFormPost {
|
|||
my $attachmentLimit = shift || 99999;
|
||||
my $session = $self->session;
|
||||
return ""
|
||||
if ($self->session->http->getStatus eq '413');
|
||||
if ($self->session->response->status eq '413');
|
||||
my $filename;
|
||||
my $attachmentCount = 1;
|
||||
foreach my $upload ($session->request->upload($formVariableName)) {
|
||||
|
|
|
|||
|
|
@ -860,19 +860,19 @@ is $clippedAsset->get('state'), 'clipboard', '... clipped an asset';
|
|||
|
||||
$session->switchAdminOff;
|
||||
$session->http->setRedirectLocation('');
|
||||
$session->http->setStatus(200, 'OK');
|
||||
$session->response->status(200, 'OK');
|
||||
|
||||
$trashedAsset->checkView();
|
||||
is $session->http->getStatus, 410, '... status set to 410 for trashed asset';
|
||||
is $session->response->status, 410, '... status set to 410 for trashed asset';
|
||||
is $session->http->getRedirectLocation, '', '... no redirect set';
|
||||
|
||||
$session->http->setStatus(200, 'OK');
|
||||
$session->response->status(200, 'OK');
|
||||
$clippedAsset->checkView();
|
||||
is $session->http->getStatus, 410, '... status set to 410 for cut asset';
|
||||
is $session->response->status, 410, '... status set to 410 for cut asset';
|
||||
is $session->http->getRedirectLocation, '', '... no redirect set';
|
||||
|
||||
$session->switchAdminOn;
|
||||
$session->http->setStatus(200, 'OK');
|
||||
$session->response->status(200, 'OK');
|
||||
is $trashedAsset->checkView(), 'chunked', '... returns "chunked" when admin is on for trashed asset';
|
||||
is $session->http->getRedirectLocation, $trashedAsset->getUrl('func=manageTrash'), '... trashed asset sets redirect to manageTrash';
|
||||
|
||||
|
|
|
|||
|
|
@ -353,26 +353,26 @@ is($printRemainingTicketsTemplateId, "hreA_bgxiTX-EzWCSZCZJw", 'Default print re
|
|||
#Make sure permissions work on pages
|
||||
my $data;
|
||||
$session->user({userId => $crasher->getId});
|
||||
$session->http->setStatus(201);
|
||||
$session->response->status(201);
|
||||
$data = $ems->www_viewSchedule();
|
||||
is($session->http->getStatus, 401, 'www_viewSchedule: visitor may not see the schedule');
|
||||
is($session->response->status, 401, 'www_viewSchedule: visitor may not see the schedule');
|
||||
$data = $ems->www_printRemainingTickets();
|
||||
is($session->http->getStatus, 401, 'www_printRemainingTickets: visitor may not print the remaining tickets');
|
||||
is($session->response->status, 401, 'www_printRemainingTickets: visitor may not print the remaining tickets');
|
||||
|
||||
$session->http->setStatus(201);
|
||||
$session->response->status(201);
|
||||
$session->user({userId => $attender->getId});
|
||||
$data = $ems->www_viewSchedule();
|
||||
is($session->http->getStatus, 201, '... attender user can see the schedule');
|
||||
is($session->response->status, 201, '... attender user can see the schedule');
|
||||
$data = $ems->www_printRemainingTickets();
|
||||
is($session->http->getStatus, 401, 'www_printRemainingTickets: attender may not print the remaining tickets');
|
||||
is($session->response->status, 401, 'www_printRemainingTickets: attender may not print the remaining tickets');
|
||||
|
||||
$session->http->setStatus(201);
|
||||
$session->response->status(201);
|
||||
$session->user({userId => $registrar->getId});
|
||||
$data = $ems->www_printRemainingTickets();
|
||||
is($session->http->getStatus, 201, 'www_printRemainingTickets: registration staff may print the remaining tickets');
|
||||
is($session->response->status, 201, 'www_printRemainingTickets: registration staff may print the remaining tickets');
|
||||
|
||||
|
||||
$session->http->setStatus(201);
|
||||
$session->response->status(201);
|
||||
$session->user({userId => $crasher->getId});
|
||||
my ($json, $records);
|
||||
$json = $ems->www_getScheduleDataJSON();
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ cmp_deeply(from_json($surveyEnd), { type => 'forward', url => '/getting_started'
|
|||
# Check a simple www_jumpTo request
|
||||
$session->user( { userId => 3 } );
|
||||
WebGUI::Test->getPage( $survey, 'www_jumpTo', { formParams => {id => '0'} } );
|
||||
is( $session->http->getStatus, '201', 'Page request ok' ); # why is "201 - created" status used??
|
||||
is( $session->response->status, '201', 'Page request ok' ); # why is "201 - created" status used??
|
||||
is($survey->responseJSON->nextResponse, 0, 'S0 is the first response');
|
||||
|
||||
tie my %expectedSurveyOrder, 'Tie::IxHash';
|
||||
|
|
|
|||
|
|
@ -430,10 +430,10 @@ $session->request->setup_body({
|
|||
});
|
||||
|
||||
$session->user({userId => '3'});
|
||||
$session->http->setStatus(200);
|
||||
$session->response->status(200);
|
||||
my $json = $thingy->www_editThingDataSaveViaAjax();
|
||||
diag "json: ".$json;
|
||||
is $json, '{}', 'www_editThingDataSaveViaAjax: Empty JSON hash';
|
||||
is $session->http->getStatus, 200, '... http status=200';
|
||||
is $session->response->status, 200, '... http status=200';
|
||||
|
||||
$session->request->setup_body({ });
|
||||
|
|
|
|||
|
|
@ -224,14 +224,14 @@ WebGUI::Test->addToCleanup( $notModifiedSession );
|
|||
|
||||
my $output = WebGUI::Content::Asset::handler( $notModifiedSession );
|
||||
is( $output, "chunked", "304 returns chunked" );
|
||||
is( $notModifiedSession->http->getStatus, "304", "http status code set" );
|
||||
is( $notModifiedSession->response->status, "304", "http status code set" );
|
||||
ok( !$notModifiedSession->closed, "session is not closed" );
|
||||
|
||||
$notModifiedSession = WebGUI::Test->newSession( undef, $http_request);
|
||||
WebGUI::Test->addToCleanup( $notModifiedSession );
|
||||
$notModifiedSession->user({ userId => 3});
|
||||
my $output = WebGUI::Content::Asset::handler( $notModifiedSession );
|
||||
isnt( $notModifiedSession->http->getStatus, "304", "logged in user doesn't get 304" );
|
||||
isnt( $notModifiedSession->response->status, "304", "logged in user doesn't get 304" );
|
||||
ok( !$notModifiedSession->closed, "session is not closed" );
|
||||
|
||||
# Test that requesting a URL that doesn't exist, but one of the permutations does exist, returns undef
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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');
|
||||
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -482,10 +482,10 @@ cmp_bag(
|
|||
#
|
||||
####################################################
|
||||
|
||||
$session->http->setStatus(413);
|
||||
$session->response->status(413);
|
||||
is($fileStore->addFileFromFormPost(), '', 'addFileFromFormPost returns empty string when HTTP status is 413');
|
||||
|
||||
$session->http->setStatus(200);
|
||||
$session->response->status(200);
|
||||
$session->request->upload('files', []);
|
||||
my $formStore = WebGUI::Storage->create($session);
|
||||
addToCleanup($formStore);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue