Help language development. Donate to The Perl Foundation
[![Build Status](https://travis-ci.org/samgwise/Test-SourceFiles.svg?branch=master)](https://travis-ci.org/samgwise/Test-SourceFiles) NAME ==== Test::SourceFiles - A basic compilation checker SYNOPSIS ======== use Test; use Test::SourceFiles; use-libs-ok; done-testing DESCRIPTION =========== Test::SourceFiles is a simple way to check the compilation of all files in your projects `lib/` directory. I found myself rewriting this a couple of times so time to make a module. The simple way is to call the `use-libs-ok` function which calls `Test::use-ok` on each module name returned from the collecting function, `collect-sources`. Alternately you can call `collect-sources` and do something fancy with it's `Seq` of `Pair`'s where the key is a `::` formatted name and the value is the `IO::Path` where it was found. For example: say collect-sources.perl # prints ("Test::SourceFiles" => IO::Path.new("lib/Test/SourceFiles.pm6", ...),).Seq Both functions have the following options and defaults: * `Str :$root-path = 'lib'` - Where to search for source files * `List :$extensions = list 'pm6'` - Which file extensions to include * `Bool :$verbose = False` - Provide more detailed feedback on the search process Use Case -------- I find this module particularly useful when I'm starting a project, a time where I'm creating a lot of files while stubbing functions and roles. This module weeds out syntax errors from this sketching stage, allowing for a smoother transition into the implementation stage of the development process. As a module matures and it's test suite fills in this module begins to become less useful and so can likely removed later in a module's life. AUTHOR ====== Sam Gillespie COPYRIGHT AND LICENSE ===================== Copyright 2018 This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.