Skip Menu |

This queue is for tickets about the EBook-Tools CPAN distribution.

Report information
The Basics
Id: 99269
Status: open
Priority: 0/
Queue: EBook-Tools

People
Owner: AZED [...] cpan.org
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: v0.5.4
Fixed in: (no value)



Subject: System perl used in tests
The test suite fails on my systems (freebsd and linux, various perl versions), probably due to using system perl instead of the currently used perl in the t/50-user_scripts.t test: Can't locate Config/IniFiles.pm in @INC (@INC contains: ../lib /usr/home/eserte/.cpan/build/EBook-Tools-v0.5.4-38FZI4/blib/lib /usr/home/eserte/.cpan/build/EBook-Tools-v0.5.4-38FZI4/blib/arch /home/eserte/.cpan/build/Crixa-0.06-dXexWd/blib/arch /home/eserte/.cpan/build/Crixa-0.06-dXexWd/blib/lib /home/eserte/.cpan/build/Crixa-0.06-dXexWd/blib/arch /home/eserte/.cpan/build/Crixa-0.06-dXexWd/blib/lib /usr/local/lib/perl5/5.16/BSDPAN /usr/local/lib/perl5/site_perl/5.16/mach /usr/local/lib/perl5/site_perl/5.16 /usr/local/lib/perl5/5.16/mach /usr/local/lib/perl5/5.16 .) at ../scripts/ebook.pl line 18. BEGIN failed--compilation aborted at ../scripts/ebook.pl line 18. # Failed test 'ebook blank exits successfully' # at t/50-user_scripts.t line 57. # got: '2' # expected: '0' EBook::Tools::init(): 'testdir/blank.opf' does not exist or is not a regular file! at t/50-user_scripts.t line 58. # Looks like you planned 16 tests but ran 3. # Looks like you failed 1 test of 3 run. # Looks like your test exited with 2 just after 3. t/50-user_scripts.t ........ Dubious, test returned 2 (wstat 512, 0x200) Failed 14/16 subtests
On Thu Oct 02 01:29:55 2014, SREZIC wrote: Show quoted text
> The test suite fails on my systems (freebsd and linux, various perl > versions), probably due to using system perl instead of the currently > used perl in the t/50-user_scripts.t test:
Are your systems not setting the AUTOMATED_TESTING variable? 50-user_scripts.t will skip all tests in that case. I will change the ebook.pl script to use #!/usr/bin/env perl in the next release anyway, however, but you may want to check your testing environment.
On 2014-10-02 12:16:37, AZED wrote: Show quoted text
> On Thu Oct 02 01:29:55 2014, SREZIC wrote:
> > The test suite fails on my systems (freebsd and linux, various perl > > versions), probably due to using system perl instead of the currently > > used perl in the t/50-user_scripts.t test:
> > Are your systems not setting the AUTOMATED_TESTING variable? 50- > user_scripts.t will skip all tests in that case.
No. I also don't understand why this should make a difference. A user should be able to install for a non-system perl. Show quoted text
> I will change the ebook.pl script to use #!/usr/bin/env perl in the > next release anyway, however, but you may want to check your testing > environment.
On Sun Oct 05 12:58:25 2014, SREZIC wrote: Show quoted text
> On 2014-10-02 12:16:37, AZED wrote:
> > > > Are your systems not setting the AUTOMATED_TESTING variable? 50- > > user_scripts.t will skip all tests in that case.
> > No. I also don't understand why this should make a difference. A user > should be able to install for a non-system perl.
A user will generally be smart enough to know that when running a non-system perl, hashbangs in main scripts will often need to be updated to match. What you've just done is to demand that I break system portability to SCO and Cray systems and lose the ability to pass command-line arguments to perl in the hashbang as a workaround to support a testing environment that has been deliberately broken to lie to the test suite about what it is, and isn't smart enough to compensate in ways that non-automated testers will do easily. Now, it turns out that in this case I'm not actually *using* command-line arguments to perl (and the only one I'm at all likely to add in the near future is taint mode, which I think I can simulate with PERL5OPT), and I don't actually *care* that much about SCO and Cray systems for this code, so I'm actually okay with making the change, as I mentioned in my last message: Show quoted text
> > I will change the ebook.pl script to use #!/usr/bin/env perl in the > > next release anyway, however, but you may want to check your testing > > environment.
You should probably note, however, that this isn't the only thing that changes when AUTOMATED_TESTING is set. In particular, I hope your smoketesters have mechanisms that 1) automatically clean $HOME during the pass, and 2) don't care how much of your bandwidth and storage space I chew up, because the test suite is also going to automatically download a number of tables off of the internet and store them in a sqlite file in the home directory of whatever user is running the tests if you don't set that variable. As I increase the number of web interfaces I use (which I plan to do in upcoming versions) the amount of this that happens is going to increase as well. Unless you're ready to deal with the consequences, you need to configure your smoketesters to not lie about what they are.