I'm trying to test the internal methods of a plugin in the context of a running test app. The following doesn't work but should give you an idea of what I want to accomplish:
use Plack::Test;
use HTTP::Request::Common;
{ package TestApp;
use Dancer2;
use Dancer2::Plugin::Menu;
get '/' => sub { return template 'index' };
get '/test' => sub {
html => 'hi',
},
};
build_menu;
}
my $test = Plack::Test->create( TestApp->to_app );
my $res;
my $menu = Dancer2::Plugin::Menu->new(app => $test);
# test the return value of plugin method
my $result = $menu->_convert_routes_to_array;
cmp_deeply($result, [ '/', '/test' ], 'returns array of menu paths');
Is there a way to do this?