James E. King III created THRIFT-4691:
-----------------------------------------
Summary: The perl CPAN module contains no tests
Key: THRIFT-4691
URL: https://issues.apache.org/jira/browse/THRIFT-4691
Project: Thrift
Issue Type: Bug
Components: Perl - Library
Affects Versions: 0.11.0, 0.12.0
Reporter: James E. King III
Assignee: James E. King III
Reported as a CPAN issue - please resolve the CPAN issue when complete.
'''
The Thrift distribution does not do anything meaningful when 'make test' is
called. This means that the PASS grade which this distribution gets from
CPANtesters (http://matrix.cpantesters.org/?dist=Thrift+0.11.0-2) is not
meaningful.
Suppose I download the tarball, unpack it and proceed as I normally would:
#####
[Thrift-0.11.0] 535 $ perl Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Thrift
Writing MYMETA.yml and MYMETA.json
[Thrift-0.11.0] 536 $ make
cp lib/Thrift/Socket.pm blib/lib/Thrift/Socket.pm
cp lib/Thrift/BufferedTransport.pm blib/lib/Thrift/BufferedTransport.pm
cp lib/Thrift/Protocol.pm blib/lib/Thrift/Protocol.pm
cp lib/Thrift/FramedTransport.pm blib/lib/Thrift/FramedTransport.pm
cp lib/Thrift/SSLSocket.pm blib/lib/Thrift/SSLSocket.pm
cp lib/Thrift/Server.pm blib/lib/Thrift/Server.pm
cp lib/Thrift/UnixServerSocket.pm blib/lib/Thrift/UnixServerSocket.pm
cp lib/Thrift/Exception.pm blib/lib/Thrift/Exception.pm
cp lib/Thrift/MultiplexedProcessor.pm blib/lib/Thrift/MultiplexedProcessor.pm
cp lib/Thrift/ProtocolDecorator.pm blib/lib/Thrift/ProtocolDecorator.pm
cp lib/Thrift/BinaryProtocol.pm blib/lib/Thrift/BinaryProtocol.pm
cp lib/Thrift/UnixSocket.pm blib/lib/Thrift/UnixSocket.pm
cp lib/Thrift/Type.pm blib/lib/Thrift/Type.pm
cp lib/Thrift.pm blib/lib/Thrift.pm
cp lib/Thrift/MultiplexedProtocol.pm blib/lib/Thrift/MultiplexedProtocol.pm
cp lib/Thrift/MemoryBuffer.pm blib/lib/Thrift/MemoryBuffer.pm
cp lib/Thrift/Transport.pm blib/lib/Thrift/Transport.pm
cp lib/Thrift/SSLServerSocket.pm blib/lib/Thrift/SSLServerSocket.pm
cp lib/Thrift/HttpClient.pm blib/lib/Thrift/HttpClient.pm
cp lib/Thrift/MessageType.pm blib/lib/Thrift/MessageType.pm
cp lib/Thrift/ServerSocket.pm blib/lib/Thrift/ServerSocket.pm
#####
So far, so good. But now I attempt to run tests.
#####
[Thrift-0.11.0] 537 $ make test
PERL_DL_NONLAZY=1 "/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/bin/perl"
"-Iblib/lib" "-Iblib/arch" test.pl
Files=0, Tests=0, 0 wallclock secs ( 0.00 usr + 0.00 sys = 0.00 CPU)
Result: NOTESTS
#####
Suppose I try to use 'prove':
#####
[Thrift-0.11.0] 539 $ prove -vb test/*.t
test/memory_buffer.t ..
1..6
Can't locate ThriftTest/Types.pm in @INC (you may need to install the
ThriftTest::Types module) (@INC contains:
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/lib
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/arch
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0) at
test/memory_buffer.t line 30.
BEGIN failed--compilation aborted at test/memory_buffer.t line 30.
# Looks like your test exited with 2 before it could output anything.
Dubious, test returned 2 (wstat 512, 0x200)
Failed 6/6 subtests
test/multiplex.t ......
1..6
Can't locate BenchmarkService.pm in @INC (you may need to install the
BenchmarkService module) (@INC contains:
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/lib
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/arch
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0) at test/multiplex.t
line 33.
BEGIN failed--compilation aborted at test/multiplex.t line 33.
# Looks like your test exited with 2 before it could output anything.
Dubious, test returned 2 (wstat 512, 0x200)
Failed 6/6 subtests
test/processor.t ......
1..2
Can't locate ThriftTest/ThriftTest.pm in @INC (you may need to install the
ThriftTest::ThriftTest module) (@INC contains:
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/lib
/home/jkeenan/.cpanm/work/1521985673.8965/Thrift-0.11.0/blib/arch
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/site_perl/5.26.0
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0/x86_64-linux
/home/jkeenan/perl5/perlbrew/perls/perl-5.26.0/lib/5.26.0) at test/processor.t
line 29.
BEGIN failed--compilation aborted at test/processor.t line 29.
# Looks like your test exited with 2 before it could output anything.
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/2 subtests
Test Summary Report
-------------------
test/memory_buffer.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: Bad plan. You planned 6 tests but ran 0.
test/multiplex.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: Bad plan. You planned 6 tests but ran 0.
test/processor.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: Bad plan. You planned 2 tests but ran 0.
Files=3, Tests=0, 0 wallclock secs ( 0.03 usr 0.00 sys + 0.16 cusr 0.00
csys = 0.19 CPU)
Result: FAIL
#####
The tests expect to load ThriftTest::Types, BenchmarkService and
ThriftTest::ThriftTest, but these are not found in the tarball nor, as far as I
can tell, on CPAN.
#####
[Thrift-0.11.0] 540 $ ack '(ThriftTest|BenchmarkService)' .
test/multiplex.t
33:use BenchmarkService;
36:use constant NAME_BENCHMARKSERVICE => 'BenchmarkService';
43:my $benchmark_client = BenchmarkServiceClient->new($benchmark_protocol);
67: my $benchmark_handler = My::BenchmarkService->new();
68: my $benchmark_processor =
BenchmarkServiceProcessor->new($benchmark_handler);
136: my $benchmark_result = BenchmarkService_fibonacci_result->new();
174:package My::BenchmarkService;
175:use base qw(BenchmarkServiceIf);
test/processor.t
29:use ThriftTest::ThriftTest;
30:use ThriftTest::Types;
36:my $client = ThriftTest::ThriftTestClient->new($protocol);
59: my $processor = ThriftTest::ThriftTestProcessor->new(
My::ThriftTest->new() );
79: my $result = ThriftTest::ThriftTest_testString_result->new();
87:package My::ThriftTest;
test/memory_buffer.t
30:use ThriftTest::Types;
36:my $a = ThriftTest::Xtruct->new();
42:my $b = ThriftTest::Xtruct->new();
49:my $c = ThriftTest::Xtruct->new();
#####
If no tests are run, then we cannot evaluate the soundness of this CPAN
distribution.
Thank you very much.
Jim Keenan
'''
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)