---
name: "Test::EOL"
section: "3pm"
platform: "linux"
package: "libtest-eol-perl"
version: "2.02-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Test::EOL"
---

# Test::EOL(3pm)

Check the correct line endings in your project

## NAME

Test::EOL - Check the correct line endings in your project

## VERSION

version 2.02

## SYNOPSIS

`"Test::EOL"` lets you check for the presence of trailing whitespace and/or windows line endings in your perl code. It reports its results in standard `"Test::Simple"` fashion:

```
  use Test::EOL tests => 1;
  eol_unix_ok( 'lib/Module.pm', 'Module is ^M free');
```

and to add checks for trailing whitespace:

```
  use Test::EOL tests => 1;
  eol_unix_ok( 'lib/Module.pm', 'Module is ^M and trailing whitespace free', { trailing_whitespace => 1 });
```

Module authors can include the following in a t/eol.t and have `"Test::EOL"` automatically find and check all perl files in a module distribution:

```
  use Test::EOL;
  all_perl_files_ok();
```

or

```
  use Test::EOL;
  all_perl_files_ok( @mydirs );
```

and if authors would like to check for trailing whitespace:

```
  use Test::EOL;
  all_perl_files_ok({ trailing_whitespace => 1 });
```

or

```
  use Test::EOL;
  all_perl_files_ok({ trailing_whitespace => 1 }, @mydirs );
```

or

```
  use Test::More;
  use Test::EOL 'no_test';
  all_perl_files_ok();
  done_testing;
```

## DESCRIPTION

This module scans your project/distribution for any perl files (scripts, modules, etc) for the presence of windows line endings.

## FUNCTIONS

### all\_perl\_files\_ok

```
  all_perl_files_ok( [ \%options ], [ @directories ] )
```

Applies `"eol_unix_ok()"` to all perl files found in `@directories` (and sub directories). If no \<@directories\> is given, the starting point is the current working directory, as tests are usually run from the top directory in a typical CPAN distribution. A perl file is \*.pl or \*.pm or \*.pod or \*.t or a file starting with `"#!...perl"`

Valid `"\%options"` currently are:

- •

  trailing\_whitespace

  By default Test::EOL only looks for Windows (CR/LF) line-endings. Set this to true to raise errors if any kind of trailing whitespace is present in the file.

- •

  all\_reasons

  Normally Test::EOL reports only the first error in every file (given that a text file originated on Windows will fail every single line). Set this a true value to register a test failure for every line with an error.

If the test plan is defined:

```
  use Test::EOL tests => 3;
  all_perl_files_ok();
```

the total number of files tested must be specified.

### eol\_unix\_ok

```
  eol_unix_ok ( $file [, $text] [, \%options ] )
```

Run a unix EOL check on `$file`. For a module, the path (lib/My/Module.pm) or the name (My::Module) can be both used. `$text` is the diagnostic label emitted after the `"ok"`/`"not ok"` TAP output. `"\%options"` takes the same values as described in "all\_perl\_files\_ok".

## EXPORT

A list of functions that can be exported.  You can delete this section if you don't export anything, such as for a purely object-oriented module.

## ACKNOWLEDGEMENTS

Shamelessly ripped off from Test::NoTabs.

## SEE ALSO

- •

  Test::More

- •

  Test::Pod

- •

  Test::Distribution

- •

  \<Test:NoWarnings\>

- •

  Test::NoTabs

- •

  Module::Install::AuthorTests

## SUPPORT

Bugs may be submitted through the RT bug tracker \<https://rt.cpan.org/Public/Dist/Display.html?Name=Test-EOL\> (or bug-Test-EOL@rt.cpan.org \<mailto:bug-Test-EOL@rt.cpan.org\>).

There is also a mailing list available for users of this distribution, at \<http://lists.perl.org/list/perl-qa.html\>.

There is also an irc channel available for users of this distribution, at `"#perl"` on `"irc.perl.org"` \<irc://irc.perl.org/#perl-qa\>.

## AUTHOR

Tomas Doran (t0m) \<bobtfish@bobtfish.net\>

## CONTRIBUTORS

- •

  Karen Etheridge \<ether@cpan.org\>

- •

  Olivier Mengué \<dolmen@cpan.org\>

- •

  Peter Rabbitson \<ribasushi@cpan.org\>

- •

  Florian Ragwitz \<rafl@debian.org\>

- •

  Dagfinn Ilmari Mannsåker \<ilmari@ilmari.org\>

- •

  Arthur Axel 'fREW' Schmidt \<frioux@gmail.com\>

- •

  Father Chrysostomos \<sprout@cpan.org\>

- •

  Kent Fredric \<kentfredric@gmail.com\>

## COPYRIGHT AND LICENCE

This software is copyright (c) 2009 by Tomas Doran.

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