See my reply to Andrew for the $a."" stuff and see my reply a long
time ago when I also said that is_deeply should stay the same (both
for this case and others).

I'm just defending the idea that such a comparison is self-consistent,
possible and useful,

F

On 7/2/05, Eirik Berg Hanssen <[EMAIL PROTECTED]> wrote:
> Fergal Daly <[EMAIL PROTECTED]> writes:
> 
> > The point about modification is that if 2 things start out equal to
> > one another and they are modified in the same way then they should
> > still be equal to one-another.
> 
> 
>   That implies that two array refs are not equal:
> 
> 
> use Test::More 'no_plan';
> $x = [];
> $y = [];
> is_deeply($x, $y); # Equal, but "should" not be:
> $x .= "";          # after the "same" modification
> $y .= "";          # of the two things, they are
> is_deeply($x, $y); # not equal!
> __END__
> ok 1
> not ok 2
> #     Failed test (- at line 7)
> #          got: 'ARRAY(0x812b468)'
> #     expected: 'ARRAY(0x812b54c)'
> 1..2
> # Looks like you failed 1 tests of 2.
> 
> 
>   Currently, is_deeply's idea of equivalence does not include that the
> equivalent structures are equivalent after the same modification.  Or
> even that they can be modified the same way:
> 
> 
> use Test::More 'no_plan';
> $x = \do{ my $t = 1 };
> $y = \1;
> is_deeply($$x, $$y); # Equal, but "should" not be:
> eval { $$x++ };      # after the "same" modification
> eval { $$y++ };      # of the two things, they are
> is_deeply($$x, $$y); # not equal!
> __END__
> ok 1
> not ok 2
> #     Failed test (- at line 7)
> #          got: '2'
> #     expected: '1'
> 1..2
> # Looks like you failed 1 tests of 2.
> 
> 
>   Note the similarity between the previous and this:
> 
> 
> use Test::More 'no_plan';
> $t = 1;
> is_deeply($t, 1); # Equal, but "should" not be:
> eval q{ $t++ };   # after the "same" modification
> eval q{ 1++ };    # of the two things, they are
> is_deeply($t, 1); # not equal!
> __END__
> ok 1
> not ok 2
> #     Failed test (- at line 6)
> #          got: '2'
> #     expected: '1'
> 1..2
> # Looks like you failed 1 tests of 2.
> 
> 
>   ... and what do you know, I would welcome is_deeply to continue
> behaving like this.  :-)
> 
> 
> 
> Eirik
> --
> You just paddle around there awhile, and I'll explain about these poles ...
>         -- Sally Brown
> Is that in Europe?
>         -- Joyce Brown
>

Reply via email to