[Catalyst] How to handle role checking using a MockObject for Catalyst contexts

2012-08-06 Thread Robert Rothenberg
My application has a lot of tests scripts (and even some utility scripts)
that create a Test::MockObject that imitates a Catalyst context.

But it's largely a kluge, especially for handling authentication with things
like

  $c-check_any_use_role(...)

So, what are the best practices for generating a fake Catalyst context that
is, for all intents, logged-in as a particular user?

Regards,
Rob

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] How to handle role checking using a MockObject for Catalyst contexts

2012-08-06 Thread Tomas Doran

On 6 Aug 2012, at 15:56, Robert Rothenberg wrote:

 My application has a lot of tests scripts (and even some utility scripts)
 that create a Test::MockObject that imitates a Catalyst context.
 
 But it's largely a kluge, especially for handling authentication with things
 like
 
  $c-check_any_use_role(...)
 
 So, what are the best practices for generating a fake Catalyst context that
 is, for all intents, logged-in as a particular user?
 

Test::MockObject is fairly evil (it uses UNIVERSAL::can and UNIVERSAL::isa 
which are fundamentally broken).. But this solution is entirely workable.

Personally, latterly, I've just been using Moose directly when I want to mock a 
class:

Moose::Meta::Class-create(….

e.g. https://gist.github.com/199215 (from 
http://bobtfish.livejournal.com/265829.html)

Cheers
t0m


___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/