Exclude search results from robot indices (closes #120)

Change-Id: If6387bb7585afbba80743cad9cfcf8779517c6b3
diff --git a/t/meta-robots.t b/t/meta-robots.t
new file mode 100644
index 0000000..75273b9
--- /dev/null
+++ b/t/meta-robots.t
@@ -0,0 +1,88 @@
+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->res->headers->header('X-Robots' => 'noindex');
+      $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::File qw/path/;
+
+
+#####################
+# Start Fake server #
+#####################
+my $mount_point = '/realapi/';
+$ENV{KALAMAR_API} = $mount_point;
+
+my $t = Test::Mojo->new('Kalamar' => {
+  Kalamar => {
+    plugins => ['Test']
+  }
+});
+
+# Mount fake backend
+# Get the fixture path
+my $fixtures_path = path(Mojo::File->new(__FILE__)->dirname, 'server');
+my $fake_backend = $t->app->plugin(
+  Mount => {
+    $mount_point =>
+      $fixtures_path->child('mock.pl')
+  }
+);
+# Configure fake backend
+$fake_backend->pattern->defaults->{app}->log($t->app->log);
+
+# Test robots meta tag
+
+$t->get_ok('/')
+  ->attr_is('meta[name=robots]', 'content', 'index,follow')
+  ->header_isnt('X-Robots', 'noindex')
+  ;
+
+$t->get_ok('/doc/ql/poliqarp-plus')
+  ->attr_is('meta[name=robots]', 'content', 'index,follow')
+  ->header_isnt('X-Robots', 'noindex')
+  ;
+
+$t->get_ok('/corpus')
+  ->status_is(200)
+  ->header_is('X-Robots', 'noindex')
+  ;
+
+$t->get_ok('/corpus/WPD15/232/39681/p2133-2134?spans=false&foundry=*&format=json')
+  ->status_is(200)
+  ->header_is('X-Robots', 'noindex')
+  ;
+
+$t->get_ok('/settings')
+  ->attr_is('meta[name=robots]', 'content', 'noindex')
+  ->header_is('X-Robots', 'noindex')
+  ;
+
+$t->get_ok('/?q=baum')
+  ->status_is(200)
+  ->text_is('#total-results', 51)
+  ->attr_is('meta[name=robots]', 'content', 'noindex')
+  ->header_is('X-Robots', 'noindex')
+  ;
+
+done_testing;