Hello community,

here is the log from the commit of package perl-Carp-Assert-More for 
openSUSE:Factory checked in at 2017-08-24 18:52:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Carp-Assert-More (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Carp-Assert-More.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Carp-Assert-More"

Thu Aug 24 18:52:38 2017 rev:7 rq:516828 version:1.16

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-Carp-Assert-More/perl-Carp-Assert-More.changes  
    2013-06-06 15:10:26.000000000 +0200
+++ 
/work/SRC/openSUSE:Factory/.perl-Carp-Assert-More.new/perl-Carp-Assert-More.changes
 2017-08-24 18:52:43.654643849 +0200
@@ -1,0 +2,24 @@
+Sat Aug  5 05:10:50 UTC 2017 - co...@suse.com
+
+- updated to 1.16
+   see /usr/share/doc/packages/perl-Carp-Assert-More/Changes
+
+  1.16    Fri Aug  4 14:18:51 CDT 2017
+          [ENHANCEMENTS]
+          Added the following functions:
+          * assert_numeric( $n )
+          * assert_all_keys_in( \%hash, \@keylist )
+          * assert_empty( [\%hash|\@list] )
+          * assert_coderef( $ref )
+          * assert_isa_in( $ref, \@class_list )
+          Thanks to Eric A. Zarko for some of them.  The rest were migrated
+          from a private code project.
+  
+          Renamed assert_listref() to assert_arrayref(), but keep
+          assert_listref() as backward compatibility.  assert_listref()
+          may go away in the future.
+  
+          [DOCUMENTATION]
+          Fixed a goof in the assert_integer() docs.  Thanks, Randy Lauen.
+
+-------------------------------------------------------------------

Old:
----
  Carp-Assert-More-1.14.tar.gz

New:
----
  Carp-Assert-More-1.16.tar.gz
  cpanspec.yml

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

Other differences:
------------------
++++++ perl-Carp-Assert-More.spec ++++++
--- /var/tmp/diff_new_pack.oIx3xm/_old  2017-08-24 18:52:44.726492927 +0200
+++ /var/tmp/diff_new_pack.oIx3xm/_new  2017-08-24 18:52:44.742490674 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Carp-Assert-More
 #
-# Copyright (c) 2013 SUSE LINUX Products 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,28 +17,28 @@
 
 
 Name:           perl-Carp-Assert-More
-Version:        1.14
+Version:        1.16
 Release:        0
 %define cpan_name Carp-Assert-More
-Summary:        Convenience wrappers around Carp::Assert
+Summary:        Convenience Wrappers Around Carp::Assert
 License:        Artistic-2.0
 Group:          Development/Libraries/Perl
 Url:            http://search.cpan.org/dist/Carp-Assert-More/
-Source:         
http://www.cpan.org/authors/id/P/PE/PETDANCE/%{cpan_name}-%{version}.tar.gz
+Source0:        
https://cpan.metacpan.org/authors/id/P/PE/PETDANCE/%{cpan_name}-%{version}.tar.gz
+Source1:        cpanspec.yml
 BuildArch:      noarch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
 BuildRequires:  perl(Carp::Assert)
 BuildRequires:  perl(Test::Exception)
-#BuildRequires: perl(Carp::Assert::More)
 Requires:       perl(Carp::Assert)
 Requires:       perl(Test::Exception)
 %{perl_requires}
 
 %description
-Carp::Assert::More is a set of wrappers around the the Carp::Assert manpage
-functions to make the habit of writing assertions even easier.
+Carp::Assert::More is a set of wrappers around the Carp::Assert functions
+to make the habit of writing assertions even easier.
 
 Everything in here is effectively syntactic sugar. There's no technical
 reason to use
@@ -72,6 +72,6 @@
 
 %files -f %{name}.files
 %defattr(-,root,root,755)
-%doc Changes README
+%doc Changes README.md
 
 %changelog

++++++ Carp-Assert-More-1.14.tar.gz -> Carp-Assert-More-1.16.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/Changes 
new/Carp-Assert-More-1.16/Changes
--- old/Carp-Assert-More-1.14/Changes   2012-10-31 17:37:08.000000000 +0100
+++ new/Carp-Assert-More-1.16/Changes   2017-08-04 21:18:59.000000000 +0200
@@ -1,5 +1,23 @@
 Revision history for Perl extension Carp::Assert::More.
 
+1.16    Fri Aug  4 14:18:51 CDT 2017
+        [ENHANCEMENTS]
+        Added the following functions:
+        * assert_numeric( $n )
+        * assert_all_keys_in( \%hash, \@keylist )
+        * assert_empty( [\%hash|\@list] )
+        * assert_coderef( $ref )
+        * assert_isa_in( $ref, \@class_list )
+        Thanks to Eric A. Zarko for some of them.  The rest were migrated
+        from a private code project.
+
+        Renamed assert_listref() to assert_arrayref(), but keep
+        assert_listref() as backward compatibility.  assert_listref()
+        may go away in the future.
+
+        [DOCUMENTATION]
+        Fixed a goof in the assert_integer() docs.  Thanks, Randy Lauen.
+
 1.14    Wed Oct 31 11:37:04 CDT 2012
         [ENHANCEMENTS]
         Added assert_undefined() for Ben Hengst.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/MANIFEST 
new/Carp-Assert-More-1.16/MANIFEST
--- old/Carp-Assert-More-1.14/MANIFEST  2012-10-31 17:37:25.000000000 +0100
+++ new/Carp-Assert-More-1.16/MANIFEST  2017-08-04 21:19:09.000000000 +0200
@@ -3,9 +3,13 @@
 MANIFEST
 Makefile.PL
 More.pm
-README
+README.md
 t/00-load.t
+t/assert_all_keys_in.t
+t/assert_arrayref.t
+t/assert_coderef.t
 t/assert_defined.t
+t/assert_empty.t
 t/assert_exists.t
 t/assert_fail.t
 t/assert_hashref.t
@@ -13,6 +17,7 @@
 t/assert_integer.t
 t/assert_is.t
 t/assert_isa.t
+t/assert_isa_in.t
 t/assert_isnt.t
 t/assert_lacks.t
 t/assert_like.t
@@ -26,6 +31,7 @@
 t/assert_nonref.t
 t/assert_nonzero_integer.t
 t/assert_nonzero.t
+t/assert_numeric.t
 t/assert_positive_integer.t
 t/assert_positive.t
 t/assert_undefined.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/META.json 
new/Carp-Assert-More-1.16/META.json
--- old/Carp-Assert-More-1.14/META.json 2012-10-31 17:37:25.000000000 +0100
+++ new/Carp-Assert-More-1.16/META.json 2017-08-04 21:19:09.000000000 +0200
@@ -4,7 +4,7 @@
       "unknown"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter 
version 2.112621",
+   "generated_by" : "ExtUtils::MakeMaker version 7.16, CPAN::Meta::Converter 
version 2.150005",
    "license" : [
       "artistic_2"
    ],
@@ -22,20 +22,20 @@
    "prereqs" : {
       "build" : {
          "requires" : {
-            "ExtUtils::MakeMaker" : 0
+            "ExtUtils::MakeMaker" : "0"
          }
       },
       "configure" : {
          "requires" : {
-            "ExtUtils::MakeMaker" : 0
+            "ExtUtils::MakeMaker" : "0"
          }
       },
       "runtime" : {
          "requires" : {
-            "Carp" : 0,
-            "Carp::Assert" : 0,
-            "Scalar::Util" : 0,
-            "Test::Exception" : 0,
+            "Carp" : "0",
+            "Carp::Assert" : "0",
+            "Scalar::Util" : "0",
+            "Test::Exception" : "0",
             "Test::More" : "0.18"
          }
       }
@@ -49,8 +49,9 @@
          "http://www.opensource.org/licenses/artistic-license-2.0.php";
       ],
       "repository" : {
-         "url" : "http://github.com/petdance/carp-assert-more/tree/master";
+         "url" : "https://github.com/petdance/carp-assert-more/tree/master";
       }
    },
-   "version" : "1.14"
+   "version" : "1.16",
+   "x_serialization_backend" : "JSON::PP version 2.27400"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/META.yml 
new/Carp-Assert-More-1.16/META.yml
--- old/Carp-Assert-More-1.14/META.yml  2012-10-31 17:37:24.000000000 +0100
+++ new/Carp-Assert-More-1.16/META.yml  2017-08-04 21:19:09.000000000 +0200
@@ -3,28 +3,29 @@
 author:
   - unknown
 build_requires:
-  ExtUtils::MakeMaker: 0
+  ExtUtils::MakeMaker: '0'
 configure_requires:
-  ExtUtils::MakeMaker: 0
+  ExtUtils::MakeMaker: '0'
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.62, CPAN::Meta::Converter version 
2.112621'
+generated_by: 'ExtUtils::MakeMaker version 7.16, CPAN::Meta::Converter version 
2.150005'
 license: artistic_2
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: Carp-Assert-More
 no_index:
   directory:
     - t
     - inc
 requires:
-  Carp: 0
-  Carp::Assert: 0
-  Scalar::Util: 0
-  Test::Exception: 0
-  Test::More: 0.18
+  Carp: '0'
+  Carp::Assert: '0'
+  Scalar::Util: '0'
+  Test::Exception: '0'
+  Test::More: '0.18'
 resources:
   bugtracker: 
https://rt.cpan.org/Public/Dist/Display.html?Name=Carp-Assert-More
   license: http://www.opensource.org/licenses/artistic-license-2.0.php
-  repository: http://github.com/petdance/carp-assert-more/tree/master
-version: 1.14
+  repository: https://github.com/petdance/carp-assert-more/tree/master
+version: '1.16'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.012'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/Makefile.PL 
new/Carp-Assert-More-1.16/Makefile.PL
--- old/Carp-Assert-More-1.14/Makefile.PL       2012-10-31 15:53:54.000000000 
+0100
+++ new/Carp-Assert-More-1.16/Makefile.PL       2017-08-04 21:18:59.000000000 
+0200
@@ -37,7 +37,7 @@
     $parms{META_MERGE} = {
         resources => {
             bugtracker  => 
'https://rt.cpan.org/Public/Dist/Display.html?Name=Carp-Assert-More',
-            repository  => 
'http://github.com/petdance/carp-assert-more/tree/master',
+            repository  => 
'https://github.com/petdance/carp-assert-more/tree/master',
             license     => 
'http://www.opensource.org/licenses/artistic-license-2.0.php',
         }
     };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/More.pm 
new/Carp-Assert-More-1.16/More.pm
--- old/Carp-Assert-More-1.14/More.pm   2012-10-31 17:19:28.000000000 +0100
+++ new/Carp-Assert-More-1.16/More.pm   2017-08-04 21:18:59.000000000 +0200
@@ -7,8 +7,7 @@
 
 use vars qw( $VERSION @ISA @EXPORT );
 
-*_fail_msg = *Carp::Assert::_fail_msg;
-
+sub _any(&;@);
 
 =head1 NAME
 
@@ -16,15 +15,19 @@
 
 =head1 VERSION
 
-Version 1.14
+Version 1.16
 
 =cut
 
 BEGIN {
-    $VERSION = '1.14';
+    $VERSION = '1.16';
     @ISA = qw(Exporter);
     @EXPORT = qw(
+        assert_all_keys_in
+        assert_arrayref
+        assert_coderef
         assert_defined
+        assert_empty
         assert_exists
         assert_fail
         assert_hashref
@@ -32,6 +35,7 @@
         assert_integer
         assert_is
         assert_isa
+        assert_isa_in
         assert_isnt
         assert_lacks
         assert_like
@@ -45,6 +49,7 @@
         assert_nonref
         assert_nonzero
         assert_nonzero_integer
+        assert_numeric
         assert_positive
         assert_positive_integer
         assert_undefined
@@ -109,7 +114,7 @@
     return if $string eq $match;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_isnt( $string, $unmatch [,$name] )
@@ -129,7 +134,7 @@
     return if defined($string) && defined($unmatch) && ($string ne $unmatch);
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_like( $string, qr/regex/ [,$name] )
@@ -150,7 +155,7 @@
     return if $string =~ $regex;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_unlike( $string, qr/regex/ [,$name] )
@@ -173,7 +178,7 @@
     return if $string !~ $regex;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_defined( $this [, $name] )
@@ -186,7 +191,7 @@
     return if defined( $_[0] );
 
     require Carp;
-    &Carp::confess( _fail_msg($_[1]) );
+    &Carp::confess( Carp::Assert::_fail_msg($_[1]) );
 }
 
 =head2 assert_undefined( $this [, $name] )
@@ -199,7 +204,7 @@
     return unless defined( $_[0] );
 
     require Carp;
-    &Carp::confess( _fail_msg($_[1]) );
+    &Carp::confess( Carp::Assert::_fail_msg($_[1]) );
 }
 
 =head2 assert_nonblank( $this [, $name] )
@@ -216,18 +221,37 @@
     return if $this ne "";
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
+
 =head1 NUMERIC ASSERTIONS
 
+=head2 assert_numeric( $n [, $name] )
+
+Asserts that C<$n> looks like a number, according to 
C<Scalar::Util::looks_like_number>.
+
+=cut
+
+sub assert_numeric {
+    my $n    = shift;
+    my $name = shift;
+
+    require Scalar::Util;
+
+    assert( Scalar::Util::looks_like_number( $n ), $name );
+
+    return;
+}
+
+
 =head2 assert_integer( $this [, $name ] )
 
 Asserts that I<$this> is an integer, which may be zero or negative.
 
     assert_integer( 0 );      # pass
     assert_integer( 14 );     # pass
-    assert_integer( -14 );    # FAIL
+    assert_integer( -14 );    # pass
     assert_integer( '14.' );  # FAIL
 
 =cut
@@ -240,7 +264,7 @@
     return if $this =~ /^-?\d+$/;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_nonzero( $this [, $name ] )
@@ -263,7 +287,7 @@
     return if $this+0 != 0;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_positive( $this [, $name ] )
@@ -284,7 +308,7 @@
     return if $this+0 > 0;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_nonnegative( $this [, $name ] )
@@ -308,7 +332,7 @@
     return if $this+0 >= 0;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_negative( $this [, $name ] )
@@ -329,7 +353,7 @@
     return if $this+0 < 0;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_nonzero_integer( $this [, $name ] )
@@ -434,10 +458,76 @@
     return if ref($this) eq $type;
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 
+=head2 assert_isa_in( $obj, \@types [, $description] )
+
+Assert that the blessed C<$obj> isa one of the types in C<\@types>.
+
+    assert_isa_in( $obj, [ 'My::Foo', 'My::Bar' ], 'Must pass either a Foo or 
Bar object' );
+
+=cut
+
+sub assert_isa_in($$;$) {
+    my $obj   = shift;
+    my $types = shift;
+    my $name  = shift;
+
+    require Scalar::Util;
+
+    my $ok = _any { Scalar::Util::blessed($obj) && $obj->isa($_) } @{$types};
+    assert( $ok, $name );
+
+    return;
+}
+
+
+=head2 assert_empty( $this [, $name ] )
+
+I<$this> must be a ref to either a hash or an array.  Asserts that that
+collection contains no elements.  Will assert (with its own message,
+not I<$name>) unless given a hash or array ref.   It is OK if I<$this> has
+been blessed into objecthood, but the semantics of checking an object to see
+if it does not have keys (for a hashref) or returns 0 in scalar context (for
+an array ref) may not be what you want.
+
+    assert_empty( 0 );       # FAIL
+    assert_empty( 'foo' );   # FAIL
+    assert_empty( undef );   # FAIL
+    assert_empty( {} );      # pass
+    assert_empty( [] );      # pass
+    assert_empty( {foo=>1} );# FAIL
+    assert_empty( [1,2,3] ); # FAIL
+
+=cut
+
+sub assert_empty($;$) {
+    my $ref = shift;
+    my $name = shift;
+
+    require Scalar::Util;
+
+    my $underlying_type;
+    if ( Scalar::Util::blessed( $ref ) ) {
+        $underlying_type = Scalar::Util::reftype( $ref );
+    }
+    else {
+        $underlying_type = ref( $ref );
+    }
+
+    if ( $underlying_type eq 'HASH' ) {
+        assert_is( scalar keys %{$ref}, 0, $name );
+    }
+    elsif ( $underlying_type eq 'ARRAY' ) {
+        assert_is( scalar @{$ref}, 0, $name );
+    }
+    else {
+        assert_fail( 'Not an array or hash reference' );
+    }
+}
+
 =head2 assert_nonempty( $this [, $name ] )
 
 I<$this> must be a ref to either a hash or an array.  Asserts that that
@@ -496,7 +586,7 @@
     return unless ref( $this );
 
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_hashref( $ref [,$name] )
@@ -527,6 +617,8 @@
     return assert_isa( $ref, 'HASH', $name );
 }
 
+=head2 assert_arrayref( $ref [, $name] )
+
 =head2 assert_listref( $ref [,$name] )
 
 Asserts that I<$ref> is defined, and is a reference to a (possibly empty) list.
@@ -535,14 +627,31 @@
 hash (see C<assert_hashref>) applies here; this method returns false
 even for objects whose underlying structure is an array.
 
+C<assert_listref> is an alias for C<assert_arrayref> and may go away in
+the future.  Use C<assert_arrayref> instead.
+
 =cut
 
-sub assert_listref($;$) {
-    my $ref = shift;
+sub assert_arrayref($;$) {
+    my $ref  = shift;
     my $name = shift;
 
     return assert_isa( $ref, 'ARRAY', $name );
 }
+*assert_listref = *assert_arrayref;
+
+=head2 assert_coderef( $ref [,$name] )
+
+Asserts that I<$ref> is defined, and is a reference to a closure.
+
+=cut
+
+sub assert_coderef($;$) {
+    my $ref = shift;
+    my $name = shift;
+
+    return assert_isa( $ref, 'CODE', $name );
+}
 
 =head1 SET AND HASH MEMBERSHIP
 
@@ -567,7 +676,7 @@
         return if $string eq $element;
     }
     require Carp;
-    &Carp::confess( _fail_msg($name) );
+    &Carp::confess( Carp::Assert::_fail_msg($name) );
 }
 
 =head2 assert_exists( \%hash, $key [,$name] )
@@ -595,7 +704,7 @@
     for ( @list ) {
         if ( !exists( $hash->{$_} ) ) {
             require Carp;
-            &Carp::confess( _fail_msg($name) );
+            &Carp::confess( Carp::Assert::_fail_msg($name) );
         }
     }
 }
@@ -624,11 +733,39 @@
     for ( @list ) {
         if ( exists( $hash->{$_} ) ) {
             require Carp;
-            &Carp::confess( _fail_msg($name) );
+            &Carp::confess( Carp::Assert::_fail_msg($name) );
         }
     }
 }
 
+
+=head2 assert_all_keys_in( \%hash, \@names [, $name ] )
+
+Asserts that each key in C<%hash> is in the list of C<@names>.
+
+This is used to ensure that there are no extra keys in a given hash.
+
+    assert_all_keys_in( $obj, [qw( height width depth )], '$obj can only 
contain height, width and depth keys' );
+
+=cut
+
+sub assert_all_keys_in {
+    my $hash       = shift;
+    my $valid_keys = shift;
+    my $name       = shift;
+
+    assert_hashref( $hash );
+    assert_listref( $valid_keys );
+
+    foreach my $key ( keys %{$hash} ) {
+        assert_in( $key, $valid_keys, $name );
+    }
+
+    return;
+}
+
+
+
 =head1 UTILITY ASSERTIONS
 
 =head2 assert_fail( [$name] )
@@ -641,13 +778,21 @@
 
 sub assert_fail(;$) {
     require Carp;
-    &Carp::confess( _fail_msg($_[0]) );
+    &Carp::confess( Carp::Assert::_fail_msg($_[0]) );
+}
+
+
+# Since List::Util doesn't have any() all the way back.
+sub _any(&;@) {
+    my $sub = shift;
+    $sub->($_) && return 1 for @_;
+    return 0;
 }
 
 
 =head1 COPYRIGHT & LICENSE
 
-Copyright 2005-2012 Andy Lester.
+Copyright 2005-2017 Andy Lester.
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the Artistic License version 2.0.
@@ -655,6 +800,7 @@
 =head1 ACKNOWLEDGEMENTS
 
 Thanks to
+Eric A. Zarko,
 Bob Diss,
 Pete Krawczyk,
 David Storrs,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/README 
new/Carp-Assert-More-1.16/README
--- old/Carp-Assert-More-1.14/README    2012-10-31 14:51:23.000000000 +0100
+++ new/Carp-Assert-More-1.16/README    1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-# Carp::Assert::More
-
-Carp::Assert::More is a set of handy assertion functions for Perl.
-
-For example, instead of writing
-
-    assert( $foo ne '', '$foo cannot be blank' );
-
-you can write
-
-    assert_nonblank( $foo, '$foo cannot be blank' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/README.md 
new/Carp-Assert-More-1.16/README.md
--- old/Carp-Assert-More-1.14/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/Carp-Assert-More-1.16/README.md 2017-08-04 21:18:59.000000000 +0200
@@ -0,0 +1,14 @@
+# Carp::Assert::More
+
+[![Build 
Status](https://travis-ci.org/petdance/carp-assert-more.svg?branch=dev)](https://travis-ci.org/petdance/carp-assert-more)
+
+Carp::Assert::More is a set of handy assertion functions for Perl.
+
+For example, instead of writing
+
+    assert( defined($foo), '$foo cannot be undefined' );
+    assert( $foo ne '', '$foo cannot be blank' );
+
+you can write
+
+    assert_nonblank( $foo, '$foo cannot be blank' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_all_keys_in.t 
new/Carp-Assert-More-1.16/t/assert_all_keys_in.t
--- old/Carp-Assert-More-1.14/t/assert_all_keys_in.t    1970-01-01 
01:00:00.000000000 +0100
+++ new/Carp-Assert-More-1.16/t/assert_all_keys_in.t    2017-08-04 
21:18:59.000000000 +0200
@@ -0,0 +1,36 @@
+#!perl -Tw
+
+use warnings;
+use strict;
+
+use Test::More tests => 3;
+
+use Carp::Assert::More;
+
+use Test::Exception;
+
+my $monolith = {
+    depth  => 1,
+    width  => 4,
+    height => 9,
+};
+my $shaq = {
+    firstname => 'Shaquille',
+    lastname  => 'O\'Neal',
+    height    => 85,
+};
+
+my @object_keys = qw( height width depth );
+my @person_keys = qw( firstname lastname height );
+
+lives_ok( sub { assert_all_keys_in( $monolith, \@object_keys ) }, 'Monolith 
object has valid keys' );
+lives_ok( sub { assert_all_keys_in( $shaq,     \@person_keys ) }, 'Shaq object 
has valid keys' );
+
+throws_ok(
+    sub { assert_all_keys_in( $monolith, \@person_keys ) },
+    qr/Assertion.*failed!/,
+    'Monolith fails on person keys'
+);
+
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_arrayref.t 
new/Carp-Assert-More-1.16/t/assert_arrayref.t
--- old/Carp-Assert-More-1.14/t/assert_arrayref.t       1970-01-01 
01:00:00.000000000 +0100
+++ new/Carp-Assert-More-1.16/t/assert_arrayref.t       2017-08-04 
21:18:59.000000000 +0200
@@ -0,0 +1,66 @@
+#!perl -Tw
+
+# This is cut & paste of assert_arrayref.t
+
+package Foo;
+
+sub new { my $class = shift; return bless [@_], $class; }
+
+package main;
+
+use warnings;
+use strict;
+
+use Test::More tests => 7;
+
+use Carp::Assert::More;
+
+local $@;
+$@ = '';
+
+# {} is not a listref
+eval {
+    assert_arrayref( {} );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# a ref to a hash with stuff in it is not a listref
+my $ref = { foo => 'foo', bar => 'bar' };
+eval {
+    assert_arrayref( $ref );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# 3 is not a listref
+eval {
+    assert_arrayref( 3 );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# [] is a listref
+eval {
+    assert_arrayref( [] );
+};
+is( $@, '' );
+
+# a ref to a list with stuff in it is a listref
+my @ary = ('foo', 'bar', 'baaz');
+eval {
+    assert_arrayref( \@ary );
+};
+is( $@, '' );
+
+# sub {} is not a listref
+eval {
+    assert_arrayref( sub {} );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# Foo->new->isa("ARRAY") returns true, so do we
+eval {
+    assert_arrayref( Foo->new );
+};
+is( $@, '' );
+
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_coderef.t 
new/Carp-Assert-More-1.16/t/assert_coderef.t
--- old/Carp-Assert-More-1.14/t/assert_coderef.t        1970-01-01 
01:00:00.000000000 +0100
+++ new/Carp-Assert-More-1.16/t/assert_coderef.t        2017-08-04 
21:18:59.000000000 +0200
@@ -0,0 +1,61 @@
+#!perl -Tw
+
+package Foo;
+
+sub new { my $class = shift; return bless sub {}, $class; }
+
+package main;
+
+use warnings;
+use strict;
+
+use Test::More tests => 7;
+
+use Carp::Assert::More;
+
+local $@;
+$@ = '';
+
+# {} is not a coderef
+eval {
+    assert_coderef( {} );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# a ref to a hash with stuff in it is not a coderef
+my $ref = { foo => 'foo', bar => 'bar' };
+eval {
+    assert_coderef( $ref );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# 3 is not a coderef
+eval {
+    assert_coderef( 3 );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# [] is not a coderef
+eval {
+    assert_coderef( [] );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# a ref to a list with stuff in it is not a coderef
+my @ary = ('foo', 'bar', 'baaz');
+eval {
+    assert_coderef( \@ary );
+};
+like( $@, qr/Assertion.*failed/ );
+
+# sub {} is a coderef
+eval {
+    assert_coderef( sub {} );
+};
+is( $@, '' );
+
+# Foo->new->isa("CODE") returns true, so do we
+eval {
+    assert_coderef( Foo->new );
+};
+is( $@, '' );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_empty.t 
new/Carp-Assert-More-1.16/t/assert_empty.t
--- old/Carp-Assert-More-1.14/t/assert_empty.t  1970-01-01 01:00:00.000000000 
+0100
+++ new/Carp-Assert-More-1.16/t/assert_empty.t  2017-08-04 21:18:59.000000000 
+0200
@@ -0,0 +1,54 @@
+#!perl -Tw
+
+use warnings;
+use strict;
+
+use Test::More tests => 12;
+use Test::Exception;
+
+use Carp::Assert::More;
+
+use constant PASS => 1;
+use constant FAIL => 0;
+
+my @cases = (
+    [ 0         => FAIL ],
+    [ 'foo'     => FAIL ],
+    [ undef     => FAIL ],
+    [ {}        => PASS ],
+    [ []        => PASS ],
+    [ {foo=>1}  => FAIL ],
+    [ [1,2,3]   => FAIL ],
+);
+
+for my $case ( @cases ) {
+    my ($val,$expected_status) = @$case;
+
+    eval { assert_empty( $val ) };
+    $val = "undef" if !defined($val);
+    my $desc = "Checking \"$val\"";
+
+    if ( $expected_status eq FAIL ) {
+        like( $@, qr/Assertion.+failed/, $desc );
+    } else {
+        is( $@, "", $desc );
+    }
+}
+
+throws_ok( sub { assert_empty( 27 ) }, qr/Not an array or hash reference/ );
+
+BLESSED_ARRAY: {
+    my $array_object = bless( [], 'WackyPackage' );
+    lives_ok( sub { assert_empty( $array_object ) } );
+
+    push( @{$array_object}, 14 );
+    throws_ok( sub { assert_empty( $array_object, 'Flooble' ) }, 
qr/\QAssertion (Flooble) failed!/ );
+}
+
+BLESSED_HASH: {
+    my $hash_object = bless( {}, 'WackyPackage' );
+    lives_ok( sub { assert_empty( $hash_object ) } );
+
+    $hash_object->{foo} = 14;
+    throws_ok( sub { assert_empty( $hash_object, 'Flargle' ) }, qr/\QAssertion 
(Flargle) failed!/ );
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_exists.t 
new/Carp-Assert-More-1.16/t/assert_exists.t
--- old/Carp-Assert-More-1.14/t/assert_exists.t 2012-10-31 17:29:03.000000000 
+0100
+++ new/Carp-Assert-More-1.16/t/assert_exists.t 2017-08-04 21:18:59.000000000 
+0200
@@ -3,11 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>8;
+use Test::More tests => 7;
 
-BEGIN {
-    use_ok( 'Carp::Assert::More' );
-}
+use Carp::Assert::More;
 
 my %foo = (
     name  => 'Andy Lester',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_fail.t 
new/Carp-Assert-More-1.16/t/assert_fail.t
--- old/Carp-Assert-More-1.14/t/assert_fail.t   2012-10-31 17:29:07.000000000 
+0100
+++ new/Carp-Assert-More-1.16/t/assert_fail.t   2017-08-04 21:18:59.000000000 
+0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>2;
+use Test::More tests => 1;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 eval {
     assert_fail( "Everything is broken!" );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_isa_in.t 
new/Carp-Assert-More-1.16/t/assert_isa_in.t
--- old/Carp-Assert-More-1.14/t/assert_isa_in.t 1970-01-01 01:00:00.000000000 
+0100
+++ new/Carp-Assert-More-1.16/t/assert_isa_in.t 2017-08-04 21:18:59.000000000 
+0200
@@ -0,0 +1,31 @@
+#!perl -Tw
+
+use warnings;
+use strict;
+
+use Test::More tests => 12;
+use Carp::Assert::More;
+
+use Test::Exception;
+
+my $rc = eval 'assert_isa_in(undef)';
+is( $rc, undef, 'Fails the eval' );
+like( $@, qr/Not enough arguments for Carp::Assert::More::assert_isa_in/, 
'Prototype requires two arguments' );
+
+dies_ok { assert_isa_in(undef, undef) } 'Dies with one undef argument';
+dies_ok { assert_isa_in(bless({}, 'x'), [] ) } 'No types passed in';
+dies_ok { assert_isa_in('z', []) } 'List of empty types does not allow you to 
pass non-objects';
+
+lives_ok { assert_isa_in( bless({}, 'x'), [ 'x' ] ) } 'One out of one';
+dies_ok  { assert_isa_in( bless({}, 'x'), [ 'y' ] ) } 'Zero out of one';
+lives_ok { assert_isa_in( bless({}, 'x'), [ 'y', 'x' ] ) } 'One out of two';
+
+@y::ISA = ( 'x' );
+my $x = bless {}, 'y';
+isa_ok( $x, 'y', 'Verifying our assumptions' );
+lives_ok { assert_isa_in( bless({}, 'y'), [ 'y' ] ) } 'Matches child class';
+lives_ok { assert_isa_in( bless({}, 'y'), [ 'x' ] ) } 'Matches base class';
+dies_ok  { assert_isa_in( bless({}, 'x'), [ 'y' ] ) } 'Parent does not match 
child';
+
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_negative.t 
new/Carp-Assert-More-1.16/t/assert_negative.t
--- old/Carp-Assert-More-1.14/t/assert_negative.t       2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_negative.t       2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_negative_integer.t 
new/Carp-Assert-More-1.16/t/assert_negative_integer.t
--- old/Carp-Assert-More-1.14/t/assert_negative_integer.t       2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_negative_integer.t       2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>8;
+use Test::More tests => 7;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -33,3 +33,5 @@
     }
 }
 
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_nonnegative.t 
new/Carp-Assert-More-1.16/t/assert_nonnegative.t
--- old/Carp-Assert-More-1.14/t/assert_nonnegative.t    2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_nonnegative.t    2016-07-06 
20:10:36.000000000 +0200
@@ -1,11 +1,11 @@
-#!perl -Tw
+#!perl -T
 
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -27,8 +27,8 @@
 
     if ( $status eq FAIL ) {
         like( $@, qr/Assertion.+failed/, $desc );
-    } else {
-        is( $@, "", $desc );
+    }
+    else {
+        is( $@, '', $desc );
     }
 }
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_nonnegative_integer.t 
new/Carp-Assert-More-1.16/t/assert_nonnegative_integer.t
--- old/Carp-Assert-More-1.14/t/assert_nonnegative_integer.t    2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_nonnegative_integer.t    2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -32,3 +32,5 @@
     }
 }
 
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_nonref.t 
new/Carp-Assert-More-1.16/t/assert_nonref.t
--- old/Carp-Assert-More-1.14/t/assert_nonref.t 2005-10-14 19:02:35.000000000 
+0200
+++ new/Carp-Assert-More-1.16/t/assert_nonref.t 2017-08-04 21:18:59.000000000 
+0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests => 6;
+use Test::More tests => 5;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 local $@;
 $@ = '';
@@ -41,3 +41,6 @@
     assert_nonref( $ref );
 };
 like( $@, qr/Assertion.*failed/ );
+
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_nonzero.t 
new/Carp-Assert-More-1.16/t/assert_nonzero.t
--- old/Carp-Assert-More-1.14/t/assert_nonzero.t        2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_nonzero.t        2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -32,3 +32,5 @@
     }
 }
 
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_nonzero_integer.t 
new/Carp-Assert-More-1.16/t/assert_nonzero_integer.t
--- old/Carp-Assert-More-1.14/t/assert_nonzero_integer.t        2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_nonzero_integer.t        2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -31,4 +31,3 @@
         is( $@, "", $desc );
     }
 }
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_numeric.t 
new/Carp-Assert-More-1.16/t/assert_numeric.t
--- old/Carp-Assert-More-1.14/t/assert_numeric.t        1970-01-01 
01:00:00.000000000 +0100
+++ new/Carp-Assert-More-1.16/t/assert_numeric.t        2017-08-04 
21:18:59.000000000 +0200
@@ -0,0 +1,57 @@
+#!perl -Tw
+
+use warnings;
+use strict;
+
+use Test::More tests => 21;
+
+use Carp::Assert::More;
+
+use Test::Exception;
+
+my @good = (
+    1,
+    2112,
+    '2112',
+    3.1415926,
+    -5150,
+    '-0.12',
+    '0.12',
+    2.112E+03,
+    2.112E3,
+    2.112e3,
+    2.112e0,
+    2.112e-1,
+);
+my @bad = (
+    undef,
+    'zero',
+    '',
+    [],
+    {},
+    \99,
+    \*STDIN,
+    '3-5',
+    3.5.4
+);
+
+for my $good ( @good ) {
+    lives_ok(
+        sub { assert_numeric( $good, "$good is good" ) },
+        "$good passes assertion"
+    );
+}
+
+for my $bad ( @bad ) {
+    my $disp = $bad;
+    $disp = '<undef>' unless defined $disp;
+    throws_ok(
+        sub { assert_numeric( $bad, "$disp is bad" ) },
+        qr/\Q$disp is bad/,
+        "$disp fails assertion"
+    );
+}
+
+
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_positive.t 
new/Carp-Assert-More-1.16/t/assert_positive.t
--- old/Carp-Assert-More-1.14/t/assert_positive.t       2012-10-31 
17:28:33.000000000 +0100
+++ new/Carp-Assert-More-1.16/t/assert_positive.t       2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>7;
+use Test::More tests => 6;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -33,3 +33,5 @@
     }
 }
 
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/assert_positive_integer.t 
new/Carp-Assert-More-1.16/t/assert_positive_integer.t
--- old/Carp-Assert-More-1.14/t/assert_positive_integer.t       2005-10-14 
19:02:35.000000000 +0200
+++ new/Carp-Assert-More-1.16/t/assert_positive_integer.t       2017-08-04 
21:18:59.000000000 +0200
@@ -3,9 +3,9 @@
 use warnings;
 use strict;
 
-use Test::More tests=>8;
+use Test::More tests => 7;
 
-BEGIN { use_ok( 'Carp::Assert::More' ); }
+use Carp::Assert::More;
 
 use constant PASS => 1;
 use constant FAIL => 2;
@@ -33,3 +33,5 @@
     }
 }
 
+done_testing();
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Carp-Assert-More-1.14/t/test-coverage.t 
new/Carp-Assert-More-1.16/t/test-coverage.t
--- old/Carp-Assert-More-1.14/t/test-coverage.t 2012-10-31 16:52:33.000000000 
+0100
+++ new/Carp-Assert-More-1.16/t/test-coverage.t 2017-08-04 21:18:59.000000000 
+0200
@@ -1,6 +1,6 @@
 #!perl -Tw
 
-use Test::More tests => 26;
+use Test::More tests => 32;
 
 use Carp::Assert::More;
 

++++++ 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