package Kalamar::Plugin::Test;
use Mojo::Base 'Mojolicious::Plugin';


sub register {
  my ($plugin, $app, $param) = @_;

  # Add entry to settings navigation
  $app->navi->add(settings => (
    'OAuth Token Management', 'oauth'
  ));

  $app->routes->get('/settings/oauth')->to(
    cb => sub {
      my $c = shift;
      $c->content_with(settings => '<p id="abc">My Settings</p>');
      return $c->render('settings');
    }
  );
};

package main;
use Mojo::Base -strict;
use Test::More;
use Test::Mojo;
use Mojo::ByteStream 'b';

my $t = Test::Mojo->new('Kalamar' => {
  Kalamar => {
    plugins => ['Test']
  }
});

my $app = $t->app;

$app->routes->get('/settings')->to(cb => sub { shift->render('settings') })->name('settings_start');
$app->routes->get('/settings/:scope/:page')->to(scope => undef, page => undef)->name('settings');


$t->get_ok('/settings')
  ->text_is('a[href~/settings/oauth]','OAuth Token Management')
  ->text_is('h2#page-top', 'Settings')
  ;

$t->get_ok('/settings/oauth')
  ->text_is('a[href~/settings/oauth]','OAuth Token Management')
  ->text_is('h2#page-top', 'Settings')
  ->text_is('#abc', 'My Settings')
  ;

done_testing;
__END__
