Merge lp:~percona-toolkit-dev/percona-toolkit/fix-1073532-Mo-Scalar-Util-PP into lp:percona-toolkit/2.1

Proposed by Brian Fraser
Status: Merged
Approved by: Daniel Nichter
Approved revision: 442
Merged at revision: 447
Proposed branch: lp:~percona-toolkit-dev/percona-toolkit/fix-1073532-Mo-Scalar-Util-PP
Merge into: lp:percona-toolkit/2.1
Diff against target: 409 lines (+114/-61)
12 files modified
bin/pt-archiver (+7/-6)
bin/pt-deadlock-logger (+7/-6)
bin/pt-kill (+7/-6)
bin/pt-online-schema-change (+7/-6)
bin/pt-slave-delay (+7/-6)
bin/pt-slave-find (+7/-6)
bin/pt-slave-restart (+7/-6)
bin/pt-table-checksum (+7/-6)
bin/pt-variable-advisor (+7/-6)
lib/Mo.pm (+7/-7)
t/lib/Mo/isa.t (+16/-0)
t/lib/Mo/isa_subtest.pm (+28/-0)
To merge this branch: bzr merge lp:~percona-toolkit-dev/percona-toolkit/fix-1073532-Mo-Scalar-Util-PP
Reviewer Review Type Date Requested Status
Daniel Nichter Approve
Review via email: mp+132353@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Daniel Nichter (daniel-nichter) wrote :

+my $pm_test = File::Spec->catfile($PerconaTest::trunk, qw(t lib Mo isa_subtest.pm));

both otherwise it passes tests.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'bin/pt-archiver'
--- bin/pt-archiver 2012-10-31 01:12:57 +0000
+++ bin/pt-archiver 2012-10-31 15:31:23 +0000
@@ -1104,14 +1104,15 @@
1104use warnings qw( FATAL all );1104use warnings qw( FATAL all );
11051105
1106use Carp ();1106use Carp ();
1107use Scalar::Util ();1107use Scalar::Util qw(looks_like_number blessed);
1108
11081109
1109our %TYPES = (1110our %TYPES = (
1110 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1111 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1111 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1112 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1112 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1113 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1113 Str => sub { defined $_[0] },1114 Str => sub { defined $_[0] },
1114 Object => sub { defined $_[0] && &Scalar::Util::blessed },1115 Object => sub { defined $_[0] && blessed($_[0]) },
1115 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1116 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11161117
1117 map {1118 map {
@@ -1285,7 +1286,7 @@
1285 $method = sub {1286 $method = sub {
1286 if ( $#_ ) {1287 if ( $#_ ) {
1287 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1288 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1288 unless blessed($_[1]) && $_[1]->does($role)1289 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1289 }1290 }
1290 goto &$original_method1291 goto &$original_method
1291 };1292 };
12921293
=== modified file 'bin/pt-deadlock-logger'
--- bin/pt-deadlock-logger 2012-10-31 09:18:34 +0000
+++ bin/pt-deadlock-logger 2012-10-31 15:31:23 +0000
@@ -1101,14 +1101,15 @@
1101use warnings qw( FATAL all );1101use warnings qw( FATAL all );
11021102
1103use Carp ();1103use Carp ();
1104use Scalar::Util ();1104use Scalar::Util qw(looks_like_number blessed);
1105
11051106
1106our %TYPES = (1107our %TYPES = (
1107 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1108 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1108 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1109 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1109 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1110 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1110 Str => sub { defined $_[0] },1111 Str => sub { defined $_[0] },
1111 Object => sub { defined $_[0] && &Scalar::Util::blessed },1112 Object => sub { defined $_[0] && blessed($_[0]) },
1112 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1113 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11131114
1114 map {1115 map {
@@ -1282,7 +1283,7 @@
1282 $method = sub {1283 $method = sub {
1283 if ( $#_ ) {1284 if ( $#_ ) {
1284 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1285 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1285 unless blessed($_[1]) && $_[1]->does($role)1286 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1286 }1287 }
1287 goto &$original_method1288 goto &$original_method
1288 };1289 };
12891290
=== modified file 'bin/pt-kill'
--- bin/pt-kill 2012-10-31 09:18:34 +0000
+++ bin/pt-kill 2012-10-31 15:31:23 +0000
@@ -1108,14 +1108,15 @@
1108use warnings qw( FATAL all );1108use warnings qw( FATAL all );
11091109
1110use Carp ();1110use Carp ();
1111use Scalar::Util ();1111use Scalar::Util qw(looks_like_number blessed);
1112
11121113
1113our %TYPES = (1114our %TYPES = (
1114 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1115 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1115 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1116 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1116 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1117 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1117 Str => sub { defined $_[0] },1118 Str => sub { defined $_[0] },
1118 Object => sub { defined $_[0] && &Scalar::Util::blessed },1119 Object => sub { defined $_[0] && blessed($_[0]) },
1119 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1120 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11201121
1121 map {1122 map {
@@ -1289,7 +1290,7 @@
1289 $method = sub {1290 $method = sub {
1290 if ( $#_ ) {1291 if ( $#_ ) {
1291 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1292 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1292 unless blessed($_[1]) && $_[1]->does($role)1293 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1293 }1294 }
1294 goto &$original_method1295 goto &$original_method
1295 };1296 };
12961297
=== modified file 'bin/pt-online-schema-change'
--- bin/pt-online-schema-change 2012-10-31 09:18:34 +0000
+++ bin/pt-online-schema-change 2012-10-31 15:31:23 +0000
@@ -1114,14 +1114,15 @@
1114use warnings qw( FATAL all );1114use warnings qw( FATAL all );
11151115
1116use Carp ();1116use Carp ();
1117use Scalar::Util ();1117use Scalar::Util qw(looks_like_number blessed);
1118
11181119
1119our %TYPES = (1120our %TYPES = (
1120 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1121 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1121 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1122 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1122 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1123 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1123 Str => sub { defined $_[0] },1124 Str => sub { defined $_[0] },
1124 Object => sub { defined $_[0] && &Scalar::Util::blessed },1125 Object => sub { defined $_[0] && blessed($_[0]) },
1125 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1126 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11261127
1127 map {1128 map {
@@ -1295,7 +1296,7 @@
1295 $method = sub {1296 $method = sub {
1296 if ( $#_ ) {1297 if ( $#_ ) {
1297 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1298 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1298 unless blessed($_[1]) && $_[1]->does($role)1299 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1299 }1300 }
1300 goto &$original_method1301 goto &$original_method
1301 };1302 };
13021303
=== modified file 'bin/pt-slave-delay'
--- bin/pt-slave-delay 2012-10-31 09:18:34 +0000
+++ bin/pt-slave-delay 2012-10-31 15:31:23 +0000
@@ -1101,14 +1101,15 @@
1101use warnings qw( FATAL all );1101use warnings qw( FATAL all );
11021102
1103use Carp ();1103use Carp ();
1104use Scalar::Util ();1104use Scalar::Util qw(looks_like_number blessed);
1105
11051106
1106our %TYPES = (1107our %TYPES = (
1107 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1108 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1108 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1109 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1109 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1110 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1110 Str => sub { defined $_[0] },1111 Str => sub { defined $_[0] },
1111 Object => sub { defined $_[0] && &Scalar::Util::blessed },1112 Object => sub { defined $_[0] && blessed($_[0]) },
1112 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1113 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11131114
1114 map {1115 map {
@@ -1282,7 +1283,7 @@
1282 $method = sub {1283 $method = sub {
1283 if ( $#_ ) {1284 if ( $#_ ) {
1284 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1285 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1285 unless blessed($_[1]) && $_[1]->does($role)1286 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1286 }1287 }
1287 goto &$original_method1288 goto &$original_method
1288 };1289 };
12891290
=== modified file 'bin/pt-slave-find'
--- bin/pt-slave-find 2012-10-31 09:18:34 +0000
+++ bin/pt-slave-find 2012-10-31 15:31:23 +0000
@@ -1080,14 +1080,15 @@
1080use warnings qw( FATAL all );1080use warnings qw( FATAL all );
10811081
1082use Carp ();1082use Carp ();
1083use Scalar::Util ();1083use Scalar::Util qw(looks_like_number blessed);
1084
10841085
1085our %TYPES = (1086our %TYPES = (
1086 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1087 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1087 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1088 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1088 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1089 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1089 Str => sub { defined $_[0] },1090 Str => sub { defined $_[0] },
1090 Object => sub { defined $_[0] && &Scalar::Util::blessed },1091 Object => sub { defined $_[0] && blessed($_[0]) },
1091 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1092 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
10921093
1093 map {1094 map {
@@ -1261,7 +1262,7 @@
1261 $method = sub {1262 $method = sub {
1262 if ( $#_ ) {1263 if ( $#_ ) {
1263 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1264 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1264 unless blessed($_[1]) && $_[1]->does($role)1265 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1265 }1266 }
1266 goto &$original_method1267 goto &$original_method
1267 };1268 };
12681269
=== modified file 'bin/pt-slave-restart'
--- bin/pt-slave-restart 2012-10-31 09:18:34 +0000
+++ bin/pt-slave-restart 2012-10-31 15:31:23 +0000
@@ -1222,14 +1222,15 @@
1222use warnings qw( FATAL all );1222use warnings qw( FATAL all );
12231223
1224use Carp ();1224use Carp ();
1225use Scalar::Util ();1225use Scalar::Util qw(looks_like_number blessed);
1226
12261227
1227our %TYPES = (1228our %TYPES = (
1228 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1229 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1229 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1230 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1230 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1231 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1231 Str => sub { defined $_[0] },1232 Str => sub { defined $_[0] },
1232 Object => sub { defined $_[0] && &Scalar::Util::blessed },1233 Object => sub { defined $_[0] && blessed($_[0]) },
1233 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1234 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
12341235
1235 map {1236 map {
@@ -1403,7 +1404,7 @@
1403 $method = sub {1404 $method = sub {
1404 if ( $#_ ) {1405 if ( $#_ ) {
1405 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1406 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1406 unless blessed($_[1]) && $_[1]->does($role)1407 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1407 }1408 }
1408 goto &$original_method1409 goto &$original_method
1409 };1410 };
14101411
=== modified file 'bin/pt-table-checksum'
--- bin/pt-table-checksum 2012-10-31 09:18:34 +0000
+++ bin/pt-table-checksum 2012-10-31 15:31:23 +0000
@@ -2774,14 +2774,15 @@
2774use warnings qw( FATAL all );2774use warnings qw( FATAL all );
27752775
2776use Carp ();2776use Carp ();
2777use Scalar::Util ();2777use Scalar::Util qw(looks_like_number blessed);
2778
27782779
2779our %TYPES = (2780our %TYPES = (
2780 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },2781 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
2781 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },2782 Num => sub { defined $_[0] && looks_like_number($_[0]) },
2782 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },2783 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
2783 Str => sub { defined $_[0] },2784 Str => sub { defined $_[0] },
2784 Object => sub { defined $_[0] && &Scalar::Util::blessed },2785 Object => sub { defined $_[0] && blessed($_[0]) },
2785 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },2786 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
27862787
2787 map {2788 map {
@@ -2955,7 +2956,7 @@
2955 $method = sub {2956 $method = sub {
2956 if ( $#_ ) {2957 if ( $#_ ) {
2957 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)2958 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
2958 unless blessed($_[1]) && $_[1]->does($role)2959 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
2959 }2960 }
2960 goto &$original_method2961 goto &$original_method
2961 };2962 };
29622963
=== modified file 'bin/pt-variable-advisor'
--- bin/pt-variable-advisor 2012-10-31 09:18:34 +0000
+++ bin/pt-variable-advisor 2012-10-31 15:31:23 +0000
@@ -1105,14 +1105,15 @@
1105use warnings qw( FATAL all );1105use warnings qw( FATAL all );
11061106
1107use Carp ();1107use Carp ();
1108use Scalar::Util ();1108use Scalar::Util qw(looks_like_number blessed);
1109
11091110
1110our %TYPES = (1111our %TYPES = (
1111 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },1112 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
1112 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },1113 Num => sub { defined $_[0] && looks_like_number($_[0]) },
1113 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },1114 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
1114 Str => sub { defined $_[0] },1115 Str => sub { defined $_[0] },
1115 Object => sub { defined $_[0] && &Scalar::Util::blessed },1116 Object => sub { defined $_[0] && blessed($_[0]) },
1116 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },1117 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
11171118
1118 map {1119 map {
@@ -1286,7 +1287,7 @@
1286 $method = sub {1287 $method = sub {
1287 if ( $#_ ) {1288 if ( $#_ ) {
1288 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)1289 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
1289 unless blessed($_[1]) && $_[1]->does($role)1290 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
1290 }1291 }
1291 goto &$original_method1292 goto &$original_method
1292 };1293 };
12931294
=== modified file 'lib/Mo.pm'
--- lib/Mo.pm 2012-07-11 18:04:50 +0000
+++ lib/Mo.pm 2012-10-31 15:31:23 +0000
@@ -41,19 +41,19 @@
41use warnings qw( FATAL all );41use warnings qw( FATAL all );
4242
43use Carp ();43use Carp ();
44use Scalar::Util ();44use Scalar::Util qw(looks_like_number blessed);
4545
46# Basic types for isa. If you want a new type, either add it here,46# Basic types for isa. If you want a new type, either add it here,
47# or give isa a coderef.47# or give isa a coderef.
48
48our %TYPES = (49our %TYPES = (
49 Bool => sub { !$_[0] || (defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == 1) },50 Bool => sub { !$_[0] || (defined $_[0] && looks_like_number($_[0]) && $_[0] == 1) },
50 Num => sub { defined $_[0] && &Scalar::Util::looks_like_number },51 Num => sub { defined $_[0] && looks_like_number($_[0]) },
51 Int => sub { defined $_[0] && &Scalar::Util::looks_like_number && $_[0] == int $_[0] },52 Int => sub { defined $_[0] && looks_like_number($_[0]) && $_[0] == int($_[0]) },
52 Str => sub { defined $_[0] },53 Str => sub { defined $_[0] },
53 Object => sub { defined $_[0] && &Scalar::Util::blessed },54 Object => sub { defined $_[0] && blessed($_[0]) },
54 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },55 FileHandle => sub { local $@; require IO::Handle; fileno($_[0]) && $_[0]->opened },
5556
56 # Ref types:
57 map {57 map {
58 my $type = /R/ ? $_ : uc $_;58 my $type = /R/ ? $_ : uc $_;
59 $_ . "Ref" => sub { ref $_[0] eq $type }59 $_ . "Ref" => sub { ref $_[0] eq $type }
@@ -245,7 +245,7 @@
245 $method = sub {245 $method = sub {
246 if ( $#_ ) {246 if ( $#_ ) {
247 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)247 Carp::confess(qq<Attribute ($attribute) doesn't consume a '$role' role">)
248 unless blessed($_[1]) && $_[1]->does($role)248 unless Scalar::Util::blessed($_[1]) && eval { $_[1]->does($role) }
249 }249 }
250 goto &$original_method250 goto &$original_method
251 };251 };
252252
=== modified file 't/lib/Mo/isa.t'
--- t/lib/Mo/isa.t 2012-07-19 21:38:35 +0000
+++ t/lib/Mo/isa.t 2012-10-31 15:31:23 +0000
@@ -9,6 +9,7 @@
9use strict;9use strict;
10use warnings FATAL => 'all';10use warnings FATAL => 'all';
11use English qw(-no_match_vars);11use English qw(-no_match_vars);
12use PerconaTest ();
12use Test::More;13use Test::More;
1314
14sub dies_ok (&;$) {15sub dies_ok (&;$) {
@@ -182,4 +183,19 @@
182 my $method = "my$type";183 my $method = "my$type";
183 dies_ok { $foo->$method(undef) } "$type attr set to undef dies" }184 dies_ok { $foo->$method(undef) } "$type attr set to undef dies" }
184185
186
187use Config;
188use File::Spec;
189use IPC::Cmd ();
190my $thisperl = $^X;
191if ($^O ne 'VMS')
192 {$thisperl .= $Config{_exe} unless $thisperl =~ m/$Config{_exe}$/i;}
193
194my $pm_test = File::Spec->catfile($PerconaTest::trunk, qw(t lib Mo isa_subtest.pm));
195
196ok(
197 scalar(IPC::Cmd::run(command => [$thisperl, $pm_test])),
198 "Mo types work with Scalar::Util::PP",
199);
200
185done_testing;201done_testing;
186202
=== added file 't/lib/Mo/isa_subtest.pm'
--- t/lib/Mo/isa_subtest.pm 1970-01-01 00:00:00 +0000
+++ t/lib/Mo/isa_subtest.pm 2012-10-31 15:31:23 +0000
@@ -0,0 +1,28 @@
1BEGIN {
2 require Scalar::Util::PP;
3 *Scalar::Util:: = \*Scalar::Util::PP::;
4 $INC{"Scalar/Util.pm"} = __FILE__;
5};
6
7BEGIN {
8 die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
9 unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
10 unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
11};
12
13use strict;
14use warnings;
15
16{
17 package isa_subtest;
18 use Mo;
19
20 has attr => (
21 is => 'rw',
22 isa => 'Int',
23 );
24
25 1;
26}
27
28isa_subtest->new(attr => 100);

Subscribers

People subscribed via source and target branches