Skip to content

Commit e48a888

Browse files
committed
convert remaining tests away from ElasticSearchX::Model
1 parent ee9f591 commit e48a888

File tree

10 files changed

+286
-224
lines changed

10 files changed

+286
-224
lines changed

t/query.t

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use MetaCPAN::Server::Test ();
88
use Test::More;
99
use Scalar::Util qw(weaken refaddr);
1010

11-
my $es = MetaCPAN::Server::Test::model->es;
11+
my $es = MetaCPAN::Server::Test::es();
1212

1313
{
1414
my $query = MetaCPAN::Query->new( es => $es );

t/query/release.t

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ use warnings;
33

44
use lib 't/lib';
55

6-
use MetaCPAN::Query::Release ();
7-
use MetaCPAN::Server::Test ();
6+
use MetaCPAN::Server::Test qw(query);
87
use Test::More;
98

10-
my $query = MetaCPAN::Query::Release->new(
11-
es => MetaCPAN::Server::Test::model->es(), );
9+
my $query = query()->release;
1210

1311
is( $query->_get_latest_release('DoesNotExist'),
1412
undef, '_get_latest_release returns undef when release does not exist' );

t/release/documentation-hide.t

Lines changed: 42 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,57 +2,66 @@ use strict;
22
use warnings;
33
use lib 't/lib';
44

5-
use MetaCPAN::Server::Test qw( model );
5+
use MetaCPAN::Server::Test qw( es_result );
66
use Test::More;
77

8-
my $model = model();
9-
my $release = $model->doc('release')->get( {
10-
author => 'MO',
11-
name => 'Documentation-Hide-0.01'
12-
} );
8+
my $release = es_result(
9+
release => {
10+
bool => {
11+
must => [
12+
{ term => { author => 'MO' } },
13+
{ term => { name => 'Documentation-Hide-0.01' } },
14+
],
15+
},
16+
},
17+
);
1318

14-
is( $release->name, 'Documentation-Hide-0.01', 'name ok' );
19+
is( $release->{name}, 'Documentation-Hide-0.01', 'name ok' );
1520

16-
is( $release->author, 'MO', 'author ok' );
21+
is( $release->{author}, 'MO', 'author ok' );
1722

18-
is( $release->main_module, 'Documentation::Hide', 'main_module ok' );
23+
is( $release->{main_module}, 'Documentation::Hide', 'main_module ok' );
1924

20-
ok( $release->first, 'Release is first' );
25+
ok( $release->{first}, 'Release is first' );
2126

2227
{
23-
my @files = $model->doc('file')->query( {
24-
bool => {
25-
must => [
26-
{ term => { author => $release->author } },
27-
{ term => { release => $release->name } },
28-
{ exists => { field => 'module.name' } },
29-
],
30-
},
31-
} )->all;
28+
my @files = es_result(
29+
file => {
30+
bool => {
31+
must => [
32+
{ term => { author => $release->{author} } },
33+
{ term => { release => $release->{name} } },
34+
{ exists => { field => 'module.name' } },
35+
],
36+
},
37+
}
38+
);
3239

3340
is( @files, 1, 'includes one file with modules' );
3441

3542
my $file = shift @files;
36-
is( @{ $file->module }, 1, 'file contains one module' );
43+
is( @{ $file->{module} }, 1, 'file contains one module' );
3744

38-
my ($indexed) = grep { $_->{indexed} } @{ $file->module };
39-
is( $indexed->name, 'Documentation::Hide', 'module name ok' );
40-
is( $file->documentation, 'Documentation::Hide', 'documentation ok' );
45+
my ($indexed) = grep { $_->{indexed} } @{ $file->{module} };
46+
is( $indexed->{name}, 'Documentation::Hide', 'module name ok' );
47+
is( $file->{documentation}, 'Documentation::Hide', 'documentation ok' );
4148

42-
is ${ $file->pod },
49+
is $file->{pod},
4350
q[NAME Documentation::Hide::Internal - abstract], 'pod text';
4451
}
4552

4653
{
47-
my @files = $model->doc('file')->query( {
48-
bool => {
49-
must => [
50-
{ term => { author => $release->author } },
51-
{ term => { release => $release->name } },
52-
{ exists => { field => 'documentation' } }
53-
],
54-
},
55-
} )->all;
54+
my @files = es_result(
55+
file => {
56+
bool => {
57+
must => [
58+
{ term => { author => $release->{author} } },
59+
{ term => { release => $release->{name} } },
60+
{ exists => { field => 'documentation' } }
61+
],
62+
},
63+
}
64+
);
5665
is( @files, 2, 'two files with documentation' );
5766
}
5867

t/release/file-changes.t

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,34 @@ use strict;
22
use warnings;
33
use lib 't/lib';
44

5-
use MetaCPAN::Server::Test qw( model );
5+
use MetaCPAN::Server::Test qw( es_result );
66
use Test::More;
77

8-
my $model = model();
9-
my $release = $model->doc('release')->get( {
10-
author => 'LOCAL',
11-
name => 'File-Changes-1.0'
12-
} );
8+
my $release = es_result(
9+
release => {
10+
bool => {
11+
must => [
12+
{ term => { author => 'LOCAL' } },
13+
{ term => { name => 'File-Changes-1.0' } },
14+
],
15+
},
16+
},
17+
);
1318

14-
is( $release->name, 'File-Changes-1.0', 'name ok' );
15-
is( $release->author, 'LOCAL', 'author ok' );
16-
is( $release->version, '1.0', 'version ok' );
17-
is( $release->main_module, 'File::Changes', 'main_module ok' );
18-
is( $release->changes_file, 'Changes', 'changes_file ok' );
19+
is( $release->{name}, 'File-Changes-1.0', 'name ok' );
20+
is( $release->{author}, 'LOCAL', 'author ok' );
21+
is( $release->{version}, '1.0', 'version ok' );
22+
is( $release->{main_module}, 'File::Changes', 'main_module ok' );
23+
is( $release->{changes_file}, 'Changes', 'changes_file ok' );
1924

2025
{
21-
my @files
22-
= $model->doc('file')
23-
->query( { term => { release => 'File-Changes-1.0' } } )->all;
26+
my @files = es_result(
27+
file => {
28+
term => { release => 'File-Changes-1.0' }
29+
}
30+
);
2431

25-
my ($changes) = grep { $_->name eq 'Changes' } @files;
32+
my ($changes) = grep { $_->{name} eq 'Changes' } @files;
2633
ok $changes, 'found Changes';
2734
}
2835

t/release/moose.t

Lines changed: 65 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -2,94 +2,102 @@ use strict;
22
use warnings;
33
use lib 't/lib';
44

5-
use MetaCPAN::Server::Test qw( model query );
5+
use MetaCPAN::Server::Test qw( query es_result );
66
use MetaCPAN::Util qw( true false );
77
use Test::More;
88

9-
my $model = model();
10-
my @moose
11-
= $model->doc('release')
12-
->query( { term => { distribution => 'Moose' } } )->all;
9+
my @moose = es_result( 'release', { term => { distribution => 'Moose' } } );
1310

1411
my $first = 0;
15-
map { $first++ } grep { $_->first } @moose;
12+
map { $first++ } grep { $_->{first} } @moose;
1613

1714
is( $first, 1, 'only one moose is first' );
1815

19-
is( $moose[0]->main_module, 'Moose', 'main_module ok' );
16+
is( $moose[0]->{main_module}, 'Moose', 'main_module ok' );
2017

21-
is( $moose[1]->main_module, 'Moose', 'main_module ok' );
18+
is( $moose[1]->{main_module}, 'Moose', 'main_module ok' );
2219

23-
ok(
24-
my $faq
25-
= $model->doc('file')
26-
->query( { match_phrase => { documentation => 'Moose::FAQ' } } )
27-
->first,
28-
'get Moose::FAQ'
29-
);
20+
my $faq = es_result( 'file',
21+
{ match_phrase => { documentation => 'Moose::FAQ' } } );
22+
23+
ok( $faq, 'get Moose::FAQ' );
3024

31-
is( $faq->status, 'latest', 'is latest' );
25+
is( $faq->{status}, 'latest', 'is latest' );
3226

33-
ok( $faq->indexed, 'is indexed' );
27+
ok( $faq->{indexed}, 'is indexed' );
3428

35-
ok( !$faq->binary, 'is not binary' );
29+
ok( !$faq->{binary}, 'is not binary' );
3630

37-
ok(
38-
my $binary
39-
= $model->doc('file')->query( { term => { name => 't' } } )->first,
40-
'get a t/ directory'
31+
my $binary = es_result(
32+
'file',
33+
{
34+
bool => {
35+
must => [
36+
{ term => { release => 'Moose-0.01' } },
37+
{ term => { name => 't' } },
38+
],
39+
},
40+
}
4141
);
4242

43-
ok( $binary->binary, 'is binary' );
43+
ok( $binary, 'get a t/ directory' );
4444

45-
ok(
46-
my $ppport
47-
= $model->doc('file')
48-
->query( { match_phrase => { documentation => 'ppport.h' } } )->first,
49-
'get ppport.h'
50-
);
45+
ok( $binary->{binary}, 'is binary' );
46+
47+
my $ppport = es_result( 'file',
48+
{ match_phrase => { documentation => 'ppport.h' } } );
49+
ok( $ppport, 'get ppport.h' );
5150

52-
is( $ppport->name, 'ppphdoc', 'name doesn\'t contain a dot' );
51+
is( $ppport->{name}, 'ppphdoc', 'name doesn\'t contain a dot' );
5352

5453
my $signature;
55-
$signature = $model->doc('file')->query( {
56-
bool => {
57-
must => [
58-
{ term => { mime => 'text/x-script.perl' } },
59-
{ term => { name => 'SIGNATURE' } },
60-
],
61-
},
62-
} )->first;
54+
($signature) = es_result(
55+
'file',
56+
{
57+
bool => {
58+
must => [
59+
{ term => { mime => 'text/x-script.perl' } },
60+
{ term => { name => 'SIGNATURE' } },
61+
],
62+
},
63+
}
64+
);
6365
ok( !$signature, 'SIGNATURE is not perl code' );
6466

65-
$signature = $model->doc('file')->query( {
66-
bool => {
67-
must => [
68-
{ term => { documentation => 'SIGNATURE' } },
69-
{ term => { mime => 'text/x-script.perl' } },
70-
{ term => { name => 'SIGNATURE' } },
71-
],
72-
},
73-
} )->first;
67+
($signature) = es_result(
68+
'file',
69+
{
70+
bool => {
71+
must => [
72+
{ term => { documentation => 'SIGNATURE' } },
73+
{ term => { mime => 'text/x-script.perl' } },
74+
{ term => { name => 'SIGNATURE' } },
75+
],
76+
},
77+
}
78+
);
7479
ok( !$signature, 'SIGNATURE is not documentation' );
7580

76-
$signature = $model->doc('file')->query( {
77-
bool => {
78-
must => [
79-
{ term => { name => 'SIGNATURE' } },
80-
{ exists => { field => 'documentation' } },
81-
{ term => { indexed => true } },
82-
],
83-
},
84-
} )->first;
81+
($signature) = es_result(
82+
'file',
83+
{
84+
bool => {
85+
must => [
86+
{ term => { name => 'SIGNATURE' } },
87+
{ exists => { field => 'documentation' } },
88+
{ term => { indexed => true } },
89+
],
90+
},
91+
}
92+
);
8593
ok( !$signature, 'SIGNATURE is not pod' );
8694

8795
{
8896
my $files = query()->file;
8997
my $module = $files->history( module => 'Moose' );
9098
my $file = $files->history( file => 'Moose', 'lib/Moose.pm' );
9199

92-
is_deeply( $module->{hits}, $file->{hits},
100+
is_deeply( $module->{files}, $file->{files},
93101
'history of Moose and lib/Moose.pm match' );
94102
is( $module->{total}, 2, 'two hits' );
95103

0 commit comments

Comments
 (0)