diff -Naur CGI-FormBuilder-3.09/t/1c-validate.t CGI-FormBuilder-3.09b/t/1c-validate.t --- CGI-FormBuilder-3.09/t/1c-validate.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/1c-validate.t 2016-05-11 13:10:45.680369595 +0000 @@ -174,11 +174,11 @@ for my $t (@test) { my $form = CGI::FormBuilder->new( %{ $t->{opt} }, debug => $DEBUG ); - while(my($f,$o) = each %{$t->{mod} || {}}) { - $o->{name} = $f; - $form->field(%$o); + for my $field ( sort keys %{ $t->{mod} || {} } ) { + my $object = $t->{mod}->{$field}; + $object->{name} = $field; + $form->field( %{ $object } ); } - # just try to validate ok($form->validate, $t->{pass} || 0); } diff -Naur CGI-FormBuilder-3.09/t/1d-messages.t CGI-FormBuilder-3.09b/t/1d-messages.t --- CGI-FormBuilder-3.09/t/1d-messages.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/1d-messages.t 2016-05-11 13:08:33.159540213 +0000 @@ -70,8 +70,9 @@ my $locale = "fb_FAKE"; my $messages = "messages.$locale"; open(M, ">$messages") || warn "Can't write $messages: $!"; -while (my($k,$v) = each %messages) { - print M join(' ', $k, ref($v) ? @$v : $v), "\n"; +for my $k ( sort keys %messages ) { + my $v = $messages{$k}; + print M join(' ', $k, ref($v) ? @$v : $v), "\n"; } close(M); @@ -123,7 +124,7 @@ # Final test set is to just make sure we have all the keys for all modules require CGI::FormBuilder::Messages::default; my %need = CGI::FormBuilder::Messages::default->messages; -my @keys = keys %need; +my @keys = sort keys %need; for my $pm (@pm) { my($lang) = $pm =~ /([a-z]+_[A-Z]+)/; my $skip = $lang ? undef : "skip: Can't get language from $pm"; diff -Naur CGI-FormBuilder-3.09/t/2a-template-html.t CGI-FormBuilder-3.09b/t/2a-template-html.t --- CGI-FormBuilder-3.09/t/2a-template-html.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/2a-template-html.t 2016-05-11 13:11:57.438740284 +0000 @@ -102,18 +102,19 @@ my $seq = $ARGV[0] || 1; # Cycle thru and try it out -for (@test) { +for my $test_item (@test) { my $form = CGI::FormBuilder->new( debug => $DEBUG, action => 'TEST', title => 'TEST', - %{ $_->{opt} }, + %{ $test_item->{opt} }, ); # the ${mod} key twiddles fields - while(my($f,$o) = each %{$_->{mod} || {}}) { - $o->{name} = $f; - $form->field(%$o); + for my $field ( sort keys %{ $test_item->{mod} || {} } ) { + my $object = $test_item->{mod}->{$field}; + $object->{name} = $field; + $form->field( %{ $object } ); } # diff -Naur CGI-FormBuilder-3.09/t/2b-template-text.t CGI-FormBuilder-3.09b/t/2b-template-text.t --- CGI-FormBuilder-3.09/t/2b-template-text.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/2b-template-text.t 2016-05-11 13:11:29.861982062 +0000 @@ -97,18 +97,19 @@ my $seq = $ARGV[0] || 1; # Cycle thru and try it out -for (@test) { +for my $test_item (@test) { my $form = CGI::FormBuilder->new( debug => $DEBUG, action => 'TEST', title => 'TEST', - %{ $_->{opt} }, + %{ $test_item->{opt} }, ); # the ${mod} key twiddles fields - while(my($f,$o) = each %{$_->{mod} || {}}) { - $o->{name} = $f; - $form->field(%$o); + for my $field ( sort keys %{ $test_item->{mod} || {} } ) { + my $object = $test_item->{mod}->{$field}; + $object->{name} = $field; + $form->field( %{ $object } ); } # diff -Naur CGI-FormBuilder-3.09/t/2d-template-fast.t CGI-FormBuilder-3.09b/t/2d-template-fast.t --- CGI-FormBuilder-3.09/t/2d-template-fast.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/2d-template-fast.t 2016-05-11 13:15:58.497630259 +0000 @@ -135,18 +135,19 @@ my $seq = $ARGV[0] || 1; # Cycle thru and try it out -for (@test) { +for my $test_item (@test) { my $form = CGI::FormBuilder->new( debug => $DEBUG, action => 'TEST', title => 'TEST', - %{ $_->{opt} }, + %{ $test_item->{opt} }, ); # the ${mod} key twiddles fields - while(my($f,$o) = each %{$_->{mod} || {}}) { - $o->{name} = $f; - $form->field(%$o); + for my $field ( sort keys %{ $test_item->{mod} || {} } ) { + my $object = $test_item->{mod}->{$field}; + $object->{name} = $field; + $form->field( %{ $object } ); } # diff -Naur CGI-FormBuilder-3.09/t/2e-template-ssi.t CGI-FormBuilder-3.09b/t/2e-template-ssi.t --- CGI-FormBuilder-3.09/t/2e-template-ssi.t 2013-11-30 00:10:36.000000000 +0000 +++ CGI-FormBuilder-3.09b/t/2e-template-ssi.t 2016-05-11 13:12:37.526388964 +0000 @@ -102,18 +102,19 @@ my $seq = $ARGV[0] || 1; # Cycle thru and try it out -for (@test) { +for my $test_item (@test) { my $form = CGI::FormBuilder->new( debug => $DEBUG, action => 'TEST', title => 'TEST', - %{ $_->{opt} }, + %{ $test_item->{opt} }, ); # the ${mod} key twiddles fields - while(my($f,$o) = each %{$_->{mod} || {}}) { - $o->{name} = $f; - $form->field(%$o); + for my $field ( sort keys %{ $test_item->{mod} || {} } ) { + my $object = $test_item->{mod}->{$field}; + $object->{name} = $field; + $form->field( %{ $object } ); } #