Package: libtest-warn-perl
Version: 0.08-2
Severity: minor
Tags: patch

The messages printed by this package are not fully idiomatic English.
Please find attached a patch for the current stable version.
(The latest upstream version on CPAN is still 0.08, from 2003.)


/* era */

-- 
If this were a real .signature, it would suck less.  Well, maybe not.

--- Warn.pm.orig	2005-08-10 13:18:54.057617480 +0300
+++ Warn.pm	2005-08-10 13:41:46.980901416 +0300
@@ -9,13 +9,13 @@
   warning_is    {foo(-dri => "/")} "Unknown Parameter 'dri'", "dri != dir gives warning";
   warnings_are  {bar(1,1)} ["Width very small", "Height very small"];
   
-  warning_is    {add(2,2)} undef, "No warning to calc 2+2"; # or
-  warnings_are  {add(2,2)} [],    "No warning to calc 2+2"; # what reads better :-)
+  warning_is    {add(2,2)} undef, "No warning for calc 2+2"; # or
+  warnings_are  {add(2,2)} [],    "No warning for calc 2+2"; # reads better :-)
   
   warning_like  {foo(-dri => "/"} qr/unknown param/i, "an unknown parameter test";
   warnings_like {bar(1,1)} [qr/width.*small/i, qr/height.*small/i];
   
-  warning_is    {foo()} {carped => 'didn't found the right parameters'};
+  warning_is    {foo()} {carped => 'didn't find the right parameters'};
   warnings_like {foo()} [qr/undefined/,qr/undefined/,{carped => qr/no result/i}];
   
   warning_like {foo(undef)}                 'uninitialized';
@@ -27,9 +27,9 @@
 
 =head1 DESCRIPTION
 
-This module provides a few convenience methods for testing warning based code.
+This module provides a few convenience methods for testing warning-based code.
 
-If you are not already familiar with the Test::More manpage 
+If you are not already familiar with the Test::More manpage,
 now would be the time to go take a look.
 
 =head2 FUNCTIONS
@@ -38,29 +38,29 @@
 
 =item warning_is BLOCK STRING, TEST_NAME
 
-Tests that BLOCK gives exactly the one specificated warning.
-The test fails if the BLOCK warns more then one times or doesn't warn.
+Tests that BLOCK gives exactly the one specified warning.
+The test fails if the BLOCK warns more than once, or doesn't warn.
 If the string is undef, 
 then the tests succeeds iff the BLOCK doesn't give any warning.
-Another way to say that there aren't ary warnings in the block,
-is C<warnings_are {foo()} [], "no warnings in">.
+Another way to say that there aren't ary warnings in the block
+is C<warnings_are {foo()} [], "no warnings">.
 
 If you want to test for a warning given by carp,
-You have to write something like:
+you have to write something like:
 C<warning_is {carp "msg"} {carped => 'msg'}, "Test for a carped warning">.
-The test will fail,
+The test will fail
 if a "normal" warning is found instead of a "carped" one.
 
 Note: C<warn "foo"> would print something like C<foo at -e line 1>. 
 This method ignores everything after the at. That means, to match this warning
 you would have to call C<warning_is {warn "foo"} "foo", "Foo succeeded">.
-If you need to test for a warning at an exactly line,
-try better something like C<warning_like {warn "foo"} qr/at XYZ.dat line 5/>.
+If you need to test for a warning at a particular line number,
+try something like C<warning_like {warn "foo"} qr/at XYZ.dat line 5/>.
 
-warning_is and warning_are are only aliases to the same method.
+warning_is and warnings_are are only aliases to the same method,
+simply in order to make for more readable method names.
 So you also could write
 C<warning_is {foo()} [], "no warning"> or something similar.
-I decided me to give two methods to have some better readable method names.
 
 A true value is returned if the test succeeds, false otherwise.
 
@@ -70,32 +70,33 @@
 =item warnings_are BLOCK ARRAYREF, TEST_NAME
 
 Tests to see that BLOCK gives exactly the specificated warnings.
-The test fails if the BLOCK warns a different number than the size of the ARRAYREf
-would have expected.
+The test fails if the warnings from BLOCK are not exactly the ones in ARRAYREF.
 If the ARRAYREF is equal to [], 
 then the test succeeds iff the BLOCK doesn't give any warning.
 
 Please read also the notes to warning_is as these methods are only aliases.
 
-If you want more than one tests for carped warnings look that way:
+If you want more than one test for carped warnings, try this:
 C<warnings_are {carp "c1"; carp "c2"} {carped => ['c1','c2'];> or
 C<warnings_are {foo()} ["Warning 1", {carped => ["Carp 1", "Carp 2"]}, "Warning 2"]>.
-Note that C<{carped => ...}> has always to be a hash ref.
+Note that C<{carped => ...}> always has to be a hash ref.
 
 =item warning_like BLOCK REGEXP, TEST_NAME
 
-Tests that BLOCK gives exactly one warning and it can be matched to the given regexp.
+Tests that BLOCK gives exactly one warning and it can be matched by
+the given regexp.
 If the string is undef, 
 then the tests succeeds iff the BLOCK doesn't give any warning.
 
-The REGEXP is matched after the whole warn line,
-which consists in general of "WARNING at __FILE__ line __LINE__".
-So you can check for a warning in at File Foo.pm line 5 with
+The REGEXP is matched against the whole warning message,
+which in general has the form "WARNING at __FILE__ line __LINE__".
+So you can check for a warning in the file Foo.pm on line 5 with
 C<warning_like {bar()} qr/at Foo.pm line 5/, "Testname">.
-I don't know whether it's sensful to do such a test :-(
-However, you should be prepared as a matching with 'at', 'file', '\d'
+Perhaps it isn't sensible to perform such a test;
+however, you should be aware that matching on a sweeping regular expression
+such as 'at', 'file', '\d'
 or similar will always pass. 
-Think to the qr/^foo/ if you want to test for warning "foo something" in file foo.pl.
+Consider qr/^foo/ if you want to test for warning "foo something" in file foo.pl.
 
 You can also write the regexp in a string as "/.../"
 instead of using the qr/.../ syntax.
@@ -103,7 +104,7 @@
 as strings without slashes are reserved for warning categories
 (to match warning categories as can be seen in the perllexwarn man page).
 
-Similar to C<warning_is>,
+As with C<warning_is>,
 you can test for warnings via C<carp> with:
 C<warning_like {bar()} {carped => qr/bar called too early/i};>
 
@@ -119,17 +120,18 @@
 Tests whether a BLOCK gives exactly one warning of the passed category.
 The categories are grouped in a tree,
 like it is expressed in perllexwarn.
-Note, that they have the hierarchical structure from perl 5.8.0,
-wich has a little bit changed to 5.6.1 or earlier versions
-(You can access the internal used tree with C<$Test::Warn::Categorization::tree>, 
-allthough I wouldn't recommend it)
+Note that they have the hierarchical structure from perl 5.8.0,
+which is slightly different from how it was organized up through perl 5.6.1.
+(You can access the internal hierarchy with
+C<$Test::Warn::Categorization::tree>, 
+although it isn't recommended).
 
 Thanks to the grouping in a tree,
-it's simple possible to test for an 'io' warning,
-instead for testing for a 'closed|exec|layer|newline|pipe|unopened' warning.
+it's possible to test simply for an 'io' warning,
+instead of testing for a 'closed|exec|layer|newline|pipe|unopened' warning.
 
-Note, that warnings occuring at compile time,
-can only be catched in an eval block. So
+Note that compile-time warnings
+can only be caught in an eval block. So
 
   warning_like {eval q/"$x"; $x;/} 
                [qw/void uninitialized/], 
@@ -138,9 +140,8 @@
 will work,
 while it wouldn't work without the eval.
 
-Note, that it isn't possible yet,
-to test for own categories,
-created with warnings::register.
+Note also that it isn't yet possible
+to test for categories you created yourself with C<warnings::register>.
 
 =item warnings_like BLOCK ARRAYREF, TEST_NAME
 
@@ -160,7 +161,7 @@
                  {carped => qr/bar warning/i},
                  'io'
                 ],
-                "I hope, you'll never have to write a test for so many warnings :-)";
+                "I hope you'll never have to write a test for so many warnings :-)";
 
 =back
 
@@ -174,27 +175,28 @@
 =head1 BUGS
 
 Please note that warnings with newlines inside are making a lot of trouble.
-The only sensful way to handle them is to use are the C<warning_like> or
-C<warnings_like> methods. Background for these problems is that there is no
-really secure way to distinguish between warnings with newlines and a tracing
+The only sensible way to handle them is to use the C<warning_like> or
+C<warnings_like> methods.
+The background for these problems is that there is no
+really secure way to distinguish between warnings with newlines and a trailing
 stacktrace.
 
-If a method has it's own warn handler,
+If a method has its own warn handler,
 overwriting C<$SIG{__WARN__}>,
 my test warning methods won't get these warnings.
 
-The C<warning_like BLOCK CATEGORY, TEST_NAME> method isn't extremely tested.
-Please use this calling style with higher attention and
-tell me if you find a bug.
+The C<warning_like BLOCK CATEGORY, TEST_NAME> method isn't fully tested.
+Please pay attention if you use this this calling style,
+and report any bugs you find.
 
 =head1 TODO
 
 Improve this documentation.
 
 The code has some parts doubled - especially in the test scripts.
-This is really awkward and has to be changed.
+This is really awkward and must be changed.
 
-Please feel free to suggest me any improvements.
+Please feel free to suggest improvements.
 
 =head1 SEE ALSO
 
@@ -359,7 +361,7 @@
             $Tester->diag( "found warning: $_" );
         }
     }
-    $Tester->diag( "didn't found a warning" ) unless @_;
+    $Tester->diag( "didn't find any warning" ) unless @_;
 }
 
 sub _diag_exp_warning {

Reply via email to