Added a dbSlave test to Session.t. It's kind of a hack as it sets up

a slave reference back to the original db from the config.
Bug fixes for the TrashClipboard workflow activity.  The dates were off,
since the interval returns an epoch, and the call to Asset->new didn't
have the session.
This commit is contained in:
Colin Kuskie 2007-03-02 16:51:49 +00:00
parent 52ebd6eece
commit ac6116b7a0
3 changed files with 34 additions and 3 deletions

View file

@ -7,6 +7,7 @@
- fix: Database Connetion for ODBC fails for lengthy strings (thanks to Isaac
Finegan, Core Mobility)
- fix: the fileImport script did not resize vertical images. (Martin Kamerbeek / Oqapi)
- fix: TrashClipboard.pm (thanks to Erik Svanberg for the patch)
7.3.11
- Added an option for enabling coverage tests to testCodebase.pl.

View file

@ -75,10 +75,10 @@ See WebGUI::Workflow::Activity::execute() for details.
sub execute {
my $self = shift;
my $expireDate = (time()-(86400*$self->get("trashAfter")));
my $expireDate = (time()-$self->get("trashAfter"));
my $sth = $self->session->db->read("select assetId,className from asset where state='clipboard' and stateChanged < ?", [$expireDate]);
while (my ($id, $class) = $sth->array) {
my $asset = WebGUI::Asset->new($id,$class);
my $asset = WebGUI::Asset->new($self->session,$id,$class);
$asset->trash;
}
return $self->COMPLETE;

View file

@ -19,7 +19,7 @@ use WebGUI::User;
use Test::More;
plan tests => 1; # increment this value for each test you create
plan tests => 2; # increment this value for each test you create
my $session = WebGUI::Test->session;
@ -31,8 +31,38 @@ my ($userId) = $session->db->quickArray("select userId from userSession where se
is($userId, $user->userId, 'changing session user changes sessionId inside userSession table');
################################################################
#
# dbSlave
#
################################################################
##Manually build one dbSlave in the config file to use
my $slaveHash2 = {
dsn => $session->config->get('dsn'),
user => $session->config->get('dbuser'),
pass => $session->config->get('dbpass'),
};
my $slaveHash1 = {
dsn => $session->config->get('dsn').';host=192.168.104.202',
user => $session->config->get('dbuser'),
pass => $session->config->get('dbpass'),
};
diag $slaveHash1->{dsn};
$session->config->set('dbslave2', $slaveHash2);
$session->config->set('dbslave1', $slaveHash1);
my $slave2 = $session->dbSlave;
isa_ok($slave2, 'WebGUI::SQL');
END {
foreach my $dude ($user) {
$dude->delete if (defined $dude and ref $dude eq 'WebGUI::User');
}
$session->config->delete('dbslave2');
$session->config->delete('dbslave1');
}