Test AN::Tools::String
From AN!Wiki
#!/usr/bin/perl -Tw # # This is the test script for the AN::Tools family of modules. # use AN::Tools 0.0.001; my $an=AN::Tools->new(); # Make sure that $parent matches $an. my $parent=$an->String->parent(); is($an, $parent, "Internal 'parent' method returns same blessed reference as is in \$an."); # use Data::Dumper; # print Dumper $an->data; # Make sure that all methods are available. my @methods=( "parent", "force_utf8", "read_words", "get_string", "_insert_vars", "_process", "_insert_word", "_protect", "_restore_protected", "_format_mode" ); can_ok("AN::Tools::String", @methods); ### This is String testing stuff, feel free to ignore for now. is($an->String->get_string("t_0000"), "Test", "get_string(); key only, array type call."); is($an->String->get_string({key=>"t_0000"}), "Test", "get_string(); key only, hash reference-type call."); is($an->String->get_string("t_0001", ["A"]), "Test replace: [A].", "get_string(); key and one variable, array type call."); is($an->String->get_string({key=>"t_0001",variable=>["A"]}), "Test replace: [A].", "get_string(); key and one variable, hash reference type call."); is($an->String->get_string({key=>"t_0002",variable=>["A", "B"]}), "Test Out of order: [B] replace: [A].", "get_string(); key and two variables, out of order injection."); is($an->String->get_string({key=>"t_0002",variable=>["あ", "い"],language=>"jp"}), "テスト、 整理: [い]/[あ].", "get_string(); key and two variables, out of order injection, alternate language."); # Test reading in a second words file into a second hash reference. my $test={}; is($an->String->read_words("./t/test.xml", $test), 1, "read_words(); Read in 'test.xml' into a new hash reference, array type call."); use Data::Dumper; print Dumper $test; exit; is($an->String->get_string({key=>"ta_0000",variable=>["A"],hash=>$test}), "Test replace: [A].", "get_string(); key and one variable, alternate words hash."); $test={}; # Blank is($an->String->read_words({file=>"./t/test.xml", hash=>$test}), 1, "read_words(); Read in 'test.xml' into cleared hash reference for next set of tests, hash reference type call."); is($an->String->read_words("./t/test.xml", $test), 1, "read_words(); Read in 'test.xml' into a new hash reference for next set of tests."); is($an->String->get_string({key=>"ta_0000",variable=>["A"],hash=>$test,language=>"jp"}), "テスト、 整理: [い]/[あ].", "get_string(); key and one variable, alternate words hash and alternate language."); ### Failure tests. # is($an->String->read_words("./test.xml", $hash), 1, "read_words(); Read in 'test.xml' into a new hash reference for next set of tests."); # my $conf=$an->data()->{words}{lang}{en_CA}{key}{an_0000}{content}; # my $confj=$an->data()->{words}{lang}{jp}{key}{an_0000}{content}; # print "Data: [$conf] ($confj)\n"; # use IO::Handle; # my $test=IO::Handle->new(); # open ($test, ">test.txt") or die "Failed to open 'test.txt' for writting. error was: $!\n"; # print $test "Data: [$conf] ($confj)\n"; # $test->close(); # foreach my $key (keys %{$conf}) # { # print "key: [$key] = [$conf->{$key}]\n"; # } # # use Data::Dumper; # print Dumper $an->data();
Any questions, feedback, advice, complaints or meanderings are welcome. | ||||
Us: Alteeve's Niche! | Support: Mailing List | IRC: #clusterlabs on Freenode | © Alteeve's Niche! Inc. 1997-2019 | |
legal stuff: All info is provided "As-Is". Do not use anything here unless you are willing and able to take responsibility for your own actions. |