# vi:fdm=marker fdl=0 syntax=perl: # $Id: 19_freeze_thaw.t,v 1.9 2004/03/25 14:56:37 jettero Exp $ use strict; use Test; use Games::Go::SGF2misc; { # notice that everything below this line is scoped inside this my $sgf = new Games::Go::SGF2misc; $sgf->parse("sgf/redrose-tartrate.sgf"); # $sgf->parse("sgf/9x9-gnugo.sgf"); my @nodes = @{ $sgf->nodelist->{1}[0] }; die "um, crazy" unless @nodes > 10; plan tests => int @nodes + 1; my @before = (); my @after = (); my $freezer = freeze $sgf; my $fsg = new Games::Go::SGF2misc; $fsg->thaw( $freezer ) or die "failed to thaw(): " . $fsg->errstr; my $s = 2; for my $n (@nodes) { my $a = $sgf->as_text($n) or die "failed to as_text($n): " . $sgf->errstr; my $b = $fsg->as_text($n) or die "failed to as_text($n): " . $fsg->errstr; if( $a eq $b ) { ok(1); } else { ok(0); } } kill -11, $$ } ok(1); # $sgf/$fsg have gone out of scope... which was causing sagfaults...