PATH=C:\Program Files\Microsoft Platform SDK\Bin;C:\Program Files\Microsoft Platform SDK\Bin\WinNT;C:\Program Files\Microsoft Visual Studio\VC98\Bin;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\cygwin\bin;C:\cpanfly-5.14\var\megalib\bin;C:\Perl-5.14\site\bin;C:\Perl-5.14\bin;C:\cygwin\bin;C:\Program Files\Perforce;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\instantclient_11_2;C:\cygwin\bin;C:\Program Files\Perforce;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\mysql\bin Start 2014-11-02T23:21:02 ActivePerl-1400 CPAN-2.00 LIB=C:\PROGRA~1\MICROS~3\VC98\Lib\PSDK;C:\PROGRA~1\MICROS~2\Lib;C:\PROGRA~1\MICROS~3\VC98\Lib;C:\PROGRA~1\MICROS~3\VC98\MFC\Lib INCLUDE=C:\PROGRA~1\MICROS~2\Include;C:\PROGRA~1\MICROS~3\VC98\ATL\Include;C:\PROGRA~1\MICROS~3\VC98\Include;C:\PROGRA~1\MICROS~3\VC98\MFC\Include PATH=C:/CPANFL~1.14/var/libs/bin;C:\PROGRA~1\MICROS~2\Bin;C:\PROGRA~1\MICROS~2\Bin\WinNT;C:\PROGRA~1\MICROS~3\VC98\Bin;C:\PROGRA~1\MICROS~3\Common\MSDev98\Bin;C:\cygwin\bin;C:\CPANFL~1.14\var\megalib\bin;C:\Perl-5.14\site\bin;C:\Perl-5.14\bin;C:\cygwin\bin;C:\PROGRA~1\Perforce;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WINDOW~2\v1.0;C:\WINDOWS\system32\WINDOW~2\v1.0;C:\INSTAN~1;C:\cygwin\bin;C:\PROGRA~1\Perforce;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\system32\WINDOW~2\v1.0;C:\WINDOWS\system32\WINDOW~2\v1.0;C:\mysql\bin Reading 'C:\cpanfly-5.14\var\cpan\Metadata' Database was generated on Mon, 03 Nov 2014 06:41:02 GMT Running make for P/PR/PREACTION/Beam-Wire-1.009.tar.gz Fetching with LWP: http://cpan.nas1.activestate.com/authors/id/P/PR/PREACTION/Beam-Wire-1.009.tar.gz Checksum for C:\cpanfly-5.14\var\cpan\sources\authors\id\P\PR\PREACTION\Beam-Wire-1.009.tar.gz ok Beam-Wire-1.009/ Beam-Wire-1.009/Build.PL Beam-Wire-1.009/CHANGES Beam-Wire-1.009/CONTRIBUTING.md Beam-Wire-1.009/cpanfile Beam-Wire-1.009/lib/ Beam-Wire-1.009/LICENSE Beam-Wire-1.009/Makefile.PL Beam-Wire-1.009/MANIFEST Beam-Wire-1.009/META.yml Beam-Wire-1.009/README Beam-Wire-1.009/README.mkdn Beam-Wire-1.009/t/ Beam-Wire-1.009/t/00_compile.t Beam-Wire-1.009/t/01_exception.t Beam-Wire-1.009/t/10_service.t Beam-Wire-1.009/t/11_extends.t Beam-Wire-1.009/t/12_method.t Beam-Wire-1.009/t/13_lifecycle.t Beam-Wire-1.009/t/20_config.t Beam-Wire-1.009/t/21_inner.t Beam-Wire-1.009/t/30_refs.t Beam-Wire-1.009/t/lib/ Beam-Wire-1.009/t/share/ Beam-Wire-1.009/t/share/file.json Beam-Wire-1.009/t/share/file.pl Beam-Wire-1.009/t/share/file.yml Beam-Wire-1.009/t/share/inner_file.yml Beam-Wire-1.009/t/share/inner_inline.yml Beam-Wire-1.009/t/lib/Foo.pm Beam-Wire-1.009/t/lib/Greeting.pm Beam-Wire-1.009/lib/Beam/ Beam-Wire-1.009/lib/Beam/Wire.pm CPAN.pm: Building P/PR/PREACTION/Beam-Wire-1.009.tar.gz >>> C:\Perl-5.14\bin\perl.exe Makefile.PL Checking if your kit is complete... Looks good Generating a nmake-style Makefile Writing Makefile for Beam::Wire Writing MYMETA.yml and MYMETA.json >>> nmake Microsoft (R) Program Maintenance Utility Version 7.00.8882 Copyright (C) Microsoft Corp 1988-2000. All rights reserved. cp lib/Beam/Wire.pm blib\lib\Beam\Wire.pm PREACTION/Beam-Wire-1.009.tar.gz nmake -- OK Running make test >>> nmake test TEST_VERBOSE=1 Microsoft (R) Program Maintenance Utility Version 7.00.8882 Copyright (C) Microsoft Corp 1988-2000. All rights reserved. C:\Perl-5.14\bin\perl.exe "-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 - Compile test for blib\lib\Beam\Wire.pm ok t/01_exception.t .. # Subtest: get a service that doesn't exist ok 1 - threw Beam::Wire::Exception::NotFound ok 2 1..2 ok 1 - get a service that doesn't exist # Subtest: extend a service that doesn't exist ok 1 - threw Beam::Wire::Exception::NotFound ok 2 1..2 ok 2 - extend a service that doesn't exist # Subtest: service with both value and class/extends # Subtest: class + value ok 1 ok 2 - threw Beam::Wire::Exception::InvalidConfig ok 3 1..3 ok 1 - class + value # Subtest: extends + value ok 1 ok 2 - threw Beam::Wire::Exception::InvalidConfig ok 3 1..3 ok 2 - extends + value # Subtest: value in extended service ok 1 ok 2 - threw Beam::Wire::Exception::InvalidConfig ok 3 1..3 ok 3 - value in extended service 1..3 ok 3 - service with both value and class/extends 1..3 ok t/10_service.t .... # Subtest: value service: simple scalar ok 1 ok 2 - got a simple scalar ok 3 ok 4 ok 5 - An object of class 'Foo' isa 'Foo' ok 6 1..6 ok 1 - value service: simple scalar # Subtest: get() override factory (anonymous services) ok 1 - get() with overrides creates a new object ok 2 - get() with overrides does not save the object ok 3 - our override gave our new object a new bar 1..3 ok 2 - get() override factory (anonymous services) # Subtest: dies when service not found ok 1 1..1 ok 3 - dies when service not found 1..3 ok t/11_extends.t .... # Subtest: scalar args # Subtest: extends scalar args, new args ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 1 - extends scalar args, new args # Subtest: extends scalar args, no changes ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 2 - extends scalar args, no changes # Subtest: extends scalar args, new method, extends another extends ok 1 ok 2 ok 3 - An object of class 'Foo' isa 'Foo' ok 4 1..4 ok 3 - extends scalar args, new method, extends another extends 1..3 ok 1 - scalar args # Subtest: array args # Subtest: extends array args, new args ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 1 - extends array args, new args # Subtest: extends array args, change to hash args ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 2 - extends array args, change to hash args 1..2 ok 2 - array args # Subtest: hash args # Subtest: extends hash args, new args ok 1 ok 2 - An object of class 'Greeting' isa 'Greeting' ok 3 ok 4 1..4 ok 1 - extends hash args, new args 1..1 ok 3 - hash args # Subtest: nested data structures # Subtest: extends arraynest, new args ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 1 - extends arraynest, new args # Subtest: extends hashnest, new args ok 1 ok 2 - An object of class 'Greeting' isa 'Greeting' ok 3 ok 4 1..4 ok 2 - extends hashnest, new args 1..2 ok 4 - nested data structures # Subtest: extended service does not exist ok 1 - creating a bad wire is fine ok 2 - getting a bad service is not 1..2 ok 5 - extended service does not exist 1..5 ok t/12_method.t ..... # Subtest: method ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - cons was called, not new ok 3 - args were passed 1..3 ok 1 - method # Subtest: multi method ok 1 1..1 ok 2 - multi method # Subtest: chain method ok 1 1..1 ok 3 - chain method 1..3 ok t/13_lifecycle.t .. # Subtest: singleton lifecycle ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - same foo object is returned ok 3 - same foo object is given to bar 1..3 ok 1 - singleton lifecycle # Subtest: factory lifecycle ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - different foo object is returned ok 3 - different foo object is given to bar ok 4 - different foo object is given to bar 1..4 ok 2 - factory lifecycle # Subtest: eager lifecycle ok 1 - 'bar exists without calling get()' isa 'Foo' ok 2 - foo is also created, because bar depends on foo 1..2 ok 3 - eager lifecycle # Subtest: default lifecycle is singleton ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - same foo object is returned ok 3 - same foo object is given to bar 1..3 ok 4 - default lifecycle is singleton 1..4 ok t/20_config.t ..... # Subtest: load module from config - file.json ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value ok 6 - 'container gets buzz object' isa 'Buzz' ok 7 - container caches the object ok 8 - container gives array of arrayrefs ok 9 - 'container gets Fizz object' isa 'Fizz' ok 10 - container caches the object ok 11 - container gives hashref 1..11 ok 1 - load module from config - file.json # Subtest: load module from config - file.pl ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value ok 6 - 'container gets buzz object' isa 'Buzz' ok 7 - container caches the object ok 8 - container gives array of arrayrefs ok 9 - 'container gets Fizz object' isa 'Fizz' ok 10 - container caches the object ok 11 - container gives hashref 1..11 ok 2 - load module from config - file.pl # Subtest: load module from config - file.yml ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value ok 6 - 'container gets buzz object' isa 'Buzz' ok 7 - container caches the object ok 8 - container gives array of arrayrefs ok 9 - 'container gets Fizz object' isa 'Fizz' ok 10 - container caches the object ok 11 - container gives hashref 1..11 ok 3 - load module from config - file.yml 1..3 ok t/21_inner.t ...... # Subtest: container in services ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value 1..5 ok 1 - container in services # Subtest: container in file ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value ok 6 - An object of class 'Foo' isa 'Foo' ok 7 - container caches the object ok 8 - 'container injects Bar object' isa 'Bar' ok 9 - fizz takes the same bar as foo ok 10 - container caches Bar object ok 11 - container gives bar text value 1..11 ok 2 - container in file # Subtest: set inside subcontainer ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value 1..5 ok 3 - set inside subcontainer # Subtest: inner container file ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value 1..5 ok 4 - inner container file # Subtest: inner container get() overrides ok 1 - get() with overrides creates a new object ok 2 - get() with overrides does not save the object ok 3 - our override gave our new object a new bar 1..3 ok 5 - inner container get() overrides # Subtest: inner extends ok 1 - An object of class 'Foo' isa 'Foo' ok 2 - container caches the object ok 3 - 'container injects Bar object' isa 'Bar' ok 4 - container caches Bar object ok 5 - container gives bar text value 1..5 ok 6 - inner extends # Subtest: inner get_config ok 1 1..1 ok 7 - inner get_config 1..7 ok t/30_refs.t ....... # Subtest: method with no arguments ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 1 - method with no arguments # Subtest: method with one argument ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 2 - method with one argument # Subtest: method with arrayref of arguments ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 3 - method with arrayref of arguments # Subtest: a different method reference ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 4 - a different method reference # Subtest: path reference ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 1..3 ok 5 - path reference # Subtest: anonymous reference ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 - An object of class 'Foo' isa 'Foo' ok 4 1..4 ok 6 - anonymous reference # Subtest: anonymous extends ok 1 ok 2 - An object of class 'Foo' isa 'Foo' ok 3 - An object of class 'Foo' isa 'Foo' ok 4 1..4 ok 7 - anonymous extends 1..7 ok All tests successful. Files=9, Tests=36, 10 wallclock secs ( 0.11 usr + 0.03 sys = 0.14 CPU) Result: PASS PREACTION/Beam-Wire-1.009.tar.gz nmake test TEST_VERBOSE=1 -- OK Doug Bell <preaction@cpan.org> Lightweight Dependency Injection Container >>> (cd C:\cpanfly-5.14\var\cpan\build\Beam-Wire-1.009-ZtzQfm && tar cvf - Beam-Wire-1.009.ppd blib) | gzip -c >C:/cpanfly-5.14/var/REPO/P/PR/PREACTION/Beam-Wire-1.009.tar.gz Beam-Wire-1.009.ppd blib/ blib/lib/ blib/lib/Beam/ blib/lib/Beam/Wire.pm >>> mv C:\cpanfly-5.14\var\cpan\build\Beam-Wire-1.009-ZtzQfm/Beam-Wire-1.009.ppd C:/cpanfly-5.14/var/REPO/P/PR/PREACTION Finished 2014-11-02T23:21:20