+use Test::More tests => 4;
+use strict;
+use warnings;
-package Foo;
-use Moose;
-use MooseX::Params::Validate;
-use overload (
- qw{""} => 'to_string',
-);
+{
+ package Foo;
-has 'id' => ( is => 'ro', isa => 'Str', default => '1.10.100' );
+ use Moose;
+ use MooseX::Params::Validate;
+ use overload (
+ qw{""} => 'to_string',
+ );
-sub to_string {
- my ($self, %args) = validated_hash( \@_,
- padded => { isa => 'Bool', optional => 1, default => 0 },
+ has 'id' => (
+ is => 'ro',
+ isa => 'Str',
+ default => '1.10.100',
);
-
- # 1.10.100 => 0001.0010.0100
- my $id = $args{ padded }
- ? join( '.', map { sprintf( "%04d", $_ ) } split( /\./, $self->id ) )
- : $self->id;
-
- return $id;
-}
-package main;
-use Test::More tests => 4;
-use strict;
-use warnings;
+ sub to_string {
+ my ( $self, %args ) = validated_hash(
+ \@_,
+ padded => {
+ isa => 'Bool',
+ optional => 1,
+ default => 0,
+ },
+ );
+
+ # 1.10.100 => 0001.0010.0100
+ my $id
+ = $args{padded}
+ ? join( '.',
+ map { sprintf( "%04d", $_ ) } split( /\./, $self->id ) )
+ : $self->id;
+
+ return $id;
+ }
+}
isa_ok( my $foo = Foo->new(), 'Foo', 'new' );
is( $foo->to_string, '1.10.100', 'to_string' );
-is( $foo->to_string( padded => 1 ), '0001.0010.0100', 'to_string( padded => 1 )' );
+is(
+ $foo->to_string( padded => 1 ), '0001.0010.0100',
+ 'to_string( padded => 1 )'
+);