blob: 870dcff044ab3b1affffd374bcc40e7e2cff0107 [file] [log] [blame]
Nils Diewalda898dac2015-05-06 21:04:16 +00001use Mojo::Base -strict;
Nils Diewalda898dac2015-05-06 21:04:16 +00002use Test::More;
3use Test::Mojo;
4
5# Test the documentation
6
Akron07d8de62020-02-04 17:45:40 +01007my $t = Test::Mojo->new('Kalamar' => {
8 Kalamar => {
Akron07d8de62020-02-04 17:45:40 +01009 proxy_prefix => '/test'
10 }
11});
Nils Diewalda898dac2015-05-06 21:04:16 +000012
Akronaa5cf802021-06-11 11:31:00 +020013# Bug 2021-06-11
14$t->get_ok('/doc/ql/wildcards?cat=1')
15 ->status_is(404)
16 ;
17
Akronccd71a42017-06-30 18:09:19 +020018# Embedding
Nils Diewalda898dac2015-05-06 21:04:16 +000019$t->get_ok('/doc/ql/poliqarp-plus')
20 ->status_is(200)
21 ->text_like('title', qr/poliqarp/i)
22 ->element_exists('aside.active')
23 ->element_exists('main.tutorial')
24 ->element_exists('header')
25 ->element_exists('aside nav')
Nils Diewalda748b0e2015-05-19 22:54:06 +000026 ->text_is('h1 span', 'KorAP: Poliqarp+')
27 ->element_exists('li.folded.active')
28 ->text_is('li.folded.active a', 'Poliqarp+');
Nils Diewalda898dac2015-05-06 21:04:16 +000029
30$t->get_ok('/doc/ql/poliqarp-plus?embedded=true')
31 ->status_is(200)
32 ->text_like('title', qr/poliqarp/i)
33 ->element_exists('aside.active')
34 ->element_exists('main.tutorial')
Nils Diewalda748b0e2015-05-19 22:54:06 +000035 ->element_exists_not('header')
36 ->element_exists('li.folded.active')
37 ->text_is('li.folded.active a', 'Poliqarp+');
Nils Diewalda898dac2015-05-06 21:04:16 +000038
Akronccd71a42017-06-30 18:09:19 +020039# Languages
40$t->get_ok('/' => { 'Accept-Language' => 'de-DE, en-US, en' })
41 ->status_is(200)
42 ->text_is("title", "KorAP - Korpusanalyseplattform der nächsten Generation");
43
44$t->get_ok('/' => { 'Accept-Language' => 'en-US, en, de-DE' })
45 ->status_is(200)
46 ->text_is("title", "KorAP - Corpus Analysis Platform");
47
48
49# Pages
50$t->get_ok('/doc/ql/poliqarp-plus' => { 'Accept-Language' => 'en-US, en, de-DE' })
51 ->status_is(200)
52 ->text_is("title", "KorAP: Poliqarp+")
53 ->text_is('main section > h3', 'Simple Segments');
54
55$t->get_ok('/doc/ql/poliqarp-plus' => { 'Accept-Language' => 'de-DE, en-US, en' })
56 ->status_is(200)
57 ->text_is("title", "KorAP: Poliqarp+")
58 ->text_is('main section > h3', 'Einfache Segmente');
59
Akronccd71a42017-06-30 18:09:19 +020060$t->get_ok('/doc/ql/annis' => { 'Accept-Language' => 'en-US, en, de-DE' })
61 ->status_is(200)
62 ->text_is("title", "KorAP: Annis QL");
63
Akronf4a7cf42018-01-09 15:58:45 +010064# Check corpus examples
65$t->get_ok('/doc/ql/poliqarp-plus')
66 ->status_is(200)
67 ->text_is('#segments pre.query.tutorial:nth-of-type(1) code', 'Baum');
68
Akron1bd65d92019-07-17 18:26:36 +020069# Check data
70$t->get_ok('/doc/data/annotation' => { 'Accept-Language' => 'en-US, en, de-DE' })
71 ->status_is(200)
Akron9490e3b2019-10-17 12:26:29 +020072 ->text_is('#page-top', 'KorAP: Annotations');
Akron1bd65d92019-07-17 18:26:36 +020073$t->get_ok('/doc/data/annotation' => { 'Accept-Language' => 'de-DE, en-US, en' })
74 ->status_is(200)
Akron9490e3b2019-10-17 12:26:29 +020075 ->text_is('#page-top', 'KorAP: Annotationen');
Akron1bd65d92019-07-17 18:26:36 +020076
Akronf4a7cf42018-01-09 15:58:45 +010077my $app = $t->app;
78
79$app->plugin(
80 'Localize' => {
81 dict => {
82 Q => {
83 newexample => {
84 poliqarp => {
85 simple => '** Beispiel'
86 }
87 }
88 }
89 }
90 }
91);
92
93# Set other example query
94$app->config('Kalamar')->{examplecorpus} = 'newexample';
95
96is($app->loc('Q_poliqarp_simple'), '** Beispiel');
97
98# Check corpus examples
99$t->get_ok('/doc/ql/poliqarp-plus')
100 ->status_is(200)
101 ->text_is('#segments pre.query.tutorial:nth-of-type(1) code', 'Beispiel')
102 ->text_is('#segments pre.query.tutorial:nth-of-type(1) span', '*');
Nils Diewalda898dac2015-05-06 21:04:16 +0000103
Akron07d8de62020-02-04 17:45:40 +0100104# Check API endpoint
105$t->get_ok('/doc/api' => { 'X-Forwarded-Host' => 'korap.ids-mannheim.de' })
106 ->status_is(200)
107 ->text_is('#api-service-uri', 'https://korap.ids-mannheim.de/test/api/v1.0/');
108
109
Akron1011daf2021-03-01 12:34:58 +0100110# Check mail_to_chiffre
111like($t->app->mail_to_chiffre('korap@korap.example'),qr!rel="nofollow"!);
112like($t->app->mail_to_chiffre('korap@korap.example'),qr!class="PArok"!);
113
Nils Diewalda898dac2015-05-06 21:04:16 +0000114done_testing();