Project:Perl/maint-notes/dev-perl/Data-FormValidator

From Gentoo Wiki
Jump to:navigation Jump to:search

Testing

Various tests in this test suite may exist to handle various situations, such as:

  • Code A consumes both Data-FormValidator and some other Module, and passes data between them manually
  • Code B consumes some Module, which in turn, uses Data-FormValidator

And these tests exist to make sure these scenarios work, but prove to be prohibitive to explicitly depend on due to inherent circularity.

For comprehensive testing, one should first install:

root #emerge --ask --oneshot >=dev-perl/CGI-4.350.0 dev-perl/CGI-Simple dev-perl/Template-Toolkit

And then run the tests the usual way.

Test output should then look a lot like:

CODE
>>> Test phase: dev-perl/Data-FormValidator-4.880.0
 * Install the following dependencies for comprehensive tests:
 *  [I] >=dev-perl/CGI-4.350.0
 *      - Test interop with CGI.pm as an input source
 *  [I] dev-perl/CGI-Simple
 *      - Test interop with CGI::Simple as an input source
 *  [I] dev-perl/Template-Toolkit
 *      - Test Template.pm can format Data::FormValidator objects
 * 
 * Removing un-needed t/pod.t
 * Fixing Manifest
 * Compile testing Data::FormValidator 4.88 ...                                            [ ok ]
 * Compile testing Data::FormValidator::Constraints 4.88 ...                               [ ok ]
 * Compile testing Data::FormValidator::Constraints::Dates 4.88 ...                        [ ok ]
 * Compile testing Data::FormValidator::Constraints::Upload 4.88 ...                       [ ok ]
 * Compile testing Data::FormValidator::ConstraintsFactory 4.88 ...                        [ ok ]
 * Compile testing Data::FormValidator::Filters 4.88 ...                                   [ ok ]
 * Compile testing Data::FormValidator::Results 4.88 ...                                   [ ok ]
 * Test::Harness Jobs=3
make -j3 --load-average=4 test TEST_VERBOSE=0 
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00_base.t .............................. ok                           
t/03_dependency.t ........................ ok                           
t/02_code_ref.t .......................... ok                           
t/04_arrayify_undef.t .................... ok                           
t/05_valid_ip_address.t .................. ok                           
t/06_regexp_map.t ........................ ok                           
t/09_require_some.t ...................... ok                           
t/13_validator_packages.t ................ ok                           
t/15_literal_param_constraints.t ......... ok                           
t/11_procedural_match.t .................. ok                           
t/17_multi_valued_keys.t ................. ok                           
t/16_cgi_object.t ........................ ok                           
t/18_constraint_refs.t ................... ok                           
t/19_refs_as_values.t .................... ok                           
t/20_careful_exception_handling.t ........ ok                           
t/21_multiple_fields.t ................... ok                           
t/25_results.t ........................... ok                           
t/27_qualify_ref_happy_death.t ........... ok                           
t/26_qr.t ................................ ok                           
t/28_defaults_for_new.t .................. ok                           
t/30_filter_definedness.t ................ ok                           
t/any_errors.t ........................... ok                           
t/check_profile_syntax.t ................. ok                           
t/closure_msgs.t ......................... ok                           
t/constraint_method_string.t ............. ok                           
t/constraint_method.t .................... ok                           
t/constraint_method_zero.t ............... ok                           
t/constraint_regexp_map_profile_reuse.t .. ok                           
t/constraints_builtin.t .................. ok                           
t/constraints_builtin_closure.t .......... ok                           
t/constraints_factory.t .................. ok                           
t/constraints_invalid_once_only.t ........ ok                           
t/constraints_num_values.t ............... ok                           
t/constraints_reuse.t .................... ok                           
t/credit_card.t .......................... ok                           
t/constraints_regexp_map_interaction.t ... ok                           
t/dates.t ................................ ok                           
t/dependency_groups.t .................... ok                           
t/dates_closure.t ........................ ok                           
t/dependency_coderef.t ................... ok                           
t/filter_constraints.t ................... ok                           
t/filters_builtin.t ...................... ok                           
t/filters_shouldnt_modify.t .............. ok                           
t/get_filtered_data.t .................... ok                           
t/FV_length.t ............................ ok                           
t/get_input_data.t ....................... ok                           
t/missing_optional.t ..................... ok                           
t/multiple_constraints.t ................. ok                           
t/msgs.t ................................. ok                           
t/params_not_mentioned.t ................. ok                           
t/profile_checking.t ..................... ok                           
t/procedural_valid.t ..................... ok                           
t/regexp_common.t ........................ ok                           
t/rename_builtin_constraints.t ........... ok                           
t/results_success.t ...................... ok                           
t/regexp_common_closure.t ................ ok                           
t/simple.t ............................... ok                           
t/undefined_arrayref.t ................... ok                           
t/unknown.t .............................. ok                           
t/tt_and_overload.t ...................... ok                           
===(     491;6   1/55  2/?  1/? )=======================================# Adding CGI::Simple tests
# testing with CGI.pm version: 4.50
# testing with CGI::Simple version: 1.25
# Running tests with CGI
# testing with CGI.pm version: 4.50
# Running tests with CGI::Simple
t/upload_closure.t ....................... ok                           
t/untaint.t .............................. ok                           
t/upload.t ............................... ok                           
t/upload_mime_types.t .................... ok   
All tests successful.
Files=64, Tests=617,  6 wallclock secs ( 0.34 usr  0.18 sys + 12.78 cusr  3.46 csys = 16.76 CPU)
Result: PASS