1use strict; 2use warnings; 3 4package Test::Deep::ScalarRef; 5 6use Test::Deep::Ref; 7 8sub init 9{ 10 my $self = shift; 11 12 my $val = shift; 13 14 $self->{val} = $val; 15} 16 17sub descend 18{ 19 my $self = shift; 20 21 my $got = shift; 22 my $exp = $self->{val}; 23 24 return 0 unless $self->test_class($got); 25 return 0 unless $self->test_reftype($got, Scalar::Util::reftype($exp)); 26 return Test::Deep::descend($got, Test::Deep::scalarrefonly($exp)); 27} 28 291; 30