__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
package Test2::Compare::DeepRef;
use strict;
use warnings;
use base 'Test2::Compare::Base';
our $VERSION = '0.000162';
use Test2::Util::HashBase qw/input/;
use Test2::Util::Ref qw/render_ref rtype/;
use Scalar::Util qw/refaddr/;
use Carp qw/croak/;
sub init {
my $self = shift;
croak "'input' is a required attribute"
unless $self->{+INPUT};
croak "'input' must be a reference, got '" . $self->{+INPUT} . "'"
unless ref $self->{+INPUT};
$self->SUPER::init();
}
sub name { '<REF>' }
sub verify {
my $self = shift;
my %params = @_;
my ($got, $exists) = @params{qw/got exists/};
return 0 unless $exists;
my $in = $self->{+INPUT};
return 0 unless ref $in;
return 0 unless ref $got;
my $in_type = rtype($in);
my $got_type = rtype($got);
return 0 unless $in_type eq $got_type;
return 1;
}
sub deltas {
my $self = shift;
my %params = @_;
my ($got, $convert, $seen) = @params{qw/got convert seen/};
my $in = $self->{+INPUT};
my $in_type = rtype($in);
my $got_type = rtype($got);
my $check = $convert->($$in);
return $check->run(
id => ['DEREF' => '$*'],
convert => $convert,
seen => $seen,
got => $$got,
exists => 1,
);
}
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
Test2::Compare::DeepRef - Ref comparison
=head1 DESCRIPTION
Used to compare two refs in a deep comparison.
=head1 SYNOPSIS
=head1 SOURCE
The source code repository for Test2-Suite can be found at
F<https://github.com/Test-More/Test2-Suite/>.
=head1 MAINTAINERS
=over 4
=item Chad Granum E<lt>[email protected]<gt>
=back
=head1 AUTHORS
=over 4
=item Chad Granum E<lt>[email protected]<gt>
=back
=head1 COPYRIGHT
Copyright 2018 Chad Granum E<lt>[email protected]<gt>.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
See F<http://dev.perl.org/licenses/>
=cut
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Array.pm | File | 8.06 KB | 0644 |
|
| Bag.pm | File | 5.41 KB | 0644 |
|
| Base.pm | File | 5.61 KB | 0644 |
|
| Bool.pm | File | 1.82 KB | 0644 |
|
| Custom.pm | File | 3.4 KB | 0644 |
|
| DeepRef.pm | File | 1.94 KB | 0644 |
|
| Delta.pm | File | 13.73 KB | 0644 |
|
| Event.pm | File | 1.32 KB | 0644 |
|
| EventMeta.pm | File | 1.62 KB | 0644 |
|
| Float.pm | File | 3.98 KB | 0644 |
|
| Hash.pm | File | 5.75 KB | 0644 |
|
| Isa.pm | File | 1.65 KB | 0644 |
|
| Meta.pm | File | 3.44 KB | 0644 |
|
| Negatable.pm | File | 2.2 KB | 0644 |
|
| Number.pm | File | 3.11 KB | 0644 |
|
| Object.pm | File | 6.08 KB | 0644 |
|
| OrderedSubset.pm | File | 3.39 KB | 0644 |
|
| Pattern.pm | File | 1.67 KB | 0644 |
|
| Ref.pm | File | 1.92 KB | 0644 |
|
| Regex.pm | File | 1.52 KB | 0644 |
|
| Scalar.pm | File | 2 KB | 0644 |
|
| Set.pm | File | 2.91 KB | 0644 |
|
| String.pm | File | 1.79 KB | 0644 |
|
| Undef.pm | File | 1.27 KB | 0644 |
|
| Wildcard.pm | File | 1.13 KB | 0644 |
|