I have a rails project and am running tests for my JavaScript test (Jasmine) through Karma
.travis.yml file
language: ruby rvm: - 2.0.0 script: - RAILS_ENV=test bundle exec rake --trace db:migrate test - karma start --single-run --browsers PhantomJS test/karma/config/unit.js
Travis fails saying it does not find karma. is there a way to define node_js as another language and install karma on the build VM?
A build matrix is made up by several multiple jobs that run in parallel. This can be useful in many cases, but the two primary reasons to use a build matrix are: Reducing the overall build execution time. Running tests against different versions of runtimes or dependencies.
travis. yml , which is a YAML format text file, to the root directory of the repository. This file specifies the programming language used, the desired building and testing environment (including dependencies which must be installed before the software can be built and tested), and various other parameters.
It is not possible yet to have several languages on travis configuration file.
On the other hand, all environments run node.js. The following script does the trick:
language: ruby rvm: - 2.0.0 before_script: - npm install karma script: - RAILS_ENV=test bundle exec rake --trace db:migrate test - karma start --single-run --browsers PhantomJS test/karma/config/unit.js
Help found on an old thread in a google group
K-Yo's answer got me moving in the right direction, but far short of success. Here is what I needed:
First in my .travis.yml:
language: ruby rvm: - 2.1.1 before_script: - psql -c 'create database spokenvote_test;' -U postgres - cp config/database.travis.yml config/database.yml - rake db:test_prep - npm install karma - npm install karma-jasmine - npm install karma-coverage - npm install karma-phantomjs-launcher - npm install karma-coffee-preprocessor script: - bundle exec rspec spec # basic for ruby - node_modules/karma/bin/karma start config/karma.conf.js --single-run --browsers PhantomJS
Then I also placed this code in my package.json, though I'm not sure if it was needed:
"devDependencies": { "karma": "~0.12", "karma-jasmine": "~0.2", "karma-coverage": "~0.2.6", "karma-phantomjs-launcher": "~0.1.4", "karma-coffee-preprocessor": "~0.2.1" },
Finally, I learned that Travis is case sensitive, so:
'bower_components/jquery/dist/jquery.min.js',
in my karma.conf.js needed to be:
'bower_components/jQuery/dist/jquery.min.js',
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With