Hello community,

here is the log from the commit of package perl-Test-Without-Module for 
openSUSE:Factory checked in at 2017-04-11 12:43:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Without-Module (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Test-Without-Module.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Test-Without-Module"

Tue Apr 11 12:43:58 2017 rev:5 rq:486144 version:0.19

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-Test-Without-Module/perl-Test-Without-Module.changes
        2015-04-15 16:27:21.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Test-Without-Module.new/perl-Test-Without-Module.changes
   2017-04-11 12:43:59.632506940 +0200
@@ -1,0 +2,6 @@
+Fri Mar 31 06:51:57 UTC 2017 - co...@suse.com
+
+- updated to 0.19
+   see /usr/share/doc/packages/perl-Test-Without-Module/Changes
+
+-------------------------------------------------------------------

Old:
----
  Test-Without-Module-0.18.tar.gz

New:
----
  Test-Without-Module-0.19.tar.gz
  cpanspec.yml

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Test-Without-Module.spec ++++++
--- /var/tmp/diff_new_pack.TYHkfo/_old  2017-04-11 12:44:00.648363403 +0200
+++ /var/tmp/diff_new_pack.TYHkfo/_new  2017-04-11 12:44:00.648363403 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Test-Without-Module
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,14 +17,15 @@
 
 
 Name:           perl-Test-Without-Module
-Version:        0.18
+Version:        0.19
 Release:        0
 %define cpan_name Test-Without-Module
 Summary:        Test fallback behaviour in absence of modules
 License:        Artistic-1.0 or GPL-1.0+
 Group:          Development/Libraries/Perl
 Url:            http://search.cpan.org/dist/Test-Without-Module/
-Source:         
http://www.cpan.org/authors/id/C/CO/CORION/%{cpan_name}-%{version}.tar.gz
+Source0:        
https://cpan.metacpan.org/authors/id/C/CO/CORION/%{cpan_name}-%{version}.tar.gz
+Source1:        cpanspec.yml
 BuildArch:      noarch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
@@ -38,7 +39,7 @@
 
 %prep
 %setup -q -n %{cpan_name}-%{version}
-find . -type f -print0 | xargs -0 chmod 644
+find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
 
 %build
 %{__perl} Makefile.PL INSTALLDIRS=vendor
@@ -54,6 +55,6 @@
 
 %files -f %{name}.files
 %defattr(-,root,root,755)
-%doc Changes README
+%doc Changes README README.mkdn
 
 %changelog

++++++ Test-Without-Module-0.18.tar.gz -> Test-Without-Module-0.19.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/Changes 
new/Test-Without-Module-0.19/Changes
--- old/Test-Without-Module-0.18/Changes        2014-08-30 15:28:56.000000000 
+0200
+++ new/Test-Without-Module-0.19/Changes        2017-03-30 21:14:13.000000000 
+0200
@@ -3,6 +3,11 @@
 Todo:
   - Add way to allow only core modules (suggested by SREZIC)
 
+0.19 to be released
+  - Make error message more like the original Perl error message (haarg)
+  - Makefile.PL overhaul (by Abzal Serekov)
+  - Generate README.md
+
 0.18 20140830
   - Eliminate segfault on Perl 5.8 (by Graham Knop, Karen Etheridge, RT 98207)
   - Only add the @INC hook once (by Graham Knop, RT #91857)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/MANIFEST 
new/Test-Without-Module-0.19/MANIFEST
--- old/Test-Without-Module-0.18/MANIFEST       2014-08-30 15:32:08.000000000 
+0200
+++ new/Test-Without-Module-0.19/MANIFEST       2017-03-30 21:14:13.000000000 
+0200
@@ -6,11 +6,13 @@
 META.json
 META.yml
 README
+README.mkdn
 t/01-api.t
 t/02-block-use-module.t
 t/03-block-require-module.t
 t/04-import-export.t
 t/05-redefine.t
+t/06-missing-hidden-modules.t
 t/99-manifest.t
 t/99-pod.t
 t/99-todo.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/META.json 
new/Test-Without-Module-0.19/META.json
--- old/Test-Without-Module-0.18/META.json      2014-08-30 15:32:37.000000000 
+0200
+++ new/Test-Without-Module-0.19/META.json      2017-03-30 21:14:16.000000000 
+0200
@@ -3,8 +3,8 @@
    "author" : [
       "Max Maischein <cor...@cpan.org>"
    ],
-   "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter 
version 2.120921",
+   "dynamic_config" : 0,
+   "generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter 
version 2.150005",
    "license" : [
       "perl_5"
    ],
@@ -19,28 +19,24 @@
          "inc"
       ]
    },
-   "prereqs" : {
-      "build" : {
-         "requires" : {
-            "File::Find" : "0",
-            "File::Spec" : "0",
-            "Test::More" : "0"
-         }
-      },
-      "configure" : {
-         "requires" : {
-            "ExtUtils::MakeMaker" : "0"
-         }
-      },
-      "runtime" : {
-         "requires" : {}
+   "provides" : {
+      "Test::Without::Module" : {
+         "file" : "lib/Test/Without/Module.pm",
+         "version" : "0.19"
       }
    },
    "release_status" : "stable",
    "resources" : {
+      "license" : [
+         "http://dev.perl.org/licenses/";
+      ],
       "repository" : {
-         "url" : "http://github.com/Corion/test-without-module";
+         "type" : "git",
+         "url" : "git://github.com/Corion/test-without-module.git",
+         "web" : "https://github.com/Corion/test-without-module";
       }
    },
-   "version" : "0.18"
+   "version" : "0.19",
+   "x_serialization_backend" : "JSON::PP version 2.27202",
+   "x_static_install" : 1
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/META.yml 
new/Test-Without-Module-0.19/META.yml
--- old/Test-Without-Module-0.18/META.yml       2014-08-30 15:32:37.000000000 
+0200
+++ new/Test-Without-Module-0.19/META.yml       2017-03-30 21:14:16.000000000 
+0200
@@ -2,24 +2,25 @@
 abstract: 'Test fallback behaviour in absence of modules'
 author:
   - 'Max Maischein <cor...@cpan.org>'
-build_requires:
-  File::Find: 0
-  File::Spec: 0
-  Test::More: 0
-configure_requires:
-  ExtUtils::MakeMaker: 0
-dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 
2.120921'
+build_requires: {}
+dynamic_config: 0
+generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 
2.150005'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: Test-Without-Module
 no_index:
   directory:
     - t
     - inc
-requires: {}
+provides:
+  Test::Without::Module:
+    file: lib/Test/Without/Module.pm
+    version: '0.19'
 resources:
-  repository: http://github.com/Corion/test-without-module
-version: 0.18
+  license: http://dev.perl.org/licenses/
+  repository: git://github.com/Corion/test-without-module.git
+version: '0.19'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
+x_static_install: 1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/Makefile.PL 
new/Test-Without-Module-0.19/Makefile.PL
--- old/Test-Without-Module-0.18/Makefile.PL    2014-08-30 15:28:56.000000000 
+0200
+++ new/Test-Without-Module-0.19/Makefile.PL    2017-03-30 21:14:13.000000000 
+0200
@@ -1,21 +1,49 @@
 use ExtUtils::MakeMaker;
 # See lib/ExtUtils/MakeMaker.pm for details of how to influence
 # the contents of the Makefile that is written.
-WriteMakefile1(
+
+# Normalize version strings like 6.30_02 to 6.3002,
+# so that we can do numerical comparisons on it.
+my $eumm_version = $ExtUtils::MakeMaker::VERSION;
+$eumm_version =~ s/_//;
+
+my $module = 'Test::Without::Module';
+(my $main_file = "lib/$module.pm") =~ s!::!/!g;
+(my $distname = $module) =~ s!::!-!g;
+my $content = do { local(*ARGV,$/)=[$main_file]; <> };
+(my $main_version)
+    = $content =~ m/ [^\n]* \$VERSION \s* = [^=] '([\d_.]+) [^\n]+ /gxms;
+
+my @tests = map {glob $_ } 't/*.t', 't/*/*.t';
+
+my %module = (
     'NAME'    => 'Test::Without::Module',
     'VERSION_FROM'  => 'lib/Test/Without/Module.pm', # finds $VERSION
     'PREREQ_PM'    => {
-    #    'File::Slurp' => 0,
-    #    Only needed for testing
+        'Carp' => 0,
     }, # e.g., Module::Name => 1.1
-    ($] >= 5.005 ?    ## Add these new keywords supported since 5.005
-      (ABSTRACT_FROM => 'lib/Test/Without/Module.pm', # retrieve abstract from 
module
-       AUTHOR     => 'Max Maischein <cor...@cpan.org>') : ()),
+    ABSTRACT_FROM => 'lib/Test/Without/Module.pm', # retrieve abstract from 
module
+    AUTHOR     => 'Max Maischein <cor...@cpan.org>',
 
     META_MERGE => {
+        "meta-spec" => { version => 2 },
         resources => {
-            repository => 'http://github.com/Corion/test-without-module',
+            repository => {
+                web => 'https://github.com/Corion/test-without-module',
+                url => 'git://github.com/Corion/test-without-module.git',
+                type => 'git',
+            },
+            bugtracker => 'http://rt.cpan.org/Public/Dist/Display.html?Name=' 
. $distname,
+            license    => 'http://dev.perl.org/licenses/',        
         },
+        dynamic_config   => 0, # we promise to keep META.* up-to-date
+        x_static_install => 1, # we are pure Perl and don't do anything fancy
+        provides => {
+            $module => {
+                file    => $main_file,
+                version => $main_version,
+            }
+        }
     },
     BUILD_REQUIRES => {
         # Fairly long in core
@@ -25,15 +53,20 @@
     },
 
     # Make the version metadata explicit
-    ($ExtUtils::MakeMaker::VERSION >= 6.3002 ?
-      ('LICENSE' => 'perl', ) : ()),
-
+    'LICENSE' => 'perl',
 );
 
+sub get_module_info { %module }
+
+if ( ! caller ) {
+    regen_README($main_file);
+    #regen_EXAMPLES();
+    WriteMakefile1(get_module_info);
+} 
+
 sub WriteMakefile1 {  #Written by Alexandr Ciornii, version 0.21. Added by 
eumm-upgrade.
     my %params=@_;
-    my $eumm_version=$ExtUtils::MakeMaker::VERSION;
-    $eumm_version=eval $eumm_version;
+
     die "EXTRA_META is deprecated" if exists $params{EXTRA_META};
     die "License not specified" if not exists $params{LICENSE};
     if ($params{BUILD_REQUIRES} and $eumm_version < 6.5503) {
@@ -53,3 +86,27 @@
     WriteMakefile(%params);
 }
 
+sub regen_README {
+    eval {
+        require Pod::Readme;
+        
+        my $parser = Pod::Readme->new();      
+
+        # Read POD from Module.pm and write to README
+        $parser->parse_from_file($_[0], 'README');
+    };
+    eval {
+        require Pod::Markdown;
+        
+        my $parser = Pod::Markdown->new();      
+
+        # Read POD from Module.pm and write to README
+        $parser->parse_from_file($_[0]);
+        open my $fh, '>', 'README.mkdn'
+            or die "Couldn't open 'README.mkdn': $!";
+        print $fh $parser->as_markdown;
+    };
+}
+
+1;
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/README 
new/Test-Without-Module-0.19/README
--- old/Test-Without-Module-0.18/README 2003-03-09 13:27:38.000000000 +0100
+++ new/Test-Without-Module-0.19/README 2017-03-30 21:14:13.000000000 +0200
@@ -1,12 +1,90 @@
-Test/Without/Module version 0.03
-================================
+NAME
 
-INSTALLATION
+    Test::Without::Module - Test fallback behaviour in absence of modules
 
-To install this module type the following:
+SYNOPSIS
 
-   perl Makefile.PL
-   make
-   make test
-   make install
+      use Test::Without::Module qw( My::Module );
+    
+      # Now, loading of My::Module fails :
+      eval { require My::Module; };
+      warn $@ if $@;
+    
+      # Now it works again
+      eval q{ no Test::Without::Module qw( My::Module ) };
+      eval { require My::Module; };
+      print "Found My::Module" unless $@;
+
+DESCRIPTION
+
+    This module allows you to deliberately hide modules from a program even
+    though they are installed. This is mostly useful for testing modules
+    that have a fallback when a certain dependency module is not installed.
+
+ EXPORT
+
+    None. All magic is done via use Test::Without::Module LIST and no
+    Test::Without::Module LIST.
+
+ Test::Without::Module::get_forbidden_list
+
+    This function returns a reference to a copy of the current hash of
+    forbidden modules or an empty hash if none are currently forbidden.
+    This is convenient if you are testing and/or debugging this module.
+
+ONE LINER
+
+    A neat trick for using this module from the command line was mentioned
+    to me by NUFFIN and by Jerrad Pierce:
+
+      perl -MTest::Without::Module=Some::Module -w -Iblib/lib t/SomeModule.t
+
+    That way, you can easily see how your module or test file behaves when
+    a certain module is unavailable.
+
+BUGS
+
+      * There is no lexical scoping
+
+CREDITS
+
+    Much improvement must be thanked to Aristotle from PerlMonks, he
+    pointed me to a much less convoluted way to fake a module at
+    https://perlmonks.org?node=192635.
+
+    I also discussed with him an even more elegant way of overriding
+    CORE::GLOBAL::require, but the parsing of the overridden subroutine
+    didn't work out the way I wanted it - CORE::require didn't recognize
+    barewords as such anymore.
+
+    NUFFIN and Jerrad Pierce pointed out the convenient use from the
+    command line to interactively watch the behaviour of the test suite and
+    module in absence of a module.
+
+AUTHOR
+
+    Copyright (c) 2003-2014 Max Maischein, <cor...@cpan.org>
+
+LICENSE
+
+    This module is released under the same terms as Perl itself.
+
+REPOSITORY
+
+    The public repository of this module is
+    https://github.com/Corion/test-without-module.
+
+SUPPORT
+
+    The public support forum of this module is https://perlmonks.org/.
+
+BUG TRACKER
+
+    Please report bugs in this module via the RT CPAN bug queue at
+    https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Without-Module
+    or via mail to test-without-module-b...@rt.cpan.org.
+
+SEE ALSO
+
+    Devel::Hide, Acme::Intraweb, PAR, perlfunc
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/README.mkdn 
new/Test-Without-Module-0.19/README.mkdn
--- old/Test-Without-Module-0.18/README.mkdn    1970-01-01 01:00:00.000000000 
+0100
+++ new/Test-Without-Module-0.19/README.mkdn    2017-03-30 21:14:13.000000000 
+0200
@@ -0,0 +1,91 @@
+# NAME
+
+Test::Without::Module - Test fallback behaviour in absence of modules
+
+# SYNOPSIS
+
+    use Test::Without::Module qw( My::Module );
+
+    # Now, loading of My::Module fails :
+    eval { require My::Module; };
+    warn $@ if $@;
+
+    # Now it works again
+    eval q{ no Test::Without::Module qw( My::Module ) };
+    eval { require My::Module; };
+    print "Found My::Module" unless $@;
+
+# DESCRIPTION
+
+This module allows you to deliberately hide modules from a program
+even though they are installed. This is mostly useful for testing modules
+that have a fallback when a certain dependency module is not installed.
+
+## EXPORT
+
+None. All magic is done via `use Test::Without::Module LIST` and
+`no Test::Without::Module LIST`.
+
+## Test::Without::Module::get\_forbidden\_list
+
+This function returns a reference to a copy of the current hash of forbidden
+modules or an empty hash if none are currently forbidden. This is convenient
+if you are testing and/or debugging this module.
+
+# ONE LINER
+
+A neat trick for using this module from the command line
+was mentioned to me by NUFFIN and by Jerrad Pierce:
+
+    perl -MTest::Without::Module=Some::Module -w -Iblib/lib t/SomeModule.t
+
+That way, you can easily see how your module or test file behaves
+when a certain module is unavailable.
+
+# BUGS
+
+- There is no lexical scoping
+
+# CREDITS
+
+Much improvement must be thanked to Aristotle from PerlMonks, he pointed me
+to a much less convoluted way to fake a module at
+[https://perlmonks.org?node=192635](https://perlmonks.org?node=192635).
+
+I also discussed with him an even more elegant way of overriding
+CORE::GLOBAL::require, but the parsing of the overridden subroutine
+didn't work out the way I wanted it - CORE::require didn't recognize
+barewords as such anymore.
+
+NUFFIN and Jerrad Pierce pointed out the convenient
+use from the command line to interactively watch the
+behaviour of the test suite and module in absence
+of a module.
+
+# AUTHOR
+
+Copyright (c) 2003-2014 Max Maischein, <cor...@cpan.org>
+
+# LICENSE
+
+This module is released under the same terms as Perl itself.
+
+# REPOSITORY
+
+The public repository of this module is
+[https://github.com/Corion/test-without-module](https://github.com/Corion/test-without-module).
+
+# SUPPORT
+
+The public support forum of this module is
+[https://perlmonks.org/](https://perlmonks.org/).
+
+# BUG TRACKER
+
+Please report bugs in this module via the RT CPAN bug queue at
+[https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Without-Module](https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Without-Module)
+or via mail to 
[test-without-module-b...@rt.cpan.org](https://metacpan.org/pod/test-without-module-b...@rt.cpan.org).
+
+# SEE ALSO
+
+[Devel::Hide](https://metacpan.org/pod/Devel::Hide), 
[Acme::Intraweb](https://metacpan.org/pod/Acme::Intraweb), 
[PAR](https://metacpan.org/pod/PAR), 
[perlfunc](https://metacpan.org/pod/perlfunc)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/lib/Test/Without/Module.pm 
new/Test-Without-Module-0.19/lib/Test/Without/Module.pm
--- old/Test-Without-Module-0.18/lib/Test/Without/Module.pm     2014-08-30 
15:29:49.000000000 +0200
+++ new/Test-Without-Module-0.19/lib/Test/Without/Module.pm     2017-03-30 
21:14:13.000000000 +0200
@@ -3,9 +3,9 @@
 use Carp qw( croak );
 
 use vars qw( $VERSION );
-$VERSION = '0.18';
+$VERSION = '0.19';
 
-use vars qw( %forbidden %fake_modules );
+use vars qw(%forbidden);
 
 sub get_forbidden_list {
   \%forbidden
@@ -17,8 +17,8 @@
   my $forbidden = get_forbidden_list;
   
   for (@forbidden_modules) {
-      $forbidden->{$_} = $INC{ module2file($_) };
-      $fake_modules{module2file($_)} = [ "package $_;", "0;" ];
+      my $file = module2file($_);
+      $forbidden->{$file} = delete $INC{$file};
   };
 
   # Scrub %INC, so that loaded modules disappear
@@ -33,10 +33,9 @@
     my ($self,$module_file,$member_only) = @_;
     # Don't touch $@, or .al files will not load anymore????
 
-    # Deliver a faked, nonworking module
-    if (my $faked = $fake_modules{$module_file}) {
-      my @faked_module = @$faked;
-      return sub { defined ( $_ = shift @faked_module ) };
+    if (exists get_forbidden_list->{$module_file}) {
+      my $module_name = file2module($module_file);
+      croak "Can't locate $module_file in \@INC (you may need to install the 
$module_name module) (\@INC contains: @INC)";
     };
 };
 
@@ -46,10 +45,9 @@
   my $forbidden = get_forbidden_list;
 
   for $module (@list) {
-    if (exists $forbidden->{$module}) {
-      my $file = module2file($module);
-      delete $fake_modules{$file};
-      my $path = delete $forbidden->{$module};
+    my $file = module2file($module);
+    if (exists $forbidden->{$file}) {
+      my $path = delete $forbidden->{$file};
       if (defined $path) {
         $INC{ $file } = $path;
       }
@@ -167,7 +165,7 @@
 =head1 REPOSITORY
 
 The public repository of this module is
-L<http://github.com/Corion/test-without-module>.
+L<https://github.com/Corion/test-without-module>.
 
 =head1 SUPPORT
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/t/02-block-use-module.t 
new/Test-Without-Module-0.19/t/02-block-use-module.t
--- old/Test-Without-Module-0.18/t/02-block-use-module.t        2003-03-09 
13:27:38.000000000 +0100
+++ new/Test-Without-Module-0.19/t/02-block-use-module.t        2017-03-30 
21:14:13.000000000 +0200
@@ -5,7 +5,7 @@
 
 BEGIN{ use_ok( "Test::Without::Module", qw( Digest::MD5 )); };
 
-is_deeply( [sort keys %{Test::Without::Module::get_forbidden_list()}],[ qw[ 
Digest::MD5 ]],"Module list" );
+is_deeply( [sort keys %{Test::Without::Module::get_forbidden_list()}],[ qw[ 
Digest/MD5.pm ]],"Module list" );
 eval q{ use Digest::MD5 };
 ok( $@ ne '', 'Importing raises an error' );
 like( $@, qr!^(Can't locate Digest/MD5.pm in \@INC|Digest/MD5.pm did not 
return a true value at)!, "Hid module");
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Test-Without-Module-0.18/t/03-block-require-module.t 
new/Test-Without-Module-0.19/t/03-block-require-module.t
--- old/Test-Without-Module-0.18/t/03-block-require-module.t    2003-03-09 
13:27:38.000000000 +0100
+++ new/Test-Without-Module-0.19/t/03-block-require-module.t    2017-03-30 
21:14:13.000000000 +0200
@@ -12,7 +12,7 @@
   use Test::Without::Module qw( Digest::MD5 );
   ok( $@ ne '', "Loading raised error");
   like( $@, qr!^(Can't locate Digest/MD5.pm in \@INC|Digest/MD5.pm did not 
return a true value at)!, "Hid module");
-  is_deeply( [sort keys %{Test::Without::Module::get_forbidden_list()}],[ qw[ 
Digest::MD5 ]],"Module list" );
+  is_deeply( [sort keys %{Test::Without::Module::get_forbidden_list()}],[ qw[ 
Digest/MD5.pm ]],"Module list" );
   delete_package( 'Digest::MD5' );
 };
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Test-Without-Module-0.18/t/06-missing-hidden-modules.t 
new/Test-Without-Module-0.19/t/06-missing-hidden-modules.t
--- old/Test-Without-Module-0.18/t/06-missing-hidden-modules.t  1970-01-01 
01:00:00.000000000 +0100
+++ new/Test-Without-Module-0.19/t/06-missing-hidden-modules.t  2017-03-30 
21:13:47.000000000 +0200
@@ -0,0 +1,32 @@
+
+use Test::Without::Module;
+use Test::More tests => 5;
+
+sub tryload {
+  my $module = shift;
+  my $failed = !eval "require $module; 1";
+  my $error = $@;
+  $error =~ s/(\(\@INC contains: ).*\)/$1...)/;
+  $error =~ s/\n+\z//;
+  my $inc_status =     !exists $INC{"$module.pm"} ? 'missing'
+    : !defined $INC{"$module.pm"} ? 'undef'
+    : !$INC{"$module.pm"} ? 'false'
+    : '"'.$INC{"$module.pm"}.'"'
+    ;
+  return $failed, $error, $inc_status;
+}
+
+my ($failed,$error,$inc) = tryload( 'Nonexisting::Module' );
+is $failed, 1, "Self-test, a non-existing module fails to load";
+like $error, qr!^Can't locate Nonexisting/Module.pm in \@INC( \(you may need 
to install the Nonexisting::Module module\))? \(\@INC contains: ...\) line 
(\d+).!,
+    'Self-test, error message shows @INC';
+#diag $error;
+
+# Now, hide a module that has not been loaded:
+ok !$INC{'IO/Socket.pm'}, "Module 'IO/Socket.pm' has not been loaded yet";
+Test::Without::Module->import('IO::Socket');
+
+($failed,$error,$inc) = tryload( 'IO::Socket' );
+is $failed, 1, "a non-existing module fails to load";
+like $error, qr!Can't locate IO/Socket.pm in \@INC( \(you may need to install 
the IO::Socket module\))? \(\@INC contains: ...\) line (\d+).!, 'error message 
for hidden module shows @INC';
+#diag $error;
\ No newline at end of file

++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
#  override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
#  - source1
#  - source2
#patches:
#  foo.patch: -p1
#  bar.patch:
#preamble: |-
# BuildRequires:  gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s,  *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL 
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module

Reply via email to