Ok, currently adding a task to run PHPSpec tests via Laravel Elixir is not working for me because I changed my composer file to store all binary applications under my ./bin folder instead of ./vendor/bin and by default the PHPSpec task looks for the binary file to accessed at ./vendor/bin/phpspec
Looking at the gulp-phpspec library it's quite easy to change it but due to the confusing nature of how Elixir sets up the plugins and there's no real documentation on how to configure Elixir in much detail. Is there an easy fix to put in my Gulp.js file which will change the binary path?
Ideally is there an easy way to change where it reads the spec.yml file from as well?
Currently I'm having to do it directly with gulp using:
var elixir = require('laravel-elixir');
var gulp = require('gulp');
var phpspec = require('gulp-phpspec');
gulp.task('phpspec', function() {
var options = {debug: false};
gulp.src('phpspec.yml').pipe(phpspec('./bin/phpspec run',options));
});
In the end I found what I wanted to do was in fact impossible and in turn had to make it work via a fork of exilir which can be found at https://github.com/peterfox/elixir/tree/feature/dynamic-path-for-tests.
Now you can modify the gulp file and change the bin path like so:
elixir.config.phpBinDir = "bin";
This won't be added to Elixir as my pull request to the main repo failed because it's not a highly enough requested feature. I'm sure if enough people want it it'll be eventually added.