Use sauce labs to run specs in the same browsers we test jasmine in.

- Don't want any weird browser bugs to sneak in
[finish #69742564]
This commit is contained in:
slackersoft 2014-05-01 13:25:24 -07:00
parent 1e0a56a632
commit b40f9995a2
6 changed files with 123 additions and 28 deletions

41
.travis.yml Normal file
View File

@ -0,0 +1,41 @@
script: bash travis-scribe.sh
language: ruby
cache: bundler
rvm: 1.9.3
env:
global:
- USE_SAUCE=true
- JASMINE_BROWSER="firefox"
- SAUCE_OS="Linux"
- SAUCE_BROWSER_VERSION=''
- secure: PmIDShYXuBaZHlEz0nvcAUinsGUgP6MFlWVS33X9FO3pU1fDLqtV7Zsda25joQDJEmCf9hbfGAsmOHpZdHb54cZnxWjB5Heo/4fr4JcI/0C5wphS6SQTWlBOrLnLN68iYH5Uc+QS7ogFm6+OeiQZbYxl0u0Q2Llu5TwLYDbQHzU=
- secure: Y6Rlr+C2G4/3S0R54LdJx7DYBjZoiOJkg+uD3o6dVsUNnK5cKnJqqMm837nFOEYlbyecNtmwkFfrt28EQ52XJAkjE0RFbcC0u4OpPi7AA8P+IiHEaqpEOg14pH/XkeqcDQrQDzuoP8y2Ijm9GnDFaIW/BALUGLsFo9GnATww8kI=
matrix:
include:
- env:
- JASMINE_BROWSER="safari"
- SAUCE_OS="OS X 10.8"
- SAUCE_BROWSER_VERSION=6
- env:
- JASMINE_BROWSER="safari"
- SAUCE_OS="OS X 10.6"
- SAUCE_BROWSER_VERSION=5
- env:
- JASMINE_BROWSER="internet explorer"
- SAUCE_OS="Windows 8"
- SAUCE_BROWSER_VERSION=10
- env:
- JASMINE_BROWSER="internet explorer"
- SAUCE_OS="Windows 7"
- SAUCE_BROWSER_VERSION=9
- env:
- JASMINE_BROWSER="internet explorer"
- SAUCE_OS="Windows 7"
- SAUCE_BROWSER_VERSION=8
- env:
- JASMINE_BROWSER="chrome"
- SAUCE_OS="Linux"
- SAUCE_BROWSER_VERSION=''
- env:
- JASMINE_BROWSER="phantomjs"
- USE_SAUCE=false

View File

@ -1,4 +1,5 @@
source "https://rubygems.org" source "https://rubygems.org"
gem 'rake' gem 'rake'
gem 'jasmine', "~> 2.0.0.rc5" gem 'jasmine', "~> 2.0.0"
gem 'jasmine_selenium_runner'

View File

@ -1,42 +1,64 @@
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
capybara (2.1.0) childprocess (0.3.9)
mime-types (>= 1.16) ffi (~> 1.0, >= 1.0.11)
nokogiri (>= 1.3.3) cmdparse (2.0.5)
rack (>= 1.0.0) ffi (1.9.0)
rack-test (>= 0.5.4) highline (1.6.20)
xpath (~> 2.0) jasmine (2.0.0)
cliver (0.2.2) jasmine-core (~> 2.0.0)
jasmine (2.0.0.rc5)
jasmine-core (~> 2.0.0.rc5)
phantomjs phantomjs
rack (>= 1.2.1) rack (>= 1.2.1)
rake rake
jasmine-core (2.0.0.rc5) jasmine-core (2.0.0)
jasmine_selenium_runner (0.1.1)
jasmine (~> 2.0.0.alpha)
sauce-connect
selenium-webdriver (~> 2.35)
json (1.8.1)
mime-types (2.0) mime-types (2.0)
mini_portile (0.5.2) multi_json (1.9.0)
multi_json (1.8.2) net-http-persistent (2.9)
nokogiri (1.6.0) net-ssh (2.7.0)
mini_portile (~> 0.5.0) net-ssh-gateway (1.2.0)
phantomjs (1.8.1.1) net-ssh (>= 2.6.5)
poltergeist parallel (0.9.0)
poltergeist (1.4.1) parallel_tests (0.15.0)
capybara (~> 2.1.0) parallel
cliver (~> 0.2.1) phantomjs (1.9.7.0)
multi_json (~> 1.0)
websocket-driver (>= 0.2.0)
rack (1.5.2) rack (1.5.2)
rack-test (0.6.2)
rack (>= 1.0)
rake (0.9.2.2) rake (0.9.2.2)
websocket-driver (0.3.0) rest-client (1.6.7)
xpath (2.0.0) mime-types (>= 1.16)
nokogiri (~> 1.3) rubyzip (1.0.0)
sauce (3.2.0)
childprocess (>= 0.1.6)
cmdparse (>= 2.0.2)
highline (>= 1.5.0)
json (>= 1.2.0)
net-http-persistent
net-ssh
net-ssh-gateway
parallel_tests (= 0.15.0)
rest-client
sauce_whisk (~> 0.0.8)
selenium-webdriver (>= 0.1.2)
sauce-connect (3.2.0)
sauce (~> 3.2)
sauce_whisk (0.0.10)
rest-client
selenium-webdriver (2.37.0)
childprocess (>= 0.2.5)
multi_json (~> 1.0)
rubyzip (~> 1.0.0)
websocket (~> 1.0.4)
websocket (1.0.7)
PLATFORMS PLATFORMS
ruby ruby
DEPENDENCIES DEPENDENCIES
jasmine (~> 2.0.0.rc5) jasmine (~> 2.0.0)
jasmine_selenium_runner
rake rake

View File

@ -1,5 +1,6 @@
require 'jasmine' require 'jasmine'
require 'jasmine_selenium_runner'
load 'jasmine/tasks/jasmine.rake' load 'jasmine/tasks/jasmine.rake'
task :default => "jasmine:ci" task :default => "jasmine:ci"

View File

@ -0,0 +1,16 @@
---
use_sauce: <%= ENV['USE_SAUCE'] %>
browser: <%= ENV['JASMINE_BROWSER'] %>
sauce:
name: jasmine-ajax <%= Time.now.to_s %>
username: <%= ENV['SAUCE_USERNAME'] %>
access_key: <%= ENV['SAUCE_ACCESS_KEY'] %>
build: <%= ENV['TRAVIS_BUILD_NUMBER'] || 'Ran locally' %>
tags:
- <%= ENV['TRAVIS_RUBY_VERSION'] || RUBY_VERSION %>
- CI
tunnel_identifier: <%= ENV['TRAVIS_JOB_NUMBER'] ? %Q("#{ENV['TRAVIS_JOB_NUMBER']}") : nil %>
os: <%= ENV['SAUCE_OS'] %>
browser_version: <%= ENV['SAUCE_BROWSER_VERSION'] %>

14
travis-script.sh Normal file
View File

@ -0,0 +1,14 @@
#!/bin/bash -e
if [ $USE_SAUCE == true ]
then
if [ $TRAVIS_SECURE_ENV_VARS == true ]
then
curl -L https://gist.github.com/santiycr/5139565/raw/sauce_connect_setup.sh | bash
else
echo "skipping tests since we can't use sauce"
exit 0
fi
fi
bundle exec rake jasmine:ci