[jifty-devel] [Jifty-commit] r5229 - in jifty/trunk: lib/Jifty

Jesse Vincent jesse at bestpractical.com
Tue Mar 18 14:51:21 EDT 2008


Hm. I'm a little worried about canonicalizing on load. (I'm not saying  
it's wrong or that I want it reverted, but that it raised a red flag)

Can you explain what motivated the change?

On Mar 18, 2008, at 2:39 PM, Jifty commits wrote:
> Author: dpavlin
> Date: Tue Mar 18 14:39:52 2008
> New Revision: 5229
>
> Added:
>   jifty/trunk/t/TestApp/t/22-canonicalize-load_or_create.t
> Modified:
>   jifty/trunk/lib/Jifty/Record.pm
>
> Log:
> run canonicalization before load in load_or_create
>
> Modified: jifty/trunk/lib/Jifty/Record.pm
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- jifty/trunk/lib/Jifty/Record.pm	(original)
> +++ jifty/trunk/lib/Jifty/Record.pm	Tue Mar 18 14:39:52 2008
> @@ -143,6 +143,13 @@
>
>     my %args = (@_);
>
> +    foreach my $key ( keys %args ) {
> +        $args{$key} = $self->run_canonicalization_for_column(
> +            column => $key,
> +            value  => $args{$key}
> +        );
> +    }
> +
>     my ( $id, $msg ) = $self->load_by_cols(%args);
>     unless ( $self->id ) {
>         return $self->create(%args);
>
> Added: jifty/trunk/t/TestApp/t/22-canonicalize-load_or_create.t
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- (empty file)
> +++ jifty/trunk/t/TestApp/t/22-canonicalize-load_or_create.t	Tue Mar  
> 18 14:39:52 2008
> @@ -0,0 +1,38 @@
> +#!/usr/bin/env perl
> +use warnings;
> +use strict;
> +
> +=head1 DESCRIPTION
> +
> +Test canonicalize on load_or_create
> +
> +=cut
> +
> +use lib 't/lib';
> +use Jifty::SubTest;
> +
> +use Jifty::Test tests => 9;
> +use_ok('TestApp::Model::CanonTest');
> +
> +# Grab a system use
> +my $system_user = TestApp::CurrentUser->superuser;
> +ok($system_user, "Found a system user");
> +
> +# Try testing a create
> +my $o = TestApp::Model::CanonTest->new(current_user => $system_user);
> +my ($id) = $o->create( column_1 => 'foo#$bar' );
> +ok($id, "CanonTest create returned success");
> +ok($o->id, "New CanonTest has valid id set");
> +is($o->id, $id, "Create returned the right id");
> +is($o->column_1, 'foobar', "Created object has the right column_1");
> +
> +# And another
> +$o->load_or_create( column_1 => 'foo()bar' );
> +ok($o->id, "CanonTest create returned value");
> +is($o->id, $id, "And it is same from the previous one");
> +
> +# Searches in general
> +my $collection =  TestApp::Model::CanonTestCollection- 
> >new(current_user => $system_user);
> +$collection->unlimit;
> +is($collection->count, 1, "Finds one records");
> +
> _______________________________________________
> Jifty-commit mailing list
> Jifty-commit at lists.jifty.org
> http://lists.jifty.org/cgi-bin/mailman/listinfo/jifty-commit
>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : http://lists.jifty.org/pipermail/jifty-devel/attachments/20080318/1eb0fb7b/attachment.pgp 


More information about the jifty-devel mailing list