#!/usr/bin/perl
use strict;
use warnings;
use Test::More 'no_plan';
use Test::Exception;
{
package ManyStores;
use base qw/Catalyst::Plugin::Cache/;
sub registered_plugins {
qw/
Bar
Cache
Cache::Store::Foo
Cache::Store::Bar
MyApp::Plugin::Cache::Store::Moose
Cheese
/;
}
package OneStore;
use base qw/Catalyst::Plugin::Cache/;
sub registered_plugins {
qw/
Aplugin
Cache
Cache::Store::Foo
/
}
package NoStores;
use base qw/Catalyst::Plugin::Cache/;
sub registered_plugins {
qw/
Bar
Cache
Lala
/
}
}
# store guessing
lives_ok { OneStore->guess_default_cache_store } "can guess if only one plugin";
is( OneStore->guess_default_cache_store, "Foo", "guess is right" );
dies_ok { ManyStores->guess_default_cache_store } "can't guess if many";
dies_ok { NoStores->guess_default_cache_store } "can't guess if none";