A Ruby gem that lets you test for the presence of command line tools and ensure that you have a version of the tool that you know how to work with.
It uses the gem system's version matching semantics so you can do things like enforce a major version but allow any minor version above a certain value for a tool. If you use Gemfile's the syntax should look pretty familiary to you.
gem install lowered-expectations
require 'lowered/expectations'
LoweredExpectations.expect('curl', "~> 7.0")
# If I get to here I know I have a version of curl I can use
The following errors can be raised when using this Gem:
LoweredExpectations::VersionPatternError
- Raised if the version pattern supplied isn't recognizedLoweredExpectations::IncompatibleVersionError
- Raised if the version of the tool does not match the expected version patternLoweredExpectations::MissingExecutableError
- Raised if the tool cannot be found on yourPATH
I'm using Travis CI to build and test on every push to the public github repository. You can find the Travis CI page for this project here: https://travis-ci.org/ianchesal/loweredexpectations/
Please see TODO.md for the short list of big things I thought worth writing down.
Questions or comments about LoweredExpectations
? Hit me up at [email protected].