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/