GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  TEST::PORTABILITY::FILES (3)

.ds Aq ’

NAME

Test::Portability::Files - Check file names portability

CONTENTS

VERSION

version 0.06

SYNOPSIS



    use Test::More;

    plan skip_all => "Only for the module maintainer" unless $ENV{AUTHOR_TESTS};
    plan skip_all => "Test::Portability::Files required for testing filenames portability"
        unless eval "use Test::Portability::Files; 1";

    options(all_tests => 1);  # to be hyper-strict
    run_tests();



DESCRIPTION

This module is used to check the portability across operating systems of the names of the files present in the distribution of a module. The tests use the advices given in Files and Filesystems in perlport. The author of a distribution can select which tests to execute.

To use this module, simply copy the code from the synopsis in a test file named t/portfs.t for example, and add it to your MANIFEST. You can delete the call to options() to enable only most common tests.

By default, not all tests are enabled because some are judged too cumbersome to be practical, especially since some of the most limited platforms (like MS-DOS) seem to be no longer supported. Here are the default options:
o use_file_find is not enabled (check only the names as listed in MANIFEST)
o test_amiga_length is not enabled
o test_ansi_chars is enabled
o test_case is enabled
o test_dos_length is not enabled
o test_mac_length is not enabled
o test_one_dot is enabled
o test_space is enabled
o test_special_chars is enabled
o test_symlink is enabled
o test_vms_length is enabled
To change any option, please see options().

EXPORT

The following functions are exported:
o options()
o run_tests()

FUNCTIONS

options() Set the module options, in particular, select which tests to execute. Expects a hash.

<B>General optionsB>
o use_file_find - set to 1 to check all the files in the current hierarchy using File::Find instead of only checking files listed in MANIFEST.

<B>TestsB>
o all_tests - select all tests.
o test_amiga_length - check that the name fits within AmigaOS name length limitations (107 characters).
o test_ansi_chars - check that the name only uses the portable filename characters as defined by ANSI C and recommended by perlport.
o test_case - check that the name of the file does not clash with the name of another file on case-insensitive filesystems.
o test_dir_noext - check that the directory has no extension.
o test_dos_length - check that the name fits within DOS name length limitations (8 characters max for the base name, 3 characters max for the extension).
o test_mac_length - check that the name fits within Mac OS Classic name length limitations (31 characters).
o test_one_dot - check that the name only has one dot.
o test_space - check that the name has nos space.
o test_special_chars - check that the name does not use special characters.
o test_symlink - check that the file is not a symbolic link.
o test_vms_length - check that the name fits within VMS name length limitations (39 characters max for the base name, 39 characters max for the extension).

<B>ExampleB>



    options(use_file_find => 1, all_tests => 1);



selects all tests and runs them against all files found using File::Find.

test_name_portability() Test the portability of the given file name.
run_tests() Execute the tests selected by options().

SEE ALSO

perlport

BUGS

Please report any bugs or feature requests to bug-test-portability-files@rt.cpan.org, or through the web interface at <http://rt.cpan.org>. I will be notified, and then you’ll automatically be notified of progress on your bug as I make changes.

AUTHORS

o Se\k:'Aperghis-Tramoni <sebastien@aperghis.net>
o Alexander Hartmaier <abraxxa@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Se\k:'Aperghis-Tramoni, Alexander Hartmaier.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 TEST::PORTABILITY::FILES (3) 2012-11-12

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.