Added comments to the POD in Var.pm that creating a Var object overwrites
the Session Id. This is by design. Added a check to Style.pm so that if no params are passed to setLink that it won't die by trying to deref undef into a hashref. First set of tests for Session/Style added.
This commit is contained in:
parent
fd44b5d96e
commit
ff2344cdad
3 changed files with 55 additions and 2 deletions
|
|
@ -248,7 +248,8 @@ Sets a <link> tag into the <head> of this rendered page for this page view. This
|
||||||
|
|
||||||
=head3 url
|
=head3 url
|
||||||
|
|
||||||
The URL to the document you are linking.
|
The URL to the document you are linking. Only one link can be set per url. If a link to this URL exists,
|
||||||
|
the old link will remain and this method will return undef.
|
||||||
|
|
||||||
=head3 params
|
=head3 params
|
||||||
|
|
||||||
|
|
@ -260,6 +261,7 @@ sub setLink {
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $url = shift;
|
my $url = shift;
|
||||||
my $params = shift;
|
my $params = shift;
|
||||||
|
$params = {} unless (defined $params and ref $params eq 'HASH');
|
||||||
return undef if ($self->{_link}{$url});
|
return undef if ($self->{_link}{$url});
|
||||||
my $tag = '<link href="'.$url.'"';
|
my $tag = '<link href="'.$url.'"';
|
||||||
foreach my $name (keys %{$params}) {
|
foreach my $name (keys %{$params}) {
|
||||||
|
|
|
||||||
|
|
@ -149,7 +149,7 @@ sub isAdminOn {
|
||||||
|
|
||||||
=head2 new ( session, sessionId, noFuss )
|
=head2 new ( session, sessionId, noFuss )
|
||||||
|
|
||||||
Constructor. Returns a var object.
|
Constructor. Overwrites the sessionId of $session with its own id. Returns a var object.
|
||||||
|
|
||||||
=head3 session
|
=head3 session
|
||||||
|
|
||||||
|
|
|
||||||
51
t/Session/Style.t
Normal file
51
t/Session/Style.t
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
# WebGUI is Copyright 2001-2006 Plain Black Corporation.
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
# Please read the legal notices (docs/legal.txt) and the license
|
||||||
|
# (docs/license.txt) that came with this distribution before using
|
||||||
|
# this software.
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
# http://www.plainblack.com info@plainblack.com
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
use FindBin;
|
||||||
|
use strict;
|
||||||
|
use lib "$FindBin::Bin/../lib";
|
||||||
|
|
||||||
|
use WebGUI::Test;
|
||||||
|
use WebGUI::Session;
|
||||||
|
|
||||||
|
use Test::More tests => 7; # increment this value for each test you create
|
||||||
|
|
||||||
|
my $session = WebGUI::Test->session;
|
||||||
|
|
||||||
|
# put your tests here
|
||||||
|
|
||||||
|
my $style = $session->style;
|
||||||
|
|
||||||
|
isa_ok($style, 'WebGUI::Session::Style', 'session has correct object type');
|
||||||
|
|
||||||
|
####################################################
|
||||||
|
#
|
||||||
|
# sent
|
||||||
|
#
|
||||||
|
####################################################
|
||||||
|
|
||||||
|
is($style->sent, undef, 'sent should start off being undefined at session creation');
|
||||||
|
is($style->sent(1), '1', 'sent: set to true (1)');
|
||||||
|
is($style->sent(), '1', 'sent: return true (1)');
|
||||||
|
is($style->sent('gone'), 'gone', 'sent: set to true ("gone")');
|
||||||
|
is($style->sent(), 'gone', 'sent: return true ("gone")');
|
||||||
|
|
||||||
|
$style->sent(0); ##Set to unsent to we don't trigger any other code, yet
|
||||||
|
|
||||||
|
####################################################
|
||||||
|
#
|
||||||
|
# setLink
|
||||||
|
#
|
||||||
|
####################################################
|
||||||
|
|
||||||
|
is($style->setLink(), 0, 'setLink returns the result of the conditional check for already sent');
|
||||||
|
|
||||||
|
END {
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue