more session related bug fixes
added setting test
This commit is contained in:
parent
128f265678
commit
453942cb58
4 changed files with 55 additions and 7 deletions
|
|
@ -411,12 +411,13 @@ sub login {
|
|||
#-------------------------------------------------------------------
|
||||
sub new {
|
||||
my $class = shift;
|
||||
my $session = shift;
|
||||
my $authMethod = $_[0];
|
||||
my $userId = $_[1];
|
||||
my @callable = ('createAccount','deactivateAccount','displayAccount','displayLogin','login','logout','createAccountSave','deactivateAccountConfirm');
|
||||
my $self = WebGUI::Auth->new($authMethod,$userId,\@callable);
|
||||
$self->{_connection} = WebGUI::LDAPLink->new($self->session,($self->session->scratch->get("ldapConnection") || $self->session->setting->get("ldapConnection")))->get;
|
||||
my $i18n = WebGUI::International->new($self->session, "AuthLDAP");
|
||||
my $self = WebGUI::Auth->new($session,$authMethod,$userId,\@callable);
|
||||
$self->{_connection} = WebGUI::LDAPLink->new($session,($session->scratch->get("ldapConnection") || $session->setting->get("ldapConnection")))->get;
|
||||
my $i18n = WebGUI::International->new($session, "AuthLDAP");
|
||||
my %ldapStatusCode = map { $_ => $i18n->get("LDAPLink_".$_) }
|
||||
(0..21, 32,33,34,36, 48..54, 64..71, 80);
|
||||
$self->{_statusCode} = \%ldapStatusCode;
|
||||
|
|
|
|||
|
|
@ -504,7 +504,7 @@ sub login {
|
|||
#-------------------------------------------------------------------
|
||||
sub new {
|
||||
my $class = shift;
|
||||
my $session = shift;
|
||||
my $session = shift;
|
||||
my $authMethod = $_[0];
|
||||
my $userId = $_[1];
|
||||
my @callable = ('validateEmail','createAccount','deactivateAccount','displayAccount','displayLogin','login','logout','recoverPassword','resetExpiredPassword','recoverPasswordFinish','createAccountSave','deactivateAccountConfirm','resetExpiredPasswordSave','updateAccount');
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ sub add {
|
|||
my $name = shift;
|
||||
my $value = shift;
|
||||
$self->{_settings}{$name} = $value;
|
||||
$self->session->db->write("insert into settings (name,value) values (".quote($name).",".quote($value).")");
|
||||
$self->session->db->write("insert into settings (name,value) values (".$self->session->db->quote($name).",".$self->session->db->quote($value).")");
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------
|
||||
|
|
@ -136,7 +136,7 @@ sub remove {
|
|||
my $self = shift;
|
||||
my $name = shift;
|
||||
delete $self->{_settings}{$name};
|
||||
$self->session->db->write("delete from settings where name=".quote($name));
|
||||
$self->session->db->write("delete from settings where name=".$self->session->db->quote($name));
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -175,7 +175,7 @@ sub set {
|
|||
my $name = shift;
|
||||
my $value = shift;
|
||||
$self->{_settings}{$name} = $value;
|
||||
$self->session->db->write("update settings set value=".quote($value)." where name=".quote($name));
|
||||
$self->session->db->write("update settings set value=".$self->session->db->quote($value)." where name=".$self->session->db->quote($name));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
47
t/Session_Setting.t
Normal file
47
t/Session_Setting.t
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
#-------------------------------------------------------------------
|
||||
# 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
|
||||
#-------------------------------------------------------------------
|
||||
|
||||
# ---- BEGIN DO NOT EDIT ----
|
||||
use strict;
|
||||
use lib '../lib';
|
||||
use Getopt::Long;
|
||||
use WebGUI::Session;
|
||||
# ---- END DO NOT EDIT ----
|
||||
use Test::More tests => 4; # increment this value for each test you create
|
||||
|
||||
my $session = initialize(); # this line is required
|
||||
|
||||
$session->setting->add("test","XXX");
|
||||
my ($value) = $session->db->quickArray("select value from settings where name='test'");
|
||||
is($value, 'XXX', "add()");
|
||||
is($session->setting->get("test"), "XXX", "get()");
|
||||
$session->setting->set("test","YYY");
|
||||
my ($value) = $session->db->quickArray("select value from settings where name='test'");
|
||||
is($value, 'YYY', "set()");
|
||||
$session->setting->remove("test");
|
||||
my ($value) = $session->db->quickArray("select value from settings where name='test'");
|
||||
is($value, undef, "delete()");
|
||||
|
||||
cleanup($session); # this line is required
|
||||
|
||||
# ---- DO NOT EDIT BELOW THIS LINE -----
|
||||
sub initialize {
|
||||
$|=1; # disable output buffering
|
||||
my $configFile;
|
||||
GetOptions(
|
||||
'configFile=s'=>\$configFile
|
||||
);
|
||||
exit 1 unless ($configFile);
|
||||
my $session = WebGUI::Session->open("..",$configFile);
|
||||
}
|
||||
sub cleanup {
|
||||
my $session = shift;
|
||||
$session->close();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue