PATH=/usr/bin:/bin:/Users/fly2400/cpanfly-5.24/var/megalib/bin
Start 2016-06-12T17:18:18
ActivePerl-2400 CPAN-2.10
Reading '/Users/fly2400/cpanfly-5.24/var/cpan/Metadata'
Database was generated on Sun, 12 Jun 2016 05:53:44 GMT
Checksum for /Users/fly2400/cpanfly-5.24/var/cpan/sources/authors/id/P/PE/PERLANCAR/File-Write-Rotate-0.30.tar.gz ok
File-Write-Rotate-0.30/
File-Write-Rotate-0.30/META.json
File-Write-Rotate-0.30/LICENSE
File-Write-Rotate-0.30/Changes
File-Write-Rotate-0.30/META.yml
File-Write-Rotate-0.30/Makefile.PL
File-Write-Rotate-0.30/t/
File-Write-Rotate-0.30/t/author-pod-coverage.t
File-Write-Rotate-0.30/t/write.t
File-Write-Rotate-0.30/t/lock.t
File-Write-Rotate-0.30/t/rotate.t
File-Write-Rotate-0.30/t/todo.t
File-Write-Rotate-0.30/t/author-pod-syntax.t
File-Write-Rotate-0.30/t/00-compile.t
File-Write-Rotate-0.30/README
File-Write-Rotate-0.30/dist.ini
File-Write-Rotate-0.30/lib/
File-Write-Rotate-0.30/lib/File/
File-Write-Rotate-0.30/lib/File/Write/
File-Write-Rotate-0.30/lib/File/Write/Rotate.pm
File-Write-Rotate-0.30/MANIFEST
File-Write-Rotate-0.30/weaver.ini
Configuring P/PE/PERLANCAR/File-Write-Rotate-0.30.tar.gz with Makefile.PL
>>> /Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL
Warning: prerequisite Proc::PID::File 0 not found.
Warning: prerequisite Taint::Runtime 0 not found.
Warning: prerequisite tainting 0.01 not found.
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for File::Write::Rotate
Writing MYMETA.yml and MYMETA.json
PERLANCAR/File-Write-Rotate-0.30.tar.gz
/Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL -- OK
Running make for P/PE/PERLANCAR/File-Write-Rotate-0.30.tar.gz
---- Unsatisfied dependencies detected during ----
---- PERLANCAR/File-Write-Rotate-0.30.tar.gz ----
Proc::PID::File [requires]
Taint::Runtime [build_requires]
tainting [build_requires]
Running test for module 'Proc::PID::File'
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/E/EC/ECALDER/Proc-PID-File-1.27.tar.gz
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/E/EC/ECALDER/CHECKSUMS
Checksum for /Users/fly2400/cpanfly-5.24/var/cpan/sources/authors/id/E/EC/ECALDER/Proc-PID-File-1.27.tar.gz ok
Proc-PID-File-1.27/
Proc-PID-File-1.27/README
Proc-PID-File-1.27/File.pm
Proc-PID-File-1.27/META.yml
Proc-PID-File-1.27/Changes
Proc-PID-File-1.27/test.pl
Proc-PID-File-1.27/MANIFEST
Proc-PID-File-1.27/Makefile.PL
Proc-PID-File-1.27/LICENSE
Configuring E/EC/ECALDER/Proc-PID-File-1.27.tar.gz with Makefile.PL
>>> /Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Proc::PID::File
Writing MYMETA.yml and MYMETA.json
ECALDER/Proc-PID-File-1.27.tar.gz
/Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL -- OK
Running make for E/EC/ECALDER/Proc-PID-File-1.27.tar.gz
>>> make
cp File.pm blib/lib/Proc/PID/File.pm
Manifying 1 pod document
ECALDER/Proc-PID-File-1.27.tar.gz
make -- OK
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 "/Users/fly2400/ap2400-300558/bin/perl-dynamic" "-Iblib/lib" "-Iblib/arch" test.pl
1..12
Use of uninitialized value $fh in pattern match (m//) at blib/lib/Proc/PID/File.pm line 286.
ok 1 - simple: thread safe
ok 2 - simple: running
ok 3 - SKIPPED - simple: verified (real)
ok 4 - SKIPPED - simple: verified (false)
Use of uninitialized value $fh in pattern match (m//) at blib/lib/Proc/PID/File.pm line 286.
Use of uninitialized value $fh in pattern match (m//) at blib/lib/Proc/PID/File.pm line 286.
ok 5 - simple: single instance
ok 6 - simple: destroy
ok 7 - oo: object initialised
ok 8 - oo: file touched
ok 9 - oo: alive (with current process)
ok 10 - oo: alive (with daemon)
ok 11 - SKIPPED - oo: alive (verified)
ok 12 - oo: released
waiting for daemon death.....
done
Use of uninitialized value $fh in pattern match (m//) at blib/lib/Proc/PID/File.pm line 286.
Use of uninitialized value $fh in pattern match (m//) at blib/lib/Proc/PID/File.pm line 286 during global destruction.
ECALDER/Proc-PID-File-1.27.tar.gz
make test TEST_VERBOSE=1 -- OK
Erick Calder <ecalder@cpan.org>
A module to manage PID files
>>> (cd /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B && tar cvf - Proc-PID-File-1.27.ppd blib) | gzip -c >/Users/fly2400/cpanfly-5.24/var/REPO/E/EC/ECALDER/Proc-PID-File-1.27.tar.gz
Proc-PID-File-1.27.ppd
blib/
blib/lib/
blib/lib/Proc/
blib/lib/Proc/PID/
blib/lib/Proc/PID/File.pm
blib/man3/
blib/man3/Proc::PID::File.3
Running test for module 'Taint::Runtime'
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'get'
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/R/RH/RHANDOM/Taint-Runtime-0.03.tar.gz
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/R/RH/RHANDOM/CHECKSUMS
Checksum for /Users/fly2400/cpanfly-5.24/var/cpan/sources/authors/id/R/RH/RHANDOM/Taint-Runtime-0.03.tar.gz ok
Taint-Runtime-0.03/
Taint-Runtime-0.03/t/
Taint-Runtime-0.03/t/01_non_xs.t
Taint-Runtime-0.03/t/Taint-Runtime.t
Taint-Runtime-0.03/t/03_var.t
Taint-Runtime-0.03/t/02_xs.t
Taint-Runtime-0.03/t/04_enable.t
Taint-Runtime-0.03/t/00_Base.t
Taint-Runtime-0.03/lib/
Taint-Runtime-0.03/lib/Taint/
Taint-Runtime-0.03/lib/Taint/Runtime.pm
Taint-Runtime-0.03/Changes
Taint-Runtime-0.03/MANIFEST
Taint-Runtime-0.03/MANIFEST.SKIP
Taint-Runtime-0.03/ppport.h
Taint-Runtime-0.03/META.yml
Taint-Runtime-0.03/Runtime.xs
Taint-Runtime-0.03/is_taint_bench.pl
Taint-Runtime-0.03/README
Taint-Runtime-0.03/Makefile.PL
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'prepare'
Configuring R/RH/RHANDOM/Taint-Runtime-0.03.tar.gz with Makefile.PL
>>> /Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL
Checking if your kit is complete...
Looks good
Generating a Unix-style Makefile
Writing Makefile for Taint::Runtime
Writing MYMETA.yml and MYMETA.json
RHANDOM/Taint-Runtime-0.03.tar.gz
/Users/fly2400/ap2400-300558/bin/perl-dynamic Makefile.PL -- OK
Running make for R/RH/RHANDOM/Taint-Runtime-0.03.tar.gz
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'make'
>>> make
cp is_taint_bench.pl blib/lib/Taint/is_taint_bench.pl
cp lib/Taint/Runtime.pm blib/lib/Taint/Runtime.pm
Running Mkbootstrap for Runtime ()
chmod 644 "Runtime.bs"
"/Users/fly2400/ap2400-300558/bin/perl-dynamic" -MExtUtils::Command::MM -e 'cp_nonempty' -- Runtime.bs blib/arch/auto/Taint/Runtime/Runtime.bs 644
"/Users/fly2400/ap2400-300558/bin/perl-dynamic" "/Users/fly2400/cpanfly-5.24/var/megalib/ExtUtils/xsubpp" -typemap '/Users/fly2400/ap2400-300558/lib/ExtUtils/typemap' Runtime.xs > Runtime.xsc
Please specify prototyping behavior for Runtime.xs (see perlxs manual)
mv Runtime.xsc Runtime.c
gcc -c -fno-common -DPERL_DARWIN -no-cpp-precomp -mmacosx-version-min=10.9 -arch x86_64 -DUSE_SITECUSTOMIZE -DPERL_RELOCATABLE_INCPUSH -fno-strict-aliasing -pipe -fstack-protector -DPERL_USE_SAFE_PUTENV -O3 -DVERSION=\"0.03\" -DXS_VERSION=\"0.03\" "-I/Users/fly2400/ap2400-300558/lib/CORE" Runtime.c
In file included from Runtime.xs:4:
./ppport.h:231:11: warning: 'PERL_UNUSED_DECL' macro redefined
# define PERL_UNUSED_DECL
^
/Users/fly2400/ap2400-300558/lib/CORE/perl.h:313:13: note: previous definition is here
# define PERL_UNUSED_DECL __attribute__unused__
^
1 warning generated.
rm -f blib/arch/auto/Taint/Runtime/Runtime.bundle
gcc -mmacosx-version-min=10.9 -bundle -undefined dynamic_lookup -Wl,-search_paths_first -arch x86_64 -fstack-protector -o blib/arch/auto/Taint/Runtime/Runtime.bundle Runtime.o \
\
chmod 755 blib/arch/auto/Taint/Runtime/Runtime.bundle
Manifying 1 pod document
RHANDOM/Taint-Runtime-0.03.tar.gz
make -- OK
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'test'
Running make test
>>> make test TEST_VERBOSE=1
"/Users/fly2400/ap2400-300558/bin/perl-dynamic" -MExtUtils::Command::MM -e 'cp_nonempty' -- Runtime.bs blib/arch/auto/Taint/Runtime/Runtime.bs 644
PERL_DL_NONLAZY=1 "/Users/fly2400/ap2400-300558/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t
t/00_Base.t ........
1..1
ok 1 - use Taint::Runtime;
ok
t/01_non_xs.t ......
1..9
ok 1 - use Taint::Runtime;
ok 2 - Taint is On
ok 3 - No false positive on is_tainted
ok 4 - Made a tainted copy
ok 5 - Tainted it directly
ok 6 - Made a clean copy
ok 7 - And i got all of the data back
ok 8 - Data is still tainted
ok 9 - Clean it directly
ok
t/02_xs.t ..........
1..8
ok 1 - use Taint::Runtime;
ok 2 - Taint is Not on yet
ok 3 - Taint is On
ok 4 - No false positive on is_tainted
ok 5 - Made a tainted copy
ok 6 - Tainted it directly
ok 7 - Made a clean copy
ok 8 - Clean it directly
ok
t/03_var.t .........
1..7
ok 1 - use Taint::Runtime;
ok 2 - Not on
ok 3 - Taint is Not on yet
ok 4 - Taint is On
ok 5 - Taint disabled
ok 6 - Taint is On
ok 7 - Taint disabled
ok
t/04_enable.t ......
1..4
ok 1 - use Taint::Runtime;
ok 2 - Not on
ok 3 - Taint is On
ok 4 - Not on
ok
t/Taint-Runtime.t ..
1..1
ok 1 - use Taint::Runtime;
ok
All tests successful.
Files=6, Tests=30, 1 wallclock secs ( 0.03 usr 0.01 sys + 0.32 cusr 0.06 csys = 0.42 CPU)
Result: PASS
RHANDOM/Taint-Runtime-0.03.tar.gz
make test TEST_VERBOSE=1 -- OK
Picked up abstract from Makefile
Paul Seamons <paul@seamons.com>
Runtime enable taint checking
>>> (cd /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR && tar cvf - Taint-Runtime-0.03.ppd blib) | gzip -c >/Users/fly2400/cpanfly-5.24/var/REPO/R/RH/RHANDOM/Taint-Runtime-0.03.tar.gz
Taint-Runtime-0.03.ppd
blib/
blib/arch/
blib/arch/auto/
blib/arch/auto/Taint/
blib/arch/auto/Taint/Runtime/
blib/arch/auto/Taint/Runtime/Runtime.bundle
blib/lib/
blib/lib/Taint/
blib/lib/Taint/is_taint_bench.pl
blib/lib/Taint/Runtime.pm
blib/man3/
blib/man3/Taint::Runtime.3
Running test for module 'tainting'
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'get'
Fetching with LWP:
http://ppm.activestate.com/CPAN/authors/id/S/SH/SHARYANTO/tainting-0.01.tar.gz
Checksum for /Users/fly2400/cpanfly-5.24/var/cpan/sources/authors/id/S/SH/SHARYANTO/tainting-0.01.tar.gz ok
tainting-0.01/
tainting-0.01/README
tainting-0.01/Build.PL
tainting-0.01/lib/
tainting-0.01/lib/tainting.pm
tainting-0.01/MANIFEST.SKIP
tainting-0.01/Changes
tainting-0.01/dist.ini
tainting-0.01/LICENSE
tainting-0.01/t/
tainting-0.01/t/00-compile.t
tainting-0.01/t/01-basics.t
tainting-0.01/t/release-pod-coverage.t
tainting-0.01/t/release-pod-syntax.t
tainting-0.01/t/release-rinci.t
tainting-0.01/MANIFEST
tainting-0.01/META.json
tainting-0.01/META.yml
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'prepare'
Configuring S/SH/SHARYANTO/tainting-0.01.tar.gz with Build.PL
>>> /Users/fly2400/ap2400-300558/bin/perl-dynamic Build.PL
Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'tainting' version '0.01'
SHARYANTO/tainting-0.01.tar.gz
/Users/fly2400/ap2400-300558/bin/perl-dynamic Build.PL -- OK
Running Build for S/SH/SHARYANTO/tainting-0.01.tar.gz
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'make'
>>> ./Build
Building tainting
SHARYANTO/tainting-0.01.tar.gz
./Build -- OK
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'test'
Running Build test
>>> ./Build test verbose=1
t/00-compile.t ............
1..1
ok 1 - tainting loaded ok
ok
t/01-basics.t .............
ok 1 - tainting is turned on lexically
ok 2 - tainting is turned off lexically
1..2
ok
t/release-pod-coverage.t .. skipped: these tests are for release candidate testing
t/release-pod-syntax.t .... skipped: these tests are for release candidate testing
t/release-rinci.t ......... skipped: these tests are for release candidate testing
All tests successful.
Files=5, Tests=3, 1 wallclock secs ( 0.03 usr 0.02 sys + 0.30 cusr 0.06 csys = 0.41 CPU)
Result: PASS
SHARYANTO/tainting-0.01.tar.gz
./Build test verbose=1 -- OK
Steven Haryanto <stevenharyanto@gmail.com>
Enable taint mode lexically
>>> (cd /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/tainting-0.01-ej1gsP && tar cvf - tainting-0.01.ppd blib) | gzip -c >/Users/fly2400/cpanfly-5.24/var/REPO/S/SH/SHARYANTO/tainting-0.01.tar.gz
tainting-0.01.ppd
blib/
blib/lib/
blib/lib/tainting.pm
PERLANCAR/File-Write-Rotate-0.30.tar.gz
Has already been unwrapped into directory /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/File-Write-Rotate-0.30-920e0i
PERLANCAR/File-Write-Rotate-0.30.tar.gz
Has already been prepared
Running make for P/PE/PERLANCAR/File-Write-Rotate-0.30.tar.gz
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/tainting-0.01-ej1gsP/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/tainting-0.01-ej1gsP/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'make'
>>> make
cp lib/File/Write/Rotate.pm blib/lib/File/Write/Rotate.pm
Manifying 1 pod document
PERLANCAR/File-Write-Rotate-0.30.tar.gz
make -- OK
Prepending /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/tainting-0.01-ej1gsP/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/tainting-0.01-ej1gsP/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Taint-Runtime-0.03-YBrSYR/blib/lib /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/arch /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/Proc-PID-File-1.27-RK6E8B/blib/lib to PERL5LIB for 'test'
Running make test
>>> make test TEST_VERBOSE=1
PERL_DL_NONLAZY=1 "/Users/fly2400/ap2400-300558/bin/perl-dynamic" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t
t/00-compile.t ...........
1..1
ok 1 - File/Write/Rotate.pm loaded ok
ok
t/author-pod-coverage.t .. skipped: these tests are for testing by the author
t/author-pod-syntax.t .... skipped: these tests are for testing by the author
t/lock.t .................
# Subtest: locking: none
ok 1 - lock file doesn't exist: created
ok 2 - lock file doesn't exist: hook_before_rotate
ok 3 - lock file doesn't exist: hook_after_rotate
ok 4 - lock file doesn't exist: hook_after_create
ok 5 - lock file doesn't exist: hook_before_write
ok 6 - lock file doesn't exist: after 1st write
ok 7 - lock file doesn't exist: hook_before_rotate
ok 8 - lock file doesn't exist: hook_after_rotate
ok 9 - lock file doesn't exist: hook_after_create
ok 10 - lock file doesn't exist: hook_before_write
ok 11 - lock file doesn't exist: after 2nd write
ok 12 - Expected 4 hooks to run
ok 13 - lock file doesn't exist: out of scope
1..13
ok 1 - locking: none
# Subtest: locking: write
ok 1 - lock file doesn't exist: created
ok 2 - lock file exists: hook_before_rotate
ok 3 - lock file exists: hook_after_rotate
ok 4 - lock file exists: hook_after_create
ok 5 - lock file exists: hook_before_write
ok 6 - lock file doesn't exist: after 1st write
ok 7 - lock file exists: hook_before_rotate
ok 8 - lock file exists: hook_after_rotate
ok 9 - lock file exists: hook_after_create
ok 10 - lock file exists: hook_before_write
ok 11 - lock file doesn't exist: after 2nd write
ok 12 - Expected 4 hooks to run
ok 13 - lock file doesn't exist: out of scope
1..13
ok 2 - locking: write
# Subtest: locking: exclusive
ok 1 - lock file exists: created
ok 2 - lock file exists: hook_before_rotate
ok 3 - lock file exists: hook_after_rotate
ok 4 - lock file exists: hook_after_create
ok 5 - lock file exists: hook_before_write
ok 6 - lock file exists: after 1st write
ok 7 - lock file exists: hook_before_rotate
ok 8 - lock file exists: hook_after_rotate
ok 9 - lock file exists: hook_after_create
ok 10 - lock file exists: hook_before_write
ok 11 - lock file exists: after 2nd write
ok 12 - Expected 4 hooks to run
ok 13 - lock file doesn't exist: out of scope
1..13
ok 3 - locking: exclusive
1..3
ok
t/rotate.t ...............
# Subtest: basic rotate
ok 1 - files_after
ok 2 - a -> a.1
ok 3 - a.2 -> a.2.gz
ok 4 - a.2.gz -> a.3.gz
ok 5 - b.1 untouched
1..5
ok 1 - basic rotate
# Subtest: period, suffix
ok 1 - files_after
1..1
ok 2 - period, suffix
# Subtest: period, suffix (complex, no delete)
ok 1 - files_after
1..1
ok 3 - period, suffix (complex, no delete)
# Subtest: period, suffix (complex, rotate and delete)
ok 1 - files_after
1..1
ok 4 - period, suffix (complex, rotate and delete)
# Subtest: period, suffix (complex, delete_only)
ok 1 - files_after
1..1
ok 5 - period, suffix (complex, delete_only)
# Subtest: hook_before_rotate, hook_after_rotate
ok 1
ok 2 - renamed argument
ok 3 - deleted argument
ok 4 - files_after
ok 5 - hook_before_rotate executed
ok 6 - hook_after_rotate executed
1..6
ok 6 - hook_before_rotate, hook_after_rotate
# Subtest: under tainting
ok 1 - files_after
1..1
ok 7 - under tainting
1..7
ok
t/todo.t .................
1..1
ok 1
ok
t/write.t ................
# Subtest: Filehandle cached: basic
ok 1 - should be unlocked
ok 2
ok 3 - should be unlocked
ok 4
1..4
ok 1 - Filehandle cached: basic
# Subtest: Filehandle not cached: basic
ok 1 - should be unlocked
ok 2
ok 3 - should be unlocked
ok 4
1..4
ok 2 - Filehandle not cached: basic
# Subtest: Filehandle cached: binmode ':utf8'
ok 1 - should be unlocked
ok 2 - no 'Wide character in ...' warning
ok 3 - file contents
1..3
ok 3 - Filehandle cached: binmode ':utf8'
# Subtest: Filehandle not cached: binmode ':utf8'
ok 1 - should be unlocked
ok 2 - no 'Wide character in ...' warning
ok 3 - file contents
1..3
ok 4 - Filehandle not cached: binmode ':utf8'
# Subtest: Filehandle cached: rotate by size
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6
1..6
ok 5 - Filehandle cached: rotate by size
# Subtest: Filehandle not cached: rotate by size
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6
1..6
ok 6 - Filehandle not cached: rotate by size
# Subtest: Filehandle cached: rotate by size = 20Kb
ok 1 - should be unlocked
ok 2 - should be unlocked
ok 3 - should be unlocked
ok 4 - should be unlocked
ok 5 - should be unlocked
ok 6 - should be unlocked
ok 7 - should be unlocked
ok 8 - should be unlocked
ok 9 - should be unlocked
ok 10 - should be unlocked
ok 11 - should be unlocked
ok 12 - should be unlocked
ok 13 - should be unlocked
ok 14 - should be unlocked
ok 15 - should be unlocked
ok 16 - should be unlocked
ok 17 - should be unlocked
ok 18 - should be unlocked
ok 19 - should be unlocked
ok 20 - should be unlocked
ok 21 - should be unlocked
ok 22 - should be unlocked
ok 23 - should be unlocked
ok 24 - should be unlocked
ok 25 - should be unlocked
ok 26 - should be unlocked
ok 27 - should be unlocked
ok 28 - should be unlocked
ok 29 - should be unlocked
ok 30 - should be unlocked
ok 31 - should be unlocked
ok 32 - should be unlocked
ok 33 - should be unlocked
ok 34 - should be unlocked
ok 35 - should be unlocked
ok 36 - should be unlocked
ok 37 - should be unlocked
ok 38 - should be unlocked
ok 39 - should be unlocked
ok 40 - should be unlocked
ok 41 - should be unlocked
ok 42 - should be unlocked
ok 43 - should be unlocked
ok 44 - should be unlocked
ok 45 - should be unlocked
ok 46 - should be unlocked
ok 47 - should be unlocked
ok 48 - should be unlocked
ok 49 - should be unlocked
ok 50 - should be unlocked
ok 51 - should be unlocked
ok 52 - should be unlocked
ok 53 - should be unlocked
ok 54 - should be unlocked
ok 55 - should be unlocked
ok 56 - should be unlocked
ok 57 - should be unlocked
ok 58 - should be unlocked
ok 59 - should be unlocked
ok 60 - should be unlocked
ok 61 - should be unlocked
ok 62 - should be unlocked
ok 63 - should be unlocked
ok 64 - should be unlocked
ok 65 - should be unlocked
ok 66 - should be unlocked
ok 67 - should be unlocked
ok 68 - should be unlocked
ok 69 - should be unlocked
ok 70 - should be unlocked
ok 71 - should be unlocked
ok 72 - should be unlocked
ok 73 - should be unlocked
ok 74 - should be unlocked
ok 75 - should be unlocked
ok 76 - should be unlocked
ok 77 - should be unlocked
ok 78 - should be unlocked
ok 79 - should be unlocked
ok 80 - should be unlocked
ok 81 - should be unlocked
ok 82 - should be unlocked
ok 83 - should be unlocked
ok 84 - should be unlocked
ok 85 - should be unlocked
ok 86 - should be unlocked
ok 87 - should be unlocked
ok 88 - should be unlocked
ok 89 - should be unlocked
ok 90 - should be unlocked
ok 91 - should be unlocked
ok 92 - should be unlocked
ok 93 - should be unlocked
ok 94 - should be unlocked
ok 95 - should be unlocked
ok 96 - should be unlocked
ok 97 - should be unlocked
ok 98 - should be unlocked
ok 99 - should be unlocked
ok 100 - should be unlocked
ok 101 - should be unlocked
ok 102 - should be unlocked
ok 103 - should be unlocked
ok 104 - should be unlocked
ok 105 - should be unlocked
ok 106 - should be unlocked
ok 107 - should be unlocked
ok 108 - should be unlocked
ok 109 - should be unlocked
ok 110 - should be unlocked
ok 111 - should be unlocked
ok 112 - should be unlocked
ok 113 - should be unlocked
ok 114 - should be unlocked
ok 115 - should be unlocked
ok 116 - should be unlocked
ok 117 - should be unlocked
ok 118 - should be unlocked
ok 119 - should be unlocked
ok 120 - should be unlocked
ok 121 - should be unlocked
ok 122 - should be unlocked
ok 123 - should be unlocked
ok 124 - should be unlocked
ok 125 - should be unlocked
ok 126 - should be unlocked
ok 127 - should be unlocked
ok 128 - should be unlocked
ok 129 - should be unlocked
ok 130 - should be unlocked
ok 131 - should be unlocked
ok 132 - should be unlocked
ok 133 - should be unlocked
ok 134 - should be unlocked
ok 135 - should be unlocked
ok 136 - should be unlocked
ok 137 - should be unlocked
ok 138 - should be unlocked
ok 139 - should be unlocked
ok 140 - should be unlocked
ok 141 - should be unlocked
ok 142 - should be unlocked
ok 143 - should be unlocked
ok 144 - should be unlocked
ok 145 - should be unlocked
ok 146 - should be unlocked
ok 147 - should be unlocked
ok 148 - should be unlocked
ok 149 - should be unlocked
ok 150 - should be unlocked
ok 151 - should be unlocked
ok 152 - should be unlocked
ok 153 - should be unlocked
ok 154 - should be unlocked
ok 155 - should be unlocked
ok 156 - should be unlocked
ok 157 - should be unlocked
ok 158 - should be unlocked
ok 159 - should be unlocked
ok 160 - should be unlocked
ok 161 - should be unlocked
ok 162 - should be unlocked
ok 163 - should be unlocked
ok 164 - should be unlocked
ok 165 - should be unlocked
ok 166 - should be unlocked
ok 167 - should be unlocked
ok 168 - should be unlocked
ok 169 - should be unlocked
ok 170 - should be unlocked
ok 171 - should be unlocked
ok 172 - should be unlocked
ok 173 - should be unlocked
ok 174 - should be unlocked
ok 175 - should be unlocked
ok 176 - should be unlocked
ok 177 - should be unlocked
ok 178 - should be unlocked
ok 179 - should be unlocked
ok 180 - should be unlocked
ok 181 - should be unlocked
ok 182 - should be unlocked
ok 183 - should be unlocked
ok 184 - should be unlocked
ok 185 - should be unlocked
ok 186 - should be unlocked
ok 187 - should be unlocked
ok 188 - should be unlocked
ok 189 - should be unlocked
ok 190 - should be unlocked
ok 191 - should be unlocked
ok 192 - should be unlocked
ok 193 - should be unlocked
ok 194 - should be unlocked
ok 195 - should be unlocked
ok 196 - should be unlocked
ok 197 - should be unlocked
ok 198 - should be unlocked
ok 199 - should be unlocked
ok 200 - should be unlocked
ok 201 - first file exists and has 20Kb so far
ok 202 - rotate files does not exists yet
# printing one more message to force rotation bondaries
ok 203 - should be unlocked
ok 204 - new file exists and has 100 bytes
ok 205 - rotate file exists and has 20Kb
ok 206 - compress method returns true
ok 207 - rotated file a.1 was compressed to a.1.gz
ok 208 - original a.1 is deleted
ok 209 - compressed file size is smaller than before compression
1..209
ok 7 - Filehandle cached: rotate by size = 20Kb
# Subtest: Filehandle not cached: rotate by size = 20Kb
ok 1 - should be unlocked
ok 2 - should be unlocked
ok 3 - should be unlocked
ok 4 - should be unlocked
ok 5 - should be unlocked
ok 6 - should be unlocked
ok 7 - should be unlocked
ok 8 - should be unlocked
ok 9 - should be unlocked
ok 10 - should be unlocked
ok 11 - should be unlocked
ok 12 - should be unlocked
ok 13 - should be unlocked
ok 14 - should be unlocked
ok 15 - should be unlocked
ok 16 - should be unlocked
ok 17 - should be unlocked
ok 18 - should be unlocked
ok 19 - should be unlocked
ok 20 - should be unlocked
ok 21 - should be unlocked
ok 22 - should be unlocked
ok 23 - should be unlocked
ok 24 - should be unlocked
ok 25 - should be unlocked
ok 26 - should be unlocked
ok 27 - should be unlocked
ok 28 - should be unlocked
ok 29 - should be unlocked
ok 30 - should be unlocked
ok 31 - should be unlocked
ok 32 - should be unlocked
ok 33 - should be unlocked
ok 34 - should be unlocked
ok 35 - should be unlocked
ok 36 - should be unlocked
ok 37 - should be unlocked
ok 38 - should be unlocked
ok 39 - should be unlocked
ok 40 - should be unlocked
ok 41 - should be unlocked
ok 42 - should be unlocked
ok 43 - should be unlocked
ok 44 - should be unlocked
ok 45 - should be unlocked
ok 46 - should be unlocked
ok 47 - should be unlocked
ok 48 - should be unlocked
ok 49 - should be unlocked
ok 50 - should be unlocked
ok 51 - should be unlocked
ok 52 - should be unlocked
ok 53 - should be unlocked
ok 54 - should be unlocked
ok 55 - should be unlocked
ok 56 - should be unlocked
ok 57 - should be unlocked
ok 58 - should be unlocked
ok 59 - should be unlocked
ok 60 - should be unlocked
ok 61 - should be unlocked
ok 62 - should be unlocked
ok 63 - should be unlocked
ok 64 - should be unlocked
ok 65 - should be unlocked
ok 66 - should be unlocked
ok 67 - should be unlocked
ok 68 - should be unlocked
ok 69 - should be unlocked
ok 70 - should be unlocked
ok 71 - should be unlocked
ok 72 - should be unlocked
ok 73 - should be unlocked
ok 74 - should be unlocked
ok 75 - should be unlocked
ok 76 - should be unlocked
ok 77 - should be unlocked
ok 78 - should be unlocked
ok 79 - should be unlocked
ok 80 - should be unlocked
ok 81 - should be unlocked
ok 82 - should be unlocked
ok 83 - should be unlocked
ok 84 - should be unlocked
ok 85 - should be unlocked
ok 86 - should be unlocked
ok 87 - should be unlocked
ok 88 - should be unlocked
ok 89 - should be unlocked
ok 90 - should be unlocked
ok 91 - should be unlocked
ok 92 - should be unlocked
ok 93 - should be unlocked
ok 94 - should be unlocked
ok 95 - should be unlocked
ok 96 - should be unlocked
ok 97 - should be unlocked
ok 98 - should be unlocked
ok 99 - should be unlocked
ok 100 - should be unlocked
ok 101 - should be unlocked
ok 102 - should be unlocked
ok 103 - should be unlocked
ok 104 - should be unlocked
ok 105 - should be unlocked
ok 106 - should be unlocked
ok 107 - should be unlocked
ok 108 - should be unlocked
ok 109 - should be unlocked
ok 110 - should be unlocked
ok 111 - should be unlocked
ok 112 - should be unlocked
ok 113 - should be unlocked
ok 114 - should be unlocked
ok 115 - should be unlocked
ok 116 - should be unlocked
ok 117 - should be unlocked
ok 118 - should be unlocked
ok 119 - should be unlocked
ok 120 - should be unlocked
ok 121 - should be unlocked
ok 122 - should be unlocked
ok 123 - should be unlocked
ok 124 - should be unlocked
ok 125 - should be unlocked
ok 126 - should be unlocked
ok 127 - should be unlocked
ok 128 - should be unlocked
ok 129 - should be unlocked
ok 130 - should be unlocked
ok 131 - should be unlocked
ok 132 - should be unlocked
ok 133 - should be unlocked
ok 134 - should be unlocked
ok 135 - should be unlocked
ok 136 - should be unlocked
ok 137 - should be unlocked
ok 138 - should be unlocked
ok 139 - should be unlocked
ok 140 - should be unlocked
ok 141 - should be unlocked
ok 142 - should be unlocked
ok 143 - should be unlocked
ok 144 - should be unlocked
ok 145 - should be unlocked
ok 146 - should be unlocked
ok 147 - should be unlocked
ok 148 - should be unlocked
ok 149 - should be unlocked
ok 150 - should be unlocked
ok 151 - should be unlocked
ok 152 - should be unlocked
ok 153 - should be unlocked
ok 154 - should be unlocked
ok 155 - should be unlocked
ok 156 - should be unlocked
ok 157 - should be unlocked
ok 158 - should be unlocked
ok 159 - should be unlocked
ok 160 - should be unlocked
ok 161 - should be unlocked
ok 162 - should be unlocked
ok 163 - should be unlocked
ok 164 - should be unlocked
ok 165 - should be unlocked
ok 166 - should be unlocked
ok 167 - should be unlocked
ok 168 - should be unlocked
ok 169 - should be unlocked
ok 170 - should be unlocked
ok 171 - should be unlocked
ok 172 - should be unlocked
ok 173 - should be unlocked
ok 174 - should be unlocked
ok 175 - should be unlocked
ok 176 - should be unlocked
ok 177 - should be unlocked
ok 178 - should be unlocked
ok 179 - should be unlocked
ok 180 - should be unlocked
ok 181 - should be unlocked
ok 182 - should be unlocked
ok 183 - should be unlocked
ok 184 - should be unlocked
ok 185 - should be unlocked
ok 186 - should be unlocked
ok 187 - should be unlocked
ok 188 - should be unlocked
ok 189 - should be unlocked
ok 190 - should be unlocked
ok 191 - should be unlocked
ok 192 - should be unlocked
ok 193 - should be unlocked
ok 194 - should be unlocked
ok 195 - should be unlocked
ok 196 - should be unlocked
ok 197 - should be unlocked
ok 198 - should be unlocked
ok 199 - should be unlocked
ok 200 - should be unlocked
ok 201 - first file exists and has 20Kb so far
ok 202 - rotate files does not exists yet
# printing one more message to force rotation bondaries
ok 203 - should be unlocked
ok 204 - new file exists and has 100 bytes
ok 205 - rotate file exists and has 20Kb
ok 206 - compress method returns true
ok 207 - rotated file a.1 was compressed to a.1.gz
ok 208 - original a.1 is deleted
ok 209 - compressed file size is smaller than before compression
1..209
ok 8 - Filehandle not cached: rotate by size = 20Kb
# Subtest: Filehandle cached: rotate by period, daily
ok 1 - period
ok 2 - should be unlocked
ok 3 - got expected content in the file (1)
ok 4 - should be unlocked
ok 5 - got expected content in the file (2)
ok 6 - should be unlocked
ok 7 - got expected content in the file (3)
ok 8 - compress method returns true
ok 9 - rotated file a.2012-12-21 was compressed to a.2012-12-21.gz
ok 10 - original a.2012-12-21 is deleted
1..10
ok 9 - Filehandle cached: rotate by period, daily
# Subtest: Filehandle not cached: rotate by period, daily
ok 1 - period
ok 2 - should be unlocked
ok 3 - got expected content in the file (1)
ok 4 - should be unlocked
ok 5 - got expected content in the file (2)
ok 6 - should be unlocked
ok 7 - got expected content in the file (3)
ok 8 - compress method returns true
ok 9 - rotated file a.2012-12-21 was compressed to a.2012-12-21.gz
ok 10 - original a.2012-12-21 is deleted
1..10
ok 10 - Filehandle not cached: rotate by period, daily
# Subtest: Filehandle cached: rotate by period, monthly
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6 - should be unlocked
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.2012-12 was compressed to a.2012-12.gz
ok 10 - original a.2012-12 is deleted
1..10
ok 11 - Filehandle cached: rotate by period, monthly
# Subtest: Filehandle not cached: rotate by period, monthly
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6 - should be unlocked
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.2012-12 was compressed to a.2012-12.gz
ok 10 - original a.2012-12 is deleted
1..10
ok 12 - Filehandle not cached: rotate by period, monthly
# Subtest: Filehandle cached: rotate by period, yearly
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6 - should be unlocked
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.2012 was compressed to a.2012.gz
ok 10 - original a.2012 is deleted
1..10
ok 13 - Filehandle cached: rotate by period, yearly
# Subtest: Filehandle not cached: rotate by period, yearly
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6 - should be unlocked
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.2012 was compressed to a.2012.gz
ok 10 - original a.2012 is deleted
1..10
ok 14 - Filehandle not cached: rotate by period, yearly
# Subtest: Filehandle cached: rotate by period + size, suffix
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6
ok 7 - should be unlocked
ok 8
ok 9
ok 10
ok 11 - should be unlocked
ok 12
ok 13 - compress method returns true
ok 14 - rotated file a.2012-12-21.log was compressed to a.2012-12-21.log.gz
ok 15 - original a.2012-12-21.log is deleted
ok 16 - rotated file a.2012-12-21.log.1 was compressed to a.2012-12-21.log.1.gz
ok 17 - original a.2012-12-21.log.1 is deleted
ok 18 - rotated file a.2012-12-21.log.2 was compressed to a.2012-12-21.log.2.gz
ok 19 - original a.2012-12-21.log.2 is deleted
1..19
ok 15 - Filehandle cached: rotate by period + size, suffix
# Subtest: Filehandle not cached: rotate by period + size, suffix
ok 1 - period
ok 2 - should be unlocked
ok 3
ok 4 - should be unlocked
ok 5
ok 6
ok 7 - should be unlocked
ok 8
ok 9
ok 10
ok 11 - should be unlocked
ok 12
ok 13 - compress method returns true
ok 14 - rotated file a.2012-12-21.log was compressed to a.2012-12-21.log.gz
ok 15 - original a.2012-12-21.log is deleted
ok 16 - rotated file a.2012-12-21.log.1 was compressed to a.2012-12-21.log.1.gz
ok 17 - original a.2012-12-21.log.1 is deleted
ok 18 - rotated file a.2012-12-21.log.2 was compressed to a.2012-12-21.log.2.gz
ok 19 - original a.2012-12-21.log.2 is deleted
1..19
ok 16 - Filehandle not cached: rotate by period + size, suffix
# Subtest: Filehandle cached: two writers, one rotates
ok 1 - should be unlocked
ok 2
ok 3
ok 4
ok 5 - should be unlocked
ok 6
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.1 was compressed to a.1.gz
ok 10 - original a.1 is deleted
1..10
ok 17 - Filehandle cached: two writers, one rotates
# Subtest: Filehandle not cached: two writers, one rotates
ok 1 - should be unlocked
ok 2
ok 3
ok 4
ok 5 - should be unlocked
ok 6
ok 7
ok 8 - compress method returns true
ok 9 - rotated file a.1 was compressed to a.1.gz
ok 10 - original a.1 is deleted
1..10
ok 18 - Filehandle not cached: two writers, one rotates
# Subtest: rotate on first write()
ok 1
ok 2
ok 3 - compress method returns true
ok 4 - rotated file a.1 was compressed to a.1.gz
ok 5 - original a.1 is deleted
1..5
ok 19 - rotate on first write()
# Subtest: Filehandle cached: hook_before_write basic
ok 1 - lock file exists
ok 2 - should be unlocked
ok 3 - hook messages OK
ok 4 - content OK
1..4
ok 20 - Filehandle cached: hook_before_write basic
# Subtest: Filehandle not cached: hook_before_write basic
ok 1 - lock file exists
ok 2 - should be unlocked
ok 3 - hook messages OK
ok 4 - content OK
1..4
ok 21 - Filehandle not cached: hook_before_write basic
# Subtest: buffer (success), hook_before_write
ok 1 - first message to buffer
ok 2 - second message to buffer
ok 3 - should be unlocked
ok 4 - buffered messages gets logged
ok 5 - buffered is emptied
ok 6 - should be unlocked
1..6
ok 22 - buffer (success), hook_before_write
# Subtest: buffer (failed, full), buffer_size attribute
ok 1 - buffer_size()
ok 2 - first message to buffer
ok 3 - should be unlocked
ok 4 - second message to buffer
ok 5 - should be unlocked
ok 6 - buffer is full
ok 7 - should be unlocked
1..7
ok 23 - buffer (failed, full), buffer_size attribute
# Subtest: hook_after_create
ok 1
1..1
ok 24 - hook_after_create
# Subtest: Filehandle cached: rotate by period, daily + histories
ok 1 - should be unlocked
ok 2 - current file only
ok 3 - should be unlocked
ok 4 - 1 history
ok 5 - should be unlocked
ok 6 - 2 histories
ok 7 - should be unlocked
ok 8 - 2 histories (deleted)
1..8
ok 25 - Filehandle cached: rotate by period, daily + histories
# Subtest: Filehandle not cached: rotate by period, daily + histories
ok 1 - should be unlocked
ok 2 - current file only
ok 3 - should be unlocked
ok 4 - 1 history
ok 5 - should be unlocked
ok 6 - 2 histories
ok 7 - should be unlocked
ok 8 - 2 histories (deleted)
1..8
ok 26 - Filehandle not cached: rotate by period, daily + histories
# Subtest: Filehandle cached: rotate by size + histories
ok 1 - should be unlocked
ok 2 - current file only
ok 3 - should be unlocked
ok 4 - 1 history (rotated)
ok 5 - should be unlocked
ok 6 - 2 histories (rotated)
ok 7 - should be unlocked
ok 8 - 2 histories (rotated and deleted)
1..8
ok 27 - Filehandle cached: rotate by size + histories
# Subtest: Filehandle not cached: rotate by size + histories
ok 1 - should be unlocked
ok 2 - current file only
ok 3 - should be unlocked
ok 4 - 1 history (rotated)
ok 5 - should be unlocked
ok 6 - 2 histories (rotated)
ok 7 - should be unlocked
ok 8 - 2 histories (rotated and deleted)
1..8
ok 28 - Filehandle not cached: rotate by size + histories
# Subtest: Filehandle cached: rotate by size + period + histories
ok 1 - should be unlocked
ok 2
ok 3 - should be unlocked
ok 4
ok 5 - should be unlocked
ok 6
ok 7 - should be unlocked
ok 8 - rotate 2012-12-22 but NOT 2012-12-21
ok 9 - should be unlocked
ok 10 - delete [1] as a result of rotating at 2012-12-22
ok 11 - should be unlocked
ok 12 - delete [2] as a result of entering the new period
ok 13 - should be unlocked
ok 14
ok 15 - should be unlocked
ok 16 - not rotating because it's within the size limite
1..16
ok 29 - Filehandle cached: rotate by size + period + histories
# Subtest: Filehandle not cached: rotate by size + period + histories
ok 1 - should be unlocked
ok 2
ok 3 - should be unlocked
ok 4
ok 5 - should be unlocked
ok 6
ok 7 - should be unlocked
ok 8 - rotate 2012-12-22 but NOT 2012-12-21
ok 9 - should be unlocked
ok 10 - delete [1] as a result of rotating at 2012-12-22
ok 11 - should be unlocked
ok 12 - delete [2] as a result of entering the new period
ok 13 - should be unlocked
ok 14
ok 15 - should be unlocked
ok 16 - not rotating because it's within the size limite
1..16
ok 30 - Filehandle not cached: rotate by size + period + histories
1..30
ok
All tests successful.
Files=7, Tests=42, 1 wallclock secs ( 0.10 usr 0.02 sys + 0.78 cusr 0.28 csys = 1.18 CPU)
Result: PASS
PERLANCAR/File-Write-Rotate-0.30.tar.gz
make test TEST_VERBOSE=1 -- OK
perlancar <perlancar@gmail.com>
Write to files that archive/rotate themselves
>>> (cd /Users/fly2400/cpanfly-5.24/var/tmp/cpan_build/File-Write-Rotate-0.30-920e0i && tar cvf - File-Write-Rotate-0.30.ppd blib) | gzip -c >/Users/fly2400/cpanfly-5.24/var/REPO/P/PE/PERLANCAR/File-Write-Rotate-0.30.tar.gz
File-Write-Rotate-0.30.ppd
blib/
blib/lib/
blib/lib/File/
blib/lib/File/Write/
blib/lib/File/Write/Rotate.pm
blib/man3/
blib/man3/File::Write::Rotate.3
Finished 2016-06-12T17:18:43