1use strict; 2use warnings; 3use Test::More; 4use Test::Warn; 5use Test::MockObject; 6use Dancer2::Plugin::Auth::Extensible::Provider::DBIC; 7 8my $mock = Test::MockObject->new; 9$mock->set_true('app'); 10 11# instantiate with _source 12{ 13 my $plugin; 14 warnings_like( 15 sub { 16 $plugin = Dancer2::Plugin::Auth::Extensible::Provider::DBIC->new( 17 plugin => $mock, 18 users_source => 'users', 19 roles_source => 'roles', 20 user_roles_source => 'user_roles', 21 ); 22 }, 23 [ 24 qr/\Qconfig setting "users_source" is deprecated. Use "users_resultset" instead/, 25 qr/\Qconfig setting "roles_source" is deprecated. Use "roles_resultset" instead/, 26 qr/\Qconfig setting "user_roles_source" is deprecated. Use "user_roles_resultset" instead/, 27 ], 28 "_source is deprecated" 29 ); 30 isa_ok $plugin, 'Dancer2::Plugin::Auth::Extensible::Provider::DBIC', 31 'object created with _source'; 32 is $plugin->users_resultset, 'Users', "... and users_resultset got set"; 33 is $plugin->roles_resultset, 'Roles', "... and roles_resultset got set"; 34 is $plugin->user_roles_resultset, 'UserRoles', "... and user_roles_resultset got set"; 35} 36 37# instantiate with _table 38{ 39 my $plugin; 40 warnings_like( 41 sub { 42 $plugin = Dancer2::Plugin::Auth::Extensible::Provider::DBIC->new( 43 plugin => $mock, 44 users_table => 'users', 45 roles_table => 'roles', 46 user_roles_table => 'user_roles', 47 ); 48 }, 49 [ 50 qr/\Qconfig setting "users_table" is deprecated. Use "users_resultset" instead/, 51 qr/\Qconfig setting "roles_table" is deprecated. Use "roles_resultset" instead/, 52 qr/\Qconfig setting "user_roles_table" is deprecated. Use "user_roles_resultset" instead/, 53 ], 54 "_source is deprecated" 55 ); 56 isa_ok $plugin, 'Dancer2::Plugin::Auth::Extensible::Provider::DBIC', 57 'object created with _table'; 58 is $plugin->users_resultset, 'Users', "... and users_resultset got set"; 59 is $plugin->roles_resultset, 'Roles', "... and roles_resultset got set"; 60 is $plugin->user_roles_resultset, 'UserRoles', "... and user_roles_resultset got set"; 61} 62 63done_testing; 64