diff --git a/.bowerrc b/.bowerrc new file mode 100644 index 00000000..959e1696 --- /dev/null +++ b/.bowerrc @@ -0,0 +1,4 @@ +{ + "directory": "bower_components", + "analytics": false +} diff --git a/.buildpacks b/.buildpacks index 26469b47..9741355e 100644 --- a/.buildpacks +++ b/.buildpacks @@ -1,2 +1,2 @@ https://github.com/heroku/heroku-buildpack-ruby.git -https://github.com/travis-ci/travis-web-buildpack.git +https://github.com/travis-ci/travis-web-ember-cli-buildpack.git diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..2fe4874a --- /dev/null +++ b/.editorconfig @@ -0,0 +1,33 @@ +# EditorConfig helps developers define and maintain consistent +# coding styles between different editors and IDEs +# editorconfig.org + +root = true + + +[*] +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = true +insert_final_newline = true +indent_style = space +indent_size = 2 + +[*.js] +indent_style = space +indent_size = 2 + +[*.hbs] +indent_style = space +indent_size = 2 + +[*.css] +indent_style = space +indent_size = 2 + +[*.html] +indent_style = space +indent_size = 2 + +[*.{diff,md}] +trim_trailing_whitespace = false diff --git a/.ember-cli b/.ember-cli new file mode 100644 index 00000000..ee64cfed --- /dev/null +++ b/.ember-cli @@ -0,0 +1,9 @@ +{ + /** + Ember CLI sends analytics information by default. The data is completely + anonymous, but there are times when you might want to disable this behavior. + + Setting `disableAnalytics` to true will prevent any data from being sent. + */ + "disableAnalytics": false +} diff --git a/.gitignore b/.gitignore index a68127e6..9fbb97bd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,14 +1,15 @@ -/.bundle -/config/travis.yml -/tmp -.sass-cache -.localeapp/key -/assets/scripts/config/locales.js -.DS_Store -*.sw[op] +# compiled output +dist +tmp -/public/images -/public/scripts -/public/styles/app.css -/public/version -vendor/bundle +# dependencies +node_modules +bower_components + +# misc +.sass-cache +connect.lock +coverage/* +libpeerconnection.log +npm-debug.log +testem.log diff --git a/.jshintrc b/.jshintrc new file mode 100644 index 00000000..08096eff --- /dev/null +++ b/.jshintrc @@ -0,0 +1,32 @@ +{ + "predef": [ + "document", + "window", + "-Promise" + ], + "browser": true, + "boss": true, + "curly": true, + "debug": false, + "devel": true, + "eqeqeq": true, + "evil": true, + "forin": false, + "immed": false, + "laxbreak": false, + "newcap": true, + "noarg": true, + "noempty": false, + "nonew": false, + "nomen": false, + "onevar": false, + "plusplus": false, + "regexp": false, + "undef": true, + "sub": true, + "strict": false, + "white": false, + "eqnull": true, + "esnext": true, + "unused": true +} diff --git a/.travis.yml b/.travis.yml index e2ebc9d7..ca777b12 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,47 +1,27 @@ -language: ruby -rvm: - - 2.1.2 +--- +language: node_js + +addons: + sauce_connect: true sudo: false cache: - bundler: true - -matrix: - fast_finish: true - allow_failures: - - rvm: 2.1.2 - env: 'TEST_SUITE=phantomjs' - - rvm: 2.1.2 - env: "TEST_SUITE=saucelabs BROWSER='firefox::Windows XP'" - -env: - global: - - secure: "RFuCOppyjWHC4XWKtQlgS4zO4B6KVxytdX8+G5jRY3XM+OEGte8VDD88gZLM\nKDpkqMFDbNJAVTsh1kMANCTct2ONi30RTxuJWLtRyK7RE5zCcaGbAkTNZgXo\nOR5OWLEPJZbNfbh17H6J7izTy6yiLR+CsVP1wMgeVusP0eoDhCA=" - - secure: "duqMXPALumXB3e2j/kM2uCaCGwgZsRrU0GCDY+3Zk6a+PK+s0mE9BftcXdxm\n6u87ld2PvCBO0inpe5YeS9LOZsT+OFS4jj+GGTsRI6rmGz+kok0N+ATLTdcj\nu15zhLhUUlhoKW0DZURrDv/iTiC/FKvJ0u5Rft0XbjfTY+0go/M=" - # SAUCE_ACCESS_KEY - - secure: "vf+RnbxcpCZcJYCcJdlT/EbPm9go5BnyyGKHCBwdPqb3+w+k0XyYnUkO5V9pIewIFAKof50i2YlAT8DG9GiUmKrX8z54dqSDlA+R1arMxgZRCHJohLxBjcxHVZe05aVZm/9U7YMOl3DuX88gISG91XC6nr8jnmmp2xGNQR8MkaU=" - # SAUCE_USERNAME - - secure: "tg6TWOS7ZtS4/SXezv4mK482rR+F2MPKCe6PCp+U4oYidm5Jj0NPw/lVog26HSVxxLpayMq35WrBJPwR+7DiNLc+RyBS+yeL8zsLnDlBdGFqSYg6L0j3QK3mVUhQi/ivgvd5NiTcxLROKBie+NJ58HKbenwFFTfvVCy/WjK+dPA=" - - matrix: - - "TEST_SUITE=ruby ARTIFACTS_S3_BUCKET=travis-web-production" - - "TEST_SUITE=phantomjs" - - "TEST_SUITE=saucelabs BROWSER='firefox::Windows XP'" - - "TEST_SUITE=saucelabs BROWSER='chrome::Windows XP'" - -script: "script/ci" + directories: + - node_modules before_install: - - "gem install bundler" -before_script: - - "test $TEST_SUITE = \"ruby\" && gem install travis-artifacts || true" - - "bundle exec rakep" - - "phantomjs --version" -after_script: - - "test $TEST_SUITE = \"ruby\" && test $TRAVIS_PULL_REQUEST = \"false\" && travis-artifacts upload --target-path assets/$TRAVIS_BRANCH --path public/scripts:scripts --path public/styles:styles || true" + - "npm config set spin false" + - "npm install -g npm@^2" + +install: + - npm install -g bower + - npm install + - bower install + +script: + - npm test notifications: - irc: "irc.freenode.org#travis" campfire: secure: "JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11\nSHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW\nUKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=" diff --git a/Assetfile b/Assetfile deleted file mode 100644 index 60e700a4..00000000 --- a/Assetfile +++ /dev/null @@ -1,92 +0,0 @@ -$: << 'lib' - -require 'rake-pipeline-web-filters' -require 'travis/assets' -require 'compass' - -Encoding.default_external = Encoding::UTF_8 -Encoding.default_internal = Encoding::UTF_8 - -assets ||= Travis::Assets.new -assets.setup_compass -assets.update_version - -output 'public/scripts' -input assets.scripts do - match '**/*.hbs' do - travis_handlebars :precompile => false # assets.production? - concat 'templates.js' - end - - match '**/*.coffee' do - coffee_script - end - - match 'vendor/**/*.js' do - if assets.production? - reject 'ember.js' - else - reject 'ember.prod.js' - end - safe_concat assets.vendor_order, 'vendor.js' - end - - match '{spec,spec/integration,spec/unit,spec/unit/views}/*.js' do - concat 'spec/specs.js' - end - - match 'spec/support/*.js' do - concat 'spec/support.js' - end - - match 'spec/vendor/*.js' do - concat assets.spec_vendor_order, 'spec/vendor.js' - end - - match 'spec/{vendor,support,specs}.js' do - concat ['spec/vendor.js', 'spec/support.js', 'spec/specs.js'], 'specs.js' - end - - match %r(^(?!vendor|spec).*\.js$) do - modules = proc { |input| input.path.gsub(%r((^app/|lib/|\.js$)), '') } - # why did we use the string strategy for development? makes it impossible to set breakpoints - # minispade(string: assets.development?, rewrite_requires: true, module_id_generator: modules) - minispade(string: false, rewrite_requires: true, module_id_generator: modules) - end - - match %r(^(?!spec).*\.js$) do - paths = ['min/app.js'] - paths.push 'app.js' unless assets.production? - concat ['vendor.js'], paths - end - - if assets.production? - match 'min/app.js' do - strip_debug - # uglify squeeze: true - concat 'app.js' - end - end -end - -output 'public/styles' -input assets.styles do - match '**/*.{scss,sass,css}' do - sass assets.production? ? { style: :compressed } : {} - concat assets.styles_order, ['app.css'] - end -end - -output 'public/images' -input assets.images do - match '**/*' do - copy - end -end - -# output 'public' -# input assets.static do -# match '**/*' do -# copy -# end -# end diff --git a/Brocfile.js b/Brocfile.js new file mode 100644 index 00000000..7aeb4dc2 --- /dev/null +++ b/Brocfile.js @@ -0,0 +1,43 @@ +/* global require, module */ + +var EmberApp = require('ember-cli/lib/broccoli/ember-app'); + +var fingerprint = { + extensions: ['js', 'css', 'png', 'jpg', 'gif', 'map', 'svg'] + }, + assetsHost; + +if (assetsHost = process.env.ASSETS_HOST) { + if (assetsHost.substr(-1) !== '/') { + assetsHost = assetsHost + '/' + } + fingerprint.prepend = assetsHost +} + +var app = new EmberApp({ + fingerprint: fingerprint +}); + +app.import('bower_components/pusher/dist/pusher.js'); +app.import('bower_components/jquery-timeago/jquery.timeago.js'); +app.import('bower_components/visibilityjs/lib/visibility.core.js'); +app.import('bower_components/visibilityjs/lib/visibility.timers.js'); +app.import('bower_components/JavaScript-MD5/js/md5.js'); +app.import('vendor/ansiparse.js'); +app.import('vendor/log.js'); +app.import('vendor/customerio.js'); +app.import('bower_components/moment/moment.js'); +// Use `app.import` to add additional libraries to the generated +// output files. +// +// If you need to use different assets in different +// environments, specify an object as the first parameter. That +// object's keys should be the environment name and the values +// should be the asset to use in that environment. +// +// If the library that you are including contains AMD or ES6 +// modules that you would like to import into your application +// please specify an object with the list of modules as keys +// along with the exports of each module as its value. + +module.exports = app.toTree(); diff --git a/Gemfile b/Gemfile index 64632540..3a2b8cf1 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,7 @@ source 'http://rubygems.org' ruby '2.1.2' +gem 'travis-web', path: 'waiter' gem 'puma' gem 'rack-ssl', '~> 1.3' gem 'rack-protection', '~> 1.3' @@ -8,15 +9,6 @@ gem 'rack-mobile-detect' gem 'sinatra' gem 'hashr' -gem 'rake-pipeline', github: 'livingsocial/rake-pipeline' -gem 'rake-pipeline-web-filters', github: 'wycats/rake-pipeline-web-filters' -gem 'coffee-script' -gem 'compass' -gem 'tilt' -gem 'uglifier' -gem 'yui-compressor' -gem 'libv8', '~> 3.16.0' - group :development, :test do gem 'rake' end @@ -25,9 +17,6 @@ end group :development do # gem 'debugger' gem 'foreman' - gem 'rerun', '~> 0.10.0' - gem 'guard' - gem 'rb-fsevent', '~> 0.9.1' end group :test do diff --git a/Gemfile.lock b/Gemfile.lock index 72b86129..1f988ccd 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,75 +1,21 @@ -GIT - remote: git://github.com/livingsocial/rake-pipeline.git - revision: a75d96fbadcc659a35a0ae59212e0bc60b58cc54 +PATH + remote: waiter specs: - rake-pipeline (0.8.0) - json - rake (~> 10.1.0) - thor - -GIT - remote: git://github.com/wycats/rake-pipeline-web-filters.git - revision: 7bd283aac83d7c46a8908f089033a6087d7cd68f - specs: - rake-pipeline-web-filters (0.6.0) - rack - rake-pipeline (~> 0.6) + travis-web (0.0.1) GEM remote: http://rubygems.org/ specs: backports (3.6.3) - celluloid (0.16.0) - timers (~> 4.0.0) - chunky_png (1.3.1) - coderay (1.1.0) - coffee-script (2.3.0) - coffee-script-source - execjs - coffee-script-source (1.8.0) - compass (1.0.1) - chunky_png (~> 1.2) - compass-core (~> 1.0.1) - compass-import-once (~> 1.0.5) - rb-fsevent (>= 0.9.3) - rb-inotify (>= 0.9) - sass (>= 3.3.13, < 3.5) - compass-core (1.0.1) - multi_json (~> 1.0) - sass (>= 3.3.0, < 3.5) - compass-import-once (1.0.5) - sass (>= 3.2, < 3.5) diff-lcs (1.2.5) dotenv (0.11.1) dotenv-deployment (~> 0.0.2) dotenv-deployment (0.0.2) - execjs (2.2.1) - ffi (1.9.6) foreman (0.75.0) dotenv (~> 0.11.1) thor (~> 0.19.1) - formatador (0.2.5) - guard (2.6.1) - formatador (>= 0.2.4) - listen (~> 2.7) - lumberjack (~> 1.0) - pry (>= 0.9.12) - thor (>= 0.18.1) hashr (0.0.22) - hitimes (1.2.2) - json (1.8.1) - libv8 (3.16.14.7) - listen (2.7.11) - celluloid (>= 0.15.2) - rb-fsevent (>= 0.9.3) - rb-inotify (>= 0.9) - lumberjack (1.0.9) - method_source (0.8.2) multi_json (1.10.1) - pry (0.10.1) - coderay (~> 1.1.0) - method_source (~> 0.8.1) - slop (~> 3.4) puma (2.9.1) rack (>= 1.1, < 2.0) rack (1.5.2) @@ -82,11 +28,6 @@ GEM rack-test (0.6.2) rack (>= 1.0) rake (10.1.1) - rb-fsevent (0.9.4) - rb-inotify (0.9.5) - ffi (>= 0.5.0) - rerun (0.10.0) - listen (~> 2.7, >= 2.7.3) rspec (2.99.0) rspec-core (~> 2.99.0) rspec-expectations (~> 2.99.0) @@ -95,7 +36,6 @@ GEM rspec-expectations (2.99.2) diff-lcs (>= 1.1.3, < 2.0) rspec-mocks (2.99.2) - sass (3.4.5) sinatra (1.4.5) rack (~> 1.4) rack-protection (~> 1.4) @@ -107,38 +47,21 @@ GEM rack-test sinatra (~> 1.4.0) tilt (~> 1.3) - slop (3.6.0) thor (0.19.1) tilt (1.4.1) - timers (4.0.1) - hitimes - uglifier (2.5.3) - execjs (>= 0.3.0) - json (>= 1.8.0) - yui-compressor (0.12.0) PLATFORMS ruby DEPENDENCIES - coffee-script - compass foreman - guard hashr - libv8 (~> 3.16.0) puma rack-mobile-detect rack-protection (~> 1.3) rack-ssl (~> 1.3) rake - rake-pipeline! - rake-pipeline-web-filters! - rb-fsevent (~> 0.9.1) - rerun (~> 0.10.0) rspec (~> 2.11) sinatra sinatra-contrib - tilt - uglifier - yui-compressor + travis-web! diff --git a/Guardfile b/Guardfile deleted file mode 100644 index 7d9e087e..00000000 --- a/Guardfile +++ /dev/null @@ -1,7 +0,0 @@ -$: << 'lib' - -guard 'assets' do - watch(%r(^Assetfile)) - watch(%r(^assets)) -end - diff --git a/Guardfile.phantom b/Guardfile.phantom deleted file mode 100644 index 504f0dc6..00000000 --- a/Guardfile.phantom +++ /dev/null @@ -1,6 +0,0 @@ -$: << 'lib' - -guard 'specs' do - watch(%r(^public)) -end - diff --git a/Procfile b/Procfile index 8ead007d..5297e6dd 100644 --- a/Procfile +++ b/Procfile @@ -1,3 +1,3 @@ -web: bundle exec rackup -s puma -p $PORT +web: bundle exec rackup -s puma -p $PORT waiter/config.ru assets: rerun -x -p 'assets/**/*' 'bundle exec rakep' #specs: rerun -x -p 'public/**/*' './run_jasmine.coffee public/spec.html' diff --git a/README.md b/README.md index 987da786..72e477a0 100644 --- a/README.md +++ b/README.md @@ -2,56 +2,26 @@ [](https://travis-ci.org/travis-ci/travis-web) ### Running the app +The app is developed using [http://ember-cli.com](Ember CLI). It requires nodejs +with npm installed. + In order to run the app you need to install dependencies with: - bundle install + bower install + npm install -Then you have to run the server, the easiest way to do this is to -use foreman: +Now you can run the server: - bundle exec foreman start + ember serve -Now you can open [localhost:5000](http://localhost:5000) +And open http://localhost:4200 in the browser. -By default it uses the official API at `https://api.travis-ci.org`, but you -can customize the API server URL using: +### Running tests +To run a test suite execute: - API_ENDPOINT="http://localhost:3000/" bundle exec foreman start + ember test -This will run against API run locally. +You can also start an interactive test runner for easier development: -### Compiling assets manually - - bundle exec rakep - ENV=production bundle exec rakep - -### Running the spec suite - -First, start the app (see above). - - bundle exec foreman start - -To run the Ruby specs, run rspec against the spec/ directory: - - bundle exec rspec spec/ - -To run the Jasmine specs, open the spec page: [localhost:5000/spec.html](http://localhost:5000/spec.html) - -### i18n - -Localization for travis-web is managed via [localeapp](http://localeapp.com). -If you are interested in improving the existing localizations or adding -a new locale, please contact us on irc (#travis) and we will set you up. - -Please do **not** edit the YAML files directly. - -Localization data can be synced with the following rake task: - - bundle exec localeapp:update - -This will publish any new keys in en.yml, as well as any missing keys -from your handlebars templates and pull down the latest localizations. - -*note*: You will need to have the localeapp api key exported to -LOCALEAPP_API_KEY + ember test --serve diff --git a/Rakefile b/Rakefile deleted file mode 100644 index e7afa057..00000000 --- a/Rakefile +++ /dev/null @@ -1,36 +0,0 @@ -$: << 'lib' -namespace :localeapp do - desc "syncs localeapp, yaml and handlebars" - task :update do - require 'localeapp-handlebars_i18n' - Localeapp::HandlebarsI18n.configure($stdout) do |config| - config.hbs_load_path = Dir[File.expand_path '../assets/scripts/app/templates/**/*.hbs', __FILE__] - config.yml_load_path = File.expand_path '../locales/', __FILE__ - config.localeapp_api_key = ENV['LOCALEAPP_API_KEY'] - end - system "localeapp push locales/#{Localeapp::HandlebarsI18n.default_locale}.yml" - Localeapp::HandlebarsI18n.send_missing_translations - system "localeapp pull" - end -end - -namespace :ember do - desc 'update ember' - task :update do - if File.exists?('tmp/ember.js') - system 'cd tmp/ember.js; git fetch origin; git reset --hard origin/master' - else - system 'git clone https://github.com/emberjs/ember.js.git tmp/ember.js' - end - - system 'cd tmp/ember.js; bundle update' - system 'cd tmp/ember.js; rake dist' - system 'cp tmp/ember.js/dist/ember.js assets/javascripts/vendor/ember.js' - end -end - -task :update_emojis do - s = Dir.glob('assets/images/emoji/*.png').map {|png| png.split('/', 4)[3].gsub('.png', '')}.map{|png| "'#{png}'"}.join(", ") - e = "@EmojiDictionary = [#{s}]" - File.open("assets/scripts/config/emoij.coffee", "w") {|f| f.write(e) } -end diff --git a/app/adapters/application.coffee b/app/adapters/application.coffee new file mode 100644 index 00000000..e5d41681 --- /dev/null +++ b/app/adapters/application.coffee @@ -0,0 +1,23 @@ +`import DS from 'ember-data'` +`import config from 'travis/config/environment'` + +Adapter = DS.ActiveModelAdapter.extend + host: config.apiEndpoint + coalesceFindRequests: true + + ajaxOptions: (url, type, options) -> + hash = @_super(url, type, options) + + hash.headers ||= {} + + hash.headers['accept'] = 'application/json; version=2' + + if token = Travis.sessionStorage.getItem('travis.token') + hash.headers['Authorization'] ||= "token #{token}" + + hash + + findMany: (store, type, ids) -> + @ajax(@buildURL(type.typeKey), 'GET', data: { ids: ids }) + +`export default Adapter` diff --git a/app/adapters/env-var.coffee b/app/adapters/env-var.coffee new file mode 100644 index 00000000..751e4488 --- /dev/null +++ b/app/adapters/env-var.coffee @@ -0,0 +1,26 @@ +`import Ember from 'ember'` +`import ApplicationAdapter from 'travis/adapters/application'` + +Adapter = ApplicationAdapter.extend + namespace: 'settings' + + buildURL: (type, id, record) -> + url = @_super.apply this, arguments + + if record && (repoId = Ember.get(record, 'repo.id')) + delimiter = if url.indexOf('?') != -1 then '&' else '?' + url = "#{url}#{delimiter}repository_id=#{repoId}" + + url + + updateRecord: (store, type, record) -> + data = {}; + serializer = store.serializerFor(type.typeKey); + + serializer.serializeIntoHash(data, type, record); + + id = Ember.get(record, 'id'); + + this.ajax(this.buildURL(type.typeKey, id, record), "PATCH", { data: data }) + +`export default Adapter` diff --git a/app/adapters/ssh-key.coffee b/app/adapters/ssh-key.coffee new file mode 100644 index 00000000..f4bad312 --- /dev/null +++ b/app/adapters/ssh-key.coffee @@ -0,0 +1,24 @@ +`import Ember from 'ember'` +`import ApplicationAdapter from 'travis/adapters/application'` + +Adapter = ApplicationAdapter.extend + namespace: 'settings' + + find: (store, type, id, record) -> + @ajax(this.urlPrefix() + '/ssh_key/' + id, 'GET') + + deleteRecord: (store, type, record) -> + id = Ember.get(record, 'id') + + @ajax(this.urlPrefix() + '/ssh_key/' + id, "DELETE"); + + createRecord: (store, type, record) -> + data = {}; + serializer = store.serializerFor(type.typeKey); + serializer.serializeIntoHash(data, type, record, { includeId: true }); + + id = Ember.get(record, 'id') + + this.ajax(this.urlPrefix() + '/ssh_key/' + id, "PATCH", { data: data }) + +`export default Adapter` diff --git a/app/app.coffee b/app/app.coffee new file mode 100644 index 00000000..b789caf7 --- /dev/null +++ b/app/app.coffee @@ -0,0 +1,98 @@ +`import Ember from 'ember'` +`import Resolver from 'ember/resolver'` +`import loadInitializers from 'ember/load-initializers'` +`import config from './config/environment'` + +`import mb from 'travis/helpers/mb'` +`import label from 'travis/helpers/label'` +`import travisField from 'travis/helpers/travis-field'` +`import travisErrors from 'travis/helpers/travis-errors'` +`import tipsy from 'travis/helpers/tipsy'` +#`import input from 'travis/helpers/input'` +`import filterInput from 'travis/helpers/filter-input'` +Ember.Handlebars.registerHelper('label', label) +Ember.Handlebars.registerHelper('travis-field', travisField) +Ember.Handlebars.registerHelper('travis-errors', travisErrors) +Ember.Handlebars.registerHelper('tipsy', tipsy) +#Ember.Handlebars.registerHelper('input', input) +Ember.Handlebars.registerHelper('filter-input', filterInput) +Ember.Handlebars.registerBoundHelper('mb', mb) + +Ember.MODEL_FACTORY_INJECTIONS = true + +App = Ember.Application.extend(Ember.Evented, + LOG_TRANSITIONS: true + LOG_TRANSITIONS_INTERNAL: true + LOG_ACTIVE_GENERATION: true + LOG_MODULE_RESOLVER: true + LOG_VIEW_LOOKUPS: true + #LOG_RESOLVER: true + + modulePrefix: config.modulePrefix + podModulePrefix: config.podModulePrefix + Resolver: Resolver + + lookup: -> + @__container__.lookup.apply @__container__, arguments + + flash: (options) -> + Travis.lookup('controller:flash').loadFlashes([options]) + + toggleSidebar: -> + $('body').toggleClass('maximized') + # TODO gotta force redraws here :/ + element = $('') + $('#top .profile').append(element) + Em.run.later (-> element.remove()), 10 + element = $('') + $('#repo').append(element) + Em.run.later (-> element.remove()), 10 + + ready: -> + location.href = location.href.replace('#!/', '') if location.hash.slice(0, 2) == '#!' + + @on 'user:signed_in', (user) -> + Travis.onUserUpdate(user) + + @on 'user:synced', (user) -> + Travis.onUserUpdate(user) + + currentDate: -> + new Date() + + onUserUpdate: (user) -> + if config.pro + @identifyCustomer(user) + @subscribePusher(user) + @setupCharm(user) + + subscribePusher: (user) -> + channels = user.channels + channels = channels.map (channel) -> + if channel.match /^private-/ + channel + else + "private-#{channel}" + Travis.pusher.subscribeAll(channels) + + setupCharm: (user) -> + $.extend window.__CHARM, + customer: user.login, + customer_id: user.id, + email: user.email + + displayCharm: -> + __CHARM.show() + + identifyCustomer: (user) -> + if _cio && _cio.identify + _cio.identify + id: user.id + email: user.email + name: user.name + created_at: (Date.parse(user.created_at) / 1000) || null + login: user.login +) +loadInitializers(App, config.modulePrefix) + +`export default App` diff --git a/assets/scripts/app/templates/.gitkeep b/app/components/.gitkeep similarity index 100% rename from assets/scripts/app/templates/.gitkeep rename to app/components/.gitkeep diff --git a/assets/scripts/app/components.coffee b/app/components/travis-switch.coffee similarity index 86% rename from assets/scripts/app/components.coffee rename to app/components/travis-switch.coffee index 2ea5726d..a9e98a0c 100644 --- a/assets/scripts/app/components.coffee +++ b/app/components/travis-switch.coffee @@ -1,4 +1,6 @@ -Travis.TravisSwitchComponent = Ember.Component.extend +`import Ember from 'ember'` + +Component = Ember.Component.extend tagName: 'a' classNames: ['travis-switch'] classNameBindings: ['_active:active'] @@ -19,3 +21,5 @@ Travis.TravisSwitchComponent = Ember.Component.extend # allow for bindings to propagate Ember.run.next this, -> @sendAction('action', target) + +`export default Component` diff --git a/config/.gitkeep b/app/controllers/.gitkeep similarity index 100% rename from config/.gitkeep rename to app/controllers/.gitkeep diff --git a/assets/scripts/app/controllers/account.coffee b/app/controllers/account.coffee similarity index 69% rename from assets/scripts/app/controllers/account.coffee rename to app/controllers/account.coffee index 182a2ab6..c4c5af45 100644 --- a/assets/scripts/app/controllers/account.coffee +++ b/app/controllers/account.coffee @@ -1,4 +1,6 @@ -Travis.AccountController = Ember.ObjectController.extend +`import Ember from 'ember'` + +Controller = Ember.ObjectController.extend allHooks: [] needs: ['currentUser'] userBinding: 'controllers.currentUser' @@ -20,7 +22,12 @@ Travis.AccountController = Ember.ObjectController.extend reloadHooks: -> if login = @get('login') - @set('allHooks', Travis.Hook.find(all: true, owner_name: login)) + hooks = @store.find('hook', all: true, owner_name: login) + + hooks.then () -> + hooks.set('isLoaded', true) + + @set('allHooks', hooks) hooks: (-> @reloadHooks() unless hooks = @get('allHooks') @@ -33,9 +40,11 @@ Travis.AccountController = Ember.ObjectController.extend ).property('allHooks.length', 'allHooks') showPrivateReposHint: (-> - Travis.config.show_repos_hint == 'private' + @config.show_repos_hint == 'private' ) .property() showPublicReposHint: (-> - Travis.config.show_repos_hint == 'public' + @config.show_repos_hint == 'public' ) .property() + +`export default Controller` diff --git a/app/controllers/accounts.coffee b/app/controllers/accounts.coffee new file mode 100644 index 00000000..427549ec --- /dev/null +++ b/app/controllers/accounts.coffee @@ -0,0 +1,6 @@ +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend + tab: 'accounts' + +`export default Controller` diff --git a/app/controllers/accounts/info.coffee b/app/controllers/accounts/info.coffee new file mode 100644 index 00000000..8d51d797 --- /dev/null +++ b/app/controllers/accounts/info.coffee @@ -0,0 +1,7 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend + needs: ['currentUser', 'repos'] + userBinding: 'controllers.currentUser' + +`export default Controller` diff --git a/app/controllers/auth.coffee b/app/controllers/auth.coffee new file mode 100644 index 00000000..90babea0 --- /dev/null +++ b/app/controllers/auth.coffee @@ -0,0 +1,5 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend() + +`export default Controller` diff --git a/app/controllers/build.coffee b/app/controllers/build.coffee new file mode 100644 index 00000000..91c14983 --- /dev/null +++ b/app/controllers/build.coffee @@ -0,0 +1,26 @@ +`import Ember from 'ember'` +`import { gravatarImage } from 'travis/utils/urls'` +`import GithubUrlPropertievs from 'travis/mixins/github-url-properties'` + +Controller = Ember.Controller.extend GithubUrlPropertievs, + needs: ['repo'] + repoBinding: 'controllers.repo.repo' + commitBinding: 'build.commit' + currentUserBinding: 'controllers.repo.currentUser' + tabBinding: 'controllers.repo.tab' + + currentItemBinding: 'build' + + loading: (-> + @get('build.isLoading') + ).property('build.isLoading') + + urlCommitterGravatarImage: (-> + gravatarImage(@get('commit.committerEmail'), 40) + ).property('commit.committerEmail') + + urlAuthorGravatarImage: (-> + gravatarImage(@get('commit.authorEmail'), 40) + ).property('commit.authorEmail') + +`export default Controller` diff --git a/app/controllers/builds-item.coffee b/app/controllers/builds-item.coffee new file mode 100644 index 00000000..89fec964 --- /dev/null +++ b/app/controllers/builds-item.coffee @@ -0,0 +1,15 @@ +`import Ember from 'ember'` +`import { colorForState } from 'travis/utils/helpers'` +`import GithubUrlProperties from 'travis/mixins/github-url-properties'` + +Controller = Ember.ObjectController.extend(GithubUrlProperties, + needs: ['builds'] + isPullRequestsListBinding: 'controllers.builds.isPullRequestsList' + buildBinding: 'content' + + color: (-> + colorForState(@get('build.state')) + ).property('build.state') +) + +`export default Controller` diff --git a/assets/scripts/app/controllers/builds.coffee b/app/controllers/builds.coffee similarity index 55% rename from assets/scripts/app/controllers/builds.coffee rename to app/controllers/builds.coffee index 1ebd215e..873d3ebc 100644 --- a/assets/scripts/app/controllers/builds.coffee +++ b/app/controllers/builds.coffee @@ -1,4 +1,6 @@ -Travis.BuildsController = Em.ArrayController.extend +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend isPullRequestsList: false sortAscending: false @@ -14,8 +16,17 @@ Travis.BuildsController = Em.ArrayController.extend showMore: -> id = @get('repo.id') number = @get('lastObject.number') - @get('content').load Travis.Build.olderThanNumber(id, number, @get('tab')) + @get('content').load @olderThanNumber(id, number, @get('tab')) displayShowMoreButton: (-> @get('tab') != 'branches' and parseInt(@get('lastObject.number')) > 1 ).property('tab', 'lastObject.number') + + olderThanNumber: (id, number, type) -> + options = { repository_id: id, after_number: number } + if type? + options.event_type = type.replace(/s$/, '') # poor man's singularize + + @store.find('build', options) + +`export default Controller` diff --git a/app/controllers/caches-by-branch.coffee b/app/controllers/caches-by-branch.coffee new file mode 100644 index 00000000..34f01be2 --- /dev/null +++ b/app/controllers/caches-by-branch.coffee @@ -0,0 +1,25 @@ +`import Ember from 'ember'` +`import Ajax from 'travis/utils/ajax'` + +Controller = Ember.ObjectController.extend + isDeleting: false + needs: ['repo', 'caches'] + repo: Ember.computed.alias('controllers.repo.repo') + + actions: + delete: -> + return if @get('isDeleting') + + if confirm('Are you sure?') + @set('isDeleting', true) + + data = { branch: @get('branch') } + + deletingDone = => @set('isDeleting', false) + + repo = @get('repo') + Ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE", data: data).then(deletingDone, deletingDone).then => + model = @get('model') + @get('controllers.caches').removeObject(model) + +`export default Controller` diff --git a/app/controllers/caches-item.coffee b/app/controllers/caches-item.coffee new file mode 100644 index 00000000..ef14fea2 --- /dev/null +++ b/app/controllers/caches-item.coffee @@ -0,0 +1,27 @@ +`import Ember from 'ember'` +`import Ajax from 'travis/utils/ajax'` + +Controller = Ember.ObjectController.extend + isDeleting: false + needs: ['repo', 'caches'] + repo: Ember.computed.alias('controllers.repo.repo') + + actions: + delete: -> + return if @get('isDeleting') + + if confirm('Are you sure?') + @set('isDeleting', true) + + data = { branch: @get('branch'), match: @get('slug') } + + deletingDone = => @set('isDeleting', false) + + repo = @get('repo') + Ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE", data: data).then(deletingDone, deletingDone).then => + model = @get('model') + @get('parent.caches').removeObject(model) + if @get('parent.caches.length') == 0 + @get('controllers.caches').removeObject(@get('parent')) + +`export default Controller` diff --git a/app/controllers/caches.coffee b/app/controllers/caches.coffee new file mode 100644 index 00000000..8c5ad621 --- /dev/null +++ b/app/controllers/caches.coffee @@ -0,0 +1,22 @@ +`import Ember from 'ember'` +`import Ajax from 'travis/utils/ajax'` + +Controller = Ember.ArrayController.extend + isDeleting: false + needs: ['repo'] + repo: Ember.computed.alias('controllers.repo.repo') + + actions: + deleteRepoCache: -> + return if @get('isDeleting') + + if confirm('Are you sure?') + @set('isDeleting', true) + + deletingDone = => @set('isDeleting', false) + + repo = @get('repo') + Ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE").then(deletingDone, deletingDone).then => + @clear() + +`export default Controller` diff --git a/assets/scripts/app/controllers/current_user.coffee b/app/controllers/current-user.coffee similarity index 83% rename from assets/scripts/app/controllers/current_user.coffee rename to app/controllers/current-user.coffee index 4b8ca9e4..af7231f6 100644 --- a/assets/scripts/app/controllers/current_user.coffee +++ b/app/controllers/current-user.coffee @@ -1,4 +1,4 @@ -Travis.CurrentUserController = Em.ObjectController.extend +Controller = Ember.ObjectController.extend sync: -> @get('model').sync() @@ -9,3 +9,5 @@ Travis.CurrentUserController = Em.ObjectController.extend Ember.run.scheduleOnce 'routerTransitions', this, -> @container.lookup('router:main').send('renderFirstSync') ).observes('isSyncing', 'auth.currentUser') + +`export default Controller` diff --git a/app/controllers/dashboard/repositories.coffee b/app/controllers/dashboard/repositories.coffee new file mode 100644 index 00000000..ad8f40f9 --- /dev/null +++ b/app/controllers/dashboard/repositories.coffee @@ -0,0 +1,29 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend + #queryParams: ['filter'] + filter: null + + filteredRepositories: (-> + filter = @get('filter') + repos = @get('model') + + if Ember.isBlank(filter) + repos + else + repos.filter (item, index) -> + item.slug.match(new RegExp(filter)) + + ).property('filter', 'model') + + updateFilter: () -> + value = @get('_lastFilterValue') + @transitionToRoute queryParams: { filter: value } + @set('filter', value) + + actions: + updateFilter: (value) -> + @set('_lastFilterValue', value) + Ember.run.throttle this, @updateFilter, [], 200, false + +`export default Controller` diff --git a/assets/scripts/app/controllers/env_var.coffee b/app/controllers/env-var.coffee similarity index 68% rename from assets/scripts/app/controllers/env_var.coffee rename to app/controllers/env-var.coffee index c0fe6179..b793b857 100644 --- a/assets/scripts/app/controllers/env_var.coffee +++ b/app/controllers/env-var.coffee @@ -1,6 +1,7 @@ -require 'travis/validations' +`import Ember from 'ember'` +`import Validations from 'travis/utils/validations'` -Travis.EnvVarController = Ember.ObjectController.extend Travis.Validations, +Controller = Ember.ObjectController.extend Validations, isEditing: false isDeleting: false @@ -25,8 +26,7 @@ Travis.EnvVarController = Ember.ObjectController.extend Travis.Validations, return if @get('isDeleting') @set('isDeleting', true) - deletingDone = => @set('isDeleting', false) - @get('model').deleteRecord().then deletingDone, deletingDone + @get('model').destroyRecord() edit: -> @set('isEditing', true) @@ -37,7 +37,6 @@ Travis.EnvVarController = Ember.ObjectController.extend Travis.Validations, save: -> return if @get('isSaving') - @set('isSaving', true) if @isValid() env_var = @get('model') @@ -45,8 +44,5 @@ Travis.EnvVarController = Ember.ObjectController.extend Travis.Validations, # TODO: handle errors env_var.save().then => @set('isEditing', false) - @set('isSaving', false) - , => - @set('isSaving', false) - else - @set('isSaving', false) + +`export default Controller` diff --git a/app/controllers/env-vars.coffee b/app/controllers/env-vars.coffee new file mode 100644 index 00000000..2580ccad --- /dev/null +++ b/app/controllers/env-vars.coffee @@ -0,0 +1,6 @@ +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend + vars: Ember.computed.alias('model') + +`export default Controller` diff --git a/assets/scripts/app/controllers/env_var_new.coffee b/app/controllers/env-vars/new.coffee similarity index 79% rename from assets/scripts/app/controllers/env_var_new.coffee rename to app/controllers/env-vars/new.coffee index 2aac40e2..0317eeb5 100644 --- a/assets/scripts/app/controllers/env_var_new.coffee +++ b/app/controllers/env-vars/new.coffee @@ -1,9 +1,11 @@ -require 'travis/validations' +`import Validations from 'travis/utils/validations'` -Travis.EnvVarsNewController = Travis.Controller.extend Travis.Validations, +Controller = Ember.Controller.extend Validations, needs: ['repo'] repo: Ember.computed.alias('controllers.repo.repo') + isSaving: false + validates: name: ['presence'] @@ -23,7 +25,7 @@ Travis.EnvVarsNewController = Travis.Controller.extend Travis.Validations, @set('isSaving', true) if @isValid() - env_var = Travis.EnvVar.create( + env_var = @store.createRecord('env_var', name: @get('name') value: @get('value') public: @get('public') @@ -39,3 +41,5 @@ Travis.EnvVarsNewController = Travis.Controller.extend Travis.Validations, @set('isSaving', false) else @set('isSaving', false) + +`export default Controller` diff --git a/app/controllers/first-sync.coffee b/app/controllers/first-sync.coffee new file mode 100644 index 00000000..bc9e94a5 --- /dev/null +++ b/app/controllers/first-sync.coffee @@ -0,0 +1,9 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend + needs: ['currentUser'] + user: Ember.computed.alias('controllers.currentUser') + + isSyncing: Ember.computed.alias('user.isSyncing') + +`export default Controller` diff --git a/assets/scripts/app/controllers/flash.coffee b/app/controllers/flash.coffee similarity index 73% rename from assets/scripts/app/controllers/flash.coffee rename to app/controllers/flash.coffee index 8c48feb3..a047ea94 100644 --- a/assets/scripts/app/controllers/flash.coffee +++ b/app/controllers/flash.coffee @@ -1,10 +1,14 @@ -Travis.FlashController = Ember.ArrayController.extend +`import Ember from 'ember'` +`import LimitedArray from 'travis/utils/limited-array'` +`import Broadcast from 'travis/models/broadcast'` + +Controller = Ember.ArrayController.extend needs: ['currentUser'] currentUserBinding: 'controllers.currentUser' init: -> @_super.apply this, arguments - @set('flashes', Travis.LimitedArray.create(limit: 2, content: [])) + @set('flashes', LimitedArray.create(limit: 2, content: [])) model: (-> broadcasts = @get('unseenBroadcasts') @@ -20,7 +24,7 @@ Travis.FlashController = Ember.ArrayController.extend ).property('broadcasts.isLoaded', 'broadcasts.length') broadcasts: (-> - if @get('currentUser.id') then Travis.Broadcast.find() else Ember.A() + if @get('currentUser.id') then @store.find('broadcast') else Ember.A() ).property('currentUser.id') loadFlashes: (msgs) -> @@ -31,7 +35,7 @@ Travis.FlashController = Ember.ArrayController.extend Ember.run.later(this, (-> @get('flashes.content').removeObject(msg)), 15000) close: (msg) -> - if msg instanceof Travis.Broadcast + if msg instanceof Broadcast msg.setSeen() @notifyPropertyChange('unseenBroadcasts') else @@ -40,3 +44,5 @@ Travis.FlashController = Ember.ArrayController.extend actions: close: (msg) -> @close(msg) + +`export default Controller` diff --git a/assets/scripts/app/controllers/job.coffee b/app/controllers/job.coffee similarity index 60% rename from assets/scripts/app/controllers/job.coffee rename to app/controllers/job.coffee index 5705e0d6..f05e44ad 100644 --- a/assets/scripts/app/controllers/job.coffee +++ b/app/controllers/job.coffee @@ -1,4 +1,7 @@ -Travis.JobController = Em.Controller.extend +`import Ember from 'ember'` +`import { githubCommit } from 'travis/utils/urls'` + +Controller = Ember.Controller.extend needs: ['repo'] repoBinding: 'controllers.repo.repo' @@ -10,5 +13,7 @@ Travis.JobController = Em.Controller.extend currentItemBinding: 'job' urlGithubCommit: (-> - Travis.Urls.githubCommit(@get('repo.slug'), @get('commit.sha')) + githubCommit(@get('repo.slug'), @get('commit.sha')) ).property('repo.slug', 'commit.sha') + +`export default Controller` diff --git a/app/controllers/main/error.coffee b/app/controllers/main/error.coffee new file mode 100644 index 00000000..90babea0 --- /dev/null +++ b/app/controllers/main/error.coffee @@ -0,0 +1,5 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend() + +`export default Controller` diff --git a/assets/scripts/app/controllers/profile.coffee b/app/controllers/profile.coffee similarity index 64% rename from assets/scripts/app/controllers/profile.coffee rename to app/controllers/profile.coffee index 298f3700..4686516a 100644 --- a/assets/scripts/app/controllers/profile.coffee +++ b/app/controllers/profile.coffee @@ -1,4 +1,6 @@ -Travis.ProfileController = Travis.Controller.extend +`import Ember from 'ember'` + +Controller = Ember.Controller.extend name: 'profile' needs: ['currentUser', 'accounts', 'account'] @@ -6,7 +8,7 @@ Travis.ProfileController = Travis.Controller.extend accountBinding: 'controllers.account' activate: (action, params) -> - this["view#{$.camelize(action)}"]() + this["view_#{action}".camelize()]() viewHooks: -> @connectTab('hooks') @@ -16,14 +18,11 @@ Travis.ProfileController = Travis.Controller.extend @connectTab('user') connectTab: (tab) -> - if tab == 'user' - view = 'AccountsInfoView' - else - view = "#{$.camelize(tab)}View" - viewClass = Travis[view] @set('tab', tab) billingUrl: (-> id = if @get('account.type') == 'user' then 'user' else @get('account.login') - "#{Travis.config.billing_endpoint}/subscriptions/#{id}" + "#{@get('config').billingEndpoint}/subscriptions/#{id}" ).property('account.login', 'account.type') + +`export default Controller` diff --git a/app/controllers/queue.coffee b/app/controllers/queue.coffee new file mode 100644 index 00000000..cabd5b7f --- /dev/null +++ b/app/controllers/queue.coffee @@ -0,0 +1,9 @@ +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend + content: (-> + @store.filter 'job', {}, (job) -> + ['created', 'queued'].indexOf(job.get('state')) != -1 + ).property() + +`export default Controller` diff --git a/assets/scripts/app/controllers/repo.coffee b/app/controllers/repo.coffee similarity index 84% rename from assets/scripts/app/controllers/repo.coffee rename to app/controllers/repo.coffee index a2d73bf5..e8b616ec 100644 --- a/assets/scripts/app/controllers/repo.coffee +++ b/app/controllers/repo.coffee @@ -1,4 +1,7 @@ -Travis.RepoController = Travis.Controller.extend +`import Ember from 'ember'` +`import { githubRepo } from 'travis/utils/urls'` + +Controller = Ember.Controller.extend needs: ['repos', 'currentUser', 'build', 'request', 'job'] currentUserBinding: 'controllers.currentUser' @@ -12,7 +15,7 @@ Travis.RepoController = Travis.Controller.extend init: -> @_super.apply this, arguments if !Ember.testing - Visibility.every Travis.INTERVALS.updateTimes, @updateTimes.bind(this) + Visibility.every @config.intervals.updateTimes, @updateTimes.bind(this) updateTimes: -> Ember.run this, -> @@ -30,7 +33,7 @@ Travis.RepoController = Travis.Controller.extend activate: (action) -> @stopObservingLastBuild() - this["view#{$.camelize(action)}"]() + this["view_#{action}".camelize()]() viewIndex: -> @observeLastBuild() @@ -68,7 +71,7 @@ Travis.RepoController = Travis.Controller.extend @connectTab('settings') lastBuildDidChange: -> - Ember.run.scheduleOnce('data', this, @_lastBuildDidChange); + Ember.run.scheduleOnce('actions', this, @_lastBuildDidChange); _lastBuildDidChange: -> build = @get('repo.lastBuild') @@ -88,5 +91,7 @@ Travis.RepoController = Travis.Controller.extend @set('tab', tab) urlGithub: (-> - Travis.Urls.githubRepo(@get('repo.slug')) + githubRepo(@get('repo.slug')) ).property('repo.slug') + +`export default Controller` diff --git a/assets/scripts/app/controllers/repos.coffee b/app/controllers/repos.coffee similarity index 81% rename from assets/scripts/app/controllers/repos.coffee rename to app/controllers/repos.coffee index c9583a13..98ee9538 100644 --- a/assets/scripts/app/controllers/repos.coffee +++ b/app/controllers/repos.coffee @@ -1,6 +1,8 @@ -require 'travis/limited_array' +`import Ember from 'ember'` +`import limit from 'travis/utils/computed-limit'` +`import Repo from 'travis/models/repo'` -Travis.ReposController = Ember.ArrayController.extend +Controller = Ember.ArrayController.extend actions: activate: (name) -> @activate(name) @@ -27,14 +29,14 @@ Travis.ReposController = Ember.ArrayController.extend init: -> @_super.apply this, arguments if !Ember.testing - Visibility.every Travis.INTERVALS.updateTimes, @updateTimes.bind(this) + Visibility.every @config.intervals.updateTimes, @updateTimes.bind(this) recentRepos: (-> Ember.ArrayProxy.extend( isLoadedBinding: 'repos.isLoaded' - repos: Travis.Repo.withLastBuild() + repos: Repo.withLastBuild(@store) sorted: Ember.computed.sort('repos', 'sortedReposKeys') - content: Ember.computed.limit('sorted', 'limit') + content: limit('sorted', 'limit') sortedReposKeys: ['sortOrder:asc'] limit: 30 ).create() @@ -47,7 +49,7 @@ Travis.ReposController = Ember.ArrayController.extend activate: (tab, params) -> @set('sortProperties', ['sortOrder']) @set('tab', tab) - this["view#{$.camelize(tab)}"](params) + this["view_#{tab}".camelize()](params) viewRecent: -> @set('content', @get('recentRepos')) @@ -57,14 +59,14 @@ Travis.ReposController = Ember.ArrayController.extend userRepos: (-> if login = @get('currentUser.login') - Travis.Repo.accessibleBy(login) + Repo.accessibleBy(@store, login) else [] ).property('currentUser.login') viewSearch: (phrase) -> @set('search', phrase) - @set('content', Travis.Repo.search(phrase)) + @set('content', Repo.search(@store, phrase)) searchObserver: (-> search = @get('search') @@ -88,3 +90,5 @@ Travis.ReposController = Ember.ArrayController.extend else 'Could not find any repos' ).property('tab') + +`export default Controller` diff --git a/assets/scripts/app/controllers/request.coffee b/app/controllers/request.coffee similarity index 75% rename from assets/scripts/app/controllers/request.coffee rename to app/controllers/request.coffee index 0714c884..3d70cda0 100644 --- a/assets/scripts/app/controllers/request.coffee +++ b/app/controllers/request.coffee @@ -1,4 +1,6 @@ -Travis.RequestController = Ember.ObjectController.extend +`import Ember from 'ember'` + +Controller = Ember.ObjectController.extend requestClass: (-> if @get('content.isAccepted') 'accepted' @@ -22,10 +24,10 @@ Travis.RequestController = Ember.ObjectController.extend message: (-> message = @get('model.message') - if Travis.config.pro && message == "private repository" + if @config.pro && message == "private repository" '' else message ).property('model.message') - +`export default Controller` diff --git a/assets/scripts/app/controllers/requests.coffee b/app/controllers/requests.coffee similarity index 64% rename from assets/scripts/app/controllers/requests.coffee rename to app/controllers/requests.coffee index 860ca276..759b7268 100644 --- a/assets/scripts/app/controllers/requests.coffee +++ b/app/controllers/requests.coffee @@ -1,4 +1,6 @@ -Travis.RequestsController = Ember.ArrayController.extend +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend needs: ['repo'] repo: Ember.computed.alias('controllers.repo.repo') @@ -6,3 +8,5 @@ Travis.RequestsController = Ember.ArrayController.extend slug = @get('repo.slug') "https://lint.travis-ci.org/#{slug}" ).property('repo.slug') + +`export default Controller` diff --git a/app/controllers/running-jobs.coffee b/app/controllers/running-jobs.coffee new file mode 100644 index 00000000..44ca18fc --- /dev/null +++ b/app/controllers/running-jobs.coffee @@ -0,0 +1,9 @@ +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend + content: (-> + @store.filter 'job', { state: 'started' }, (job) -> + ['started', 'received'].indexOf(job.get('state')) != -1 + ).property() + +`export default Controller` diff --git a/assets/scripts/app/controllers/settings.coffee b/app/controllers/settings/index.coffee similarity index 87% rename from assets/scripts/app/controllers/settings.coffee rename to app/controllers/settings/index.coffee index d090beea..40656ffa 100644 --- a/assets/scripts/app/controllers/settings.coffee +++ b/app/controllers/settings/index.coffee @@ -1,4 +1,6 @@ -Travis.SettingsIndexController = Em.ObjectController.extend +`import Ember from 'ember'` + +Controller = Ember.ObjectController.extend settings: Ember.computed.alias('model.settings') settingsChanged: (-> @@ -16,3 +18,5 @@ Travis.SettingsIndexController = Em.ObjectController.extend save: -> @get('model').saveSettings(@get('settings')).then null, -> Travis.flash(error: 'There was an error while saving settings. Please try again.') + +`export default Controller` diff --git a/app/controllers/sidebar.coffee b/app/controllers/sidebar.coffee new file mode 100644 index 00000000..47336d56 --- /dev/null +++ b/app/controllers/sidebar.coffee @@ -0,0 +1,19 @@ +`import Ember from 'ember'` + +Controller = Ember.ArrayController.extend + init: -> + @_super.apply this, arguments + @tickables = [] + + tips: [ + "Did you know that you can parallelize tests on Travis CI? Learn more" + "Did you know that you can split a build into several smaller pieces? Learn more" + "Did you know that you can skip a build? Learn more" + ] + + tip: (-> + if tips = @get('tips') + tips[Math.floor(Math.random()*tips.length)] + ).property().volatile() + +`export default Controller` diff --git a/app/controllers/ssh-key.coffee b/app/controllers/ssh-key.coffee new file mode 100644 index 00000000..152ba3d9 --- /dev/null +++ b/app/controllers/ssh-key.coffee @@ -0,0 +1,67 @@ +`import Ember from 'ember'` +`import Validations from 'travis/utils/validations'` + +Controller = Ember.ObjectController.extend Validations, + isEditing: false + isSaving: false + isDeleting: false + defaultKey: null + + needs: ['repo'] + repo: Ember.computed.alias('controllers.repo.repo') + + validates: + value: ['presence'] + + reset: -> + @set('isEditing', false) + + actions: + add: -> + id = @get('repo.id') + model = @store.recordForId('sshKey', id) + if model.get('currentState.stateName') == 'root.empty' + @store.dematerializeRecord(model) + + model = @store.createRecord('sshKey', id: id) + @set('model', model) + @set('isEditing', true) + + save: -> + return if @get('isSaving') + @set('isSaving', true) + + if @isValid() + @get('model').save().then => + @set('isEditing', false) + @set('isSaving', false) + , (error) => + @set('isSaving', false) + if error.errors + @addErrorsFromResponse(error.errors) + else + @set('isSaving', false) + + delete: -> + return if @get('isDeleting') + @set('isDeleting', true) + + deletingDone = => @set('isDeleting', false) + + @get('model').deleteRecord() + @get('model').save().then(deletingDone, deletingDone).then => + @set('model', null) + + cancel: -> + if model = @get('model') + if model.get('currentState.stateName') == 'root.empty' || + model.get('currentState.stateName').indexOf('root.loaded.created') != -1 + @store.dematerializeRecord(model) + + @set('model', null) + @set('isEditing', false) + + edit: -> + @set('isEditing', true) + +`export default Controller` diff --git a/app/controllers/top.coffee b/app/controllers/top.coffee new file mode 100644 index 00000000..614d18ea --- /dev/null +++ b/app/controllers/top.coffee @@ -0,0 +1,21 @@ +`import Ember from 'ember'` + +Controller = Ember.Controller.extend + needs: ['currentUser'] + userBinding: 'controllers.currentUser' + + userName: (-> + @get('user.name') || @get('user.login') + ).property('user.login', 'user.name') + + gravatarUrl: (-> + "#{location.protocol}//www.gravatar.com/avatar/#{@get('user.gravatarId')}?s=48&d=mm" + ).property('user.gravatarId') + + actions: { + toggleBurgerMenu: -> + @toggleProperty('is-open') + return false + } + +`export default Controller` diff --git a/assets/scripts/app/controllers/annotations.coffee b/app/helpers/.gitkeep similarity index 100% rename from assets/scripts/app/controllers/annotations.coffee rename to app/helpers/.gitkeep diff --git a/app/helpers/capitalize.coffee b/app/helpers/capitalize.coffee new file mode 100644 index 00000000..aacda844 --- /dev/null +++ b/app/helpers/capitalize.coffee @@ -0,0 +1,10 @@ +`import { safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (value, options) -> + if value? + safe $.capitalize(value) + else + '' + +`export default helper` diff --git a/app/helpers/filter-input.coffee b/app/helpers/filter-input.coffee new file mode 100644 index 00000000..89c47bd7 --- /dev/null +++ b/app/helpers/filter-input.coffee @@ -0,0 +1,18 @@ +`import Ember from 'ember'` + +TextField = Ember.TextField.extend + keyUp: (event) -> + @sendAction('action', @get('_value'), event) + + _elementValueDidChange: -> + @set('_value', @$().val()); + +fn = (options) -> + Ember.assert('You can only pass attributes to the `input` helper, not arguments', arguments.length < 2) + + onEvent = options.hash.on + delete options.hash.on + options.hash.onEvent = onEvent || 'enter' + return Ember.Handlebars.helpers.view.call(this, TextField, options) + +`export default fn` diff --git a/app/helpers/format-commit.coffee b/app/helpers/format-commit.coffee new file mode 100644 index 00000000..aaf63643 --- /dev/null +++ b/app/helpers/format-commit.coffee @@ -0,0 +1,6 @@ +`import { safe, formatCommit as formatCommitHelper } from 'travis/utils/helpers'` + +helper = Ember.Handlebars.makeBoundHelper (commit) -> + safe formatCommitHelper(commit.get('sha'), commit.get('branch')) if commit + +`export default helper` diff --git a/app/helpers/format-config.coffee b/app/helpers/format-config.coffee new file mode 100644 index 00000000..6ab44df1 --- /dev/null +++ b/app/helpers/format-config.coffee @@ -0,0 +1,6 @@ +`import { safe, formatConfig as formatConfigHelper } from 'travis/utils/helpers'` + +formatConfig = (config, options) -> + safe formatConfigHelper(config) + +`export default helper` diff --git a/app/helpers/format-duration.coffee b/app/helpers/format-duration.coffee new file mode 100644 index 00000000..2e5b6e12 --- /dev/null +++ b/app/helpers/format-duration.coffee @@ -0,0 +1,7 @@ +`import { timeInWords, safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (duration, options) -> + safe timeInWords(duration) + +`export default helper` diff --git a/app/helpers/format-message.coffee b/app/helpers/format-message.coffee new file mode 100644 index 00000000..720c6b56 --- /dev/null +++ b/app/helpers/format-message.coffee @@ -0,0 +1,7 @@ +`import { formatMessage as _formatMessage, safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (message, options) -> + safe _formatMessage(message, options.hash) + +`export default helper` diff --git a/app/helpers/format-sha.coffee b/app/helpers/format-sha.coffee new file mode 100644 index 00000000..30f6e444 --- /dev/null +++ b/app/helpers/format-sha.coffee @@ -0,0 +1,7 @@ +`import { formatSha as _formatSha, safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (sha) -> + safe _formatSha(sha) + +`export default helper` diff --git a/app/helpers/format-time.coffee b/app/helpers/format-time.coffee new file mode 100644 index 00000000..19d21b1a --- /dev/null +++ b/app/helpers/format-time.coffee @@ -0,0 +1,7 @@ +`import { timeAgoInWords, safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (value, options) -> + safe timeAgoInWords(value) || '-' + +`export default helper` diff --git a/app/helpers/github-commit-link.coffee b/app/helpers/github-commit-link.coffee new file mode 100644 index 00000000..1e48044f --- /dev/null +++ b/app/helpers/github-commit-link.coffee @@ -0,0 +1,12 @@ +`import { formatCommit, safe } from 'travis/utils/helpers'` +`import { githubCommit as githubCommitUrl } from 'travis/utils/urls'` + +helper = Ember.Handlebars.makeBoundHelper (slug, commitSha) -> + return '' unless commitSha + sha = Handlebars.Utils.escapeExpression formatCommit(commitSha) + return sha unless slug + url = Handlebars.Utils.escapeExpression githubCommitUrl(slug, sha) + + safe '' + sha + '' + +`export default helper` diff --git a/app/helpers/humanize-state.coffee b/app/helpers/humanize-state.coffee new file mode 100644 index 00000000..ad01c870 --- /dev/null +++ b/app/helpers/humanize-state.coffee @@ -0,0 +1,10 @@ +`import { safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (state) -> + if state == 'received' + 'booting' + else + state + +`export default helper` diff --git a/app/helpers/input.coffee b/app/helpers/input.coffee new file mode 100644 index 00000000..dc817a07 --- /dev/null +++ b/app/helpers/input.coffee @@ -0,0 +1,30 @@ +`import Ember from 'ember'` + +originalInputHelper = Ember.Handlebars.helpers.input + +input = (options) -> + # for now I can match label only with the property name + # passed here matches the label + name = (options.hash.value || options.hash.checked) + id = options.hash.id + + # generate id only if it's not given + if name && !name.match(/\./) && !id + labels = @get('_labels') + unless labels + labels = Ember.Object.create() + @set('_labels', labels) + + # for now I support only label + input in their own context + id = labels.get(name) + unless id + id = "#{name}-#{Math.round(Math.random() * 1000000)}" + labels.set(name, id) + + options.hash.id = id + options.hashTypes.id = 'STRING' + options.hashContexts.id = this + + originalInputHelper.call(this, options) + +`export default input` diff --git a/app/helpers/label.coffee b/app/helpers/label.coffee new file mode 100644 index 00000000..5d733fd5 --- /dev/null +++ b/app/helpers/label.coffee @@ -0,0 +1,34 @@ +`import Ember from 'ember'` + +LabelView = Ember.View.extend( + tagName: 'label' + + attributeBindings: ['for', 'accesskey', 'form'] + classNameBindings: ['class'] +) + +label = (options) -> + view = LabelView + + name = options.hash.for + if name + labels = @get('_labels') + unless labels + labels = Ember.Object.create() + @set('_labels', labels) + + # for now I support only label + input in their own context + id = labels.get(name) + unless id + id = "#{name}-#{Math.round(Math.random() * 1000000)}" + labels.set(name, id) + + options.hash.for = id + options.hashTypes.for = 'STRING' + options.hashContexts.for = this + if options.hash.content + view = view.extend(templateName: 'helpers/label') + + Ember.Handlebars.helpers.view.call(this, view, options) + +`export default label` diff --git a/app/helpers/mb.coffee b/app/helpers/mb.coffee new file mode 100644 index 00000000..59fd38d7 --- /dev/null +++ b/app/helpers/mb.coffee @@ -0,0 +1,7 @@ +`import Ember from "ember"` + +fn = (size) -> + if size + (size / 1024 / 1024).toFixed(2) + +`export default fn` diff --git a/app/helpers/short-compare-shas.coffee b/app/helpers/short-compare-shas.coffee new file mode 100644 index 00000000..606dc491 --- /dev/null +++ b/app/helpers/short-compare-shas.coffee @@ -0,0 +1,12 @@ +`import { pathFrom } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (url, options) -> + path = pathFrom(url) + if path.indexOf('...') >= 0 + shas = path.split('...') + "#{shas[0][0..6]}..#{shas[1][0..6]}" + else + path + +`export default helper` diff --git a/app/helpers/tipsy.coffee b/app/helpers/tipsy.coffee new file mode 100644 index 00000000..08c58e38 --- /dev/null +++ b/app/helpers/tipsy.coffee @@ -0,0 +1,7 @@ +`import { safe } from 'travis/utils/helpers'` +`import Ember from "ember"` + +helper = Ember.Handlebars.makeBoundHelper (text, tip) -> + safe '' + text + '' + +`export default helper` diff --git a/app/helpers/travis-errors.coffee b/app/helpers/travis-errors.coffee new file mode 100644 index 00000000..030cb535 --- /dev/null +++ b/app/helpers/travis-errors.coffee @@ -0,0 +1,23 @@ +`import Ember from 'ember'` + +ErrorsView = Ember.View.extend + tagName: 'span' + templateName: 'helpers/travis-errors' + classNames: ['error'] + classNameBindings: ['codes', 'show'] + codes: (-> + @get('errors').mapBy('code') + ).property('@errors', 'errors.length') + show: Ember.computed.notEmpty('errors.[]') + +fn = (name, options) -> + errors = @get('errors').for(name) + window[name + 'Errors'] = errors + view = ErrorsView.create( + controller: this + errors: errors + ) + + Ember.Handlebars.helpers.view.call(this, view, options) + +`export default fn` diff --git a/app/helpers/travis-field.coffee b/app/helpers/travis-field.coffee new file mode 100644 index 00000000..c29bb3ea --- /dev/null +++ b/app/helpers/travis-field.coffee @@ -0,0 +1,23 @@ +`import Ember from 'ember'` + +FormFieldRowView = Ember.View.extend + invalid: Ember.computed.notEmpty('errors.[]') + classNameBindings: ['invalid'] + classNames: 'field' + +fn = (name, options) -> + errors = @get('errors').for(name) + template = options.fn + delete options.fn + + view = FormFieldRowView.create( + controller: this + template: template + errors: errors + name: name + classNameBindings: ['name'] + ) + + Ember.Handlebars.helpers.view.call(this, view, options) + +`export default fn` diff --git a/app/index.html b/app/index.html new file mode 100644 index 00000000..7d63a71d --- /dev/null +++ b/app/index.html @@ -0,0 +1,26 @@ + + +
+ + + tags
+// $code-color: $oil;
+// $code-font-family: $font-family-monospace;
+// $code-font-weight: $font-weight-normal;
+// $code-background-color: scale-color($secondary-color, $lightness: 70%);
+// $code-border-size: 1px;
+// $code-border-style: solid;
+// $code-border-color: scale-color($code-background-color, $lightness: -10%);
+// $code-padding: rem-calc(2) rem-calc(5) rem-calc(1);
+
+// We use these to style anchors
+// $anchor-text-decoration: none;
+// $anchor-text-decoration-hover: none;
+// $anchor-font-color: $primary-color;
+// $anchor-font-color-hover: scale-color($primary-color, $lightness: -14%);
+
+// We use these to style the
element
+// $hr-border-width: 1px;
+// $hr-border-style: solid;
+// $hr-border-color: $gainsboro;
+// $hr-margin: rem-calc(20);
+
+// We use these to style lists
+// $list-font-family: $paragraph-font-family;
+// $list-font-size: $paragraph-font-size;
+// $list-line-height: $paragraph-line-height;
+// $list-margin-bottom: $paragraph-margin-bottom;
+// $list-style-position: outside;
+// $list-side-margin: 1.1rem;
+// $list-ordered-side-margin: 1.4rem;
+// $list-side-margin-no-bullet: 0;
+// $list-nested-margin: rem-calc(20);
+// $definition-list-header-weight: $font-weight-bold;
+// $definition-list-header-margin-bottom: .3rem;
+// $definition-list-margin-bottom: rem-calc(12);
+
+// We use these to style blockquotes
+// $blockquote-font-color: scale-color($header-font-color, $lightness: 35%);
+// $blockquote-padding: rem-calc(9 20 0 19);
+// $blockquote-border: 1px solid $gainsboro;
+// $blockquote-cite-font-size: rem-calc(13);
+// $blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%);
+// $blockquote-cite-link-color: $blockquote-cite-font-color;
+
+// Acronym styles
+// $acronym-underline: 1px dotted $gainsboro;
+
+// We use these to control padding and margin
+// $microformat-padding: rem-calc(10 12);
+// $microformat-margin: rem-calc(0 0 20 0);
+
+// We use these to control the border styles
+// $microformat-border-width: 1px;
+// $microformat-border-style: solid;
+// $microformat-border-color: $gainsboro;
+
+// We use these to control full name font styles
+// $microformat-fullname-font-weight: $font-weight-bold;
+// $microformat-fullname-font-size: rem-calc(15);
+
+// We use this to control the summary font styles
+// $microformat-summary-font-weight: $font-weight-bold;
+
+// We use this to control abbr padding
+// $microformat-abbr-padding: rem-calc(0 1);
+
+// We use this to control abbr font styles
+// $microformat-abbr-font-weight: $font-weight-bold;
+// $microformat-abbr-font-decoration: none;
+
+// 01. Accordion
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-accordion-classes: $include-html-classes;
+
+// $accordion-navigation-padding: rem-calc(16);
+// $accordion-navigation-bg-color: $silver;
+// $accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%);
+// $accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%);
+// $accordion-navigation-font-color: $jet;
+// $accordion-navigation-font-size: rem-calc(16);
+// $accordion-navigation-font-family: $body-font-family;
+
+// $accordion-content-padding: ($column-gutter/2);
+// $accordion-content-active-bg-color: $white;
+
+// 02. Alert Boxes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-alert-classes: $include-html-classes;
+
+// We use this to control alert padding.
+// $alert-padding-top: rem-calc(14);
+// $alert-padding-default-float: $alert-padding-top;
+// $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10);
+// $alert-padding-bottom: $alert-padding-top;
+
+// We use these to control text style.
+// $alert-font-weight: $font-weight-normal;
+// $alert-font-size: rem-calc(13);
+// $alert-font-color: $white;
+// $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%);
+
+// We use this for close hover effect.
+// $alert-function-factor: -14%;
+
+// We use these to control border styles.
+// $alert-border-style: solid;
+// $alert-border-width: 1px;
+// $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor);
+// $alert-bottom-margin: rem-calc(20);
+
+// We use these to style the close buttons
+// $alert-close-color: $oil;
+// $alert-close-top: 50%;
+// $alert-close-position: rem-calc(4);
+// $alert-close-font-size: rem-calc(22);
+// $alert-close-opacity: 0.3;
+// $alert-close-opacity-hover: 0.5;
+// $alert-close-padding: 9px 6px 4px;
+
+// We use this to control border radius
+// $alert-radius: $global-radius;
+
+// We use this to control transition effects
+// $alert-transition-speed: 300ms;
+// $alert-transition-ease: ease-out;
+
+// 03. Block Grid
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-block-grid-classes: $include-html-classes;
+// $include-xl-html-block-grid-classes: false;
+
+// We use this to control the maximum number of block grid elements per row
+// $block-grid-elements: 12;
+// $block-grid-default-spacing: rem-calc(20);
+// $align-block-grid-to-grid: false;
+
+// Enables media queries for block-grid classes. Set to false if writing semantic HTML.
+// $block-grid-media-queries: true;
+
+// 04. Breadcrumbs
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use this to set the background color for the breadcrumb container.
+// $crumb-bg: scale-color($secondary-color, $lightness: 55%);
+
+// We use these to set the padding around the breadcrumbs.
+// $crumb-padding: rem-calc(9 14 9);
+// $crumb-side-padding: rem-calc(12);
+
+// We use these to control border styles.
+// $crumb-function-factor: -10%;
+// $crumb-border-size: 1px;
+// $crumb-border-style: solid;
+// $crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor);
+// $crumb-radius: $global-radius;
+
+// We use these to set various text styles for breadcrumbs.
+// $crumb-font-size: rem-calc(11);
+// $crumb-font-color: $primary-color;
+// $crumb-font-color-current: $oil;
+// $crumb-font-color-unavailable: $aluminum;
+// $crumb-font-transform: uppercase;
+// $crumb-link-decor: underline;
+
+// We use these to control the slash between breadcrumbs
+// $crumb-slash-color: $base;
+// $crumb-slash: "/";
+
+// 05. Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to build padding for buttons.
+// $button-tny: rem-calc(10);
+// $button-sml: rem-calc(14);
+// $button-med: rem-calc(16);
+// $button-lrg: rem-calc(18);
+
+// We use this to control the display property.
+// $button-display: inline-block;
+// $button-margin-bottom: rem-calc(20);
+
+// We use these to control button text styles.
+// $button-font-family: $body-font-family;
+// $button-font-color: $white;
+// $button-font-color-alt: $oil;
+// $button-font-tny: rem-calc(11);
+// $button-font-sml: rem-calc(13);
+// $button-font-med: rem-calc(16);
+// $button-font-lrg: rem-calc(20);
+// $button-font-weight: $font-weight-normal;
+// $button-font-align: center;
+
+// We use these to control various hover effects.
+// $button-function-factor: -20%;
+
+// We use these to control button border and hover styles.
+// $button-border-width: 0px;
+// $button-border-style: solid;
+// $button-bg-color: $primary-color;
+// $button-bg-hover: scale-color($button-bg-color, $lightness: $button-function-factor);
+// $button-border-color: $button-bg-hover;
+// $secondary-button-bg-hover: scale-color($secondary-color, $lightness: $button-function-factor);
+// $secondary-button-border-color: $secondary-button-bg-hover;
+// $success-button-bg-hover: scale-color($success-color, $lightness: $button-function-factor);
+// $success-button-border-color: $success-button-bg-hover;
+// $alert-button-bg-hover: scale-color($alert-color, $lightness: $button-function-factor);
+// $alert-button-border-color: $alert-button-bg-hover;
+
+// We use this to set the default radius used throughout the core.
+// $button-radius: $global-radius;
+// $button-round: $global-rounded;
+
+// We use this to set default opacity and cursor for disabled buttons.
+// $button-disabled-opacity: 0.7;
+// $button-disabled-cursor: $cursor-default-value;
+
+// 06. Button Groups
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// Sets the margin for the right side by default, and the left margin if right-to-left direction is used
+// $button-bar-margin-opposite: rem-calc(10);
+// $button-group-border-width: 1px;
+
+// 07. Clearing
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-clearing-classes: $include-html-classes;
+
+// We use these to set the background colors for parts of Clearing.
+// $clearing-bg: $oil;
+// $clearing-caption-bg: $clearing-bg;
+// $clearing-carousel-bg: rgba(51,51,51,0.8);
+// $clearing-img-bg: $clearing-bg;
+
+// We use these to style the close button
+// $clearing-close-color: $iron;
+// $clearing-close-size: 30px;
+
+// We use these to style the arrows
+// $clearing-arrow-size: 12px;
+// $clearing-arrow-color: $clearing-close-color;
+
+// We use these to style captions
+// $clearing-caption-font-color: $iron;
+// $clearing-caption-font-size: 0.875em;
+// $clearing-caption-padding: 10px 30px 20px;
+
+// We use these to make the image and carousel height and style
+// $clearing-active-img-height: 85%;
+// $clearing-carousel-height: 120px;
+// $clearing-carousel-thumb-width: 120px;
+// $clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255);
+
+// 08. Dropdown
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-dropdown-classes: $include-html-classes;
+
+// We use these to controls height and width styles.
+// $f-dropdown-max-width: 200px;
+// $f-dropdown-height: auto;
+// $f-dropdown-max-height: none;
+
+// Used for bottom position
+// $f-dropdown-margin-top: 2px;
+
+// Used for right position
+// $f-dropdown-margin-left: $f-dropdown-margin-top;
+
+// Used for left position
+// $f-dropdown-margin-right: $f-dropdown-margin-top;
+
+// Used for top position
+// $f-dropdown-margin-bottom: $f-dropdown-margin-top;
+
+// We use this to control the background color
+// $f-dropdown-bg: $white;
+
+// We use this to set the border styles for dropdowns.
+// $f-dropdown-border-style: solid;
+// $f-dropdown-border-width: 1px;
+// $f-dropdown-border-color: scale-color($white, $lightness: -20%);
+
+// We use these to style the triangle pip.
+// $f-dropdown-triangle-size: 6px;
+// $f-dropdown-triangle-color: $white;
+// $f-dropdown-triangle-side-offset: 10px;
+
+// We use these to control styles for the list elements.
+// $f-dropdown-list-style: none;
+// $f-dropdown-font-color: $charcoal;
+// $f-dropdown-font-size: rem-calc(14);
+// $f-dropdown-list-padding: rem-calc(5, 10);
+// $f-dropdown-line-height: rem-calc(18);
+// $f-dropdown-list-hover-bg: $smoke;
+// $dropdown-mobile-default-float: 0;
+
+// We use this to control the styles for when the dropdown has custom content.
+// $f-dropdown-content-padding: rem-calc(20);
+
+// Default radius for dropdown.
+// $f-dropdown-radius: $global-radius;
+
+
+// 09. Dropdown Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to set the color of the pip in dropdown buttons
+// $dropdown-button-pip-color: $white;
+// $dropdown-button-pip-color-alt: $oil;
+
+// $button-pip-tny: rem-calc(6);
+// $button-pip-sml: rem-calc(7);
+// $button-pip-med: rem-calc(9);
+// $button-pip-lrg: rem-calc(11);
+
+// We use these to style tiny dropdown buttons
+// $dropdown-button-padding-tny: $button-pip-tny * 7;
+// $dropdown-button-pip-size-tny: $button-pip-tny;
+// $dropdown-button-pip-opposite-tny: $button-pip-tny * 3;
+// $dropdown-button-pip-top-tny: (-$button-pip-tny / 2) + rem-calc(1);
+
+// We use these to style small dropdown buttons
+// $dropdown-button-padding-sml: $button-pip-sml * 7;
+// $dropdown-button-pip-size-sml: $button-pip-sml;
+// $dropdown-button-pip-opposite-sml: $button-pip-sml * 3;
+// $dropdown-button-pip-top-sml: (-$button-pip-sml / 2) + rem-calc(1);
+
+// We use these to style medium dropdown buttons
+// $dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3);
+// $dropdown-button-pip-size-med: $button-pip-med - rem-calc(3);
+// $dropdown-button-pip-opposite-med: $button-pip-med * 2.5;
+// $dropdown-button-pip-top-med: (-$button-pip-med / 2) + rem-calc(2);
+
+// We use these to style large dropdown buttons
+// $dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3);
+// $dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6);
+// $dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5;
+// $dropdown-button-pip-top-lrg: (-$button-pip-lrg / 2) + rem-calc(3);
+
+// 10. Flex Video
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use these to control video container padding and margins
+// $flex-video-padding-top: rem-calc(25);
+// $flex-video-padding-bottom: 67.5%;
+// $flex-video-margin-bottom: rem-calc(16);
+
+// We use this to control widescreen bottom padding
+// $flex-video-widescreen-padding-bottom: 56.34%;
+
+// 11. Forms
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-form-classes: $include-html-classes;
+
+// We use this to set the base for lots of form spacing and positioning styles
+// $form-spacing: rem-calc(16);
+
+// We use these to style the labels in different ways
+// $form-label-pointer: pointer;
+// $form-label-font-size: rem-calc(14);
+// $form-label-font-weight: $font-weight-normal;
+// $form-label-line-height: 1.5;
+// $form-label-font-color: scale-color($black, $lightness: 30%);
+// $form-label-small-transform: capitalize;
+// $form-label-bottom-margin: 0;
+// $input-font-family: inherit;
+// $input-font-color: rgba(0,0,0,0.75);
+// $input-font-size: rem-calc(14);
+// $input-bg-color: $white;
+// $input-focus-bg-color: scale-color($white, $lightness: -2%);
+// $input-border-color: scale-color($white, $lightness: -20%);
+// $input-focus-border-color: scale-color($white, $lightness: -40%);
+// $input-border-style: solid;
+// $input-border-width: 1px;
+// $input-border-radius: $global-radius;
+// $input-disabled-bg: $gainsboro;
+// $input-disabled-cursor: $cursor-default-value;
+// $input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1);
+
+// We use these to style the fieldset border and spacing.
+// $fieldset-border-style: solid;
+// $fieldset-border-width: 1px;
+// $fieldset-border-color: $gainsboro;
+// $fieldset-padding: rem-calc(20);
+// $fieldset-margin: rem-calc(18 0);
+
+// We use these to style the legends when you use them
+// $legend-bg: $white;
+// $legend-font-weight: $font-weight-bold;
+// $legend-padding: rem-calc(0 3);
+
+// We use these to style the prefix and postfix input elements
+// $input-prefix-bg: scale-color($white, $lightness: -5%);
+// $input-prefix-border-color: scale-color($white, $lightness: -20%);
+// $input-prefix-border-size: 1px;
+// $input-prefix-border-type: solid;
+// $input-prefix-overflow: hidden;
+// $input-prefix-font-color: $oil;
+// $input-prefix-font-color-alt: $white;
+
+// We use this setting to turn on/off HTML5 number spinners (the up/down arrows)
+// $input-number-spinners: true;
+
+// We use these to style the error states for inputs and labels
+// $input-error-message-padding: rem-calc(6 9 9);
+// $input-error-message-top: -1px;
+// $input-error-message-font-size: rem-calc(12);
+// $input-error-message-font-weight: $font-weight-normal;
+// $input-error-message-font-style: italic;
+// $input-error-message-font-color: $white;
+// $input-error-message-bg-color: $alert-color;
+// $input-error-message-font-color-alt: $oil;
+
+// We use this to style the glowing effect of inputs when focused
+// $input-include-glowing-effect: true;
+// $glowing-effect-fade-time: 0.45s;
+// $glowing-effect-color: $input-focus-border-color;
+
+// Select variables
+// $select-bg-color: $ghost;
+// $select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%);
+
+// 12. Icon Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// We use these to style the icon-bar and items
+// $include-html-icon-bar-classes: $include-html-classes;
+// $icon-bar-bg: $oil;
+// $icon-bar-font-color: $white;
+// $icon-bar-font-color-hover: $icon-bar-font-color;
+// $icon-bar-font-size: 1rem;
+// $icon-bar-hover-color: $primary-color;
+// $icon-bar-icon-color: $white;
+// $icon-bar-icon-color-hover: $icon-bar-icon-color;
+// $icon-bar-icon-size: 1.875rem;
+// $icon-bar-image-width: 1.875rem;
+// $icon-bar-image-height: 1.875rem;
+// $icon-bar-active-color: $primary-color;
+// $icon-bar-item-padding: 1.25rem;
+
+// 13. Inline Lists
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-inline-list-classes: $include-html-classes;
+
+// We use this to control the margins and padding of the inline list.
+// $inline-list-top-margin: 0;
+// $inline-list-opposite-margin: 0;
+// $inline-list-bottom-margin: rem-calc(17);
+// $inline-list-default-float-margin: rem-calc(-22);
+// $inline-list-default-float-list-margin: rem-calc(22);
+
+// $inline-list-padding: 0;
+
+// We use this to control the overflow of the inline list.
+// $inline-list-overflow: hidden;
+
+// We use this to control the list items
+// $inline-list-display: block;
+
+// We use this to control any elements within list items
+// $inline-list-children-display: block;
+
+// 14. Joyride
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-joyride-classes: $include-html-classes;
+
+// Controlling default Joyride styles
+// $joyride-tip-bg: $oil;
+// $joyride-tip-default-width: 300px;
+// $joyride-tip-padding: rem-calc(18 20 24);
+// $joyride-tip-border: solid 1px $charcoal;
+// $joyride-tip-radius: 4px;
+// $joyride-tip-position-offset: 22px;
+
+// Here, we're setting the tip font styles
+// $joyride-tip-font-color: $white;
+// $joyride-tip-font-size: rem-calc(14);
+// $joyride-tip-header-weight: $font-weight-bold;
+
+// This changes the nub size
+// $joyride-tip-nub-size: 10px;
+
+// This adjusts the styles for the timer when its enabled
+// $joyride-tip-timer-width: 50px;
+// $joyride-tip-timer-height: 3px;
+// $joyride-tip-timer-color: $steel;
+
+// This changes up the styles for the close button
+// $joyride-tip-close-color: $monsoon;
+// $joyride-tip-close-size: 24px;
+// $joyride-tip-close-weight: $font-weight-normal;
+
+// When Joyride is filling the screen, we use this style for the bg
+// $joyride-screenfill: rgba(0,0,0,0.5);
+
+// 15. Keystrokes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-keystroke-classes: $include-html-classes;
+
+// We use these to control text styles.
+// $keystroke-font: "Consolas", "Menlo", "Courier", monospace;
+// $keystroke-font-size: inherit;
+// $keystroke-font-color: $jet;
+// $keystroke-font-color-alt: $white;
+// $keystroke-function-factor: -7%;
+
+// We use this to control keystroke padding.
+// $keystroke-padding: rem-calc(2 4 0);
+
+// We use these to control background and border styles.
+// $keystroke-bg: scale-color($white, $lightness: $keystroke-function-factor);
+// $keystroke-border-style: solid;
+// $keystroke-border-width: 1px;
+// $keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor);
+// $keystroke-radius: $global-radius;
+
+// 16. Labels
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-label-classes: $include-html-classes;
+
+// We use these to style the labels
+// $label-padding: rem-calc(4 8 4);
+// $label-radius: $global-radius;
+
+// We use these to style the label text
+// $label-font-sizing: rem-calc(11);
+// $label-font-weight: $font-weight-normal;
+// $label-font-color: $oil;
+// $label-font-color-alt: $white;
+// $label-font-family: $body-font-family;
+
+// 17. Magellan
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-magellan-classes: $include-html-classes;
+
+// $magellan-bg: $white;
+// $magellan-padding: 0 !important;
+
+// 18. Off-canvas
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-off-canvas-classes: $include-html-classes;
+
+// $tabbar-bg: $oil;
+// $tabbar-height: rem-calc(45);
+// $tabbar-icon-width: $tabbar-height;
+// $tabbar-line-height: $tabbar-height;
+// $tabbar-color: $white;
+// $tabbar-middle-padding: 0 rem-calc(10);
+
+// Off Canvas Divider Styles
+// $tabbar-right-section-border: solid 1px scale-color($tabbar-bg, $lightness: 13%);
+// $tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%);
+
+// Off Canvas Tab Bar Headers
+// $tabbar-header-color: $white;
+// $tabbar-header-weight: $font-weight-bold;
+// $tabbar-header-line-height: $tabbar-height;
+// $tabbar-header-margin: 0;
+
+// Off Canvas Menu Variables
+// $off-canvas-width: rem-calc(250);
+// $off-canvas-bg: $oil;
+// $off-canvas-bg-hover: scale-color($tabbar-bg, $lightness: -30%);
+
+// Off Canvas Menu List Variables
+// $off-canvas-label-padding: 0.3rem rem-calc(15);
+// $off-canvas-label-color: $aluminum;
+// $off-canvas-label-text-transform: uppercase;
+// $off-canvas-label-font-size: rem-calc(12);
+// $off-canvas-label-font-weight: $font-weight-bold;
+// $off-canvas-label-bg: $tuatara;
+// $off-canvas-label-border-top: 1px solid scale-color($tuatara, $lightness: 14%);
+// $off-canvas-label-border-bottom: none;
+// $off-canvas-label-margin:0;
+// $off-canvas-link-padding: rem-calc(10, 15);
+// $off-canvas-link-color: rgba($white, 0.7);
+// $off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%);
+// $off-canvas-back-bg: $tuatara;
+// $off-canvas-back-border-top: $off-canvas-label-border-top;
+// $off-canvas-back-border-bottom: $off-canvas-label-border-bottom;
+// $off-canvas-back-hover-bg: scale-color($off-canvas-back-bg, $lightness: -30%);
+// $off-canvas-back-hover-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%);
+// $off-canvas-back-hover-border-bottom: none;
+
+// Off Canvas Menu Icon Variables
+// $tabbar-menu-icon-color: $white;
+// $tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%);
+
+// $tabbar-menu-icon-text-indent: rem-calc(35);
+// $tabbar-menu-icon-width: $tabbar-height;
+// $tabbar-menu-icon-height: $tabbar-height;
+// $tabbar-menu-icon-padding: 0;
+
+// $tabbar-hamburger-icon-width: rem-calc(16);
+// $tabbar-hamburger-icon-left: false;
+// $tabbar-hamburger-icon-top: false;
+// $tabbar-hamburger-icon-thickness: 1px;
+// $tabbar-hamburger-icon-gap: 6px;
+
+// Off Canvas Back-Link Overlay
+// $off-canvas-overlay-transition: background 300ms ease;
+// $off-canvas-overlay-cursor: pointer;
+// $off-canvas-overlay-box-shadow: -4px 0 4px rgba($black, 0.5), 4px 0 4px rgba($black, 0.5);
+// $off-canvas-overlay-background: rgba($white, 0.2);
+// $off-canvas-overlay-background-hover: rgba($white, 0.05);
+
+// Transition Variables
+// $menu-slide: "transform 500ms ease";
+
+// 19. Orbit
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-orbit-classes: $include-html-classes;
+
+// We use these to control the caption styles
+// $orbit-container-bg: none;
+// $orbit-caption-bg: rgba(51,51,51, 0.8);
+// $orbit-caption-font-color: $white;
+// $orbit-caption-font-size: rem-calc(14);
+// $orbit-caption-position: "bottom"; // Supported values: "bottom", "under"
+// $orbit-caption-padding: rem-calc(10 14);
+// $orbit-caption-height: auto;
+
+// We use these to control the left/right nav styles
+// $orbit-nav-bg: transparent;
+// $orbit-nav-bg-hover: rgba(0,0,0,0.3);
+// $orbit-nav-arrow-color: $white;
+// $orbit-nav-arrow-color-hover: $white;
+
+// We use these to control the timer styles
+// $orbit-timer-bg: rgba(255,255,255,0.3);
+// $orbit-timer-show-progress-bar: true;
+
+// We use these to control the bullet nav styles
+// $orbit-bullet-nav-color: $iron;
+// $orbit-bullet-nav-color-active: $aluminum;
+// $orbit-bullet-radius: rem-calc(9);
+
+// We use these to controls the style of slide numbers
+// $orbit-slide-number-bg: rgba(0,0,0,0);
+// $orbit-slide-number-font-color: $white;
+// $orbit-slide-number-padding: rem-calc(5);
+
+// Hide controls on small
+// $orbit-nav-hide-for-small: true;
+// $orbit-bullet-hide-for-small: true;
+// $orbit-timer-hide-for-small: true;
+
+// Graceful Loading Wrapper and preloader
+// $wrapper-class: "slideshow-wrapper";
+// $preloader-class: "preloader";
+
+// 20. Pagination
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-pagination-classes: $include-html-classes;
+
+// We use these to control the pagination container
+// $pagination-height: rem-calc(24);
+// $pagination-margin: rem-calc(-5);
+
+// We use these to set the list-item properties
+// $pagination-li-float: $default-float;
+// $pagination-li-height: rem-calc(24);
+// $pagination-li-font-color: $jet;
+// $pagination-li-font-size: rem-calc(14);
+// $pagination-li-margin: rem-calc(5);
+
+// We use these for the pagination anchor links
+// $pagination-link-pad: rem-calc(1 10 1);
+// $pagination-link-font-color: $aluminum;
+// $pagination-link-active-bg: scale-color($white, $lightness: -10%);
+
+// We use these for disabled anchor links
+// $pagination-link-unavailable-cursor: default;
+// $pagination-link-unavailable-font-color: $aluminum;
+// $pagination-link-unavailable-bg-active: transparent;
+
+// We use these for currently selected anchor links
+// $pagination-link-current-background: $primary-color;
+// $pagination-link-current-font-color: $white;
+// $pagination-link-current-font-weight: $font-weight-bold;
+// $pagination-link-current-cursor: default;
+// $pagination-link-current-active-bg: $primary-color;
+
+// 21. Panels
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-panel-classes: $include-html-classes;
+
+// We use these to control the background and border styles
+// $panel-bg: scale-color($white, $lightness: -5%);
+// $panel-border-style: solid;
+// $panel-border-size: 1px;
+
+// We use this % to control how much we darken things on hover
+// $panel-function-factor: -11%;
+// $panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor);
+
+// We use these to set default inner padding and bottom margin
+// $panel-margin-bottom: rem-calc(20);
+// $panel-padding: rem-calc(20);
+
+// We use these to set default font colors
+// $panel-font-color: $oil;
+// $panel-font-color-alt: $white;
+
+// $panel-header-adjust: true;
+// $callout-panel-link-color: $primary-color;
+
+// 22. Pricing Tables
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-pricing-classes: $include-html-classes;
+
+// We use this to control the border color
+// $price-table-border: solid 1px $gainsboro;
+
+// We use this to control the bottom margin of the pricing table
+// $price-table-margin-bottom: rem-calc(20);
+
+// We use these to control the title styles
+// $price-title-bg: $oil;
+// $price-title-padding: rem-calc(15 20);
+// $price-title-align: center;
+// $price-title-color: $smoke;
+// $price-title-weight: $font-weight-normal;
+// $price-title-size: rem-calc(16);
+// $price-title-font-family: $body-font-family;
+
+// We use these to control the price styles
+// $price-money-bg: $vapor;
+// $price-money-padding: rem-calc(15 20);
+// $price-money-align: center;
+// $price-money-color: $oil;
+// $price-money-weight: $font-weight-normal;
+// $price-money-size: rem-calc(32);
+// $price-money-font-family: $body-font-family;
+
+// We use these to control the description styles
+// $price-bg: $white;
+// $price-desc-color: $monsoon;
+// $price-desc-padding: rem-calc(15);
+// $price-desc-align: center;
+// $price-desc-font-size: rem-calc(12);
+// $price-desc-weight: $font-weight-normal;
+// $price-desc-line-height: 1.4;
+// $price-desc-bottom-border: dotted 1px $gainsboro;
+
+// We use these to control the list item styles
+// $price-item-color: $oil;
+// $price-item-padding: rem-calc(15);
+// $price-item-align: center;
+// $price-item-font-size: rem-calc(14);
+// $price-item-weight: $font-weight-normal;
+// $price-item-bottom-border: dotted 1px $gainsboro;
+
+// We use these to control the CTA area styles
+// $price-cta-bg: $white;
+// $price-cta-align: center;
+// $price-cta-padding: rem-calc(20 20 0);
+
+// 23. Progress Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use this to set the progress bar height
+// $progress-bar-height: rem-calc(25);
+// $progress-bar-color: $vapor ;
+
+// We use these to control the border styles
+// $progress-bar-border-color: scale-color($white, $lightness: 20%);
+// $progress-bar-border-size: 1px;
+// $progress-bar-border-style: solid;
+// $progress-bar-border-radius: $global-radius;
+
+// We use these to control the margin & padding
+// $progress-bar-pad: rem-calc(2);
+// $progress-bar-margin-bottom: rem-calc(10);
+
+// We use these to set the meter colors
+// $progress-meter-color: $primary-color;
+// $progress-meter-secondary-color: $secondary-color;
+// $progress-meter-success-color: $success-color;
+// $progress-meter-alert-color: $alert-color;
+
+// 24. Range Slider
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-range-slider-classes: $include-html-classes;
+
+// These variables define the slider bar styles
+// $range-slider-bar-width: 100%;
+// $range-slider-bar-height: rem-calc(16);
+
+// $range-slider-bar-border-width: 1px;
+// $range-slider-bar-border-style: solid;
+// $range-slider-bar-border-color: $gainsboro;
+// $range-slider-radius: $global-radius;
+// $range-slider-round: $global-rounded;
+// $range-slider-bar-bg-color: $ghost;
+
+// Vertical bar styles
+// $range-slider-vertical-bar-width: rem-calc(16);
+// $range-slider-vertical-bar-height: rem-calc(200);
+
+// These variables define the slider handle styles
+// $range-slider-handle-width: rem-calc(32);
+// $range-slider-handle-height: rem-calc(22);
+// $range-slider-handle-position-top: rem-calc(-5);
+// $range-slider-handle-bg-color: $primary-color;
+// $range-slider-handle-border-width: 1px;
+// $range-slider-handle-border-style: solid;
+// $range-slider-handle-border-color: none;
+// $range-slider-handle-radius: $global-radius;
+// $range-slider-handle-round: $global-rounded;
+// $range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%);
+// $range-slider-handle-cursor: pointer;
+
+// 25. Reveal
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-reveal-classes: $include-html-classes;
+
+// We use these to control the style of the reveal overlay.
+// $reveal-overlay-bg: rgba($black, .45);
+// $reveal-overlay-bg-old: $black;
+
+// We use these to control the style of the modal itself.
+// $reveal-modal-bg: $white;
+// $reveal-position-top: rem-calc(100);
+// $reveal-default-width: 80%;
+// $reveal-max-width: $row-width;
+// $reveal-modal-padding: rem-calc(20);
+// $reveal-box-shadow: 0 0 10px rgba($black,.4);
+
+// We use these to style the reveal close button
+// $reveal-close-font-size: rem-calc(40);
+// $reveal-close-top: rem-calc(8);
+// $reveal-close-side: rem-calc(11);
+// $reveal-close-color: $base;
+// $reveal-close-weight: $font-weight-bold;
+
+// We use this to set the default radius used throughout the core.
+// $reveal-radius: $global-radius;
+// $reveal-round: $global-rounded;
+
+// We use these to control the modal border
+// $reveal-border-style: solid;
+// $reveal-border-width: 1px;
+// $reveal-border-color: $steel;
+
+// $reveal-modal-class: "reveal-modal";
+// $close-reveal-modal-class: "close-reveal-modal";
+
+// 26. Side Nav
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use this to control padding.
+// $side-nav-padding: rem-calc(14 0);
+
+// We use these to control list styles.
+// $side-nav-list-type: none;
+// $side-nav-list-position: inside;
+// $side-nav-list-margin: rem-calc(0 0 7 0);
+
+// We use these to control link styles.
+// $side-nav-link-color: $primary-color;
+// $side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: 30%);
+// $side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: 30%);
+// $side-nav-link-bg-hover: hsla(0, 0, 0, 0.025);
+// $side-nav-link-margin: 0;
+// $side-nav-link-padding: rem-calc(7 14);
+// $side-nav-font-size: rem-calc(14);
+// $side-nav-font-weight: $font-weight-normal;
+// $side-nav-font-weight-active: $side-nav-font-weight;
+// $side-nav-font-family: $body-font-family;
+// $side-nav-font-family-active: $side-nav-font-family;
+
+// We use these to control heading styles.
+// $side-nav-heading-color: $side-nav-link-color;
+// $side-nav-heading-font-size: $side-nav-font-size;
+// $side-nav-heading-font-weight: bold;
+// $side-nav-heading-text-transform: uppercase;
+
+// We use these to control border styles
+// $side-nav-divider-size: 1px;
+// $side-nav-divider-style: solid;
+// $side-nav-divider-color: scale-color($white, $lightness: 10%);
+
+// 27. Split Buttons
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-button-classes: $include-html-classes;
+
+// We use these to control different shared styles for Split Buttons
+// $split-button-function-factor: 10%;
+// $split-button-pip-color: $white;
+// $split-button-pip-color-alt: $oil;
+// $split-button-active-bg-tint: rgba(0,0,0,0.1);
+
+// We use these to control tiny split buttons
+// $split-button-padding-tny: $button-pip-tny * 10;
+// $split-button-span-width-tny: $button-pip-tny * 6;
+// $split-button-pip-size-tny: $button-pip-tny;
+// $split-button-pip-top-tny: $button-pip-tny * 2;
+// $split-button-pip-default-float-tny: rem-calc(-6);
+
+// We use these to control small split buttons
+// $split-button-padding-sml: $button-pip-sml * 10;
+// $split-button-span-width-sml: $button-pip-sml * 6;
+// $split-button-pip-size-sml: $button-pip-sml;
+// $split-button-pip-top-sml: $button-pip-sml * 1.5;
+// $split-button-pip-default-float-sml: rem-calc(-6);
+
+// We use these to control medium split buttons
+// $split-button-padding-med: $button-pip-med * 9;
+// $split-button-span-width-med: $button-pip-med * 5.5;
+// $split-button-pip-size-med: $button-pip-med - rem-calc(3);
+// $split-button-pip-top-med: $button-pip-med * 1.5;
+// $split-button-pip-default-float-med: rem-calc(-6);
+
+// We use these to control large split buttons
+// $split-button-padding-lrg: $button-pip-lrg * 8;
+// $split-button-span-width-lrg: $button-pip-lrg * 5;
+// $split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6);
+// $split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5);
+// $split-button-pip-default-float-lrg: rem-calc(-6);
+
+// 28. Sub Nav
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-nav-classes: $include-html-classes;
+
+// We use these to control margin and padding
+// $sub-nav-list-margin: rem-calc(-4 0 18);
+// $sub-nav-list-padding-top: rem-calc(4);
+
+// We use this to control the definition
+// $sub-nav-font-family: $body-font-family;
+// $sub-nav-font-size: rem-calc(14);
+// $sub-nav-font-color: $aluminum;
+// $sub-nav-font-weight: $font-weight-normal;
+// $sub-nav-text-decoration: none;
+// $sub-nav-padding: rem-calc(3 16);
+// $sub-nav-border-radius: 3px;
+// $sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%);
+
+// We use these to control the active item styles
+// $sub-nav-active-font-weight: $font-weight-normal;
+// $sub-nav-active-bg: $primary-color;
+// $sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%);
+// $sub-nav-active-color: $white;
+// $sub-nav-active-padding: $sub-nav-padding;
+// $sub-nav-active-cursor: default;
+
+// $sub-nav-item-divider: "";
+// $sub-nav-item-divider-margin: rem-calc(12);
+
+// 29. Switch
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-form-classes: $include-html-classes;
+
+// Controlling border styles and background colors for the switch container
+// $switch-border-color: scale-color($white, $lightness: -20%);
+// $switch-border-style: solid;
+// $switch-border-width: 1px;
+// $switch-bg: $white;
+
+// We use these to control the switch heights for our default classes
+// $switch-height-tny: rem-calc(22);
+// $switch-height-sml: rem-calc(28);
+// $switch-height-med: rem-calc(36);
+// $switch-height-lrg: rem-calc(44);
+// $switch-bottom-margin: rem-calc(20);
+
+// We use these to control default font sizes for our classes.
+// $switch-font-size-tny: 11px;
+// $switch-font-size-sml: 12px;
+// $switch-font-size-med: 14px;
+// $switch-font-size-lrg: 17px;
+// $switch-label-side-padding: 6px;
+
+// We use these to style the switch-paddle
+// $switch-paddle-bg: $white;
+// $switch-paddle-fade-to-color: scale-color($switch-paddle-bg, $lightness: -10%);
+// $switch-paddle-border-color: scale-color($switch-paddle-bg, $lightness: -35%);
+// $switch-paddle-border-width: 1px;
+// $switch-paddle-border-style: solid;
+// $switch-paddle-transition-speed: .1s;
+// $switch-paddle-transition-ease: ease-out;
+// $switch-positive-color: scale-color($success-color, $lightness: 94%);
+// $switch-negative-color: $white-smoke;
+
+// Outline Style for tabbing through switches
+// $switch-label-outline: 1px dotted $jumbo;
+
+// 30. Tables
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-table-classes: $include-html-classes;
+
+// These control the background color for the table and even rows
+// $table-bg: $white;
+// $table-even-row-bg: $snow;
+
+// These control the table cell border style
+// $table-border-style: solid;
+// $table-border-size: 1px;
+// $table-border-color: $gainsboro;
+
+// These control the table head styles
+// $table-head-bg: $white-smoke ;
+// $table-head-font-size: rem-calc(14);
+// $table-head-font-color: $jet;
+// $table-head-font-weight: $font-weight-bold;
+// $table-head-padding: rem-calc(8 10 10);
+
+// These control the row padding and font styles
+// $table-row-padding: rem-calc(9 10);
+// $table-row-font-size: rem-calc(14);
+// $table-row-font-color: $jet;
+// $table-line-height: rem-calc(18);
+
+// These are for controlling the layout, display and margin of tables
+// $table-layout: auto;
+// $table-display: table-cell;
+// $table-margin-bottom: rem-calc(20);
+
+// 31. Tabs
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-tabs-classes: $include-html-classes;
+
+// $tabs-navigation-padding: rem-calc(16);
+// $tabs-navigation-bg-color: $silver ;
+// $tabs-navigation-active-bg-color: $white;
+// $tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%);
+// $tabs-navigation-font-color: $jet;
+// $tabs-navigation-active-font-color: $tabs-navigation-font-color;
+// $tabs-navigation-font-size: rem-calc(16);
+// $tabs-navigation-font-family: $body-font-family;
+
+// $tabs-content-margin-bottom: rem-calc(24);
+// $tabs-content-padding: ($column-gutter/2);
+
+// $tabs-vertical-navigation-margin-bottom: 1.25rem;
+
+// 32. Thumbnails
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-media-classes: $include-html-classes;
+
+// We use these to control border styles
+// $thumb-border-style: solid;
+// $thumb-border-width: 4px;
+// $thumb-border-color: $white;
+// $thumb-box-shadow: 0 0 0 1px rgba($black,.2);
+// $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5);
+
+// Radius and transition speed for thumbs
+// $thumb-radius: $global-radius;
+// $thumb-transition-speed: 200ms;
+
+// 33. Tooltips
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-tooltip-classes: $include-html-classes;
+
+// $has-tip-border-bottom: dotted 1px $iron;
+// $has-tip-font-weight: $font-weight-bold;
+// $has-tip-font-color: $oil;
+// $has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%);
+// $has-tip-font-color-hover: $primary-color;
+// $has-tip-cursor-type: help;
+
+// $tooltip-padding: rem-calc(12);
+// $tooltip-bg: $oil;
+// $tooltip-font-size: rem-calc(14);
+// $tooltip-font-weight: $font-weight-normal;
+// $tooltip-font-color: $white;
+// $tooltip-line-height: 1.3;
+// $tooltip-close-font-size: rem-calc(10);
+// $tooltip-close-font-weight: $font-weight-normal;
+// $tooltip-close-font-color: $monsoon;
+// $tooltip-font-size-sml: rem-calc(14);
+// $tooltip-radius: $global-radius;
+// $tooltip-rounded: $global-rounded;
+// $tooltip-pip-size: 5px;
+// $tooltip-max-width: 300px;
+
+// 34. Top Bar
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-top-bar-classes: $include-html-classes;
+
+// Background color for the top bar
+// $topbar-bg-color: $oil;
+// $topbar-bg: $topbar-bg-color;
+
+// Height and margin
+// $topbar-height: rem-calc(45);
+// $topbar-margin-bottom: 0;
+
+// Controlling the styles for the title in the top bar
+// $topbar-title-weight: $font-weight-normal;
+// $topbar-title-font-size: rem-calc(17);
+
+// Style the top bar dropdown elements
+// $topbar-dropdown-bg: $oil;
+// $topbar-dropdown-link-color: $white;
+// $topbar-dropdown-link-bg: $oil;
+// $topbar-dropdown-link-bg-hover: $oil;
+// $topbar-dropdown-link-weight: $font-weight-normal;
+// $topbar-dropdown-toggle-size: 5px;
+// $topbar-dropdown-toggle-color: $white;
+// $topbar-dropdown-toggle-alpha: 0.4;
+
+// Set the link colors and styles for top-level nav
+// $topbar-link-color: $white;
+// $topbar-link-color-hover: $white;
+// $topbar-link-color-active: $white;
+// $topbar-link-color-active-hover: $white;
+// $topbar-link-weight: $font-weight-normal;
+// $topbar-link-font-size: rem-calc(13);
+// $topbar-link-hover-lightness: -10%; // Darken by 10%
+// $topbar-link-bg: $topbar-bg;
+// $topbar-link-bg-color-hover: $charcoal;
+// $topbar-link-bg-hover: $oil;
+// $topbar-link-bg-active: $primary-color;
+// $topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%);
+// $topbar-link-font-family: $body-font-family;
+// $topbar-link-text-transform: none;
+// $topbar-link-padding: ($topbar-height / 3);
+// $topbar-back-link-size: $h5-font-size;
+// $topbar-link-dropdown-padding: 20px;
+
+// $topbar-button-font-size: 0.75rem;
+// $topbar-button-top: 7px;
+
+// $topbar-dropdown-label-color: $monsoon;
+// $topbar-dropdown-label-text-transform: uppercase;
+// $topbar-dropdown-label-font-weight: $font-weight-bold;
+// $topbar-dropdown-label-font-size: rem-calc(10);
+// $topbar-dropdown-label-bg: $oil;
+
+// Top menu icon styles
+// $topbar-menu-link-transform: uppercase;
+// $topbar-menu-link-font-size: rem-calc(13);
+// $topbar-menu-link-weight: $font-weight-bold;
+// $topbar-menu-link-color: $white;
+// $topbar-menu-icon-color: $white;
+// $topbar-menu-link-color-toggled: $jumbo;
+// $topbar-menu-icon-color-toggled: $jumbo;
+
+// Transitions and breakpoint styles
+// $topbar-transition-speed: 300ms;
+// Using rem-calc for the below breakpoint causes issues with top bar
+// $topbar-breakpoint: #{lower-bound($medium-range)}; // Change to 9999px for always mobile layout
+// $topbar-media-query: $medium-up;
+
+// Divider Styles
+// $topbar-divider-border-bottom: solid 1px scale-color($topbar-bg-color, $lightness: 13%);
+// $topbar-divider-border-top: solid 1px scale-color($topbar-bg-color, $lightness: -50%);
+
+// Sticky Class
+// $topbar-sticky-class: ".sticky";
+// $topbar-arrows: true; //Set false to remove the triangle icon from the menu item
+
+// 36. Visibility Classes
+// - - - - - - - - - - - - - - - - - - - - - - - - -
+
+// $include-html-visibility-classes: $include-html-classes;
+// $include-table-visibility-classes: true;
+// $include-legacy-visibility-classes: true;
+// $include-accessibility-classes: true;
diff --git a/app/styles/app/foundation/scss/foundation/components/_accordion.scss b/app/styles/app/foundation/scss/foundation/components/_accordion.scss
new file mode 100644
index 00000000..6a0a64ed
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_accordion.scss
@@ -0,0 +1,157 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+
+// $include-html-accordion-classes: $include-html-classes !default;
+
+// $accordion-navigation-padding: rem-calc(16) !default;
+// $accordion-navigation-bg-color: $silver !default;
+// $accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%) !default;
+// $accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%) !default;
+// $accordion-navigation-font-color: $jet !default;
+// $accordion-navigation-font-size: rem-calc(16) !default;
+// $accordion-navigation-font-family: $body-font-family !default;
+
+// $accordion-content-padding: ($column-gutter/2) !default;
+// $accordion-content-active-bg-color: $white !default;
+
+
+// // Mixin: accordion-container()
+// // Decription: Responsible for the container component of accordions, generating styles relating to a margin of zero and a clearfix
+// // Explicit Dependencies: a clearfix mixin *is* defined.
+// // Implicit Dependencies: None
+
+// @mixin accordion-container() {
+// @include clearfix;
+// margin-bottom: 0;
+// }
+
+// // Mixin: accordion-navigation( $bg, $hover-bg, $active-bg, $padding, $active_class, $font-color, $font-size, $font-family){
+// // @params $bg-color: [ color or string ]: Specify the background color for the navigation element
+// // @params $hover-bg-color [ color or string ]: Specify the background color for the navigation element when hovered
+// // @params $active-bg [ color or string ]: Specify the background color for the navigation element when clicked and not released.
+// // @params $active_class [ string ]: Specify the class name used to keep track of which accordion tab should be visible
+// // @params $font-color [ color or string ]: Color of the font for accordion
+// // @params $font-size [ number ]: Specifiy the font-size of the text inside the navigation element
+// // @params $font-family [ string ]: Specify the font family for the text of the navigation of the accorion
+
+// @mixin accordion-navigation( $bg: $accordion-navigation-bg-color, $hover-bg: $accordion-navigation-hover-bg-color, $active-bg: $accordion-navigation-active-bg-color, $padding: $accordion-navigation-padding, $active_class: 'active', $font-color: $accordion-navigation-font-color, $font-size: $accordion-navigation-font-size, $font-family: $accordion-navigation-font-family ){
+// display: block;
+// margin-bottom: 0 !important;
+// @if type-of($active_class) != "string" {
+// @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of this navigation component."
+// }
+// @else {
+// &.#{ $active_class } > a {
+// background: $active-bg;
+// }
+// }
+// > a {
+// background: $bg;
+// color: $font-color;
+// @if type-of($padding) != number {
+// @warn "`#{$padding}` was read as #{type-of($padding)}";
+// @if $accordion-navigation-padding != null {
+// @warn "#{$padding} was read as a #{type-of($padding)}";
+// @warn "`#{$padding}` isn't a valid number. $accordion-navigation-padding (#{$accordion-navigation-padding}) will be used instead.)";
+// padding: $accordion-navigation-padding;
+// }
+// @else {
+// @warn "`#{$padding}` isn't a valid number and $accordion-navigation-padding is missing. A value of `null` is returned to not output an invalid value for padding";
+// padding: null;
+// }
+// }
+// @else {
+// padding: $padding;
+// }
+// display: block;
+// font-family: $font-family;
+// @if type-of($font-size) != number {
+// @warn "`#{$font-size}` was read as a #{type-of($font-size)}";
+// @if $accordion-navigation-font-size != null {
+// @warn "`#{$font-size}` is not a valid number. The value of $accordion-navigation-font-size will be used instead (#{$accordion-navigation-font-size}).";
+// font-size: $accordion-navigation-font-size;
+// }
+// @else{
+// @warn "`#{$font-size}` is not a valid number and the default value of $accordion-navigation-font-size is not defined. A value of `null` will be returned to not generate an invalid value for font-size.";
+// font-size: null;
+
+// }
+// }
+// @else {
+// font-size: $font-size;
+// }
+// &:hover {
+// background: $hover-bg;
+// }
+// }
+// }
+
+// // Mixin: accordion-content($bg, $padding, $active-class)
+// // @params $padding [ number ]: Padding for the content of the container
+// // @params $bg [ color ]: Background color for the content when it's visible
+// // @params $active_class [ string ]: Class name used to keep track of which accordion tab should be visible.
+
+// @mixin accordion-content($bg: $accordion-content-active-bg-color, $padding: $accordion-content-padding, $active_class: 'active'){
+// display: none;
+// @if type-of($padding) != "number" {
+// @warn "#{$padding} was read as a #{type-of($padding)}";
+// @if $accordion-content-padding != null {
+// @warn "`#{$padding}` isn't a valid number. $accordion-content-padding used instead";
+// padding: $accordion-content-padding;
+// } @else {
+// @warn "`#{$padding}` isn't a valid number and the default value of $accordion-content-padding is not defined. A value of `null` is returned to not output an invalid value for padding.";
+// padding: null;
+// }
+// } @else {
+// padding: $padding;
+// }
+
+// @if type-of($active_class) != "string" {
+// @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of the content. "
+// }
+// @else {
+// &.#{$active_class} {
+// display: block;
+// background: $bg;
+// }
+// }
+// }
+
+// @include exports("accordion") {
+// @if $include-html-accordion-classes {
+// .accordion {
+// @include clearfix;
+// margin-bottom: 0;
+// .accordion-navigation, dd {
+// display: block;
+// margin-bottom: 0 !important;
+// &.active > a { background: $accordion-navigation-active-bg-color; }
+// > a {
+// background: $accordion-navigation-bg-color;
+// color: $accordion-navigation-font-color;
+// padding: $accordion-navigation-padding;
+// display: block;
+// font-family: $accordion-navigation-font-family;
+// font-size: $accordion-navigation-font-size;
+// &:hover { background: $accordion-navigation-hover-bg-color; }
+// }
+
+// > .content {
+// display: none;
+// padding: $accordion-content-padding;
+// &.active {
+// display: block;
+// background: $accordion-content-active-bg-color;
+// }
+// }
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_alert-boxes.scss b/app/styles/app/foundation/scss/foundation/components/_alert-boxes.scss
new file mode 100644
index 00000000..6ba218b5
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_alert-boxes.scss
@@ -0,0 +1,128 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // Alert Box Variables
+// //
+// $include-html-alert-classes: $include-html-classes !default;
+
+// // We use this to control alert padding.
+// $alert-padding-top: rem-calc(14) !default;
+// $alert-padding-default-float: $alert-padding-top !default;
+// $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10) !default;
+// $alert-padding-bottom: $alert-padding-top !default;
+
+// // We use these to control text style.
+// $alert-font-weight: $font-weight-normal !default;
+// $alert-font-size: rem-calc(13) !default;
+// $alert-font-color: $white !default;
+// $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%) !default;
+
+// // We use this for close hover effect.
+// $alert-function-factor: -14% !default;
+
+// // We use these to control border styles.
+// $alert-border-style: solid !default;
+// $alert-border-width: 1px !default;
+// $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor) !default;
+// $alert-bottom-margin: rem-calc(20) !default;
+
+// // We use these to style the close buttons
+// $alert-close-color: $oil !default;
+// $alert-close-top: 50% !default;
+// $alert-close-position: rem-calc(4) !default;
+// $alert-close-font-size: rem-calc(22) !default;
+// $alert-close-opacity: 0.3 !default;
+// $alert-close-opacity-hover: 0.5 !default;
+// $alert-close-padding: 9px 6px 4px !default;
+// $alert-close-background: inherit !default;
+
+// // We use this to control border radius
+// $alert-radius: $global-radius !default;
+
+// $alert-transition-speed: 300ms !default;
+// $alert-transition-ease: ease-out !default;
+
+// //
+// // Alert Mixins
+// //
+
+// // We use this mixin to create a default alert base.
+// @mixin alert-base {
+// border-style: $alert-border-style;
+// border-width: $alert-border-width;
+// display: block;
+// font-weight: $alert-font-weight;
+// margin-bottom: $alert-bottom-margin;
+// position: relative;
+// padding: $alert-padding-top $alert-padding-opposite-direction $alert-padding-bottom $alert-padding-default-float;
+// font-size: $alert-font-size;
+// @include single-transition(opacity, $alert-transition-speed, $alert-transition-ease)
+// }
+
+// // We use this mixin to add alert styles
+// //
+// // $bg - The background of the alert. Default: $primary-color.
+// @mixin alert-style($bg:$primary-color) {
+
+// // This finds the lightness percentage of the background color.
+// $bg-lightness: lightness($bg);
+
+// // We control which background color and border come through.
+// background-color: $bg;
+// border-color: scale-color($bg, $lightness: $alert-function-factor);
+
+// // We control the text color for you based on the background color.
+// @if $bg-lightness > 70% { color: $alert-font-color-alt; }
+// @else { color: $alert-font-color; }
+
+// }
+
+// // We use this to create the close button.
+// @mixin alert-close {
+// font-size: $alert-close-font-size;
+// padding: $alert-close-padding;
+// line-height: 0;
+// position: absolute;
+// top: $alert-close-top;
+// margin-top: -($alert-close-font-size / 2);
+// #{$opposite-direction}: $alert-close-position;
+// color: $alert-close-color;
+// opacity: $alert-close-opacity;
+// background: $alert-close-background;
+// &:hover,
+// &:focus { opacity: $alert-close-opacity-hover; }
+// }
+
+// // We use this to quickly create alerts with a single mixin.
+// //
+// // $bg - Background of alert. Default: $primary-color.
+// // $radius - Radius of alert box. Default: false.
+// @mixin alert($bg:$primary-color, $radius:false) {
+// @include alert-base;
+// @include alert-style($bg);
+// @include radius($radius);
+// }
+
+// @include exports("alert-box") {
+// @if $include-html-alert-classes {
+// .alert-box {
+// @include alert;
+
+// .close { @include alert-close; }
+
+// &.radius { @include radius($alert-radius); }
+// &.round { @include radius($global-rounded); }
+
+// &.success { @include alert-style($success-color); }
+// &.alert { @include alert-style($alert-color); }
+// &.secondary { @include alert-style($secondary-color); }
+// &.warning { @include alert-style($warning-color); }
+// &.info { @include alert-style($info-color); }
+// &.alert-close { opacity: 0}
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_block-grid.scss b/app/styles/app/foundation/scss/foundation/components/_block-grid.scss
new file mode 100644
index 00000000..62e49765
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_block-grid.scss
@@ -0,0 +1,132 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // Block Grid Variables
+// //
+// $include-html-block-grid-classes: $include-html-classes !default;
+// $include-xl-html-block-grid-classes: false !default;
+
+// // We use this to control the maximum number of block grid elements per row
+// $block-grid-elements: 12 !default;
+// $block-grid-default-spacing: rem-calc(20) !default;
+
+// $align-block-grid-to-grid: false !default;
+// @if $align-block-grid-to-grid {
+// $block-grid-default-spacing: $column-gutter;
+// }
+
+// // Enables media queries for block-grid classes. Set to false if writing semantic HTML.
+// $block-grid-media-queries: true !default;
+
+// //
+// // Block Grid Mixins
+// //
+
+// // Create a custom block grid
+// //
+// // $per-row - # of items to display per row. Default: false.
+// // $spacing - # of ems to use as padding on each block item. Default: rem-calc(20).
+// // $base-style - Apply a base style to block grid. Default: true.
+// @mixin block-grid(
+// $per-row:false,
+// $spacing:$block-grid-default-spacing,
+// $include-spacing:true,
+// $base-style:true) {
+
+// @if $base-style {
+// display: block;
+// padding: 0;
+// @if $align-block-grid-to-grid {
+// margin: 0;
+// } @else {
+// margin: 0 (-$spacing/2);
+// }
+// @include clearfix;
+
+// &>li {
+// display: block;
+// height: auto;
+// float: $default-float;
+// @if $include-spacing {
+// padding: 0 ($spacing/2) $spacing;
+// }
+// }
+// }
+
+// @if $per-row {
+// &>li {
+// width: 100%/$per-row;
+// @if $include-spacing {
+// padding: 0 ($spacing/2) $spacing;
+// }
+// list-style: none;
+
+// &:nth-of-type(1n) { clear: none; }
+// &:nth-of-type(#{$per-row}n+1) { clear: both; }
+// @if $align-block-grid-to-grid {
+// @include block-grid-aligned($per-row, $spacing);
+// }
+// }
+// }
+// }
+
+// @mixin block-grid-aligned($per-row, $spacing) {
+// @for $i from 1 through $block-grid-elements {
+// @if $per-row >= $i {
+// $grid-column: '+' + $i;
+// @if $per-row == $i {
+// $grid-column: '';
+// }
+// &:nth-of-type(#{$per-row}n#{unquote($grid-column)}) {
+// padding-left: ($spacing - (($spacing / $per-row) * ($per-row - ($i - 1))));
+// padding-right: ($spacing - (($spacing / $per-row) * $i));
+// }
+// }
+// }
+// }
+
+// // Generate presentational markup for block grid.
+// //
+// // $size - Name of class to use, i.e. "large" will generate .large-block-grid-1, .large-block-grid-2, etc.
+// @mixin block-grid-html-classes($size,$include-spacing) {
+// @for $i from 1 through $block-grid-elements {
+// .#{$size}-block-grid-#{($i)} {
+// @include block-grid($i,$block-grid-default-spacing,$include-spacing,false);
+// }
+// }
+// }
+
+// @include exports("block-grid") {
+// @if $include-html-block-grid-classes {
+
+// [class*="block-grid-"] { @include block-grid; }
+
+// @if $block-grid-media-queries {
+// @media #{$small-up} {
+// @include block-grid-html-classes($size:small,$include-spacing:false);
+// }
+
+// @media #{$medium-up} {
+// @include block-grid-html-classes($size:medium,$include-spacing:false);
+// }
+
+// @media #{$large-up} {
+// @include block-grid-html-classes($size:large,$include-spacing:false);
+// }
+
+// @if $include-xl-html-block-grid-classes {
+// @media #{$xlarge-up} {
+// @include block-grid-html-classes($size:xlarge,$include-spacing:false);
+// }
+
+// @media #{$xxlarge-up} {
+// @include block-grid-html-classes($size:xxlarge,$include-spacing:false);
+// }
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_breadcrumbs.scss b/app/styles/app/foundation/scss/foundation/components/_breadcrumbs.scss
new file mode 100644
index 00000000..4403cbe4
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_breadcrumbs.scss
@@ -0,0 +1,132 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // Breadcrumb Variables
+// //
+// $include-html-nav-classes: $include-html-classes !default;
+
+// // We use this to set the background color for the breadcrumb container.
+// $crumb-bg: scale-color($secondary-color, $lightness: 55%) !default;
+
+// // We use these to set the padding around the breadcrumbs.
+// $crumb-padding: rem-calc(9 14 9) !default;
+// $crumb-side-padding: rem-calc(12) !default;
+
+// // We use these to control border styles.
+// $crumb-function-factor: -10% !default;
+// $crumb-border-size: 1px !default;
+// $crumb-border-style: solid !default;
+// $crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor) !default;
+// $crumb-radius: $global-radius !default;
+
+// // We use these to set various text styles for breadcrumbs.
+// $crumb-font-size: rem-calc(11) !default;
+// $crumb-font-color: $primary-color !default;
+// $crumb-font-color-current: $oil !default;
+// $crumb-font-color-unavailable: $aluminum !default;
+// $crumb-font-transform: uppercase !default;
+// $crumb-link-decor: underline !default;
+
+// // We use these to control the slash between breadcrumbs
+// $crumb-slash-color: $base !default;
+// $crumb-slash: "/" !default;
+
+// //
+// // Breadcrumb Mixins
+// //
+
+// // We use this mixin to create a container around our breadcrumbs
+// @mixin crumb-container {
+// display: block;
+// padding: $crumb-padding;
+// overflow: hidden;
+// margin-#{$default-float}: 0;
+// list-style: none;
+// border-style: $crumb-border-style;
+// border-width: $crumb-border-size;
+
+// // We control which background color and border come through.
+// background-color: $crumb-bg;
+// border-color: $crumb-border-color;
+// }
+
+// // We use this mixin to create breadcrumb styles from list items.
+// @mixin crumbs {
+
+// // A normal state will make the links look and act like clickable breadcrumbs.
+// margin: 0;
+// float: $default-float;
+// font-size: $crumb-font-size;
+// line-height: $crumb-font-size;
+// text-transform: $crumb-font-transform;
+// color: $crumb-font-color;
+
+// &:hover a, &:focus a { text-decoration: $crumb-link-decor; }
+
+// a {
+// color: $crumb-font-color;
+// }
+
+// // Current is for the link of the current page
+// &.current {
+// cursor: $cursor-default-value;
+// color: $crumb-font-color-current;
+// a {
+// cursor: $cursor-default-value;
+// color: $crumb-font-color-current;
+// }
+
+// &:hover, &:hover a,
+// &:focus, &:focus a { text-decoration: none; }
+// }
+
+// // Unavailable removed color and link styles so it looks inactive.
+// &.unavailable {
+// color: $crumb-font-color-unavailable;
+// a { color: $crumb-font-color-unavailable; }
+
+// &:hover,
+// &:hover a,
+// &:focus,
+// a:focus {
+// text-decoration: none;
+// color: $crumb-font-color-unavailable;
+// cursor: $cursor-default-value;
+// }
+// }
+
+// &:before {
+// content: "#{$crumb-slash}";
+// color: $crumb-slash-color;
+// margin: 0 $crumb-side-padding;
+// position: relative;
+// top: 1px;
+// }
+
+// &:first-child:before {
+// content: " ";
+// margin: 0;
+// }
+// }
+
+// @include exports("breadcrumbs") {
+// @if $include-html-nav-classes {
+// .breadcrumbs {
+// @include crumb-container;
+// @include radius($crumb-radius);
+
+// &>* {
+// @include crumbs;
+// }
+// }
+// }
+// }
+
+// /* Accessibility - hides the forward slash */
+// [aria-label="breadcrumbs"] [aria-hidden="true"]:after {
+// content: "/";
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_button-groups.scss b/app/styles/app/foundation/scss/foundation/components/_button-groups.scss
new file mode 100644
index 00000000..2597ac35
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_button-groups.scss
@@ -0,0 +1,197 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "buttons";
+
+// //
+// // Button Group Variables
+// //
+// $include-html-button-classes: $include-html-classes !default;
+
+// // Sets the margin for the right side by default, and the left margin if right-to-left direction is used
+// $button-bar-margin-opposite: rem-calc(10) !default;
+// $button-group-border-width: 1px !default;
+
+// //
+// // Button Group Mixins
+// //
+
+// // We use this to add styles for a button group container
+// @mixin button-group-container($styles:true, $float:false) {
+// @if $styles {
+// list-style: none;
+// margin: 0;
+// #{$default-float}: 0;
+// @include clearfix();
+// }
+// @if $float {
+// float: #{$default-float};
+// margin-#{$opposite-direction}: $button-bar-margin-opposite;
+// & div { overflow: hidden; }
+// }
+// }
+
+// // We use this to control styles for button groups
+// @mixin button-group-style($radius:false, $even:false, $float:false, $orientation:horizontal) {
+
+// > button, .button {
+// border-#{$default-float}: $button-group-border-width solid;
+// border-color: rgba(255, 255, 255, 0.5);
+// }
+
+// &:first-child {
+// button, .button {
+// border-#{$default-float}: 0;
+// }
+// }
+
+// // We use this to control the flow, or remove those styles completely.
+// @if $float {
+// margin: 0;
+// float: $float;
+// display: list-item;
+// // Make sure the first child doesn't get the negative margin.
+// &:first-child { margin-#{$default-float}: 0; }
+// }
+// @else {
+// margin: 0 -2px;
+// display: inline-block;
+// }
+
+// @if $orientation == vertical {
+// display:block;
+// margin:0;
+// > button, .button {
+// border-top: $button-group-border-width solid;
+// border-color: rgba(255, 255, 255, 0.5);
+// border-left-width: 0;
+// margin:0;
+// display: block;
+// }
+
+// &:first-child {
+// button, .button {
+// border-top: 0;
+// }
+// }
+// }
+
+// // We use these to control left and right radius on first/last buttons in the group.
+// @if $radius == true {
+// &,
+// & > a,
+// & > button,
+// & > .button { @include radius(0); }
+// &:first-child,
+// &:first-child > a,
+// &:first-child > button,
+// &:first-child > .button {
+// @if $orientation == vertical {
+// @include side-radius(top, $button-radius);
+// }
+// @else {
+// @include side-radius($default-float, $button-radius);
+// }
+// }
+// &:last-child,
+// &:last-child > a,
+// &:last-child > button,
+// &:last-child > .button {
+// @if $orientation == vertical {
+// @include side-radius(bottom, $button-radius);
+// }
+// @else {
+// @include side-radius($opposite-direction, $button-radius);
+// }
+// }
+// }
+// @else if $radius {
+// &,
+// & > a,
+// & > button,
+// & > .button { @include radius(0); }
+// &:first-child,
+// &:first-child > a,
+// &:first-child > button,
+// &:first-child > .button {
+// @if $orientation == vertical {
+// @include side-radius(top, $radius);
+// }
+// @else {
+// @include side-radius($default-float, $radius);
+// }
+// }
+// &:last-child,
+// &:last-child > a,
+// &:last-child > button,
+// &:last-child > .button {
+// @if $orientation == vertical {
+// @include side-radius(bottom, $radius);
+// }
+// @else {
+// @include side-radius($opposite-direction, $radius);
+// }
+// }
+// }
+
+// // We use this to make the buttons even width across their container
+// @if $even {
+// width: percentage((100/$even) / 100);
+// button, .button { width: 100%; }
+// }
+// }
+
+// @include exports("button-group") {
+// @if $include-html-button-classes {
+// .button-group { @include button-group-container;
+
+// & > li { @include button-group-style(); }
+
+// &.stack {
+// & > li { @include button-group-style($orientation:vertical); float: none; }
+// }
+
+// &.stack-for-small {
+// & > li {
+// @include button-group-style($orientation:horizontal);
+// @media #{$small-only} {
+// @include button-group-style($orientation:vertical);
+// }
+// }
+// }
+
+// &.radius > * { @include button-group-style($radius:$button-radius, $float:null); }
+// &.radius.stack > * { @include button-group-style($radius:$button-radius, $float:null, $orientation:vertical); }
+// &.radius.stack-for-small > * {
+// @media #{$medium-up} {
+// @include button-group-style($radius:$button-radius, $orientation:horizontal);
+// }
+// @media #{$small-only} {
+// @include button-group-style($radius:$button-radius, $orientation:vertical);
+// }
+// }
+
+// &.round > * { @include button-group-style($radius:$button-round, $float:null); }
+// &.round.stack > * { @include button-group-style($radius:$button-med, $float:null, $orientation:vertical); }
+// &.round.stack-for-small > * {
+// @media #{$medium-up} {
+// @include button-group-style($radius:$button-round, $orientation:horizontal);
+// }
+// @media #{$small-only} {
+// @include button-group-style($radius:$button-med, $orientation:vertical);
+// }
+// }
+
+// @for $i from 2 through 8 {
+// &.even-#{$i} li { @include button-group-style($even:$i, $float:null); }
+// }
+// }
+
+// .button-bar {
+// @include clearfix;
+// .button-group { @include button-group-container($styles:false, $float:true); }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_buttons.scss b/app/styles/app/foundation/scss/foundation/components/_buttons.scss
new file mode 100644
index 00000000..c7e7d455
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_buttons.scss
@@ -0,0 +1,259 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-button-classes: $include-html-classes !default;
+
+// // We use these to build padding for buttons.
+// $button-tny: rem-calc(10) !default;
+// $button-sml: rem-calc(14) !default;
+// $button-med: rem-calc(16) !default;
+// $button-lrg: rem-calc(18) !default;
+
+// // We use this to control the display property.
+// $button-display: inline-block !default;
+// $button-margin-bottom: rem-calc(20) !default;
+
+// // We use these to control button text styles.
+// $button-font-family: $body-font-family !default;
+// $button-font-color: $white !default;
+// $button-font-color-alt: $oil !default;
+// $button-font-tny: rem-calc(11) !default;
+// $button-font-sml: rem-calc(13) !default;
+// $button-font-med: rem-calc(16) !default;
+// $button-font-lrg: rem-calc(20) !default;
+// $button-font-weight: $font-weight-normal !default;
+// $button-font-align: center !default;
+
+// // We use these to control various hover effects.
+// $button-function-factor: -20% !default;
+
+// // We use these to control button border styles.
+// $button-border-width: 0 !default;
+// $button-border-style: solid !default;
+// $button-bg-color: $primary-color !default;
+// $button-bg-hover: scale-color($button-bg-color, $lightness: $button-function-factor) !default;
+// $button-border-color: $button-bg-hover !default;
+// $secondary-button-bg-hover: scale-color($secondary-color, $lightness: $button-function-factor) !default;
+// $secondary-button-border-color: $secondary-button-bg-hover !default;
+// $success-button-bg-hover: scale-color($success-color, $lightness: $button-function-factor) !default;
+// $success-button-border-color: $success-button-bg-hover !default;
+// $alert-button-bg-hover: scale-color($alert-color, $lightness: $button-function-factor) !default;
+// $alert-button-border-color: $alert-button-bg-hover !default;
+// $warning-button-bg-hover: scale-color($warning-color, $lightness: $button-function-factor) !default;
+// $warning-button-border-color: $warning-button-bg-hover !default;
+// $info-button-bg-hover: scale-color($info-color, $lightness: $button-function-factor) !default;
+// $info-button-border-color: $info-button-bg-hover !default;
+
+// // We use this to set the default radius used throughout the core.
+// $button-radius: $global-radius !default;
+// $button-round: $global-rounded !default;
+
+// // We use this to set default opacity and cursor for disabled buttons.
+// $button-disabled-opacity: 0.7 !default;
+// $button-disabled-cursor: $cursor-default-value !default;
+
+
+// //
+// // @MIXIN
+// //
+// // We use this mixin to create a default button base.
+// //
+// // $style - Sets base styles. Can be set to false. Default: true.
+// // $display - Used to control display property. Default: $button-display || inline-block
+
+// @mixin button-base($style:true, $display:$button-display) {
+// @if $style {
+// border-style: $button-border-style;
+// border-width: $button-border-width;
+// cursor: $cursor-pointer-value;
+// font-family: $button-font-family;
+// font-weight: $button-font-weight;
+// line-height: normal;
+// margin: 0 0 $button-margin-bottom;
+// position: relative;
+// text-decoration: none;
+// text-align: $button-font-align;
+// -webkit-appearance: none;
+// border-radius:0;
+// }
+// @if $display { display: $display; }
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to add button size styles
+// //
+// // $padding - Used to build padding for buttons Default: $button-med ||= rem-calc(12)
+// // $full-width - We can set $full-width:true to remove side padding extend width - Default: false
+
+// @mixin button-size($padding:$button-med, $full-width:false) {
+
+// // We control which padding styles come through,
+// // these can be turned off by setting $padding:false
+// @if $padding {
+// padding-top: $padding;
+// padding-#{$opposite-direction}: $padding * 2;
+// padding-bottom: $padding + rem-calc(1);
+// padding-#{$default-float}: $padding * 2;
+
+// // We control the font-size based on mixin input.
+// @if $padding == $button-med { font-size: $button-font-med; }
+// @else if $padding == $button-tny { font-size: $button-font-tny; }
+// @else if $padding == $button-sml { font-size: $button-font-sml; }
+// @else if $padding == $button-lrg { font-size: $button-font-lrg; }
+// }
+
+// // We can set $full-width:true to remove side padding extend width.
+// @if $full-width {
+// // We still need to check if $padding is set.
+// @if $padding {
+// padding-top: $padding;
+// padding-bottom: $padding + rem-calc(1);
+// } @else if $padding == false {
+// padding-top:0;
+// padding-bottom:0;
+// }
+// padding-right: 0;
+// padding-left: 0;
+// width: 100%;
+// }
+// }
+
+// // @MIXIN
+// //
+// // we use this mixin to create the button hover and border colors
+
+// // @MIXIN
+// //
+// // We use this mixin to add button color styles
+// //
+// // $bg - Background color. We can set $bg:false for a transparent background. Default: $primary-color.
+// // $radius - If true, set to button radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default: true
+// // $disabled - We can set $disabled:true to create a disabled transparent button. Default: false
+// // $bg-hover - Button Hover Background Color. Default: $button-bg-hover
+// // $border-color - Button Border Color. Default: $button-border-color
+// @mixin button-style($bg:$button-bg-color, $radius:false, $disabled:false, $bg-hover:null, $border-color:null) {
+
+// // We control which background styles are used,
+// // these can be removed by setting $bg:false
+// @if $bg {
+
+// @if $bg-hover == null {
+// $bg-hover: if($bg == $button-bg-color, $button-bg-hover, scale-color($bg, $lightness: $button-function-factor));
+// }
+
+// @if $border-color == null {
+// $border-color: if($bg == $button-bg-color, $button-border-color, scale-color($bg, $lightness: $button-function-factor));
+// }
+
+// // This find the lightness percentage of the background color.
+// $bg-lightness: lightness($bg);
+// $bg-hover-lightness: lightness($bg-hover);
+
+// background-color: $bg;
+// border-color: $border-color;
+// &:hover,
+// &:focus { background-color: $bg-hover; }
+
+// // We control the text color for you based on the background color.
+// color: if($bg-lightness > 70%, $button-font-color-alt, $button-font-color);
+
+// &:hover,
+// &:focus {
+// color: if($bg-hover-lightness > 70%, $button-font-color-alt, $button-font-color);
+// }
+// }
+
+// // We can set $disabled:true to create a disabled transparent button.
+// @if $disabled {
+// cursor: $button-disabled-cursor;
+// opacity: $button-disabled-opacity;
+// box-shadow: none;
+// &:hover,
+// &:focus { background-color: $bg; }
+// }
+
+// // We can control how much button radius is used.
+// @if $radius == true { @include radius($button-radius); }
+// @else if $radius { @include radius($radius); }
+
+// }
+
+// // @MIXIN
+// //
+// // We use this to quickly create buttons with a single mixin. As @jaredhardy puts it, "the kitchen sink mixin"
+// //
+// // $padding - Used to build padding for buttons Default: $button-med ||= rem-calc(12)
+// // $bg - Primary color set in settings file. Default: $button-bg.
+// // $radius - If true, set to button radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default:false.
+// // $full-width - We can set $full-width:true to remove side padding extend width. Default:false.
+// // $disabled - We can set $disabled:true to create a disabled transparent button. Default:false.
+// // $is-prefix - Not used? Default:false.
+// // $bg-hover - Button Hover Color - Default null - see button-style mixin
+// // $border-color - Button Border Color - Default null - see button-style mixin
+// // $transition - We can control whether or not to include the background-color transition property - Default:true.
+// @mixin button($padding:$button-med, $bg:$button-bg-color, $radius:false, $full-width:false, $disabled:false, $is-prefix:false, $bg-hover:null, $border-color:null, $transition: true) {
+// @include button-base;
+// @include button-size($padding, $full-width);
+// @include button-style($bg, $radius, $disabled, $bg-hover, $border-color);
+
+// @if $transition {
+// @include single-transition(background-color);
+// }
+// }
+
+
+// @include exports("button") {
+// @if $include-html-button-classes {
+
+// // Default styles applied outside of media query
+// button, .button {
+// @include button-base;
+// @include button-size;
+// @include button-style;
+
+// @include single-transition(background-color);
+
+// &.secondary { @include button-style($bg:$secondary-color, $bg-hover:$secondary-button-bg-hover, $border-color:$secondary-button-border-color); }
+// &.success { @include button-style($bg:$success-color, $bg-hover:$success-button-bg-hover, $border-color:$success-button-border-color); }
+// &.alert { @include button-style($bg:$alert-color, $bg-hover:$alert-button-bg-hover, $border-color:$alert-button-border-color); }
+// &.warning { @include button-style($bg:$warning-color, $bg-hover:$warning-button-bg-hover, $border-color:$warning-button-border-color); }
+// &.info { @include button-style($bg:$info-color, $bg-hover:$info-button-bg-hover, $border-color:$info-button-border-color); }
+
+// &.large { @include button-size($padding:$button-lrg); }
+// &.small { @include button-size($padding:$button-sml); }
+// &.tiny { @include button-size($padding:$button-tny); }
+// &.expand { @include button-size($padding:null,$full-width:true); }
+
+// &.left-align { text-align: left; text-indent: rem-calc(12); }
+// &.right-align { text-align: right; padding-right: rem-calc(12); }
+
+// &.radius { @include button-style($bg:false, $radius:true); }
+// &.round { @include button-style($bg:false, $radius:$button-round); }
+
+// &.disabled, &[disabled] { @include button-style($bg:$button-bg-color, $disabled:true, $bg-hover:$button-bg-hover, $border-color:$button-border-color);
+// &.secondary { @include button-style($bg:$secondary-color, $disabled:true, $bg-hover:$secondary-button-bg-hover, $border-color:$secondary-button-border-color); }
+// &.success { @include button-style($bg:$success-color, $disabled:true, $bg-hover:$success-button-bg-hover, $border-color:$success-button-border-color); }
+// &.alert { @include button-style($bg:$alert-color, $disabled:true, $bg-hover:$alert-button-bg-hover, $border-color:$alert-button-border-color); }
+// &.warning { @include button-style($bg:$warning-color, $disabled:true, $bg-hover:$warning-button-bg-hover, $border-color:$warning-button-border-color); }
+// &.info { @include button-style($bg:$info-color, $disabled:true, $bg-hover:$info-button-bg-hover, $border-color:$info-button-border-color); }
+// }
+// }
+
+// //firefox 2px fix
+// button::-moz-focus-inner {border:0; padding:0;}
+
+// @media #{$medium-up} {
+// button, .button {
+// @include button-base($style:false, $display:inline-block);
+// @include button-size($padding:false, $full-width:false);
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_clearing.scss b/app/styles/app/foundation/scss/foundation/components/_clearing.scss
new file mode 100644
index 00000000..767a713f
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_clearing.scss
@@ -0,0 +1,247 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-clearing-classes: $include-html-classes !default;
+
+// // We use these to set the background colors for parts of Clearing.
+// $clearing-bg: $oil !default;
+// $clearing-caption-bg: $clearing-bg !default;
+// $clearing-carousel-bg: rgba(51,51,51,0.8) !default;
+// $clearing-img-bg: $clearing-bg !default;
+
+// // We use these to style the close button
+// $clearing-close-color: $iron !default;
+// $clearing-close-size: 30px !default;
+
+// // We use these to style the arrows
+// $clearing-arrow-size: 12px !default;
+// $clearing-arrow-color: $clearing-close-color !default;
+
+// // We use these to style captions
+// $clearing-caption-font-color: $iron !default;
+// $clearing-caption-font-size: 0.875em !default;
+// $clearing-caption-padding: 10px 30px 20px !default;
+
+// // We use these to make the image and carousel height and style
+// $clearing-active-img-height: 85% !default;
+// $clearing-carousel-height: 120px !default;
+// $clearing-carousel-thumb-width: 120px !default;
+// $clearing-carousel-thumb-active-border: 1px solid rgb(255,255,255) !default;
+
+// @include exports("clearing") {
+// @if $include-html-clearing-classes {
+// // We decided to not create a mixin for Clearing because it relies
+// // on predefined classes and structure to work properly.
+// // The variables above should give enough control.
+
+// /* Clearing Styles */
+// .clearing-thumbs, #{data('clearing')} {
+// @include clearfix;
+// margin-bottom: 0;
+// margin-#{$default-float}: 0;
+// list-style: none;
+
+// li {
+// float: $default-float;
+// margin-#{$opposite-direction}: 10px;
+// }
+
+// &[class*="block-grid-"] li {
+// margin-#{$opposite-direction}: 0;
+// }
+// }
+
+// .clearing-blackout {
+// background: $clearing-bg;
+// position: fixed;
+// width: 100%;
+// height: 100%;
+// top: 0;
+// #{$default-float}: 0;
+// z-index: 998;
+
+// .clearing-close { display: block; }
+// }
+
+// .clearing-container {
+// position: relative;
+// z-index: 998;
+// height: 100%;
+// overflow: hidden;
+// margin: 0;
+// }
+
+// .clearing-touch-label {
+// position: absolute;
+// top: 50%;
+// left: 50%;
+// color: $base;
+// font-size: 0.6em;
+// }
+
+// .visible-img {
+// height: 95%;
+// position: relative;
+
+// img {
+// position: absolute;
+// #{$default-float}: 50%;
+// top: 50%;
+// margin-#{$default-float}: -50%;
+// max-height: 100%;
+// max-width: 100%;
+// }
+// }
+
+// .clearing-caption {
+// color: $clearing-caption-font-color;
+// font-size: $clearing-caption-font-size;
+// line-height: 1.3;
+// margin-bottom: 0;
+// text-align: center;
+// bottom: 0;
+// background: $clearing-caption-bg;
+// width: 100%;
+// padding: $clearing-caption-padding;
+// position: absolute;
+// #{$default-float}: 0;
+// }
+
+// .clearing-close {
+// z-index: 999;
+// padding-#{$default-float}: 20px;
+// padding-top: 10px;
+// font-size: $clearing-close-size;
+// line-height: 1;
+// color: $clearing-close-color;
+// display: none;
+
+// &:hover,
+// &:focus { color: $iron; }
+// }
+
+// .clearing-assembled .clearing-container { height: 100%;
+// .carousel > ul { display: none; }
+// }
+
+// // If you want to show a lightbox, but only have a single image come through as the thumbnail
+// .clearing-feature li {
+// display: none;
+// &.clearing-featured-img {
+// display: block;
+// }
+// }
+
+// // Large screen overrides
+// @media #{$medium-up} {
+// .clearing-main-prev,
+// .clearing-main-next {
+// position: absolute;
+// height: 100%;
+// width: 40px;
+// top: 0;
+// & > span {
+// position: absolute;
+// top: 50%;
+// display: block;
+// width: 0;
+// height: 0;
+// border: solid $clearing-arrow-size;
+// &:hover { opacity: 0.8; }
+// }
+// }
+// .clearing-main-prev {
+// #{$default-float}: 0;
+// & > span {
+// #{$default-float}: 5px;
+// border-color: transparent;
+// border-#{$opposite-direction}-color: $clearing-arrow-color;
+// }
+// }
+// .clearing-main-next {
+// #{$opposite-direction}: 0;
+// & > span {
+// border-color: transparent;
+// border-#{$default-float}-color: $clearing-arrow-color;
+// }
+// }
+
+// .clearing-main-prev.disabled,
+// .clearing-main-next.disabled { opacity: 0.3; }
+
+// .clearing-assembled .clearing-container {
+
+// .carousel {
+// background: $clearing-carousel-bg;
+// height: $clearing-carousel-height;
+// margin-top: 10px;
+// text-align: center;
+
+// & > ul {
+// display: inline-block;
+// z-index: 999;
+// height: 100%;
+// position: relative;
+// float: none;
+
+// li {
+// display: block;
+// width: $clearing-carousel-thumb-width;
+// min-height: inherit;
+// float: $default-float;
+// overflow: hidden;
+// margin-#{$opposite-direction}: 0;
+// padding: 0;
+// position: relative;
+// cursor: $cursor-pointer-value;
+// opacity: 0.4;
+// clear: none;
+
+// &.fix-height {
+// img {
+// height: 100%;
+// max-width: none;
+// }
+// }
+
+// a.th {
+// border: none;
+// box-shadow: none;
+// display: block;
+// }
+
+// img {
+// cursor: $cursor-pointer-value !important;
+// width: 100% !important;
+// }
+
+// &.visible { opacity: 1; }
+// &:hover { opacity: 0.8; }
+// }
+// }
+// }
+
+// .visible-img {
+// background: $clearing-img-bg;
+// overflow: hidden;
+// height: $clearing-active-img-height;
+// }
+// }
+
+// .clearing-close {
+// position: absolute;
+// top: 10px;
+// #{$opposite-direction}: 20px;
+// padding-#{$default-float}: 0;
+// padding-top: 0;
+// }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_dropdown-buttons.scss b/app/styles/app/foundation/scss/foundation/components/_dropdown-buttons.scss
new file mode 100644
index 00000000..63182eea
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_dropdown-buttons.scss
@@ -0,0 +1,130 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-button-classes: $include-html-classes !default;
+
+// // We use these to set the color of the pip in dropdown buttons
+// $dropdown-button-pip-color: $white !default;
+// $dropdown-button-pip-color-alt: $oil !default;
+
+// $button-pip-tny: rem-calc(6) !default;
+// $button-pip-sml: rem-calc(7) !default;
+// $button-pip-med: rem-calc(9) !default;
+// $button-pip-lrg: rem-calc(11) !default;
+
+// // We use these to style tiny dropdown buttons
+// $dropdown-button-padding-tny: $button-pip-tny * 7 !default;
+// $dropdown-button-pip-size-tny: $button-pip-tny !default;
+// $dropdown-button-pip-opposite-tny: $button-pip-tny * 3 !default;
+// $dropdown-button-pip-top-tny: (-$button-pip-tny / 2) + rem-calc(1) !default;
+
+// // We use these to style small dropdown buttons
+// $dropdown-button-padding-sml: $button-pip-sml * 7 !default;
+// $dropdown-button-pip-size-sml: $button-pip-sml !default;
+// $dropdown-button-pip-opposite-sml: $button-pip-sml * 3 !default;
+// $dropdown-button-pip-top-sml: (-$button-pip-sml / 2) + rem-calc(1) !default;
+
+// // We use these to style medium dropdown buttons
+// $dropdown-button-padding-med: $button-pip-med * 6 + rem-calc(3) !default;
+// $dropdown-button-pip-size-med: $button-pip-med - rem-calc(3) !default;
+// $dropdown-button-pip-opposite-med: $button-pip-med * 2.5 !default;
+// $dropdown-button-pip-top-med: (-$button-pip-med / 2) + rem-calc(2) !default;
+
+// // We use these to style large dropdown buttons
+// $dropdown-button-padding-lrg: $button-pip-lrg * 5 + rem-calc(3) !default;
+// $dropdown-button-pip-size-lrg: $button-pip-lrg - rem-calc(6) !default;
+// $dropdown-button-pip-opposite-lrg: $button-pip-lrg * 2.5 !default;
+// $dropdown-button-pip-top-lrg: (-$button-pip-lrg / 2) + rem-calc(3) !default;
+
+// // @mixins
+// //
+// // Dropdown Button Mixin
+// //
+// // We use this mixin to build off of the button mixin and add dropdown button styles
+// //
+// // $padding - Determines the size of button you're working with. Default: medium. Options [tiny, small, medium, large]
+// // $pip-color - Color of the little triangle that points to the dropdown. Default: $white.
+// // $base-style - Add in base-styles. This can be set to false. Default:true
+
+// @mixin dropdown-button($padding:medium, $pip-color:$white, $base-style:true) {
+
+// // We add in base styles, but they can be negated by setting to 'false'.
+// @if $base-style {
+// position: relative;
+// outline: none;
+
+// // This creates the base styles for the triangle pip
+// &::after {
+// position: absolute;
+// content: "";
+// width: 0;
+// height: 0;
+// display: block;
+// border-style: solid;
+// border-color: $dropdown-button-pip-color transparent transparent transparent;
+// top: 50%;
+// }
+// }
+
+// // If we're dealing with tiny buttons, use these styles
+// @if $padding == tiny {
+// padding-#{$opposite-direction}: $dropdown-button-padding-tny;
+// &:after {
+// border-width: $dropdown-button-pip-size-tny;
+// #{$opposite-direction}: $dropdown-button-pip-opposite-tny;
+// margin-top: $dropdown-button-pip-top-tny;
+// }
+// }
+
+// // If we're dealing with small buttons, use these styles
+// @if $padding == small {
+// padding-#{$opposite-direction}: $dropdown-button-padding-sml;
+// &::after {
+// border-width: $dropdown-button-pip-size-sml;
+// #{$opposite-direction}: $dropdown-button-pip-opposite-sml;
+// margin-top: $dropdown-button-pip-top-sml;
+// }
+// }
+
+// // If we're dealing with default (medium) buttons, use these styles
+// @if $padding == medium {
+// padding-#{$opposite-direction}: $dropdown-button-padding-med;
+// &::after {
+// border-width: $dropdown-button-pip-size-med;
+// #{$opposite-direction}: $dropdown-button-pip-opposite-med;
+// margin-top: $dropdown-button-pip-top-med;
+// }
+// }
+
+// // If we're dealing with large buttons, use these styles
+// @if $padding == large {
+// padding-#{$opposite-direction}: $dropdown-button-padding-lrg;
+// &::after {
+// border-width: $dropdown-button-pip-size-lrg;
+// #{$opposite-direction}: $dropdown-button-pip-opposite-lrg;
+// margin-top: $dropdown-button-pip-top-lrg;
+// }
+// }
+
+// // We can control the pip color. We didn't use logic in this case, just set it and forget it.
+// @if $pip-color {
+// &::after { border-color: $pip-color transparent transparent transparent; }
+// }
+// }
+
+// @include exports("dropdown-button") {
+// @if $include-html-button-classes {
+// .dropdown.button, button.dropdown { @include dropdown-button;
+// &.tiny { @include dropdown-button(tiny,$base-style:false); }
+// &.small { @include dropdown-button(small,$base-style:false); }
+// &.large { @include dropdown-button(large,$base-style:false); }
+// &.secondary:after { border-color: $dropdown-button-pip-color-alt transparent transparent transparent; }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_dropdown.scss b/app/styles/app/foundation/scss/foundation/components/_dropdown.scss
new file mode 100644
index 00000000..ab290ecb
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_dropdown.scss
@@ -0,0 +1,262 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-dropdown-classes: $include-html-classes !default;
+
+// // We use these to controls height and width styles.
+// $f-dropdown-max-width: 200px !default;
+// $f-dropdown-height: auto !default;
+// $f-dropdown-max-height: none !default;
+
+// // Used for bottom position
+// $f-dropdown-margin-top: 2px !default;
+
+// // Used for right position
+// $f-dropdown-margin-left: $f-dropdown-margin-top !default;
+
+// // Used for left position
+// $f-dropdown-margin-right: $f-dropdown-margin-top !default;
+
+// // Used for top position
+// $f-dropdown-margin-bottom: $f-dropdown-margin-top !default;
+
+// // We use this to control the background color
+// $f-dropdown-bg: $white !default;
+
+// // We use this to set the border styles for dropdowns.
+// $f-dropdown-border-style: solid !default;
+// $f-dropdown-border-width: 1px !default;
+// $f-dropdown-border-color: scale-color($white, $lightness: -20%) !default;
+
+// // We use these to style the triangle pip.
+// $f-dropdown-triangle-size: 6px !default;
+// $f-dropdown-triangle-color: $white !default;
+// $f-dropdown-triangle-side-offset: 10px !default;
+
+// // We use these to control styles for the list elements.
+// $f-dropdown-list-style: none !default;
+// $f-dropdown-font-color: $charcoal !default;
+// $f-dropdown-font-size: rem-calc(14) !default;
+// $f-dropdown-list-padding: rem-calc(5, 10) !default;
+// $f-dropdown-line-height: rem-calc(18) !default;
+// $f-dropdown-list-hover-bg: $smoke !default;
+// $dropdown-mobile-default-float: 0 !default;
+
+// // We use this to control the styles for when the dropdown has custom content.
+// $f-dropdown-content-padding: rem-calc(20) !default;
+
+// // Default radius for dropdown.
+// $f-dropdown-radius: $global-radius !default;
+
+// //
+// // @mixins
+// //
+// //
+// // NOTE: Make default max-width change between list and content types. Can add more width with classes, maybe .small, .medium, .large, etc.;
+// // We use this to style the dropdown container element.
+// // $content-list - Sets list-style. Default: list. Options: [list, content]
+// // $triangle - Sets if dropdown has triangle. Default:true.
+// // $max-width - Default: $f-dropdown-max-width || 200px.
+// @mixin dropdown-container($content:list, $triangle:true, $max-width:$f-dropdown-max-width) {
+// position: absolute;
+// left: -9999px;
+// list-style: $f-dropdown-list-style;
+// margin-#{$default-float}: 0;
+// outline: none;
+
+// > *:first-child { margin-top: 0; }
+// > *:last-child { margin-bottom: 0; }
+
+// @if $content == list {
+// width: 100%;
+// max-height: $f-dropdown-max-height;
+// height: $f-dropdown-height;
+// background: $f-dropdown-bg;
+// border: $f-dropdown-border-style $f-dropdown-border-width $f-dropdown-border-color;
+// font-size: $f-dropdown-font-size;
+// z-index: 89;
+// }
+// @else if $content == content {
+// padding: $f-dropdown-content-padding;
+// width: 100%;
+// height: $f-dropdown-height;
+// max-height: $f-dropdown-max-height;
+// background: $f-dropdown-bg;
+// border: $f-dropdown-border-style $f-dropdown-border-width $f-dropdown-border-color;
+// font-size: $f-dropdown-font-size;
+// z-index: 89;
+// }
+
+// @if $triangle == bottom {
+// margin-top: $f-dropdown-margin-top;
+
+// &:before {
+// @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, bottom);
+// position: absolute;
+// top: -($f-dropdown-triangle-size * 2);
+// #{$default-float}: $f-dropdown-triangle-side-offset;
+// z-index: 89;
+// }
+// &:after {
+// @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, bottom);
+// position: absolute;
+// top: -(($f-dropdown-triangle-size + 1) * 2);
+// #{$default-float}: $f-dropdown-triangle-side-offset - 1;
+// z-index: 88;
+// }
+
+// &.right:before {
+// #{$default-float}: auto;
+// #{$opposite-direction}: $f-dropdown-triangle-side-offset;
+// }
+// &.right:after {
+// #{$default-float}: auto;
+// #{$opposite-direction}: $f-dropdown-triangle-side-offset - 1;
+// }
+// }
+
+// @if $triangle == $default-float {
+// margin-top: 0;
+// margin-#{$default-float}: $f-dropdown-margin-right;
+
+// &:before {
+// @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, #{$opposite-direction});
+// position: absolute;
+// top: $f-dropdown-triangle-side-offset;
+// #{$default-float}: -($f-dropdown-triangle-size * 2);
+// z-index: 89;
+// }
+// &:after {
+// @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, #{$opposite-direction});
+// position: absolute;
+// top: $f-dropdown-triangle-side-offset - 1;
+// #{$default-float}: -($f-dropdown-triangle-size * 2) - 2;
+// z-index: 88;
+// }
+
+// }
+
+// @if $triangle == $opposite-direction {
+// margin-top: 0;
+// margin-#{$default-float}: -$f-dropdown-margin-right;
+
+// &:before {
+// @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, #{$default-float});
+// position: absolute;
+// top: $f-dropdown-triangle-side-offset;
+// #{$opposite-direction}: -($f-dropdown-triangle-size * 2);
+// #{$default-float}: auto;
+// z-index: 89;
+// }
+// &:after {
+// @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, #{$default-float});
+// position: absolute;
+// top: $f-dropdown-triangle-side-offset - 1;
+// #{$opposite-direction}: -($f-dropdown-triangle-size * 2) - 2;
+// #{$default-float}: auto;
+// z-index: 88;
+// }
+
+// }
+
+// @if $triangle == top {
+// margin-top: -$f-dropdown-margin-bottom;
+// margin-left: 0;
+
+// &:before {
+// @include css-triangle($f-dropdown-triangle-size, $f-dropdown-triangle-color, top);
+// position: absolute;
+// top: auto;
+// bottom: -($f-dropdown-triangle-size * 2);
+// #{$default-float}: $f-dropdown-triangle-side-offset;
+// #{$opposite-direction}: auto;
+// z-index: 89;
+// }
+// &:after {
+// @include css-triangle($f-dropdown-triangle-size + 1, $f-dropdown-border-color, top);
+// position: absolute;
+// top: auto;
+// bottom: -($f-dropdown-triangle-size * 2) - 2;
+// #{$default-float}: $f-dropdown-triangle-side-offset - 1;
+// #{$opposite-direction}: auto;
+// z-index: 88;
+// }
+
+// }
+
+// @if $max-width { max-width: $max-width; }
+// @else { max-width: $f-dropdown-max-width; }
+
+// }
+
+// // @MIXIN
+// //
+// // We use this to style the list elements or content inside the dropdown.
+
+// @mixin dropdown-style {
+// font-size: $f-dropdown-font-size;
+// cursor: $cursor-pointer-value;
+
+// line-height: $f-dropdown-line-height;
+// margin: 0;
+
+// &:hover,
+// &:focus { background: $f-dropdown-list-hover-bg; }
+
+// &.radius { @include radius($f-dropdown-radius); }
+
+// a {
+// display: block;
+// padding: $f-dropdown-list-padding;
+// color: $f-dropdown-font-color;
+// }
+// }
+
+// @include exports("dropdown") {
+// @if $include-html-dropdown-classes {
+
+// /* Foundation Dropdowns */
+// .f-dropdown {
+// @include dropdown-container(list, bottom);
+
+// &.drop-#{$opposite-direction} {
+// @include dropdown-container(list, #{$default-float});
+// }
+
+// &.drop-#{$default-float} {
+// @include dropdown-container(list, #{$opposite-direction});
+// }
+
+// &.drop-top {
+// @include dropdown-container(list, top);
+// }
+// // max-width: none;
+
+// li { @include dropdown-style; }
+
+// // You can also put custom content in these dropdowns
+// &.content { @include dropdown-container(content, $triangle:false); }
+
+// // Sizes
+// &.tiny { max-width: 200px; }
+// &.small { max-width: 300px; }
+// &.medium { max-width: 500px; }
+// &.large { max-width: 800px; }
+// &.mega {
+// width:100%!important;
+// max-width:100%!important;
+
+// &.open{
+// left:0!important;
+// }
+// }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_flex-video.scss b/app/styles/app/foundation/scss/foundation/components/_flex-video.scss
new file mode 100644
index 00000000..a35af09b
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_flex-video.scss
@@ -0,0 +1,51 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-media-classes: $include-html-classes !default;
+
+// // We use these to control video container padding and margins
+// $flex-video-padding-top: rem-calc(25) !default;
+// $flex-video-padding-bottom: 67.5% !default;
+// $flex-video-margin-bottom: rem-calc(16) !default;
+
+// // We use this to control widescreen bottom padding
+// $flex-video-widescreen-padding-bottom: 56.34% !default;
+
+// //
+// // @mixins
+// //
+
+// @mixin flex-video-container {
+// position: relative;
+// padding-top: $flex-video-padding-top;
+// padding-bottom: $flex-video-padding-bottom;
+// height: 0;
+// margin-bottom: $flex-video-margin-bottom;
+// overflow: hidden;
+
+// &.widescreen { padding-bottom: $flex-video-widescreen-padding-bottom; }
+// &.vimeo { padding-top: 0; }
+
+// iframe,
+// object,
+// embed,
+// video {
+// position: absolute;
+// top: 0;
+// #{$default-float}: 0;
+// width: 100%;
+// height: 100%;
+// }
+// }
+
+// @include exports("flex-video") {
+// @if $include-html-media-classes {
+// .flex-video { @include flex-video-container; }
+// }
+// }
\ No newline at end of file
diff --git a/app/styles/app/foundation/scss/foundation/components/_forms.scss b/app/styles/app/foundation/scss/foundation/components/_forms.scss
new file mode 100644
index 00000000..2191b6c3
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_forms.scss
@@ -0,0 +1,570 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "buttons";
+
+// //
+// // @variables
+// //
+// $include-html-form-classes: $include-html-classes !default;
+
+// // We use this to set the base for lots of form spacing and positioning styles
+// $form-spacing: rem-calc(16) !default;
+
+// // We use these to style the labels in different ways
+// $form-label-pointer: pointer !default;
+// $form-label-font-size: rem-calc(14) !default;
+// $form-label-font-weight: $font-weight-normal !default;
+// $form-label-line-height: 1.5 !default;
+// $form-label-font-color: scale-color($black, $lightness: 30%) !default;
+// $form-label-small-transform: capitalize !default;
+// $form-label-bottom-margin: 0 !default;
+// $input-font-family: inherit !default;
+// $input-font-color: rgba(0,0,0,0.75) !default;
+// $input-font-size: rem-calc(14) !default;
+// $input-bg-color: $white !default;
+// $input-focus-bg-color: scale-color($white, $lightness: -2%) !default;
+// $input-border-color: scale-color($white, $lightness: -20%) !default;
+// $input-focus-border-color: scale-color($white, $lightness: -40%) !default;
+// $input-border-style: solid !default;
+// $input-border-width: 1px !default;
+// $input-border-radius: $global-radius !default;
+// $input-disabled-bg: $gainsboro !default;
+// $input-disabled-cursor: $cursor-default-value !default;
+// $input-box-shadow: inset 0 1px 2px rgba(0,0,0,0.1) !default;
+// $input-include-glowing-effect: true !default;
+
+// // We use these to style the fieldset border and spacing.
+// $fieldset-border-style: solid !default;
+// $fieldset-border-width: 1px !default;
+// $fieldset-border-color: $gainsboro !default;
+// $fieldset-padding: rem-calc(20) !default;
+// $fieldset-margin: rem-calc(18 0) !default;
+
+// // We use these to style the legends when you use them
+// $legend-bg: $white !default;
+// $legend-font-weight: $font-weight-bold !default;
+// $legend-padding: rem-calc(0 3) !default;
+
+// // We use these to style the prefix and postfix input elements
+// $input-prefix-bg: scale-color($white, $lightness: -5%) !default;
+// $input-prefix-border-color: scale-color($white, $lightness: -20%) !default;
+// $input-prefix-border-size: 1px !default;
+// $input-prefix-border-type: solid !default;
+// $input-prefix-overflow: hidden !default;
+// $input-prefix-font-color: $oil !default;
+// $input-prefix-font-color-alt: $white !default;
+
+// // We use this setting to turn on/off HTML5 number spinners (the up/down arrows)
+// $input-number-spinners: true !default;
+
+// // We use these to style the error states for inputs and labels
+// $input-error-message-padding: rem-calc(6 9 9) !default;
+// $input-error-message-top: -1px !default;
+// $input-error-message-font-size: rem-calc(12) !default;
+// $input-error-message-font-weight: $font-weight-normal !default;
+// $input-error-message-font-style: italic !default;
+// $input-error-message-font-color: $white !default;
+// $input-error-message-bg-color: $alert-color !default;
+// $input-error-message-font-color-alt: $oil !default;
+
+// // We use this to style the glowing effect of inputs when focused
+// $glowing-effect-fade-time: 0.45s !default;
+// $glowing-effect-color: $input-focus-border-color !default;
+
+// // Select variables
+// $select-bg-color: $ghost !default;
+// $select-hover-bg-color: scale-color($select-bg-color, $lightness: -3%) !default;
+
+// //
+// // @MIXINS
+// //
+
+// // We use this mixin to give us form styles for rows inside of forms
+// @mixin form-row-base {
+// .row { margin: 0 ((-$form-spacing) / 2);
+
+// .column,
+// .columns { padding: 0 ($form-spacing / 2); }
+
+// // Use this to collapse the margins of a form row
+// &.collapse { margin: 0;
+
+// .column,
+// .columns { padding: 0; }
+// input {
+// @include side-radius($opposite-direction, 0);
+// }
+
+// }
+// }
+// input.column,
+// input.columns,
+// textarea.column,
+// textarea.columns { padding-#{$default-float}: ($form-spacing / 2); }
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to give all basic form elements their style
+// @mixin form-element {
+// background-color: $input-bg-color;
+// font-family: $input-font-family;
+// border: {
+// style: $input-border-style;
+// width: $input-border-width;
+// color: $input-border-color;
+// }
+// box-shadow: $input-box-shadow;
+// color: $input-font-color;
+// display: block;
+// font-size: $input-font-size;
+// margin: 0 0 $form-spacing 0;
+// padding: $form-spacing / 2;
+// height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+// width: 100%;
+// @include box-sizing(border-box);
+// @if $input-include-glowing-effect {
+// @include block-glowing-effect(focus, $glowing-effect-fade-time, $glowing-effect-color);
+// }
+// // Basic focus styles
+// &:focus {
+// background: $input-focus-bg-color;
+// border-color: $input-focus-border-color;
+// outline: none;
+// }
+// // Disbaled Styles
+// &:disabled {
+// background-color: $input-disabled-bg;
+// cursor: $input-disabled-cursor;
+// }
+
+// // Disabled background input background color
+// &[disabled],
+// &[readonly],
+// fieldset[disabled] & {
+// background-color: $input-disabled-bg;
+// cursor: $input-disabled-cursor;
+// }
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to create form labels
+// //
+// // $alignment - Alignment options. Default: false. Options: [right, inline, false]
+// // $base-style - Control whether or not the base styles come through. Default: true.
+// @mixin form-label($alignment:false, $base-style:true) {
+
+// // Control whether or not the base styles come through.
+// @if $base-style {
+// font-size: $form-label-font-size;
+// color: $form-label-font-color;
+// cursor: $form-label-pointer;
+// display: block;
+// font-weight: $form-label-font-weight;
+// line-height: $form-label-line-height;
+// margin-bottom: $form-label-bottom-margin;
+// }
+
+// // Alignment options
+// @if $alignment == right {
+// float: none !important;
+// text-align: right;
+// }
+// @else if $alignment == inline {
+// margin: 0 0 $form-spacing 0;
+// padding: $form-spacing / 2 + rem-calc($input-border-width) 0;
+// }
+// }
+
+// // We use this mixin to create postfix/prefix form Labels
+// @mixin prefix-postfix-base {
+// display: block;
+// position: relative;
+// z-index: 2;
+// text-align: center;
+// width: 100%;
+// padding-top: 0;
+// padding-bottom: 0;
+// border-style: $input-prefix-border-type;
+// border-width: $input-prefix-border-size;
+// overflow: $input-prefix-overflow;
+// font-size: $form-label-font-size;
+// height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+// line-height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to create prefix label styles
+// // $bg - Default:$input-prefix-bg || scale-color($white, $lightness: -5%) !default;
+// // $is-button - Toggle position settings if prefix is a button. Default:false
+// //
+// @mixin prefix($bg:$input-prefix-bg, $border:$input-prefix-border-color, $is-button:false) {
+
+// @if $bg {
+// $bg-lightness: lightness($bg);
+// background: $bg;
+// border-#{$opposite-direction}: none;
+
+// // Control the font color based on background brightness
+// @if $bg-lightness > 70% or $bg == yellow { color: $input-prefix-font-color; }
+// @else { color: $input-prefix-font-color-alt; }
+// }
+
+// @if $border {
+// border-color: $border;
+// }
+
+// @if $is-button {
+// padding-#{$default-float}: 0;
+// padding-#{$opposite-direction}: 0;
+// padding-top: 0;
+// padding-bottom: 0;
+// text-align: center;
+// border: none;
+// }
+
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to create postfix label styles
+// // $bg - Default:$input-prefix-bg || scale-color($white, $lightness: -5%) !default;
+// // $is-button - Toggle position settings if prefix is a button. Default: false
+// @mixin postfix($bg:$input-prefix-bg, $border:$input-prefix-border-color, $is-button:false) {
+
+// @if $bg {
+// $bg-lightness: lightness($bg);
+// background: $bg;
+// border-#{$default-float}: none;
+
+// // Control the font color based on background brightness
+// @if $bg-lightness > 70% or $bg == yellow { color: $input-prefix-font-color; }
+// @else { color: $input-prefix-font-color-alt; }
+// }
+
+// @if $border {
+// border-color: $border;
+// }
+
+// @if $is-button {
+// padding-#{$default-float}: 0;
+// padding-#{$opposite-direction}: 0;
+// padding-top: 0;
+// padding-bottom: 0;
+// text-align: center;
+// border: none;
+// }
+
+// }
+
+// // We use this mixin to style fieldsets
+// @mixin fieldset {
+// border: $fieldset-border-width $fieldset-border-style $fieldset-border-color;
+// padding: $fieldset-padding;
+// margin: $fieldset-margin;
+
+// // and legend styles
+// legend {
+// font-weight: $legend-font-weight;
+// background: $legend-bg;
+// padding: $legend-padding;
+// margin: 0;
+// margin-#{$default-float}: rem-calc(-3);
+// }
+// }
+
+// // @MIXIN
+// //
+// // We use this mixin to control border and background color of error inputs
+// // $color - Default: $alert-color (found in settings file)
+// @mixin form-error-color($color:$alert-color) {
+// border-color: $color;
+// background-color: rgba($color, 0.1);
+
+// // Go back to normal on focus
+// &:focus {
+// background: $input-focus-bg-color;
+// border-color: $input-focus-border-color;
+// }
+// }
+
+// // @MIXIN
+// //
+// // We use this simple mixin to style labels for error inputs
+// // $color - Default:$alert-color. Found in settings file
+// @mixin form-label-error-color($color:$alert-color) { color: $color; }
+
+// // @MIXIN
+// //
+// // We use this mixin to create error message styles
+// // $bg - Default: $alert-color (Found in settings file)
+// @mixin form-error-message($bg:$input-error-message-bg-color) {
+// display: block;
+// padding: $input-error-message-padding;
+// margin-top: $input-error-message-top;
+// margin-bottom: $form-spacing;
+// font-size: $input-error-message-font-size;
+// font-weight: $input-error-message-font-weight;
+// font-style: $input-error-message-font-style;
+
+// // We can control the text color based on the brightness of the background.
+// $bg-lightness: lightness($bg);
+// background: $bg;
+// @if $bg-lightness < 70% or $bg == yellow { color: $input-error-message-font-color; }
+// @else { color: $input-error-message-font-color-alt; }
+// }
+
+// // We use this mixin to style select elements
+// @mixin form-select {
+// -webkit-appearance: none !important;
+// border-radius: 0;
+// background-color: $select-bg-color;
+
+// // Hide the dropdown arrow shown in newer IE versions
+// &::-ms-expand {
+// display: none;
+// }
+
+// // The custom arrow has some fake horizontal padding so we can align it
+// // from the right side of the element without relying on CSS3
+// background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);
+
+// // We can safely use leftmost and rightmost now
+// background-position: if($text-direction == 'rtl', 0%, 100%) center;
+
+// background-repeat: no-repeat;
+// border: {
+// style: $input-border-style;
+// width: $input-border-width;
+// color: $input-border-color;
+// }
+// padding: ($form-spacing / 2);
+// font-size: $input-font-size;
+// font-family: $body-font-family;
+// color: $input-font-color;
+// line-height: normal;
+// @include radius(0);
+// &.radius { @include radius($global-radius); }
+// &:hover {
+// background-color: $select-hover-bg-color;
+// border-color: $input-focus-border-color;
+// }
+// // Disabled Styles
+// &:disabled {
+// background-color: $input-disabled-bg;
+// cursor: $input-disabled-cursor;
+// }
+// }
+
+// // We use this mixin to turn on/off HTML5 number spinners
+// @mixin html5number($browser, $on:true) {
+// @if $on==false {
+// @if $browser==webkit {
+// -webkit-appearance: none;
+// margin: 0;
+// } @else if $browser==moz {
+// -moz-appearance: textfield;
+// }
+// }
+// }
+
+// @include exports("form") {
+// @if $include-html-form-classes {
+// /* Standard Forms */
+// form { margin: 0 0 $form-spacing; }
+
+// /* Using forms within rows, we need to set some defaults */
+// form .row { @include form-row-base; }
+
+// /* Label Styles */
+// label { @include form-label;
+// &.right { @include form-label(right,false); }
+// &.inline { @include form-label(inline,false); }
+// /* Styles for required inputs */
+// small {
+// text-transform: $form-label-small-transform;
+// color: scale-color($form-label-font-color, $lightness: 15%);
+// }
+// }
+
+// /* Attach elements to the beginning or end of an input */
+// .prefix,
+// .postfix { @include prefix-postfix-base; }
+
+// /* Adjust padding, alignment and radius if pre/post element is a button */
+// .postfix.button { @include button-size(false,false); @include postfix(false, false, true); }
+// .prefix.button { @include button-size(false,false); @include prefix(false, false, true); }
+
+// .prefix.button.radius { @include radius(0); @include side-radius($default-float, $button-radius); }
+// .postfix.button.radius { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+// .prefix.button.round { @include radius(0); @include side-radius($default-float, $button-round); }
+// .postfix.button.round { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+
+// /* Separate prefix and postfix styles when on span or label so buttons keep their own */
+// span.prefix,label.prefix { @include prefix(); }
+// span.postfix,label.postfix { @include postfix(); }
+
+// /* We use this to get basic styling on all basic form elements */
+// #{text-inputs(all, 'input')} {
+// -webkit-appearance: none;
+// border-radius: 0;
+// @include form-element;
+// @if $input-include-glowing-effect == false {
+// @include single-transition(all, 0.15s, linear);
+// }
+// &.radius {
+// @include radius($input-border-radius);
+// }
+// }
+
+// form {
+// .row {
+// .prefix-radius.row.collapse {
+// input,
+// textarea,
+// select { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+// .prefix { @include radius(0); @include side-radius($default-float, $button-radius); }
+// }
+// .postfix-radius.row.collapse {
+// input,
+// textarea,
+// select { @include radius(0); @include side-radius($default-float, $button-radius); }
+// .postfix { @include radius(0); @include side-radius($opposite-direction, $button-radius); }
+// }
+// .prefix-round.row.collapse {
+// input,
+// textarea,
+// select { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+// .prefix { @include radius(0); @include side-radius($default-float, $button-round); }
+// }
+// .postfix-round.row.collapse {
+// input,
+// textarea,
+// select { @include radius(0); @include side-radius($default-float, $button-round); }
+// .postfix { @include radius(0); @include side-radius($opposite-direction, $button-round); }
+// }
+// }
+// }
+
+// input[type="submit"] {
+// -webkit-appearance: none;
+// border-radius: 0;
+// }
+
+// /* Respect enforced amount of rows for textarea */
+// textarea[rows] {
+// height: auto;
+// }
+
+// /* Not allow resize out of parent */
+// textarea {
+// max-width: 100%;
+// }
+
+// /* Add height value for select elements to match text input height */
+// select {
+// @include form-select;
+// height: ($input-font-size + ($form-spacing * 1.5) - rem-calc(1));
+// }
+
+// /* Adjust margin for form elements below */
+// input[type="file"],
+// input[type="checkbox"],
+// input[type="radio"],
+// select {
+// margin: 0 0 $form-spacing 0;
+// }
+
+// input[type="checkbox"] + label,
+// input[type="radio"] + label {
+// display: inline-block;
+// margin-#{$default-float}: $form-spacing * .5;
+// margin-#{$opposite-direction}: $form-spacing;
+// margin-bottom: 0;
+// vertical-align: baseline;
+// }
+
+// /* Normalize file input width */
+// input[type="file"] {
+// width:100%;
+// }
+
+// /* HTML5 Number spinners settings */
+// input[type=number] {
+// @include html5number(moz, $input-number-spinners)
+// }
+// input[type="number"]::-webkit-inner-spin-button,
+// input[type="number"]::-webkit-outer-spin-button {
+// @include html5number(webkit, $input-number-spinners);
+// }
+
+// /* We add basic fieldset styling */
+// fieldset {
+// @include fieldset;
+// }
+
+// /* Error Handling */
+
+// #{data('abide')} {
+// .error small.error, .error span.error, span.error, small.error {
+// @include form-error-message;
+// }
+// span.error, small.error { display: none; }
+// }
+
+// span.error, small.error {
+// @include form-error-message;
+// }
+
+// .error {
+// input,
+// textarea,
+// select {
+// margin-bottom: 0;
+// }
+
+// input[type="checkbox"],
+// input[type="radio"] {
+// margin-bottom: $form-spacing
+// }
+
+// label,
+// label.error {
+// @include form-label-error-color;
+// }
+
+// small.error {
+// @include form-error-message;
+// }
+
+// > label {
+// > small {
+// color: scale-color($form-label-font-color, $lightness: 15%);
+// background: transparent;
+// padding: 0;
+// text-transform: $form-label-small-transform;
+// font-style: normal;
+// font-size: 60%;
+// margin: 0;
+// display: inline;
+// }
+// }
+
+// span.error-message {
+// display: block;
+// }
+// }
+
+// input.error,
+// textarea.error,
+// select.error {
+// margin-bottom: 0;
+// }
+// label.error { @include form-label-error-color; }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_global.scss b/app/styles/app/foundation/scss/foundation/components/_global.scss
new file mode 100644
index 00000000..cb2a9db4
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_global.scss
@@ -0,0 +1,480 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "../functions";
+//
+// Foundation Variables
+//
+
+// Data attribute namespace
+// styles get applied to [data-mysite-plugin], etc
+$namespace: false !default;
+
+// The default font-size is set to 100% of the browser style sheet (usually 16px)
+// for compatibility with browser-based text zoom or user-set defaults.
+
+// Since the typical default browser font-size is 16px, that makes the calculation for grid size.
+// If you want your base font-size to be different and not have it affect the grid breakpoints,
+// set $rem-base to $base-font-size and make sure $base-font-size is a px value.
+$base-font-size: 100% !default;
+
+// $base-line-height is 24px while $base-font-size is 16px
+$base-line-height: 1.5 !default;
+
+//
+// Global Foundation Mixins
+//
+
+// @mixins
+//
+// We use this to control border radius.
+// $radius - Default: $global-radius || 4px
+@mixin radius($radius:$global-radius) {
+ @if $radius {
+ border-radius: $radius;
+ }
+}
+
+// @mixins
+//
+// We use this to create equal side border radius on elements.
+// $side - Options: left, right, top, bottom
+@mixin side-radius($side, $radius:$global-radius) {
+ @if ($side == left or $side == right) {
+ -webkit-border-bottom-#{$side}-radius: $radius;
+ -webkit-border-top-#{$side}-radius: $radius;
+ border-bottom-#{$side}-radius: $radius;
+ border-top-#{$side}-radius: $radius;
+ } @else {
+ -webkit-#{$side}-left-radius: $radius;
+ -webkit-#{$side}-right-radius: $radius;
+ border-#{$side}-left-radius: $radius;
+ border-#{$side}-right-radius: $radius;
+ }
+}
+
+// @mixins
+//
+// We can control whether or not we have inset shadows edges.
+// $active - Default: true, Options: false
+@mixin inset-shadow($active:true) {
+ box-shadow: $shiny-edge-size $shiny-edge-color inset;
+
+ @if $active { &:active {
+ box-shadow: $shiny-edge-size $shiny-edge-active-color inset; } }
+}
+
+// @mixins
+//
+// We use this to add transitions to elements
+// $property - Default: all, Options: http://www.w3.org/TR/css3-transitions/#animatable-properties
+// $speed - Default: 300ms
+// $ease - Default:ease-out, Options: http://css-tricks.com/almanac/properties/t/transition-timing-function/
+@mixin single-transition($property:all, $speed:300ms, $ease:ease-out) {
+ transition: $property $speed $ease;
+}
+
+// @mixins
+//
+// We use this to add box-sizing across browser prefixes
+@mixin box-sizing($type:border-box) {
+ -webkit-box-sizing: $type; // Android < 2.3, iOS < 4
+ -moz-box-sizing: $type; // Firefox < 29
+ box-sizing: $type; // Chrome, IE 8+, Opera, Safari 5.1
+}
+
+// @mixins
+//
+// We use this to create isosceles triangles
+// $triangle-size - Used to set border-size. No default, set a px or em size.
+// $triangle-color - Used to set border-color which makes up triangle. No default
+// $triangle-direction - Used to determine which direction triangle points. Options: top, bottom, left, right
+@mixin css-triangle($triangle-size, $triangle-color, $triangle-direction) {
+ content: "";
+ display: block;
+ width: 0;
+ height: 0;
+ border: inset $triangle-size;
+ @if ($triangle-direction == top) {
+ border-color: $triangle-color transparent transparent transparent;
+ border-top-style: solid;
+ }
+ @if ($triangle-direction == bottom) {
+ border-color: transparent transparent $triangle-color transparent;
+ border-bottom-style: solid;
+ }
+ @if ($triangle-direction == left) {
+ border-color: transparent transparent transparent $triangle-color;
+ border-left-style: solid;
+ }
+ @if ($triangle-direction == right) {
+ border-color: transparent $triangle-color transparent transparent;
+ border-right-style: solid;
+ }
+}
+
+// @mixins
+//
+// We use this to create the icon with three lines aka the hamburger icon, the menu-icon or the navicon
+// $width - Width of hamburger icon in rem
+// $left - If false, icon will be centered horizontally || explicitly set value in rem
+// $top - If false, icon will be centered vertically || explicitly set value in rem
+// $thickness - thickness of lines in hamburger icon, set value in px
+// $gap - spacing between the lines in hamburger icon, set value in px
+// $color - icon color
+// $hover-color - icon color during hover
+// $offcanvas - Set to true of @include in offcanvas
+@mixin hamburger($width, $left, $top, $thickness, $gap, $color, $hover-color, $offcanvas) {
+ span::after {
+ content: "";
+ position: absolute;
+ display: block;
+ height: 0;
+
+ @if $offcanvas {
+ @if $top {
+ top: $top;
+ }
+ @else {
+ top: 50%;
+ margin-top: (-$width/2);
+ }
+ @if $left {
+ left: $left;
+ }
+ @else {
+ left: ($tabbar-menu-icon-width - $width)/2;
+ }
+ }
+ @else {
+ top: 50%;
+ margin-top: -($width/2);
+ #{$opposite-direction}: $topbar-link-padding;
+ }
+
+ box-shadow:
+ 0 0 0 $thickness $color,
+ 0 $gap + $thickness 0 $thickness $color,
+ 0 (2 * $gap + 2*$thickness) 0 $thickness $color;
+ width: $width;
+ }
+ span:hover:after {
+ box-shadow:
+ 0 0 0 $thickness $hover-color,
+ 0 $gap + $thickness 0 $thickness $hover-color,
+ 0 (2 * $gap + 2*$thickness) 0 $thickness $hover-color;
+ }
+}
+
+// We use this to do clear floats
+@mixin clearfix {
+ &:before, &:after { content: " "; display: table; }
+ &:after { clear: both; }
+}
+
+// @mixins
+//
+// We use this to add a glowing effect to block elements
+// $selector - Used for selector state. Default: focus, Options: hover, active, visited
+// $fade-time - Default: 300ms
+// $glowing-effect-color - Default: fade-out($primary-color, .25)
+@mixin block-glowing-effect($selector:focus, $fade-time:300ms, $glowing-effect-color:fade-out($primary-color, .25)) {
+ transition: box-shadow $fade-time, border-color $fade-time ease-in-out;
+
+ &:#{$selector} {
+ box-shadow: 0 0 5px $glowing-effect-color;
+ border-color: $glowing-effect-color;
+ }
+}
+
+// @mixins
+//
+// We use this to translate elements in 2D
+// $horizontal: Default: 0
+// $vertical: Default: 0
+@mixin translate2d($horizontal:0, $vertical:0) {
+ transform: translate($horizontal,$vertical)
+}
+
+// @mixins
+//
+// Makes an element visually hidden, but accessible.
+// @see http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
+@mixin element-invisible {
+ position: absolute !important;
+ height: 1px;
+ width: 1px;
+ overflow: hidden;
+ clip: rect(1px, 1px, 1px, 1px);
+}
+
+// @mixins
+//
+// Turns off the element-invisible effect.
+@mixin element-invisible-off {
+ position: static !important;
+ height: auto;
+ width: auto;
+ overflow: visible;
+ clip: auto;
+}
+
+$white : #FFFFFF !default;
+$ghost : #FAFAFA !default;
+$snow : #F9F9F9 !default;
+$vapor : #F6F6F6 !default;
+$white-smoke : #F5F5F5 !default;
+$silver : #EFEFEF !default;
+$smoke : #EEEEEE !default;
+$gainsboro : #DDDDDD !default;
+$iron : #CCCCCC !default;
+$base : #AAAAAA !default;
+$aluminum : #999999 !default;
+$jumbo : #888888 !default;
+$monsoon : #777777 !default;
+$steel : #666666 !default;
+$charcoal : #555555 !default;
+$tuatara : #444444 !default;
+$oil : #333333 !default;
+$jet : #222222 !default;
+$black : #000000 !default;
+
+// We use these as default colors throughout
+$primary-color: #008CBA !default; // bondi-blue
+$secondary-color: #e7e7e7 !default; // white-lilac
+$alert-color: #f04124 !default; // cinnabar
+$success-color: #43AC6A !default; // sea-green
+$warning-color: #f08a24 !default; // carrot
+$info-color: #a0d3e8 !default; // cornflower
+
+// We use these to define default font stacks
+$font-family-sans-serif: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif !default;
+$font-family-serif: Georgia, Cambria, "Times New Roman", Times, serif !default;
+$font-family-monospace: Consolas, "Liberation Mono", Courier, monospace !default;
+
+// We use these to define default font weights
+$font-weight-normal: normal !default;
+$font-weight-bold: bold !default;
+
+// We use these to control various global styles
+$body-bg: #fff !default;
+$body-font-color: #222 !default;
+$body-font-family: $font-family-sans-serif !default;
+$body-font-weight: $font-weight-normal !default;
+$body-font-style: normal !default;
+
+// We use this to control font-smoothing
+$font-smoothing: antialiased !default;
+
+// We use these to control text direction settings
+$text-direction: ltr !default;
+$default-float: left !default;
+$opposite-direction: right !default;
+@if $text-direction == ltr {
+ $default-float: left;
+ $opposite-direction: right;
+} @else {
+ $default-float: right;
+ $opposite-direction: left;
+}
+
+// We use these to make sure border radius matches unless we want it different.
+$global-radius: 3px !default;
+$global-rounded: 1000px !default;
+
+// We use these to control inset shadow shiny edges and depressions.
+$shiny-edge-size: 0 1px 0 !default;
+$shiny-edge-color: rgba(#fff, .5) !default;
+$shiny-edge-active-color: rgba(#000, .2) !default;
+
+// We use this to control whether or not CSS classes come through in the gem files.
+$include-html-classes: true !default;
+$include-print-styles: true !default;
+$include-html-global-classes: $include-html-classes !default;
+
+$column-gutter: rem-calc(30) !default;
+
+// Media Query Ranges
+$small-range: (0, 40em) !default;
+$medium-range: (40.063em, 64em) !default;
+$large-range: (64.063em, 90em) !default;
+$xlarge-range: (90.063em, 120em) !default;
+$xxlarge-range: (120.063em, 99999999em) !default;
+
+
+$screen: "only screen" !default;
+
+$landscape: "#{$screen} and (orientation: landscape)" !default;
+$portrait: "#{$screen} and (orientation: portrait)" !default;
+
+$small-up: $screen !default;
+$small-only: "#{$screen} and (max-width: #{upper-bound($small-range)})" !default;
+
+$medium-up: "#{$screen} and (min-width:#{lower-bound($medium-range)})" !default;
+$medium-only: "#{$screen} and (min-width:#{lower-bound($medium-range)}) and (max-width:#{upper-bound($medium-range)})" !default;
+
+$large-up: "#{$screen} and (min-width:#{lower-bound($large-range)})" !default;
+$large-only: "#{$screen} and (min-width:#{lower-bound($large-range)}) and (max-width:#{upper-bound($large-range)})" !default;
+
+$xlarge-up: "#{$screen} and (min-width:#{lower-bound($xlarge-range)})" !default;
+$xlarge-only: "#{$screen} and (min-width:#{lower-bound($xlarge-range)}) and (max-width:#{upper-bound($xlarge-range)})" !default;
+
+$xxlarge-up: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)})" !default;
+$xxlarge-only: "#{$screen} and (min-width:#{lower-bound($xxlarge-range)}) and (max-width:#{upper-bound($xxlarge-range)})" !default;
+
+// Legacy
+$small: $medium-up;
+$medium: $medium-up;
+$large: $large-up;
+
+
+//We use this as cursors values for enabling the option of having custom cursors in the whole site's stylesheet
+$cursor-auto-value: auto !default;
+$cursor-crosshair-value: crosshair !default;
+$cursor-default-value: default !default;
+$cursor-pointer-value: pointer !default;
+$cursor-help-value: help !default;
+$cursor-text-value: text !default;
+
+
+@include exports("global") {
+
+ // Meta styles are included in all builds, as they are a dependancy of the Javascript.
+ // Used to provide media query values for javascript components.
+ // Forward slash placed around everything to convince PhantomJS to read the value.
+
+ meta.foundation-version {
+ font-family: "/5.5.0/";
+ }
+
+ meta.foundation-mq-small {
+ font-family: "/" + unquote($small-up) + "/";
+ width: lower-bound($small-range);
+ }
+
+ meta.foundation-mq-small-only {
+ font-family: "/" + unquote($small-only) + "/";
+ width: lower-bound($small-range);
+ }
+
+ meta.foundation-mq-medium {
+ font-family: "/" + unquote($medium-up) + "/";
+ width: lower-bound($medium-range);
+ }
+
+ meta.foundation-mq-medium-only {
+ font-family: "/" + unquote($medium-only) + "/";
+ width: lower-bound($medium-range);
+ }
+
+ meta.foundation-mq-large {
+ font-family: "/" + unquote($large-up) + "/";
+ width: lower-bound($large-range);
+ }
+
+ meta.foundation-mq-large-only {
+ font-family: "/" + unquote($large-only) + "/";
+ width: lower-bound($large-range);
+ }
+
+ meta.foundation-mq-xlarge {
+ font-family: "/" + unquote($xlarge-up) + "/";
+ width: lower-bound($xlarge-range);
+ }
+
+ meta.foundation-mq-xlarge-only {
+ font-family: "/" + unquote($xlarge-only) + "/";
+ width: lower-bound($xlarge-range);
+ }
+
+ meta.foundation-mq-xxlarge {
+ font-family: "/" + unquote($xxlarge-up) + "/";
+ width: lower-bound($xxlarge-range);
+ }
+
+ meta.foundation-data-attribute-namespace {
+ font-family: #{$namespace};
+ }
+
+ @if $include-html-global-classes {
+
+ // Must be 100% for off canvas to work
+ html, body { height: 100%; }
+
+ // Set box-sizing globally to handle padding and border widths
+ *,
+ *:before,
+ *:after {
+ @include box-sizing(border-box);
+ }
+
+ html,
+ body { font-size: $base-font-size; }
+
+ // Default body styles
+ body {
+ background: $body-bg;
+ color: $body-font-color;
+ padding: 0;
+ margin: 0;
+ font-family: $body-font-family;
+ font-weight: $body-font-weight;
+ font-style: $body-font-style;
+ line-height: $base-line-height; // Set to $base-line-height to take on browser default of 150%
+ position: relative;
+ cursor: $cursor-auto-value;
+ }
+
+ a:hover { cursor: $cursor-pointer-value; }
+
+ // Grid Defaults to get images and embeds to work properly
+ img { max-width: 100%; height: auto; }
+
+ img { -ms-interpolation-mode: bicubic; }
+
+ #map_canvas,
+ .map_canvas {
+ img,
+ embed,
+ object { max-width: none !important;
+ }
+ }
+
+ // Miscellaneous useful HTML classes
+ .float-left { float: left !important; }
+ .float-right { float: right !important; }
+ .clearfix { @include clearfix; }
+
+ // Hide visually and from screen readers
+ .hide {
+ display: none !important;
+ visibility: hidden;
+ }
+
+ // Hide visually and from screen readers, but maintain layout
+ .invisible { visibility: hidden; }
+
+ // Font smoothing
+ // Antialiased font smoothing works best for light text on a dark background.
+ // Apply to single elements instead of globally to body.
+ // Note this only applies to webkit-based desktop browsers and Firefox 25 (and later) on the Mac.
+ .antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
+
+ // Get rid of gap under images by making them display: inline-block; by default
+ img {
+ display: inline-block;
+ vertical-align: middle;
+ }
+
+ //
+ // Global resets for forms
+ //
+
+ // Make sure textarea takes on height automatically
+ textarea { height: auto; min-height: 50px; }
+
+ // Make select elements 100% width by default
+ select { width: 100%; }
+ }
+}
diff --git a/app/styles/app/foundation/scss/foundation/components/_grid.scss b/app/styles/app/foundation/scss/foundation/components/_grid.scss
new file mode 100644
index 00000000..fe66c1d6
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_grid.scss
@@ -0,0 +1,289 @@
+// Foundation by ZURB
+// foundation.zurb.com
+// Licensed under MIT Open Source
+
+@import "global";
+
+//
+// @variables
+//
+$include-html-grid-classes: $include-html-classes !default;
+$include-xl-html-grid-classes: false !default;
+
+$row-width: 100%;
+$total-columns: 12 !default;
+
+$last-child-float: $opposite-direction !default;
+
+//
+// Grid Functions
+//
+
+// Deprecated: We'll drop support for this in 5.1, use grid-calc()
+@function gridCalc($colNumber, $totalColumns) {
+ @warn "gridCalc() is deprecated, use grid-calc()";
+ @return grid-calc($colNumber, $totalColumns);
+}
+
+// @FUNCTION
+// $colNumber - Found in settings file
+// $totalColumns - Found in settings file
+@function grid-calc($colNumber, $totalColumns) {
+ @return percentage(($colNumber / $totalColumns));
+}
+
+//
+// @mixins
+//
+
+// For creating container, nested, and collapsed rows.
+//
+//
+// $behavior - Any special behavior for this row? Default: false. Options: nest, collapse, nest-collapse, false.
+@mixin grid-row($behavior: false) {
+
+ // use @include grid-row(nest); to include a nested row
+ @if $behavior == nest {
+ width: auto;
+ margin-#{$default-float}: -($column-gutter/2);
+ margin-#{$opposite-direction}: -($column-gutter/2);
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: none;
+ }
+
+ // use @include grid-row(collapse); to collapsed a container row margins
+ @else if $behavior == collapse {
+ width: 100%;
+ margin: 0;
+ max-width: $row-width;
+ }
+
+ // use @include grid-row(nest-collapse); to collapse outer margins on a nested row
+ @else if $behavior == nest-collapse {
+ width: auto;
+ margin: 0;
+ max-width: none;
+ }
+
+ // use @include grid-row; to use a container row
+ @else {
+ width: 100%;
+ margin-#{$default-float}: auto;
+ margin-#{$opposite-direction}: auto;
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: $row-width;
+ }
+
+ // Clearfix for all rows
+ @include clearfix();
+}
+
+// Creates a column, should be used inside of a media query to control layouts
+//
+// $columns - The number of columns this should be
+// $last-column - Is this the last column? Default: false.
+// $center - Center these columns? Default: false.
+// $offset - # of columns to offset. Default: false.
+// $push - # of columns to push. Default: false.
+// $pull - # of columns to pull. Default: false.
+// $collapse - Get rid of gutter padding on column? Default: false.
+// $float - Should this float? Default: true. Options: true, false, left, right.
+@mixin grid-column(
+ $columns:false,
+ $last-column:false,
+ $center:false,
+ $offset:false,
+ $push:false,
+ $pull:false,
+ $collapse:false,
+ $float:true,
+ $position:false) {
+
+ // If positioned for default .column, include relative position
+ // push and pull require position set
+ @if $position or $push or $pull {
+ position: relative;
+ }
+
+ // If collapsed, get rid of gutter padding
+ @if $collapse {
+ padding-left: 0;
+ padding-right: 0;
+ }
+
+ // Gutter padding whenever a column isn't set to collapse
+ // (use $collapse:null to do nothing)
+ @else if $collapse == false {
+ padding-left: ($column-gutter / 2);
+ padding-right: ($column-gutter / 2);
+ }
+
+ // If a column number is given, calculate width
+ @if $columns {
+ width: grid-calc($columns, $total-columns);
+
+ // If last column, float naturally instead of to the right
+ @if $last-column { float: $opposite-direction; }
+ }
+
+ // Source Ordering, adds left/right depending on which you use.
+ @if $push { #{$default-float}: grid-calc($push, $total-columns); #{$opposite-direction}: auto; }
+ @if $pull { #{$opposite-direction}: grid-calc($pull, $total-columns); #{$default-float}: auto; }
+
+ @if $float {
+ @if $float == left or $float == true { float: $default-float; }
+ @else if $float == right { float: $opposite-direction; }
+ @else { float: none; }
+ }
+
+ // If centered, get rid of float and add appropriate margins
+ @if $center {
+ margin-#{$default-float}: auto;
+ margin-#{$opposite-direction}: auto;
+ float: none;
+ }
+
+ // If offset, calculate appropriate margins
+ @if $offset { margin-#{$default-float}: grid-calc($offset, $total-columns) !important; }
+
+}
+
+// Create presentational classes for grid
+//
+// $size - Name of class to use, i.e. "large" will generate .large-1, .large-2, etc.
+@mixin grid-html-classes($size) {
+
+ @for $i from 0 through $total-columns - 1 {
+ .#{$size}-push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .#{$size}-pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+
+ .column,
+ .columns { @include grid-column($columns:false, $position:true); }
+
+
+ @for $i from 1 through $total-columns {
+ .#{$size}-#{$i} { @include grid-column($columns:$i,$collapse:null,$float:false); }
+ }
+
+ @for $i from 0 through $total-columns - 1 {
+ .#{$size}-offset-#{$i} { @include grid-column($offset:$i, $collapse:null,$float:false); }
+ }
+
+ .#{$size}-reset-order {
+ margin-#{$default-float}: 0;
+ margin-#{$opposite-direction}: 0;
+ left: auto;
+ right: auto;
+ float: $default-float;
+ }
+
+ .column.#{$size}-centered,
+ .columns.#{$size}-centered { @include grid-column($center:true, $collapse:null, $float:false); }
+
+ .column.#{$size}-uncentered,
+ .columns.#{$size}-uncentered {
+ margin-#{$default-float}: 0;
+ margin-#{$opposite-direction}: 0;
+ float: $default-float;
+ }
+
+ // Fighting [class*="column"] + [class*="column"]:last-child
+ .column.#{$size}-centered:last-child,
+ .columns.#{$size}-centered:last-child{
+ float: none;
+ }
+
+ // Fighting .column.-centered:last-child
+ .column.#{$size}-uncentered:last-child,
+ .columns.#{$size}-uncentered:last-child {
+ float: $default-float;
+ }
+
+ .column.#{$size}-uncentered.opposite,
+ .columns.#{$size}-uncentered.opposite {
+ float: $opposite-direction;
+ }
+
+ .row {
+ &.#{$size}-collapse {
+ > .column,
+ > .columns { @include grid-column($collapse:true, $float:false); }
+
+ .row {margin-left:0; margin-right:0;}
+ }
+ &.#{$size}-uncollapse {
+ > .column,
+ > .columns {
+ @include grid-column;
+ }
+ }
+ }
+}
+
+@include exports("grid") {
+ @if $include-html-grid-classes {
+ .row {
+ @include grid-row;
+
+ &.collapse {
+ > .column,
+ > .columns { @include grid-column($collapse:true, $float:false); }
+
+ .row {margin-left:0; margin-right:0;}
+ }
+
+ .row { @include grid-row($behavior:nest);
+ &.collapse { @include grid-row($behavior:nest-collapse); }
+ }
+ }
+
+ .column,
+ .columns { @include grid-column($columns:$total-columns); }
+
+ [class*="column"] + [class*="column"]:last-child { float: $last-child-float; }
+ [class*="column"] + [class*="column"].end { float: $default-float; }
+
+ @media #{$small-up} {
+ @include grid-html-classes($size:small);
+ }
+
+ @media #{$medium-up} {
+ @include grid-html-classes($size:medium);
+ // Old push and pull classes
+ @for $i from 0 through $total-columns - 1 {
+ .push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+ }
+ @media #{$large-up} {
+ @include grid-html-classes($size:large);
+ @for $i from 0 through $total-columns - 1 {
+ .push-#{$i} {
+ @include grid-column($push:$i, $collapse:null, $float:false);
+ }
+ .pull-#{$i} {
+ @include grid-column($pull:$i, $collapse:null, $float:false);
+ }
+ }
+ }
+ }
+ @if $include-xl-html-grid-classes {
+ @media #{$xlarge-up} {
+ @include grid-html-classes($size:xlarge);
+ }
+ @media #{$xxlarge-up} {
+ @include grid-html-classes($size:xxlarge);
+ }
+ }
+}
diff --git a/app/styles/app/foundation/scss/foundation/components/_icon-bar.scss b/app/styles/app/foundation/scss/foundation/components/_icon-bar.scss
new file mode 100644
index 00000000..90a01448
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_icon-bar.scss
@@ -0,0 +1,329 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+
+// // @name
+// // @dependencies _global.scss
+
+// $include-html-icon-bar-classes: $include-html-classes !default;
+
+// // @variables
+
+// // We use these to style the icon-bar and items
+// $icon-bar-bg: $oil !default;
+// $icon-bar-font-color: $white !default;
+// $icon-bar-font-color-hover: $icon-bar-font-color !default;
+// $icon-bar-font-size: 1rem !default;
+// $icon-bar-hover-color: $primary-color !default;
+// $icon-bar-icon-color: $white !default;
+// $icon-bar-icon-color-hover: $icon-bar-icon-color !default;
+// $icon-bar-icon-size: 1.875rem !default;
+// $icon-bar-image-width: 1.875rem !default;
+// $icon-bar-image-height: 1.875rem !default;
+// $icon-bar-active-color: $primary-color !default;
+// $icon-bar-item-padding: 1.25rem !default;
+
+// // We use this to set default opacity and cursor for disabled icons.
+// $icon-bar-disabled-opacity: 0.7 !default;
+// $icon-bar-disabled-cursor: $cursor-default-value !default;
+
+// //
+// // @mixins
+// //
+
+// // We use this mixin to create the base styles for our Icon bar element.
+// //
+// @mixin icon-bar-base() {
+
+// width: 100%;
+// font-size: 0;
+// display: inline-block;
+
+// & > * {
+// text-align: center;
+// font-size: $icon-bar-font-size;
+// width: 25%;
+// margin: 0 auto;
+// display: block;
+// padding: $icon-bar-item-padding;
+// float: left;
+
+// i, img {
+// display: block;
+// margin: 0 auto;
+
+// & + label {
+// margin-top: .0625rem;
+// }
+// }
+
+// i {
+// font-size: $icon-bar-icon-size;
+// vertical-align: middle;
+// }
+
+// img {
+// width: $icon-bar-image-width;
+// height: $icon-bar-image-height;
+// }
+// }
+
+// &.label-right > * {
+
+// i, img {
+// margin: 0 .0625rem 0 0;
+// display: inline-block;
+
+// & + label {
+// margin-top: 0;
+// }
+// }
+
+// label { display: inline-block; }
+// }
+
+// &.vertical.label-right > * {
+// text-align: left;
+// }
+
+// &.vertical, &.small-vertical{
+// height: 100%;
+// width: auto;
+
+// .item {
+// width: auto;
+// margin: auto;
+// float: none;
+// }
+// }
+
+// &.medium-vertical {
+// @media #{$medium-up} {
+// height: 100%;
+// width: auto;
+
+// .item {
+// width: auto;
+// margin: auto;
+// float: none;
+// }
+// }
+// }
+// &.large-vertical {
+// @media #{$large-up} {
+// height: 100%;
+// width: auto;
+
+// .item {
+// width: auto;
+// margin: auto;
+// float: none;
+// }
+// }
+// }
+// }
+
+// // We use this mixin to create the size styles for icon bars.
+// @mixin icon-bar-size(
+// $padding: $icon-bar-item-padding,
+// $font-size: $icon-bar-font-size,
+// $icon-size: $icon-bar-icon-size,
+// $image-width: $icon-bar-image-width,
+// $image-height: $icon-bar-image-height) {
+
+// & > * {
+// font-size: $font-size;
+// padding: $padding;
+
+// i, img {
+
+// & + label {
+// margin-top: .0625rem;
+// }
+// }
+
+// i {
+// font-size: $icon-size;
+// }
+
+// img {
+// width: $image-width;
+// height: $image-height;
+// }
+// }
+
+// }
+
+// @mixin icon-bar-style(
+// $bar-bg:$icon-bar-bg,
+// $bar-font-color:$icon-bar-font-color,
+// $bar-font-color-hover:$icon-bar-font-color-hover,
+// $bar-hover-color:$icon-bar-hover-color,
+// $bar-icon-color:$icon-bar-icon-color,
+// $bar-icon-color-hover:$icon-bar-icon-color-hover,
+// $bar-active-color:$icon-bar-active-color,
+// $base-style:true,
+// $disabled:false) {
+
+// @if $base-style {
+
+// background: $bar-bg;
+
+// & > * {
+// label { color: $bar-font-color; }
+
+// i { color: $bar-icon-color; }
+// }
+
+// & > a:hover {
+
+// background: $bar-hover-color;
+
+// label { color: $bar-font-color-hover; }
+
+// i { color: $bar-icon-color-hover; }
+// }
+
+// & > a.active {
+
+// background: $bar-active-color;
+
+// label { color: $bar-font-color-hover; }
+
+// i { color: $bar-icon-color-hover; }
+// }
+// }
+// @if $disabled {
+// .item.disabled {
+// opacity: $icon-bar-disabled-opacity;
+// cursor: $icon-bar-disabled-cursor;
+// >* {
+// opacity: $icon-bar-disabled-opacity;
+// cursor: $icon-bar-disabled-cursor;
+// }
+// }
+// }
+
+// }
+
+// // We use this to quickly create icon bars with a single mixin
+// // $height - The overall calculated height of the icon bar (horizontal)
+// // $bar-bg - the background color of the bar
+// // $bar-font-color - the font color
+// // $bar-hover-color - okay these are pretty obvious variables
+// // $bar-icon-color - maybe we could skip explaining them all? Okay this one does change icon color if you use an icon font
+// // $bar-active-color - the color of an active / hover state
+// // $base-style - Apply base styles? Default: true.
+// // $disabled - Allow disabled icons? Default: false.
+
+// @mixin icon-bar(
+// $bar-bg:$icon-bar-bg,
+// $bar-font-color:$icon-bar-font-color,
+// $bar-font-color-hover:$icon-bar-font-color-hover,
+// $bar-hover-color:$icon-bar-hover-color,
+// $bar-icon-color:$icon-bar-icon-color,
+// $bar-icon-color-hover:$icon-bar-icon-color-hover,
+// $bar-active-color:$icon-bar-active-color,
+// $padding: $icon-bar-item-padding,
+// $font-size: $icon-bar-font-size,
+// $icon-size: $icon-bar-icon-size,
+// $image-width: $icon-bar-image-width,
+// $image-height: $icon-bar-image-height,
+// $base-style:true,
+// $disabled:false) {
+// @include icon-bar-base();
+// @include icon-bar-size($padding, $font-size, $icon-size, $image-width, $image-height);
+// @include icon-bar-style($bar-bg, $bar-font-color, $bar-font-color-hover, $bar-hover-color, $bar-icon-color, $bar-icon-color-hover, $bar-active-color, $base-style, $disabled);
+// }
+
+// @include exports("icon-bar") {
+// @if $include-html-icon-bar-classes {
+// .icon-bar {
+// @include icon-bar;
+// }
+// }
+// }
+
+// @if $include-html-icon-bar-classes {
+
+// // toolbar styles
+
+// .icon-bar {
+
+// // Counts
+
+// &.two-up {
+// .item { width: 50%; }
+// &.vertical .item, &.small-vertical .item { width: auto; }
+// &.medium-vertical .item {
+// @media #{$medium-up} {
+// width: auto;
+// }
+// }
+// &.large-vertical .item {
+// @media #{$large-up} {
+// width: auto;
+// }
+// }
+// }
+// &.three-up {
+// .item { width: 33.3333%; }
+// &.vertical .item, &.small-vertical .item { width: auto; }
+// &.medium-vertical .item {
+// @media #{$medium-up} {
+// width: auto;
+// }
+// }
+// &.large-vertical .item {
+// @media #{$large-up} {
+// width: auto;
+// }
+// }
+// }
+// &.four-up {
+// .item { width: 25%; }
+// &.vertical .item, &.small-vertical .item { width: auto; }
+// &.medium-vertical .item {
+// @media #{$medium-up} {
+// width: auto;
+// }
+// }
+// &.large-vertical .item {
+// @media #{$large-up} {
+// width: auto;
+// }
+// }
+// }
+// &.five-up {
+// .item { width: 20%; }
+// &.vertical .item, &.small-vertical .item { width: auto; }
+// &.medium-vertical .item {
+// @media #{$medium-up} {
+// width: auto;
+// }
+// }
+// &.large-vertical .item {
+// @media #{$large-up} {
+// width: auto;
+// }
+// }
+// }
+// &.six-up {
+// .item { width: 16.66667%; }
+// &.vertical .item, &.small-vertical .item { width: auto; }
+// &.medium-vertical .item {
+// @media #{$medium-up} {
+// width: auto;
+// }
+// }
+// &.large-vertical .item {
+// @media #{$large-up} {
+// width: auto;
+// }
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_inline-lists.scss b/app/styles/app/foundation/scss/foundation/components/_inline-lists.scss
new file mode 100644
index 00000000..f492eae9
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_inline-lists.scss
@@ -0,0 +1,57 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-inline-list-classes: $include-html-classes !default;
+
+// // We use this to control the margins and padding of the inline list.
+// $inline-list-top-margin: 0 !default;
+// $inline-list-opposite-margin: 0 !default;
+// $inline-list-bottom-margin: rem-calc(17) !default;
+// $inline-list-default-float-margin: rem-calc(-22) !default;
+// $inline-list-default-float-list-margin: rem-calc(22) !default;
+
+// $inline-list-padding: 0 !default;
+
+// // We use this to control the overflow of the inline list.
+// $inline-list-overflow: hidden !default;
+
+// // We use this to control the list items
+// $inline-list-display: block !default;
+
+// // We use this to control any elements within list items
+// $inline-list-children-display: block !default;
+
+// //
+// // @mixins
+// //
+// // We use this mixin to create inline lists
+// @mixin inline-list {
+// margin: $inline-list-top-margin auto $inline-list-bottom-margin auto;
+// margin-#{$default-float}: $inline-list-default-float-margin;
+// margin-#{$opposite-direction}: $inline-list-opposite-margin;
+// padding: $inline-list-padding;
+// list-style: none;
+// overflow: $inline-list-overflow;
+
+// & > li {
+// list-style: none;
+// float: $default-float;
+// margin-#{$default-float}: $inline-list-default-float-list-margin;
+// display: $inline-list-display;
+// &>* { display: $inline-list-children-display; }
+// }
+// }
+
+// @include exports("inline-list") {
+// @if $include-html-inline-list-classes {
+// .inline-list {
+// @include inline-list();
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_joyride.scss b/app/styles/app/foundation/scss/foundation/components/_joyride.scss
new file mode 100644
index 00000000..e0bbad83
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_joyride.scss
@@ -0,0 +1,222 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-joyride-classes: $include-html-classes !default;
+
+// // Controlling default Joyride styles
+// $joyride-tip-bg: $oil !default;
+// $joyride-tip-default-width: 300px !default;
+// $joyride-tip-padding: rem-calc(18 20 24) !default;
+// $joyride-tip-border: solid 1px $charcoal !default;
+// $joyride-tip-radius: 4px !default;
+// $joyride-tip-position-offset: 22px !default;
+
+// // Here, we're setting the tip font styles
+// $joyride-tip-font-color: $white !default;
+// $joyride-tip-font-size: rem-calc(14) !default;
+// $joyride-tip-header-weight: $font-weight-bold !default;
+
+// // This changes the nub size
+// $joyride-tip-nub-size: 10px !default;
+
+// // This adjusts the styles for the timer when its enabled
+// $joyride-tip-timer-width: 50px !default;
+// $joyride-tip-timer-height: 3px !default;
+// $joyride-tip-timer-color: $steel !default;
+
+// // This changes up the styles for the close button
+// $joyride-tip-close-color: $monsoon !default;
+// $joyride-tip-close-size: 24px !default;
+// $joyride-tip-close-weight: $font-weight-normal !default;
+
+// // When Joyride is filling the screen, we use this style for the bg
+// $joyride-screenfill: rgba(0,0,0,0.5) !default;
+
+
+// // We decided not to make a mixin for this because it relies on
+// // predefined classes to work properly.
+// @include exports("joyride") {
+// @if $include-html-joyride-classes {
+
+// /* Foundation Joyride */
+// .joyride-list { display: none; }
+
+// /* Default styles for the container */
+// .joyride-tip-guide {
+// display: none;
+// position: absolute;
+// background: $joyride-tip-bg;
+// color: $joyride-tip-font-color;
+// z-index: 101;
+// top: 0;
+// #{$default-float}: 2.5%;
+// font-family: inherit;
+// font-weight: $font-weight-normal;
+// width: 95%;
+// }
+
+// .lt-ie9 .joyride-tip-guide {
+// max-width:800px;
+// #{$default-float}: 50%;
+// margin-#{$default-float}:-400px;
+// }
+
+// .joyride-content-wrapper {
+// width: 100%;
+
+// padding: $joyride-tip-padding;
+
+// .button { margin-bottom: 0 !important; }
+
+// .joyride-prev-tip { margin-right: 10px; }
+// }
+
+// /* Add a little css triangle pip, older browser just miss out on the fanciness of it */
+// .joyride-tip-guide {
+// .joyride-nub {
+// display: block;
+// position: absolute;
+// #{$default-float}: $joyride-tip-position-offset;
+// width: 0;
+// height: 0;
+// border: $joyride-tip-nub-size solid $joyride-tip-bg;
+
+// &.top {
+// border-top-style: solid;
+// border-color: $joyride-tip-bg;
+// border-top-color: transparent !important;
+// border-#{$default-float}-color: transparent !important;
+// border-#{$opposite-direction}-color: transparent !important;
+// top: -($joyride-tip-nub-size*2);
+// }
+// &.bottom {
+// border-bottom-style: solid;
+// border-color: $joyride-tip-bg !important;
+// border-bottom-color: transparent !important;
+// border-#{$default-float}-color: transparent !important;
+// border-#{$opposite-direction}-color: transparent !important;
+// bottom: -($joyride-tip-nub-size*2);
+// }
+
+// &.right { right: -($joyride-tip-nub-size*2); }
+// &.left { left: -($joyride-tip-nub-size*2); }
+// }
+// }
+
+// /* Typography */
+// .joyride-tip-guide h1,
+// .joyride-tip-guide h2,
+// .joyride-tip-guide h3,
+// .joyride-tip-guide h4,
+// .joyride-tip-guide h5,
+// .joyride-tip-guide h6 {
+// line-height: 1.25;
+// margin: 0;
+// font-weight: $joyride-tip-header-weight;
+// color: $joyride-tip-font-color;
+// }
+// .joyride-tip-guide p {
+// margin: rem-calc(0 0 18 0);
+// font-size: $joyride-tip-font-size;
+// line-height: 1.3;
+// }
+
+// .joyride-timer-indicator-wrap {
+// width: $joyride-tip-timer-width;
+// height: $joyride-tip-timer-height;
+// border: $joyride-tip-border;
+// position: absolute;
+// #{$opposite-direction}: rem-calc(17);
+// bottom: rem-calc(16);
+// }
+// .joyride-timer-indicator {
+// display: block;
+// width: 0;
+// height: inherit;
+// background: $joyride-tip-timer-color;
+// }
+
+// .joyride-close-tip {
+// position: absolute;
+// #{$opposite-direction}: 12px;
+// top: 10px;
+// color: $joyride-tip-close-color !important;
+// text-decoration: none;
+// font-size: $joyride-tip-close-size;
+// font-weight: $joyride-tip-close-weight;
+// line-height: .5 !important;
+
+// &:hover,
+// &:focus { color: $smoke !important; }
+// }
+
+// .joyride-modal-bg {
+// position: fixed;
+// height: 100%;
+// width: 100%;
+// background: transparent;
+// background: $joyride-screenfill;
+// z-index: 100;
+// display: none;
+// top: 0;
+// #{$default-float}: 0;
+// cursor: $cursor-pointer-value;
+// }
+
+// .joyride-expose-wrapper {
+// background-color: $white;
+// position: absolute;
+// border-radius: 3px;
+// z-index: 102;
+// box-shadow: 0 0 15px $white;
+// }
+
+// .joyride-expose-cover {
+// background: transparent;
+// border-radius: 3px;
+// position: absolute;
+// z-index: 9999;
+// top: 0;
+// left: 0;
+// }
+
+
+// /* Styles for screens that are at least 768px; */
+// @media #{$small} {
+// .joyride-tip-guide { width: $joyride-tip-default-width; #{$default-float}: inherit;
+// .joyride-nub {
+// &.bottom {
+// border-color: $joyride-tip-bg !important;
+// border-bottom-color: transparent !important;
+// border-#{$default-float}-color: transparent !important;
+// border-#{$opposite-direction}-color: transparent !important;
+// bottom: -($joyride-tip-nub-size*2);
+// }
+// &.right {
+// border-color: $joyride-tip-bg !important;
+// border-top-color: transparent !important;
+// border-right-color: transparent !important; border-bottom-color: transparent !important;
+// top: $joyride-tip-position-offset;
+// left: auto;
+// right: -($joyride-tip-nub-size*2);
+// }
+// &.left {
+// border-color: $joyride-tip-bg !important;
+// border-top-color: transparent !important;
+// border-left-color: transparent !important;
+// border-bottom-color: transparent !important;
+// top: $joyride-tip-position-offset;
+// left: -($joyride-tip-nub-size*2);
+// right: auto;
+// }
+// }
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_keystrokes.scss b/app/styles/app/foundation/scss/foundation/components/_keystrokes.scss
new file mode 100644
index 00000000..80da47de
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_keystrokes.scss
@@ -0,0 +1,61 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-keystroke-classes: $include-html-classes !default;
+
+// // We use these to control text styles.
+// $keystroke-font: "Consolas", "Menlo", "Courier", monospace !default;
+// $keystroke-font-size: inherit !default;
+// $keystroke-font-color: $jet !default;
+// $keystroke-font-color-alt: $white !default;
+// $keystroke-function-factor: -7% !default;
+
+// // We use this to control keystroke padding.
+// $keystroke-padding: rem-calc(2 4 0) !default;
+
+// // We use these to control background and border styles.
+// $keystroke-bg: scale-color($white, $lightness: $keystroke-function-factor) !default;
+// $keystroke-border-style: solid !default;
+// $keystroke-border-width: 1px !default;
+// $keystroke-border-color: scale-color($keystroke-bg, $lightness: $keystroke-function-factor) !default;
+// $keystroke-radius: $global-radius !default;
+
+// //
+// // @mixins
+// //
+// // We use this mixin to create keystroke styles.
+// // $bg - Default: $keystroke-bg || scale-color($white, $lightness: $keystroke-function-factor) !default;
+// @mixin keystroke($bg:$keystroke-bg) {
+// // This find the lightness percentage of the background color.
+// $bg-lightness: lightness($bg);
+
+// background-color: $bg;
+// border-color: scale-color($bg, $lightness: $keystroke-function-factor);
+
+// // We adjust the font color based on the brightness of the background.
+// @if $bg-lightness > 70% { color: $keystroke-font-color; }
+// @else { color: $keystroke-font-color-alt; }
+
+// border-style: $keystroke-border-style;
+// border-width: $keystroke-border-width;
+// margin: 0;
+// font-family: $keystroke-font;
+// font-size: $keystroke-font-size;
+// padding: $keystroke-padding;
+// }
+
+// @include exports("keystroke") {
+// @if $include-html-keystroke-classes {
+// .keystroke,
+// kbd {
+// @include keystroke;
+// @include radius($keystroke-radius);
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_labels.scss b/app/styles/app/foundation/scss/foundation/components/_labels.scss
new file mode 100644
index 00000000..cad17342
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_labels.scss
@@ -0,0 +1,106 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-label-classes: $include-html-classes !default;
+
+// // We use these to style the labels
+// $label-padding: rem-calc(4 8 4) !default;
+// $label-radius: $global-radius !default;
+
+// // We use these to style the label text
+// $label-font-sizing: rem-calc(11) !default;
+// $label-font-weight: $font-weight-normal !default;
+// $label-font-color: $oil !default;
+// $label-font-color-alt: $white !default;
+// $label-font-family: $body-font-family !default;
+
+// //
+// // @mixins
+// //
+// // We use this mixin to create a default label base.
+// @mixin label-base {
+// font-weight: $label-font-weight;
+// font-family: $label-font-family;
+// text-align: center;
+// text-decoration: none;
+// line-height: 1;
+// white-space: nowrap;
+// display: inline-block;
+// position: relative;
+// margin-bottom: auto;
+// }
+
+// // @mixins
+// //
+// // We use this mixin to add label size styles.
+// // $padding - Used to determine label padding. Default: $label-padding || rem-calc(4 8 4) !default
+// // $text-size - Used to determine label text-size. Default: $text-size found in settings
+// @mixin label-size($padding:$label-padding, $text-size:$label-font-sizing) {
+// @if $padding { padding: $padding; }
+// @if $text-size { font-size: $text-size; }
+// }
+
+// // @mixins
+// //
+// // We use this mixin to add label styles.
+// // $bg - Default: $primary-color (found in settings file)
+// // $radius - Default: false, Options: true, sets radius to $global-radius (found in settings file)
+// @mixin label-style($bg:$primary-color, $radius:false) {
+
+// // We control which background color comes through
+// @if $bg {
+
+// // This find the lightness percentage of the background color.
+// $bg-lightness: lightness($bg);
+
+// background-color: $bg;
+
+// // We control the text color for you based on the background color.
+// @if $bg-lightness < 70% { color: $label-font-color-alt; }
+// @else { color: $label-font-color; }
+// }
+
+// // We use this to control the radius on labels.
+// @if $radius == true { @include radius($label-radius); }
+// @else if $radius { @include radius($radius); }
+
+// }
+
+// // @mixins
+// //
+// // We use this to add close buttons to alerts
+// // $padding - Default: $label-padding,
+// // $text-size - Default: $label-font-sizing,
+// // $bg - Default: $primary-color(found in settings file)
+// // $radius - Default: false, Options: true which sets radius to $global-radius (found in settings file)
+// @mixin label($padding:$label-padding, $text-size:$label-font-sizing, $bg:$primary-color, $radius:false) {
+
+// @include label-base;
+// @include label-size($padding, $text-size);
+// @include label-style($bg, $radius);
+// }
+
+// @include exports("label") {
+// @if $include-html-label-classes {
+// .label {
+// @include label-base;
+// @include label-size;
+// @include label-style;
+
+// &.radius { @include label-style(false, true); }
+// &.round { @include label-style(false, $radius:1000px); }
+
+// &.alert { @include label-style($alert-color); }
+// &.warning { @include label-style($warning-color); }
+// &.success { @include label-style($success-color); }
+// &.secondary { @include label-style($secondary-color); }
+// &.info { @include label-style($info-color); }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_magellan.scss b/app/styles/app/foundation/scss/foundation/components/_magellan.scss
new file mode 100644
index 00000000..64d044b0
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_magellan.scss
@@ -0,0 +1,34 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-magellan-classes: $include-html-classes !default;
+
+// $magellan-bg: $white !default;
+// $magellan-padding: 10px !default;
+
+// @include exports("magellan") {
+// @if $include-html-magellan-classes {
+
+// #{data('magellan-expedition')}, #{data('magellan-expedition-clone')} {
+// background: $magellan-bg;
+// z-index: 50;
+// min-width: 100%;
+// padding: $magellan-padding;
+
+// .sub-nav {
+// margin-bottom: 0;
+// dd { margin-bottom: 0; }
+// a {
+// line-height: 1.8em;
+// }
+// }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_offcanvas.scss b/app/styles/app/foundation/scss/foundation/components/_offcanvas.scss
new file mode 100644
index 00000000..7995c994
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_offcanvas.scss
@@ -0,0 +1,515 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "type";
+
+// // Off Canvas Tab Bar Variables
+// $include-html-off-canvas-classes: $include-html-classes !default;
+
+// $tabbar-bg: $oil !default;
+// $tabbar-height: rem-calc(45) !default;
+// $tabbar-icon-width: $tabbar-height !default;
+// $tabbar-line-height: $tabbar-height !default;
+// $tabbar-color: $white !default;
+// $tabbar-middle-padding: 0 rem-calc(10) !default;
+
+// // Off Canvas Divider Styles
+// $tabbar-left-section-border: solid 1px scale-color($tabbar-bg, $lightness: -50%) !default;
+// $tabbar-right-section-border: $tabbar-left-section-border;
+
+
+// // Off Canvas Tab Bar Headers
+// $tabbar-header-color: $white !default;
+// $tabbar-header-weight: $font-weight-bold !default;
+// $tabbar-header-line-height: $tabbar-height !default;
+// $tabbar-header-margin: 0 !default;
+
+// // Off Canvas Menu Variables
+// $off-canvas-width: rem-calc(250) !default;
+// $off-canvas-bg: $oil !default;
+// $off-canvas-bg-hover: scale-color($tabbar-bg, $lightness: -30%) !default;
+
+// // Off Canvas Menu List Variables
+// $off-canvas-label-padding: 0.3rem rem-calc(15) !default;
+// $off-canvas-label-color: $aluminum !default;
+// $off-canvas-label-text-transform: uppercase !default;
+// $off-canvas-label-font-size: rem-calc(12) !default;
+// $off-canvas-label-font-weight: $font-weight-bold !default;
+// $off-canvas-label-bg: $tuatara !default;
+// $off-canvas-label-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%) !default;
+// $off-canvas-label-border-bottom: none !default;
+// $off-canvas-label-margin:0 !default;
+// $off-canvas-link-padding: rem-calc(10, 15) !default;
+// $off-canvas-link-color: rgba($white, 0.7) !default;
+// $off-canvas-link-border-bottom: 1px solid scale-color($off-canvas-bg, $lightness: -25%) !default;
+// $off-canvas-back-bg: #444 !default;
+// $off-canvas-back-border-top: $off-canvas-label-border-top !default;
+// $off-canvas-back-border-bottom: $off-canvas-label-border-bottom !default;
+// $off-canvas-back-hover-bg: scale-color($off-canvas-back-bg, $lightness: -30%) !default;
+// $off-canvas-back-hover-border-top: 1px solid scale-color($off-canvas-label-bg, $lightness: 14%) !default;
+// $off-canvas-back-hover-border-bottom: none !default;
+
+// // Off Canvas Menu Icon Variables
+// $tabbar-menu-icon-color: $white !default;
+// $tabbar-menu-icon-hover: scale-color($tabbar-menu-icon-color, $lightness: -30%) !default;
+
+// $tabbar-menu-icon-text-indent: rem-calc(35) !default;
+// $tabbar-menu-icon-width: $tabbar-icon-width !default;
+// $tabbar-menu-icon-height: $tabbar-height !default;
+// $tabbar-menu-icon-padding: 0 !default;
+
+// $tabbar-hamburger-icon-width: rem-calc(16) !default;
+// $tabbar-hamburger-icon-left: false !default;
+// $tabbar-hamburger-icon-top: false !default;
+// $tabbar-hamburger-icon-thickness: 1px !default;
+// $tabbar-hamburger-icon-gap: 6px !default;
+
+// // Off Canvas Back-Link Overlay
+// $off-canvas-overlay-transition: background 300ms ease !default;
+// $off-canvas-overlay-cursor: pointer !default;
+// $off-canvas-overlay-box-shadow: -4px 0 4px rgba($black, 0.5), 4px 0 4px rgba($black, 0.5) !default;
+// $off-canvas-overlay-background: rgba($white, 0.2) !default;
+// $off-canvas-overlay-background-hover: rgba($white, 0.05) !default;
+
+// // Transition Variables
+// $menu-slide: "transform 500ms ease" !default;
+
+
+// // MIXINS
+// // Remove transition flicker on phones
+// @mixin kill-flicker {
+// // -webkit-transform: translateZ(0x);
+// -webkit-backface-visibility: hidden;
+// }
+
+// // Basic properties for the content wraps
+// @mixin wrap-base {
+// position: relative;
+// width: 100%;
+// }
+
+// @mixin translate3d($tx,$ty,$tz) {
+// -ms-transform: translate($tx,$ty);
+// -webkit-transform: translate3d($tx,$ty,$tz);
+// -moz-transform: translate3d($tx,$ty,$tz);
+// -ms-transform: translate3d($tx,$ty,$tz);
+// -o-transform: translate3d($tx,$ty,$tz);
+// transform: translate3d($tx,$ty,$tz)
+// }
+
+// // basic styles for off-canvas menu container
+// @mixin off-canvas-menu($position) {
+// @include kill-flicker;
+// * { @include kill-flicker; }
+// width: $off-canvas-width;
+// top: 0;
+// bottom: 0;
+// position: absolute;
+// overflow-x: hidden;
+// overflow-y: auto;
+// background: $off-canvas-bg;
+// z-index: 1001;
+// box-sizing: content-box;
+// transition: transform 500ms ease 0s;
+// -webkit-overflow-scrolling: touch;
+// -ms-overflow-style: -ms-autohiding-scrollbar;
+
+// @if $position == left {
+// @include translate3d(-100%,0,0);
+// left: 0;
+// }
+// @if $position == right {
+// @include translate3d(100%,0,0);
+// right: 0;
+// }
+// }
+
+// // OFF CANVAS WRAP
+// // Wrap visible content and prevent scroll bars
+// @mixin off-canvas-wrap {
+// @include kill-flicker;
+// @include wrap-base;
+// overflow: hidden;
+// &.move-right,
+// &.move-left { min-height: 100%; -webkit-overflow-scrolling: touch; }
+// }
+
+// // INNER WRAP
+// // Main content area that moves to reveal the off-canvas nav
+// @mixin inner-wrap {
+// // @include kill-flicker;
+// // removed for now till chrome fixes backface issue
+// @include wrap-base;
+// @include clearfix;
+// -webkit-transition: -webkit-#{$menu-slide};
+// -moz-transition: -moz-#{$menu-slide};
+// -ms-transition: -ms-#{$menu-slide};
+// -o-transition: -o-#{$menu-slide};
+// transition: #{$menu-slide};
+// }
+
+// // TAB BAR
+// // This is the tab bar base
+// @mixin tab-bar-base {
+// @include kill-flicker;
+
+// // base styles
+// background: $tabbar-bg;
+// color: $tabbar-color;
+// height: $tabbar-height;
+// line-height: $tabbar-line-height;
+
+// // make sure it's below the .exit-off-canvas link
+// position: relative;
+// // z-index: 999;
+
+// // Typography
+// h1,h2,h3,h4,h5,h6 {
+// color: $tabbar-header-color;
+// font-weight: $tabbar-header-weight;
+// line-height: $tabbar-header-line-height;
+// margin: $tabbar-header-margin;
+// }
+// h1,h2,h3,h4 { font-size: $h5-font-size; }
+// }
+
+// // SMALL SECTIONS
+// // These are small sections on the left and right that contain the off-canvas toggle buttons;
+// @mixin tabbar-small-section($position) {
+// width: $tabbar-icon-width;
+// height: $tabbar-height;
+// position: absolute;
+// top: 0;
+// @if $position == left {
+// border-right: $tabbar-left-section-border;
+// // box-shadow: 1px 0 0 scale-color($tabbar-bg, $lightness: 13%);
+// left: 0;
+// }
+// @if $position == right {
+// border-left: $tabbar-right-section-border;
+// // box-shadow: -1px 0 0 scale-color($tabbar-bg, $lightness: -50%);
+// right:0;
+// }
+// }
+
+// @mixin tab-bar-section {
+// padding: $tabbar-middle-padding;
+// position: absolute;
+// text-align: center;
+// height: $tabbar-height;
+// top: 0;
+// @media #{$medium-up} {
+// &.left { text-align: left; }
+// &.right { text-align: right; }
+// }
+
+// // still need to make these non-presentational
+// &.left {
+// left: 0;
+// right: $tabbar-icon-width;
+// }
+// &.right {
+// left: $tabbar-icon-width;
+// right: 0;
+// }
+// &.middle {
+// left: $tabbar-icon-width;
+// right: $tabbar-icon-width;
+// }
+// }
+
+// // OFF CANVAS LIST
+// // This is the list of links in the off-canvas menu
+// @mixin off-canvas-list {
+// list-style-type: none;
+// padding:0;
+// margin:0;
+
+// li {
+// label {
+// display: block;
+// padding: $off-canvas-label-padding;
+// color: $off-canvas-label-color;
+// text-transform: $off-canvas-label-text-transform;
+// font-size: $off-canvas-label-font-size;
+// font-weight: $off-canvas-label-font-weight;
+// background: $off-canvas-label-bg;
+// border-top: $off-canvas-label-border-top;
+// border-bottom: $off-canvas-label-border-bottom;
+// margin: $off-canvas-label-margin;
+// }
+// a {
+// display: block;
+// padding: $off-canvas-link-padding;
+// color: $off-canvas-link-color;
+// border-bottom: $off-canvas-link-border-bottom;
+// transition: background 300ms ease;
+// &:hover {
+// background: $off-canvas-bg-hover;
+// }
+// }
+// }
+
+// }
+
+// // BACK LINK
+// // This is an overlay that, when clicked, will toggle off the off canvas menu
+// @mixin back-link {
+// @include kill-flicker;
+
+// transition: $off-canvas-overlay-transition;
+// cursor: $off-canvas-overlay-cursor;
+// box-shadow: $off-canvas-overlay-box-shadow;
+
+// // fill the screen
+// display: block;
+// position: absolute;
+// background: $off-canvas-overlay-background;
+// top: 0;
+// bottom: 0;
+// left:0;
+// right:0;
+// z-index: 1002;
+// -webkit-tap-highlight-color: rgba(0,0,0,0);
+
+// @media #{$medium-up} {
+// &:hover {
+// background: $off-canvas-overlay-background-hover;
+// }
+// }
+// }
+
+// //
+// // DEFAULT CLASSES
+// //
+// @include exports("offcanvas") {
+// @if $include-html-off-canvas-classes {
+
+// .off-canvas-wrap { @include off-canvas-wrap; }
+// .inner-wrap { @include inner-wrap; }
+
+// .tab-bar { @include tab-bar-base; }
+
+// .left-small { @include tabbar-small-section($position: left); }
+// .right-small { @include tabbar-small-section($position: right); }
+
+// .tab-bar-section { @include tab-bar-section; }
+
+// // MENU BUTTON
+// // This is a little bonus. You don't need it for off canvas to work. Mixins to be written in the future.
+// .tab-bar .menu-icon {
+// text-indent: $tabbar-menu-icon-text-indent;
+// width: $tabbar-menu-icon-width;
+// height: $tabbar-menu-icon-height;
+// display: block;
+// padding: $tabbar-menu-icon-padding;
+// color: $tabbar-menu-icon-color;
+// position: relative;
+// transform: translate3d(0,0,0);
+
+// // @include for the hamburger menu-icon
+// //
+// // Arguments as follows: ($width, $left, $top, $thickness, $gap, $color, $hover-color)
+// // $width - Width of hamburger icon in rem Default: $tabbar-hamburger-icon-width.
+// // $left - If false, icon will be centered horizontally || explicitly set value in rem Default: $tabbar-hamburger-icon-left= False
+// // $top - If false, icon will be centered vertically || explicitly set value in rem Default: = False
+// // $thickness - thickness of lines in hamburger icon, set value in px Default: $tabbar-hamburger-icon-thickness = 1px
+// // $gap - spacing between the lines in hamburger icon, set value in px Default: $tabbar-hamburger-icon-gap = 6px
+// // $color - icon color Default: $tabbar-menu-icon-color
+// // $hover-color - icon color when hovered Default: $tabbar-menu-icon-hover
+// // $offcanvas - Set to true
+// @include hamburger($tabbar-hamburger-icon-width, $tabbar-hamburger-icon-left, $tabbar-hamburger-icon-top, $tabbar-hamburger-icon-thickness, $tabbar-hamburger-icon-gap, $tabbar-menu-icon-color, $tabbar-menu-icon-hover, true)
+// }
+
+// .left-off-canvas-menu { @include off-canvas-menu($position: left); }
+// .right-off-canvas-menu { @include off-canvas-menu($position: right); }
+
+// ul.off-canvas-list { @include off-canvas-list; }
+
+
+// // ANIMATION CLASSES
+// // These classes are added with JS and trigger the actual animation.
+// .move-right {
+// > .inner-wrap {
+// @include translate3d($off-canvas-width,0,0);
+// }
+// .exit-off-canvas { @include back-link;}
+// }
+
+// .move-left {
+// > .inner-wrap {
+// @include translate3d(-($off-canvas-width),0,0);
+
+// }
+// .exit-off-canvas { @include back-link; }
+// }
+// .offcanvas-overlap {
+// .left-off-canvas-menu, .right-off-canvas-menu {
+// -ms-transform: none;
+// -webkit-transform: none;
+// -moz-transform: none;
+// -o-transform: none;
+// transform: none;
+// z-index: 1003;
+// }
+// .exit-off-canvas { @include back-link; }
+// }
+// .offcanvas-overlap-left {
+// .right-off-canvas-menu {
+// -ms-transform: none;
+// -webkit-transform: none;
+// -moz-transform: none;
+// -o-transform: none;
+// transform: none;
+// z-index: 1003;
+// }
+// .exit-off-canvas { @include back-link; }
+// }
+// .offcanvas-overlap-right {
+// .left-off-canvas-menu {
+// -ms-transform: none;
+// -webkit-transform: none;
+// -moz-transform: none;
+// -o-transform: none;
+// transform: none;
+// z-index: 1003;
+// }
+// .exit-off-canvas { @include back-link; }
+// }
+
+// // Older browsers
+// .no-csstransforms {
+// .left-off-canvas-menu { left: -($off-canvas-width); }
+// .right-off-canvas-menu { right: -($off-canvas-width); }
+
+// .move-left > .inner-wrap { right: $off-canvas-width; }
+// .move-right > .inner-wrap { left: $off-canvas-width; }
+// }
+
+// }
+// }
+
+// //
+// // Off-Canvas Submenu Classes
+// //
+// @mixin off-canvas-submenu($position) {
+// @include kill-flicker;
+// * { @include kill-flicker; }
+// width: $off-canvas-width;
+// top: 0;
+// bottom: 0;
+// position: absolute;
+// margin: 0;
+// overflow-x: hidden;
+// overflow-y: auto;
+// background: $off-canvas-bg;
+// z-index: 1002;
+// box-sizing: content-box;
+// -webkit-overflow-scrolling: touch;
+// @if $position == left {
+// @include translate3d(-100%,0,0);
+// left: 0;
+// }
+// @if $position == right {
+// @include translate3d(100%,0,0);
+// right: 0;
+// }
+// -webkit-transition: -webkit-#{$menu-slide};
+// -moz-transition: -moz-#{$menu-slide};
+// -ms-transition: -ms-#{$menu-slide};
+// -o-transition: -o-#{$menu-slide};
+// transition: #{$menu-slide};
+
+// //back button style like label
+// .back > a {
+// padding: $off-canvas-label-padding;
+// color: $off-canvas-label-color;
+// text-transform: $off-canvas-label-text-transform;
+// font-weight: $off-canvas-label-font-weight;
+// background: $off-canvas-back-bg;
+// border-top: $off-canvas-back-border-top;
+// border-bottom: $off-canvas-back-border-bottom;
+// &:hover {
+// background: $off-canvas-back-hover-bg;
+// border-top: $off-canvas-back-hover-border-top;
+// border-bottom: $off-canvas-back-hover-border-bottom;
+// }
+// margin: $off-canvas-label-margin;
+// @if $position == right {
+// @if $text-direction == rtl {
+// &:before {
+// @include icon-double-arrows($position: left);
+// }
+// } @else {
+// &:after {
+// @include icon-double-arrows($position: right);
+// }
+// }
+// }
+// @if $position == left {
+// @if $text-direction == rtl {
+// &:after {
+// @include icon-double-arrows($position: right);
+// }
+// } @else {
+// &:before {
+// @include icon-double-arrows($position: left);
+// }
+// }
+// }
+// }
+// }
+// //Left double angle quote or Right double angle quote chars
+// @mixin icon-double-arrows ($position){
+// @if $position == left {
+// content: "\AB";
+// @if $text-direction == rtl {
+// margin-left: 0.5rem;
+// } @else {
+// margin-right: 0.5rem;
+// }
+// }
+// @if $position == right {
+// content: "\BB";
+// @if $text-direction == rtl {
+// margin-right: 0.5rem;
+// } @else {
+// margin-left: 0.5rem;
+// }
+// }
+// display: inline;
+// }
+
+// @if $include-html-off-canvas-classes {
+// .left-submenu {
+// @include off-canvas-submenu($position: left);
+// &.move-right, &.offcanvas-overlap-right, &.offcanvas-overlap {
+// @include translate3d(0%,0,0);
+// }
+// }
+
+// .right-submenu {
+// @include off-canvas-submenu($position: right);
+// &.move-left, &.offcanvas-overlap-left, &.offcanvas-overlap {
+// @include translate3d(0%,0,0);
+// }
+// }
+
+// @if $text-direction == rtl {
+// .left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
+// @include icon-double-arrows($position: left);
+// }
+// .right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
+// @include icon-double-arrows($position: right);
+// }
+// } @else {
+// .left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
+// @include icon-double-arrows($position: right);
+// }
+// .right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
+// @include icon-double-arrows($position: left);
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_orbit.scss b/app/styles/app/foundation/scss/foundation/components/_orbit.scss
new file mode 100644
index 00000000..f2558c1c
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_orbit.scss
@@ -0,0 +1,368 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// // @variables
+// //
+// $include-html-orbit-classes: $include-html-classes !default;
+
+// // We use these to control the caption styles
+// $orbit-container-bg: none !default;
+// $orbit-caption-bg: rgba(51,51,51, 0.8) !default;
+// $orbit-caption-font-color: $white !default;
+// $orbit-caption-font-size: rem-calc(14) !default;
+// $orbit-caption-position: "bottom" !default; // Supported values: "bottom", "under"
+// $orbit-caption-padding: rem-calc(10 14) !default;
+// $orbit-caption-height: auto !default;
+
+// // We use these to control the left/right nav styles
+// $orbit-nav-bg: transparent !default;
+// $orbit-nav-bg-hover: rgba(0,0,0,0.3) !default;
+// $orbit-nav-arrow-color: $white !default;
+// $orbit-nav-arrow-color-hover: $white !default;
+
+// // We use these to control the timer styles
+// $orbit-timer-bg: rgba(255,255,255,0.3) !default;
+// $orbit-timer-show-progress-bar: true !default;
+
+// // We use these to control the bullet nav styles
+// $orbit-bullet-nav-color: $iron !default;
+// $orbit-bullet-nav-color-active: $aluminum !default;
+// $orbit-bullet-radius: rem-calc(9) !default;
+
+// // We use these to controls the style of slide numbers
+// $orbit-slide-number-bg: rgba(0,0,0,0) !default;
+// $orbit-slide-number-font-color: $white !default;
+// $orbit-slide-number-padding: rem-calc(5) !default;
+
+// // Graceful Loading Wrapper and preloader
+// $wrapper-class: "slideshow-wrapper" !default;
+// $preloader-class: "preloader" !default;
+
+// // Hide controls on small
+// $orbit-nav-hide-for-small: true !default;
+// $orbit-bullet-hide-for-small: true !default;
+// $orbit-timer-hide-for-small: true !default;
+
+
+// @include exports("orbit") {
+// @if $include-html-orbit-classes {
+
+// @-webkit-keyframes rotate {
+// from { -webkit-transform: rotate(0deg); }
+// to { -webkit-transform: rotate(360deg); }
+// }
+// @-moz-keyframes rotate {
+// from { -moz-transform: rotate(0deg); }
+// to { -moz-transform: rotate(360deg); }
+// }
+// @-o-keyframes rotate {
+// from { -o-transform: rotate(0deg); }
+// to { -o-transform: rotate(360deg); }
+// }
+// @keyframes rotate {
+// from { transform: rotate(0deg); }
+// to { transform: rotate(360deg); }
+// }
+
+// /* Orbit Graceful Loading */
+// .#{$wrapper-class} {
+// position: relative;
+
+// ul {
+// // Prevent bullets showing before .orbit-container is loaded
+// list-style-type: none;
+// margin: 0;
+
+// // Hide all list items
+// li,
+// li .orbit-caption { display: none; }
+
+// // ...except for the first one
+// li:first-child { display: block; }
+// }
+
+// .orbit-container { background-color: transparent;
+
+// // Show images when .orbit-container is loaded
+// li { display: block;
+
+// .orbit-caption { display: block; }
+// }
+// .orbit-bullets li {
+// display: inline-block;
+// }
+// }
+
+// // Orbit preloader
+// .#{$preloader-class} {
+// display: block;
+// width: 40px;
+// height: 40px;
+// position: absolute;
+// top: 50%;
+// left: 50%;
+// margin-top: -20px;
+// margin-left: -20px;
+// border: solid 3px;
+// border-color: $charcoal $white;
+// @include radius(1000px);
+// animation-name: rotate;
+// animation-duration: 1.5s;
+// animation-iteration-count: infinite;
+// animation-timing-function: linear;
+// }
+// }
+
+
+// .orbit-container {
+// overflow: hidden;
+// width: 100%;
+// position: relative;
+// background: $orbit-container-bg;
+
+// .orbit-slides-container {
+// list-style: none;
+// margin: 0;
+// padding: 0;
+// position: relative;
+
+// // Prevents images (and captions) from disappearing after first rotation on Chrome for Android
+// -webkit-transform: translateZ(0);
+
+// img { display: block; max-width: 100%; }
+
+// &>* {
+// position: absolute;
+// top: 0;
+// width: 100%;
+// @if $text-direction == rtl {
+// margin-right: 100%;
+// }
+// @else {
+// margin-left: 100%;
+// }
+
+// &:first-child {
+// @if $text-direction == rtl {
+// margin-right: 0;
+// }
+// @else {
+// margin-left: 0;
+// }
+// }
+
+// .orbit-caption {
+// @if $orbit-caption-position == "bottom" {
+// position: absolute;
+// bottom: 0;
+// } @else if $orbit-caption-position == "under" {
+// position: relative;
+// }
+
+// background-color: $orbit-caption-bg;
+// color: $orbit-caption-font-color;
+// width: 100%;
+// padding: $orbit-caption-padding;
+// font-size: $orbit-caption-font-size;
+// }
+// }
+// }
+
+// .orbit-slide-number {
+// position: absolute;
+// top: 10px;
+// #{$default-float}: 10px;
+// font-size: 12px;
+// span { font-weight: 700; padding: $orbit-slide-number-padding;}
+// color: $orbit-slide-number-font-color;
+// background: $orbit-slide-number-bg;
+// z-index: 10;
+// }
+
+// .orbit-timer {
+// position: absolute;
+// top: 12px;
+// #{$opposite-direction}: 10px;
+// height: 6px;
+// width: 100px;
+// z-index: 10;
+// .orbit-progress {
+// @if $orbit-timer-show-progress-bar {
+// height: 3px;
+// background-color: $orbit-timer-bg;
+// display: block;
+// width: 0;
+// position: relative;
+// right: 20px;
+// top: 5px;
+// }
+// }
+
+// // Play button
+// & > span {
+// display: none;
+// position: absolute;
+// top: 0;
+// #{$opposite-direction}: 0;
+// width: 11px;
+// height: 14px;
+// border: solid 4px $white;
+// border-top: none;
+// border-bottom: none;
+// }
+
+// // Pause button
+// &.paused {
+// & > span {
+// #{$opposite-direction}: -4px;
+// top: 0;
+// width: 11px;
+// height: 14px;
+// border: inset 8px;
+// border-left-style: solid;
+// border-color: transparent;
+// border-left-color: $white;
+// &.dark {
+// border-left-color: $oil;
+// }
+// }
+// }
+// }
+
+
+
+// &:hover .orbit-timer > span { display: block; }
+
+// // Let's get those controls to be right in the center on each side
+// .orbit-prev,
+// .orbit-next {
+// position: absolute;
+// top: 45%;
+// margin-top: -25px;
+// width: 36px;
+// height: 60px;
+// line-height: 50px;
+// color: white;
+// background-color: $orbit-nav-bg;
+// text-indent: -9999px !important;
+// z-index: 10;
+
+// &:hover {
+// background-color: $orbit-nav-bg-hover;
+// }
+
+// & > span {
+// position: absolute;
+// top: 50%;
+// margin-top: -10px;
+// display: block;
+// width: 0;
+// height: 0;
+// border: inset 10px;
+// }
+// }
+// .orbit-prev { #{$default-float}: 0;
+// & > span {
+// border-#{$opposite-direction}-style: solid;
+// border-color: transparent;
+// border-#{$opposite-direction}-color: $orbit-nav-arrow-color;
+// }
+// &:hover > span {
+// border-#{$opposite-direction}-color: $orbit-nav-arrow-color-hover;
+// }
+// }
+// .orbit-next { #{$opposite-direction}: 0;
+// & > span {
+// border-color: transparent;
+// border-#{$default-float}-style: solid;
+// border-#{$default-float}-color: $orbit-nav-arrow-color;
+// #{$default-float}: 50%;
+// margin-#{$default-float}: -4px;
+// }
+// &:hover > span {
+// border-#{$default-float}-color: $orbit-nav-arrow-color-hover;
+// }
+// }
+// }
+
+// .orbit-bullets-container { text-align: center; }
+// .orbit-bullets {
+// margin: 0 auto 30px auto;
+// overflow: hidden;
+// position: relative;
+// top: 10px;
+// float: none;
+// text-align: center;
+// display: block;
+
+// li {
+// cursor:pointer;
+// display: inline-block;
+// width: $orbit-bullet-radius;
+// height: $orbit-bullet-radius;
+// background: $orbit-bullet-nav-color;
+// // float: $default-float;
+// float: none;
+// margin-#{$opposite-direction}: 6px;
+// @include radius(1000px);
+
+// &.active {
+// background: $orbit-bullet-nav-color-active;
+// }
+
+// &:last-child { margin-#{$opposite-direction}: 0; }
+// }
+// }
+
+// .touch {
+// .orbit-container {
+// .orbit-prev,
+// .orbit-next { display: none; }
+// }
+
+// .orbit-bullets { display: none; }
+// }
+
+
+// @media #{$medium-up} {
+
+// .touch {
+// .orbit-container {
+// .orbit-prev,
+// .orbit-next { display: inherit; }
+// }
+
+// .orbit-bullets { display: block; }
+// }
+
+// }
+
+// @media #{$small-only} {
+// .orbit-stack-on-small {
+// .orbit-slides-container {height: auto !important;}
+// .orbit-slides-container > * {
+// position: relative;
+// margin:0 !important;
+// opacity:1 !important;
+// }
+
+// .orbit-slide-number {
+// display: none;
+// }
+// }
+
+// @if $orbit-timer-hide-for-small {
+// .orbit-timer{display: none;}
+// }
+// @if $orbit-nav-hide-for-small {
+// .orbit-next,.orbit-prev{display: none;}
+// }
+// @if $orbit-bullet-hide-for-small {
+// .orbit-bullets{display: none;}
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_pagination.scss b/app/styles/app/foundation/scss/foundation/components/_pagination.scss
new file mode 100644
index 00000000..48ebe100
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_pagination.scss
@@ -0,0 +1,162 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-pagination-classes: $include-html-classes !default;
+
+// // We use these to control the pagination container
+// $pagination-height: rem-calc(24) !default;
+// $pagination-margin: rem-calc(-5) !default;
+
+// // We use these to set the list-item properties
+// $pagination-li-float: $default-float !default;
+// $pagination-li-height: rem-calc(24) !default;
+// $pagination-li-font-color: $jet !default;
+// $pagination-li-font-size: rem-calc(14) !default;
+// $pagination-li-margin: rem-calc(5) !default;
+
+// // We use these for the pagination anchor links
+// $pagination-link-pad: rem-calc(1 10 1) !default;
+// $pagination-link-font-color: $aluminum !default;
+// $pagination-link-active-bg: scale-color($white, $lightness: -10%) !default;
+
+// // We use these for disabled anchor links
+// $pagination-link-unavailable-cursor: default !default;
+// $pagination-link-unavailable-font-color: $aluminum !default;
+// $pagination-link-unavailable-bg-active: transparent !default;
+
+// // We use these for currently selected anchor links
+// $pagination-link-current-background: $primary-color !default;
+// $pagination-link-current-font-color: $white !default;
+// $pagination-link-current-font-weight: $font-weight-bold !default;
+// $pagination-link-current-cursor: default !default;
+// $pagination-link-current-active-bg: $primary-color !default;
+
+// // @mixins
+// //
+// // Style the pagination container. Currently only used when centering elements.
+// // $center - Default: false, Options: true
+// @mixin pagination-container($center:false) {
+// @if $center { text-align: center; }
+// }
+
+// // @mixins
+// // Style unavailable list items
+// @mixin pagination-unavailable-item {
+// a, button {
+// cursor: $pagination-link-unavailable-cursor;
+// color: $pagination-link-unavailable-font-color;
+// }
+// &:hover a,
+// & a:focus,
+
+// &:hover button,
+// & button:focus
+// { background: $pagination-link-unavailable-bg-active; }
+// }
+// // @mixins
+// // Style the current list item. Do not assume that the current item has
+// // an anchor element.
+// // $has-anchor - Default: true, Options: false
+// @mixin pagination-current-item($has-anchor: true) {
+// @if $has-anchor {
+// a, button {
+// background: $pagination-link-current-background;
+// color: $pagination-link-current-font-color;
+// font-weight: $pagination-link-current-font-weight;
+// cursor: $pagination-link-current-cursor;
+
+// &:hover,
+// &:focus { background: $pagination-link-current-active-bg; }
+// }
+// } @else {
+// height: auto;
+// padding: $pagination-link-pad;
+// background: $pagination-link-current-background;
+// color: $pagination-link-current-font-color;
+// font-weight: $pagination-link-current-font-weight;
+// cursor: $pagination-link-current-cursor;
+// @include radius;
+
+// &:hover,
+// &:focus { background: $pagination-link-current-active-bg; }
+// }
+// }
+
+// // @mixins
+// //
+// // We use this mixin to set the properties for the creating Foundation pagination
+// // $center - Left or center align the li elements. Default: false
+// // $base-style - Sets base styles for pagination. Default: true, Options: false
+// // $use-default-classes - Makes unavailable & current classes available for use. Default: true
+// @mixin pagination($center:false, $base-style:true, $use-default-classes:true) {
+
+// @if $base-style {
+// display: block;
+// min-height: $pagination-height;
+// margin-#{$default-float}: $pagination-margin;
+
+// li {
+// height: $pagination-li-height;
+// color: $pagination-li-font-color;
+// font-size: $pagination-li-font-size;
+// margin-#{$default-float}: $pagination-li-margin;
+
+// a, button {
+// display: block;
+// padding: $pagination-link-pad;
+// color: $pagination-link-font-color;
+// background: none;
+// @include radius;
+// font-weight: normal;
+// font-size: 1em;
+// line-height: inherit;
+// @include single-transition(background-color);
+// }
+
+// &:hover a,
+// a:focus,
+// &:hover button,
+// button:focus
+// { background: $pagination-link-active-bg; }
+
+// @if $use-default-classes {
+// &.unavailable { @include pagination-unavailable-item(); }
+// &.current { @include pagination-current-item(); }
+// }
+// }
+// }
+
+// // Left or center align the li elements
+// li {
+// @if $center {
+// float: none;
+// display: inline-block;
+// } @else {
+// float: $pagination-li-float;
+// display: block;
+// }
+// }
+// }
+
+// @include exports("pagination") {
+// @if $include-pagination-classes {
+// ul.pagination {
+// @include pagination;
+// }
+
+// /* Pagination centred wrapper */
+// .pagination-centered {
+// @include pagination-container(true);
+
+// ul.pagination {
+// @include pagination(true, false);
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_panels.scss b/app/styles/app/foundation/scss/foundation/components/_panels.scss
new file mode 100644
index 00000000..173195cf
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_panels.scss
@@ -0,0 +1,101 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-panel-classes: $include-html-classes !default;
+
+// // We use these to control the background and border styles
+// $panel-bg: scale-color($white, $lightness: -5%) !default;
+// $panel-border-style: solid !default;
+// $panel-border-size: 1px !default;
+
+// // We use this % to control how much we darken things on hover
+// $panel-function-factor: -11% !default;
+// $panel-border-color: scale-color($panel-bg, $lightness: $panel-function-factor) !default;
+
+// // We use these to set default inner padding and bottom margin
+// $panel-margin-bottom: rem-calc(20) !default;
+// $panel-padding: rem-calc(20) !default;
+
+// // We use these to set default font colors
+// $panel-font-color: $oil !default;
+// $panel-font-color-alt: $white !default;
+
+// $panel-header-adjust: true !default;
+// $callout-panel-link-color: $primary-color !default;
+// $callout-panel-link-color-hover: scale-color($callout-panel-link-color, $lightness: -14%) !default;
+// //
+// // @mixins
+// //
+// // We use this mixin to create panels.
+// // $bg - Sets the panel background color. Default: $panel-pg || scale-color($white, $lightness: -5%) !default
+// // $padding - Sets the panel padding amount. Default: $panel-padding || rem-calc(20)
+// // $adjust - Sets the font color based on the darkness of the bg & resets header line-heights for panels. Default: $panel-header-adjust || true
+// @mixin panel($bg:$panel-bg, $padding:$panel-padding, $adjust:$panel-header-adjust) {
+
+// @if $bg {
+// $bg-lightness: lightness($bg);
+
+// border-style: $panel-border-style;
+// border-width: $panel-border-size;
+// border-color: scale-color($bg, $lightness: $panel-function-factor);
+// margin-bottom: $panel-margin-bottom;
+// padding: $padding;
+
+// background: $bg;
+// @if $bg-lightness >= 50% { color: $panel-font-color; }
+// @else { color: $panel-font-color-alt; }
+
+// // Respect the padding, fool.
+// &>:first-child { margin-top: 0; }
+// &>:last-child { margin-bottom: 0; }
+
+// @if $adjust {
+// // We set the font color based on the darkness of the bg.
+// @if $bg-lightness >= 50% {
+// h1,h2,h3,h4,h5,h6,p,li,dl { color: $panel-font-color; }
+// }
+// @else {
+// h1,h2,h3,h4,h5,h6,p,li,dl { color: $panel-font-color-alt; }
+// }
+
+// // reset header line-heights for panels
+// h1,h2,h3,h4,h5,h6 {
+// line-height: 1; margin-bottom: rem-calc(20) / 2;
+// &.subheader { line-height: 1.4; }
+// }
+// }
+// }
+// }
+
+// @include exports("panel") {
+// @if $include-html-panel-classes {
+
+// /* Panels */
+// .panel { @include panel;
+
+// &.callout {
+// @include panel(scale-color($primary-color, $lightness: 94%));
+// a:not(.button) {
+// color: $callout-panel-link-color;
+
+// &:hover,
+// &:focus {
+// color: $callout-panel-link-color-hover;
+// }
+// }
+// }
+
+// &.radius {
+// @include radius;
+// }
+
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_pricing-tables.scss b/app/styles/app/foundation/scss/foundation/components/_pricing-tables.scss
new file mode 100644
index 00000000..34318580
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_pricing-tables.scss
@@ -0,0 +1,150 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-pricing-classes: $include-html-classes !default;
+
+// // We use this to control the border color
+// $price-table-border: solid 1px $gainsboro !default;
+
+// // We use this to control the bottom margin of the pricing table
+// $price-table-margin-bottom: rem-calc(20) !default;
+
+// // We use these to control the title styles
+// $price-title-bg: $oil !default;
+// $price-title-padding: rem-calc(15 20) !default;
+// $price-title-align: center !default;
+// $price-title-color: $smoke !default;
+// $price-title-weight: $font-weight-normal !default;
+// $price-title-size: rem-calc(16) !default;
+// $price-title-font-family: $body-font-family !default;
+
+// // We use these to control the price styles
+// $price-money-bg: $vapor !default;
+// $price-money-padding: rem-calc(15 20) !default;
+// $price-money-align: center !default;
+// $price-money-color: $oil !default;
+// $price-money-weight: $font-weight-normal !default;
+// $price-money-size: rem-calc(32) !default;
+// $price-money-font-family: $body-font-family !default;
+
+
+// // We use these to control the description styles
+// $price-bg: $white !default;
+// $price-desc-color: $monsoon !default;
+// $price-desc-padding: rem-calc(15) !default;
+// $price-desc-align: center !default;
+// $price-desc-font-size: rem-calc(12) !default;
+// $price-desc-weight: $font-weight-normal !default;
+// $price-desc-line-height: 1.4 !default;
+// $price-desc-bottom-border: dotted 1px $gainsboro !default;
+
+// // We use these to control the list item styles
+// $price-item-color: $oil !default;
+// $price-item-padding: rem-calc(15) !default;
+// $price-item-align: center !default;
+// $price-item-font-size: rem-calc(14) !default;
+// $price-item-weight: $font-weight-normal !default;
+// $price-item-bottom-border: dotted 1px $gainsboro !default;
+
+// // We use these to control the CTA area styles
+// $price-cta-bg: $white !default;
+// $price-cta-align: center !default;
+// $price-cta-padding: rem-calc(20 20 0) !default;
+
+// // @mixins
+// //
+// // We use this to create the container element for the pricing tables
+// @mixin pricing-table-container {
+// border: $price-table-border;
+// margin-#{$default-float}: 0;
+// margin-bottom: $price-table-margin-bottom;
+
+// & * {
+// list-style: none;
+// line-height: 1;
+// }
+// }
+// // @mixins
+// //
+// // We use this mixin to create the pricing table title styles
+// @mixin pricing-table-title {
+// background-color: $price-title-bg;
+// padding: $price-title-padding;
+// text-align: $price-title-align;
+// color: $price-title-color;
+// font-weight: $price-title-weight;
+// font-size: $price-title-size;
+// font-family: $price-title-font-family;
+// }
+
+// // @mixins
+// //
+// // We use this mixin to control the pricing table price styles
+// @mixin pricing-table-price {
+// background-color: $price-money-bg;
+// padding: $price-money-padding;
+// text-align: $price-money-align;
+// color: $price-money-color;
+// font-weight: $price-money-weight;
+// font-size: $price-money-size;
+// font-family: $price-money-font-family;
+// }
+
+// // @mixins
+// //
+// // We use this mixin to create the description styles for the pricing table
+// @mixin pricing-table-description {
+// background-color: $price-bg;
+// padding: $price-desc-padding;
+// text-align: $price-desc-align;
+// color: $price-desc-color;
+// font-size: $price-desc-font-size;
+// font-weight: $price-desc-weight;
+// line-height: $price-desc-line-height;
+// border-bottom: $price-desc-bottom-border;
+// }
+
+// // @mixins
+// //
+// // We use this mixin to style the bullet items in the pricing table
+// @mixin pricing-table-bullet {
+// background-color: $price-bg;
+// padding: $price-item-padding;
+// text-align: $price-item-align;
+// color: $price-item-color;
+// font-size: $price-item-font-size;
+// font-weight: $price-item-weight;
+// border-bottom: $price-item-bottom-border;
+// }
+
+// // @mixins
+// //
+// // We use this mixin to style the CTA area of the pricing tables
+// @mixin pricing-table-cta {
+// background-color: $price-cta-bg;
+// text-align: $price-cta-align;
+// padding: $price-cta-padding;
+// }
+
+// @include exports("pricing-table") {
+// @if $include-html-pricing-classes {
+
+// /* Pricing Tables */
+// .pricing-table {
+// @include pricing-table-container;
+
+// .title { @include pricing-table-title; }
+// .price { @include pricing-table-price; }
+// .description { @include pricing-table-description; }
+// .bullet-item { @include pricing-table-bullet; }
+// .cta-button { @include pricing-table-cta; }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_progress-bars.scss b/app/styles/app/foundation/scss/foundation/components/_progress-bars.scss
new file mode 100644
index 00000000..5191a08d
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_progress-bars.scss
@@ -0,0 +1,79 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+// $include-html-media-classes: $include-html-classes !default;
+
+// // We use this to set the progress bar height
+// $progress-bar-height: rem-calc(25) !default;
+// $progress-bar-color: $vapor !default;
+
+// // We use these to control the border styles
+// $progress-bar-border-color: scale-color($white, $lightness: 20%) !default;
+// $progress-bar-border-size: 1px !default;
+// $progress-bar-border-style: solid !default;
+// $progress-bar-border-radius: $global-radius !default;
+
+// // We use these to control the margin & padding
+// $progress-bar-pad: rem-calc(2) !default;
+// $progress-bar-margin-bottom: rem-calc(10) !default;
+
+// // We use these to set the meter colors
+// $progress-meter-color: $primary-color !default;
+// $progress-meter-secondary-color: $secondary-color !default;
+// $progress-meter-success-color: $success-color !default;
+// $progress-meter-alert-color: $alert-color !default;
+
+// // @mixins
+// //
+// // We use this to set up the progress bar container
+// @mixin progress-container {
+// background-color: $progress-bar-color;
+// height: $progress-bar-height;
+// border: $progress-bar-border-size $progress-bar-border-style $progress-bar-border-color;
+// padding: $progress-bar-pad;
+// margin-bottom: $progress-bar-margin-bottom;
+// }
+
+// // @mixins
+// //
+// // $bg - Default: $progress-meter-color || $primary-color
+// @mixin progress-meter($bg:$progress-meter-color) {
+// background: $bg;
+// height: 100%;
+// display: block;
+// }
+
+
+// @include exports("progress-bar") {
+// @if $include-html-media-classes {
+
+// /* Progress Bar */
+// .progress {
+// @include progress-container;
+
+// // Meter
+// .meter {
+// @include progress-meter;
+// }
+// &.secondary .meter { @include progress-meter($bg:$progress-meter-secondary-color); }
+// &.success .meter { @include progress-meter($bg:$progress-meter-success-color); }
+// &.alert .meter { @include progress-meter($bg:$progress-meter-alert-color); }
+
+// &.radius { @include radius($progress-bar-border-radius);
+// .meter { @include radius($progress-bar-border-radius - 1); }
+// }
+
+// &.round { @include radius(1000px);
+// .meter { @include radius(999px); }
+// }
+
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_range-slider.scss b/app/styles/app/foundation/scss/foundation/components/_range-slider.scss
new file mode 100644
index 00000000..d50833f0
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_range-slider.scss
@@ -0,0 +1,168 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @name _range-slider.scss
+// // @dependencies _global.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-range-slider-classes: $include-html-classes !default;
+
+// // These variabels define the slider bar styles
+// $range-slider-bar-width: 100% !default;
+// $range-slider-bar-height: rem-calc(16) !default;
+
+// $range-slider-bar-border-width: 1px !default;
+// $range-slider-bar-border-style: solid !default;
+// $range-slider-bar-border-color: $gainsboro !default;
+// $range-slider-radius: $global-radius !default;
+// $range-slider-round: $global-rounded !default;
+// $range-slider-bar-bg-color: $ghost !default;
+// $range-slider-active-segment-bg-color: scale-color($secondary-color, $lightness: -1%) !default;
+
+// // Vertical bar styles
+// $range-slider-vertical-bar-width: rem-calc(16) !default;
+// $range-slider-vertical-bar-height: rem-calc(200) !default;
+
+// // These variabels define the slider handle styles
+// $range-slider-handle-width: rem-calc(32) !default;
+// $range-slider-handle-height: rem-calc(22) !default;
+// $range-slider-handle-position-top: rem-calc(-5) !default;
+// $range-slider-handle-bg-color: $primary-color !default;
+// $range-slider-handle-border-width: 1px !default;
+// $range-slider-handle-border-style: solid !default;
+// $range-slider-handle-border-color: none !default;
+// $range-slider-handle-radius: $global-radius !default;
+// $range-slider-handle-round: $global-rounded !default;
+// $range-slider-handle-bg-hover-color: scale-color($primary-color, $lightness: -12%) !default;
+// $range-slider-handle-cursor: pointer !default;
+
+// $range-slider-disabled-opacity: 0.7 !default;
+
+// //
+// // @mixins
+// //
+
+// @mixin range-slider-bar-base($vertical: false) {
+// display: block;
+// position: relative;
+// width: $range-slider-bar-width;
+// height: $range-slider-bar-height;
+// border: $range-slider-bar-border-width $range-slider-bar-border-style $range-slider-bar-border-color;
+// margin: rem-calc(20 0);
+// -ms-touch-action: none;
+// touch-action: none;
+// @if $vertical == true {
+// display: inline-block;
+// width: $range-slider-vertical-bar-width;
+// height: $range-slider-vertical-bar-height;
+// }
+// }
+// @mixin range-slider-bar-style(
+// $bg: true,
+// $radius: false,
+// $round: false,
+// $disabled: false) {
+// @if $bg == true { background: $range-slider-bar-bg-color; }
+// @if $radius == true { @include radius($range-slider-radius); }
+// @if $round == true { @include radius($range-slider-round); }
+// @if $disabled == true {
+// cursor: $cursor-default-value;
+// opacity: $range-slider-disabled-opacity;
+// }
+// }
+
+// @mixin range-slider-bar(
+// $bg: $range-slider-bar-bg-color,
+// $radius:false) {
+// @include range-slider-bar-base;
+// @include range-slider-bar-style;
+// }
+
+// @mixin range-slider-handle-base() {
+// display: inline-block;
+// position: absolute;
+// z-index: 1;
+// top: $range-slider-handle-position-top;
+// width: $range-slider-handle-width;
+// height: $range-slider-handle-height;
+// border: $range-slider-handle-border-width $range-slider-handle-border-style $range-slider-handle-border-color;
+// cursor: $range-slider-handle-cursor;
+
+// // This removes the 300ms touch delay on Windows 8
+// -ms-touch-action: manipulation;
+// touch-action: manipulation;
+// }
+// @mixin range-slider-handle-style(
+// $bg: true,
+// $radius: false,
+// $round: false,
+// $disabled: false) {
+// @if $bg == true { background: $range-slider-handle-bg-color; }
+// @if $radius == true { @include radius($range-slider-radius); }
+// @if $round == true { @include radius($range-slider-round); }
+// @if $disabled == true {
+// cursor: $cursor-default-value;
+// opacity: $range-slider-disabled-opacity;
+// }
+// &:hover {
+// background: $range-slider-handle-bg-hover-color;
+// }
+// }
+// @mixin range-slider-handle() {
+// @include range-slider-handle-base;
+// @include range-slider-handle-style;
+// }
+
+// // CSS Generation
+// @include exports("range-slider-bar") {
+// @if $include-html-range-slider-classes {
+// .range-slider {
+// @include range-slider-bar-base;
+// @include range-slider-bar-style($bg:true, $radius:false);
+// &.vertical-range {
+// @include range-slider-bar-base($vertical: true);
+// .range-slider-handle {
+// margin-top: 0;
+// margin-#{$default-float}: -($range-slider-handle-width / 4);
+// position: absolute;
+// bottom: -($range-slider-vertical-bar-height - $range-slider-handle-width);
+// }
+// .range-slider-active-segment {
+// width: $range-slider-bar-height - rem-calc((strip-unit($range-slider-bar-border-width) * 2));
+// height: auto;
+// bottom: 0;
+// }
+// }
+// &.radius {
+// @include range-slider-bar-style($radius:true);
+// .range-slider-handle { @include range-slider-handle-style($radius: true); }
+// }
+// &.round {
+// @include range-slider-bar-style($round:true);
+// .range-slider-handle { @include range-slider-handle-style($round: true); }
+// }
+// &.disabled, &[disabled] {
+// @include range-slider-bar-style($disabled:true);
+// .range-slider-handle { @include range-slider-handle-style($disabled: true); }
+// }
+// }
+// .range-slider-active-segment {
+// display: inline-block;
+// position: absolute;
+// height: $range-slider-bar-height - rem-calc((strip-unit($range-slider-bar-border-width) * 2));
+// background: $range-slider-active-segment-bg-color;
+// }
+// .range-slider-handle {
+// @include range-slider-handle-base;
+// @include range-slider-handle-style($bg:true, $radius: false);
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_reveal.scss b/app/styles/app/foundation/scss/foundation/components/_reveal.scss
new file mode 100644
index 00000000..1aae17a6
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_reveal.scss
@@ -0,0 +1,223 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "grid";
+
+// //
+// // @name _reveal.scss
+// // @dependencies _global.scss
+// //
+
+// $include-html-reveal-classes: $include-html-classes !default;
+
+// // We use these to control the style of the reveal overlay.
+// $reveal-overlay-bg: rgba($black, .45) !default;
+// $reveal-overlay-bg-old: $black !default;
+
+// // We use these to control the style of the modal itself.
+// $reveal-modal-bg: $white !default;
+// $reveal-position-top: rem-calc(100) !default;
+// $reveal-default-width: 80% !default;
+// $reveal-max-width: $row-width !default;
+// $reveal-modal-padding: rem-calc(20) !default;
+// $reveal-box-shadow: 0 0 10px rgba($black,.4) !default;
+
+// // We use these to style the reveal close button
+// $reveal-close-font-size: rem-calc(40) !default;
+// $reveal-close-top: rem-calc(10) !default;
+// $reveal-close-side: rem-calc(22) !default;
+// $reveal-close-color: $base !default;
+// $reveal-close-weight: $font-weight-bold !default;
+
+// // We use this to set the default radius used throughout the core.
+// $reveal-radius: $global-radius !default;
+// $reveal-round: $global-rounded !default;
+
+// // We use these to control the modal border
+// $reveal-border-style: solid !default;
+// $reveal-border-width: 1px !default;
+// $reveal-border-color: $steel !default;
+
+// $reveal-modal-class: "reveal-modal" !default;
+// $close-reveal-modal-class: "close-reveal-modal" !default;
+
+// //
+// // @mixins
+// //
+
+// // We use this to create the reveal background overlay styles
+// @mixin reveal-bg( $include-z-index-value: true ) {
+// //position: fixed;
+// position: absolute; // allows modal background to extend beyond window position
+// top: 0;
+// bottom: 0;
+// left: 0;
+// right: 0;
+// background: $reveal-overlay-bg-old; // Autoprefixer should be used to avoid such variables needed when Foundation for Sites can do so in the near future.
+// background: $reveal-overlay-bg;
+// z-index: if( $include-z-index-value, 1004, auto );
+// display: none;
+// #{$default-float}: 0;
+// }
+
+// // We use this mixin to create the structure of a reveal modal
+// //
+// // $base-style - Provides reveal base styles, can be set to false to override. Default: true, Options: false
+// // $width - Sets reveal width Default: $reveal-default-width || 80%
+// //
+// @mixin reveal-modal-base( $base-style: true, $width:$reveal-default-width, $max-width:$reveal-max-width, $border-radius: $reveal-radius) {
+// @if $base-style {
+// visibility: hidden;
+// display: none;
+// position: absolute;
+// z-index: 1005;
+// width: 100vw;
+// top:0;
+// border-radius: $border-radius;
+// #{$default-float}: 0;
+
+// @media #{$small-only} {
+// min-height:100vh;
+// }
+
+// // Make sure rows don't have a min-width on them
+// .column, .columns { min-width: 0; }
+
+// // Get rid of margin from first and last element inside modal
+// & > :first-child { margin-top: 0; }
+
+// & > :last-child { margin-bottom: 0; }
+// }
+
+// @if $width {
+// @media #{$medium-up} {
+// width: $width;
+// max-width: $max-width;
+// left: 0;
+// right: 0;
+// margin: 0 auto;
+// }
+// }
+// }
+
+// // We use this to style the reveal modal defaults
+// //
+// // $bg - Sets background color of reveal modal. Default: $reveal-modal-bg || $white
+// // $padding - Padding to apply to reveal modal. Default: $reveal-modal-padding.
+// // $border - Choose whether reveal uses a border. Default: true, Options: false
+// // $border-style - Set reveal border style. Default: $reveal-border-style || solid
+// // $border-width - Width of border (i.e. 1px). Default: $reveal-border-width.
+// // $border-color - Color of border. Default: $reveal-border-color.
+// // $box-shadow - Choose whether or not to include the default box-shadow. Default: true, Options: false
+// // $radius - If true, set to modal radius which is $global-radius || explicitly set radius amount in px (ex. $radius:10px). Default: false
+// // $top-offset - Default: $reveal-position-top || 50px
+// @mixin reveal-modal-style(
+// $bg:false,
+// $padding:false,
+// $border:false,
+// $border-style:$reveal-border-style,
+// $border-width:$reveal-border-width,
+// $border-color:$reveal-border-color,
+// $box-shadow:false,
+// $radius:false,
+// $top-offset:false) {
+
+// @if $bg { background-color: $bg; }
+// @if $padding != false { padding: $padding; }
+
+// @if $border { border: $border-style $border-width $border-color; }
+
+// // We can choose whether or not to include the default box-shadow.
+// @if $box-shadow {
+// box-shadow: $reveal-box-shadow;
+// }
+
+// // We can control how much radius is used on the modal
+// @if $radius == true { @include radius($reveal-radius); }
+// @else if $radius { @include radius($radius); }
+
+// @if $top-offset {
+// @media #{$medium-up} {
+// top: $top-offset;
+// }
+// }
+// }
+
+// // We use this to create a close button for the reveal modal
+// //
+// // $color - Default: $reveal-close-color || $base
+// @mixin reveal-close($color:$reveal-close-color) {
+// font-size: $reveal-close-font-size;
+// line-height: 1;
+// position: absolute;
+// top: $reveal-close-top;
+// #{$opposite-direction}: $reveal-close-side;
+// color: $color;
+// font-weight: $reveal-close-weight;
+// cursor: $cursor-pointer-value;
+// }
+
+// @include exports("reveal") {
+// @if $include-html-reveal-classes {
+
+// // Reveal Modals
+// .reveal-modal-bg { @include reveal-bg; }
+
+// .#{$reveal-modal-class} {
+// @include reveal-modal-base;
+// @include reveal-modal-style(
+// $bg:$reveal-modal-bg,
+// $padding:$reveal-modal-padding,
+// $border:true,
+// $box-shadow:true,
+// $radius:false,
+// $top-offset:$reveal-position-top
+// );
+// @include reveal-modal-style($padding:$reveal-modal-padding * 1.5);
+
+// &.radius { @include reveal-modal-style($radius:true); }
+// &.round { @include reveal-modal-style($radius:$reveal-round); }
+// &.collapse { @include reveal-modal-style($padding:0); }
+// &.tiny { @include reveal-modal-base(false, 30%); }
+// &.small { @include reveal-modal-base(false, 40%); }
+// &.medium { @include reveal-modal-base(false, 60%); }
+// &.large { @include reveal-modal-base(false, 70%); }
+// &.xlarge { @include reveal-modal-base(false, 95%); }
+// &.full {
+// @include reveal-modal-base(false, 100vw);
+// top:0;
+// left:0;
+// height:100%;
+// height: 100vh;
+// min-height:100vh;
+// max-width: none !important;
+// margin-left: 0 !important;
+// }
+
+// .#{$close-reveal-modal-class} { @include reveal-close; }
+// }
+
+// dialog {
+// @extend .#{$reveal-modal-class};
+// display: none;
+
+// &::backdrop, & + .backdrop {
+// @include reveal-bg(false);
+// }
+
+// &[open]{
+// display: block;
+// }
+// }
+
+// // Reveal Print Styles: It should be invisible, adds no value being printed.
+// @media print {
+// dialog, .#{$reveal-modal-class} {
+// display: none;
+// background: $white !important;
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_side-nav.scss b/app/styles/app/foundation/scss/foundation/components/_side-nav.scss
new file mode 100644
index 00000000..f498930d
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_side-nav.scss
@@ -0,0 +1,116 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @variables
+// //
+
+// $include-html-nav-classes: $include-html-classes !default;
+
+// // We use this to control padding.
+// $side-nav-padding: rem-calc(14 0) !default;
+
+// // We use these to control list styles.
+// $side-nav-list-type: none !default;
+// $side-nav-list-position: outside !default;
+// $side-nav-list-margin: rem-calc(0 0 7 0) !default;
+
+// // We use these to control link styles.
+// $side-nav-link-color: $primary-color !default;
+// $side-nav-link-color-active: scale-color($side-nav-link-color, $lightness: 30%) !default;
+// $side-nav-link-color-hover: scale-color($side-nav-link-color, $lightness: 30%) !default;
+// $side-nav-link-bg-hover: hsla(0, 0, 0, 0.025) !default;
+// $side-nav-link-margin: 0 !default;
+// $side-nav-link-padding: rem-calc(7 14) !default;
+// $side-nav-font-size: rem-calc(14) !default;
+// $side-nav-font-weight: $font-weight-normal !default;
+// $side-nav-font-weight-active: $side-nav-font-weight !default;
+// $side-nav-font-family: $body-font-family !default;
+// $side-nav-font-family-active: $side-nav-font-family !default;
+
+// // We use these to control heading styles.
+// $side-nav-heading-color: $side-nav-link-color !default;
+// $side-nav-heading-font-size: $side-nav-font-size !default;
+// $side-nav-heading-font-weight: bold !default;
+// $side-nav-heading-text-transform: uppercase !default;
+
+// // We use these to control border styles
+// $side-nav-divider-size: 1px !default;
+// $side-nav-divider-style: solid !default;
+// $side-nav-divider-color: scale-color($white, $lightness: 10%) !default;
+
+
+// //
+// // @mixins
+// //
+
+
+// // We use this to style the side-nav
+// //
+// // $divider-color - Border color of divider. Default: $side-nav-divider-color.
+// // $font-size - Font size of nav items. Default: $side-nav-font-size.
+// // $link-color - Color of navigation links. Default: $side-nav-link-color.
+// // $link-color-hover - Color of navigation links when hovered. Default: $side-nav-link-color-hover.
+// @mixin side-nav(
+// $divider-color:$side-nav-divider-color,
+// $font-size:$side-nav-font-size,
+// $link-color:$side-nav-link-color,
+// $link-color-hover:$side-nav-link-color-hover,
+// $link-bg-hover:$side-nav-link-bg-hover) {
+// display: block;
+// margin: 0;
+// padding: $side-nav-padding;
+// list-style-type: $side-nav-list-type;
+// list-style-position: $side-nav-list-position;
+// font-family: $side-nav-font-family;
+
+// li {
+// margin: $side-nav-list-margin;
+// font-size: $font-size;
+// font-weight: $side-nav-font-weight;
+
+// a:not(.button) {
+// display: block;
+// color: $link-color;
+// margin: $side-nav-link-margin;
+// padding: $side-nav-link-padding;
+// &:hover,
+// &:focus {
+// background: $link-bg-hover;
+// color: $link-color-hover;
+// }
+// }
+
+// &.active > a:first-child:not(.button) {
+// color: $side-nav-link-color-active;
+// font-weight: $side-nav-font-weight-active;
+// font-family: $side-nav-font-family-active;
+// }
+
+// &.divider {
+// border-top: $side-nav-divider-size $side-nav-divider-style;
+// height: 0;
+// padding: 0;
+// list-style: none;
+// border-top-color: $divider-color;
+// }
+
+// &.heading {
+// color: $side-nav-heading-color;
+// font: {
+// size: $side-nav-heading-font-size;
+// weight: $side-nav-heading-font-weight;
+// }
+// text-transform: $side-nav-heading-text-transform;
+// }
+// }
+// }
+
+// @include exports("side-nav") {
+// @if $include-html-nav-classes {
+// .side-nav { @include side-nav; }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_split-buttons.scss b/app/styles/app/foundation/scss/foundation/components/_split-buttons.scss
new file mode 100644
index 00000000..21c0e100
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_split-buttons.scss
@@ -0,0 +1,191 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "buttons";
+// @import "dropdown-buttons";
+
+// //
+// // @name _split-buttons.scss
+// // @dependencies _buttons.scss, _global.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-button-classes: $include-html-classes !default;
+
+// // We use these to control different shared styles for Split Buttons
+// $split-button-function-factor: 10% !default;
+// $split-button-pip-color: $white !default;
+// $split-button-pip-color-alt: $oil !default;
+// $split-button-active-bg-tint: rgba(0,0,0,0.1) !default;
+
+// // We use these to control tiny split buttons
+// $split-button-padding-tny: $button-pip-tny * 10 !default;
+// $split-button-span-width-tny: $button-pip-tny * 6 !default;
+// $split-button-pip-size-tny: $button-pip-tny !default;
+// $split-button-pip-top-tny: $button-pip-tny * 2 !default;
+// $split-button-pip-default-float-tny: rem-calc(-6) !default;
+
+// // We use these to control small split buttons
+// $split-button-padding-sml: $button-pip-sml * 10 !default;
+// $split-button-span-width-sml: $button-pip-sml * 6 !default;
+// $split-button-pip-size-sml: $button-pip-sml !default;
+// $split-button-pip-top-sml: $button-pip-sml * 1.5 !default;
+// $split-button-pip-default-float-sml: rem-calc(-6) !default;
+
+// // We use these to control medium split buttons
+// $split-button-padding-med: $button-pip-med * 9 !default;
+// $split-button-span-width-med: $button-pip-med * 5.5 !default;
+// $split-button-pip-size-med: $button-pip-med - rem-calc(3) !default;
+// $split-button-pip-top-med: $button-pip-med * 1.5 !default;
+// $split-button-pip-default-float-med: rem-calc(-6) !default;
+
+// // We use these to control large split buttons
+// $split-button-padding-lrg: $button-pip-lrg * 8 !default;
+// $split-button-span-width-lrg: $button-pip-lrg * 5 !default;
+// $split-button-pip-size-lrg: $button-pip-lrg - rem-calc(6) !default;
+// $split-button-pip-top-lrg: $button-pip-lrg + rem-calc(5) !default;
+// $split-button-pip-default-float-lrg: rem-calc(-6) !default;
+
+
+// //
+// // @mixins
+// //
+
+// // We use this mixin to create split buttons that build upon the button mixins
+// //
+// // $padding - Type of padding to apply. Default: medium. Options: tiny, small, medium, large.
+// // $pip-color - Color of the triangle. Default: $split-button-pip-color.
+// // $span-border - Border color of button divider. Default: $primary-color.
+// // $base-style - Apply base style to split button. Default: true.
+// @mixin split-button(
+// $padding:medium,
+// $pip-color:$split-button-pip-color,
+// $span-border:$primary-color,
+// $base-style:true) {
+
+// // With this, we can control whether or not the base styles come through.
+// @if $base-style {
+// position: relative;
+
+// // Styling for the split arrow clickable area
+// span {
+// display: block;
+// height: 100%;
+// position: absolute;
+// #{$opposite-direction}: 0;
+// top: 0;
+// border-#{$default-float}: solid 1px;
+
+// // Building the triangle pip indicator
+// &:after {
+// position: absolute;
+// content: "";
+// width: 0;
+// height: 0;
+// display: block;
+// border-style: inset;
+// top: 50%;
+
+// #{$default-float}: 50%;
+// }
+
+// &:active { background-color: $split-button-active-bg-tint; }
+// }
+// }
+
+// // Control the border color for the span area of the split button
+// @if $span-border {
+// span {
+// border-#{$default-float}-color: rgba(255,255,255,0.5);
+// }
+// }
+
+// // Style of the button and clickable area for tiny sizes
+// @if $padding == tiny {
+// padding-#{$opposite-direction}: $split-button-padding-tny;
+
+// span { width: $split-button-span-width-tny;
+// &:after {
+// border-top-style: solid;
+// border-width: $split-button-pip-size-tny;
+// top: 48%;
+// margin-#{$default-float}: $split-button-pip-default-float-tny;
+// }
+// }
+// }
+
+// // Style of the button and clickable area for small sizes
+// @else if $padding == small {
+// padding-#{$opposite-direction}: $split-button-padding-sml;
+
+// span { width: $split-button-span-width-sml;
+// &:after {
+// border-top-style: solid;
+// border-width: $split-button-pip-size-sml;
+// top: 48%;
+// margin-#{$default-float}: $split-button-pip-default-float-sml;
+// }
+// }
+// }
+
+// // Style of the button and clickable area for default (medium) sizes
+// @else if $padding == medium {
+// padding-#{$opposite-direction}: $split-button-padding-med;
+
+// span { width: $split-button-span-width-med;
+// &:after {
+// border-top-style: solid;
+// border-width: $split-button-pip-size-med;
+// top: 48%;
+// margin-#{$default-float}: $split-button-pip-default-float-med;
+// }
+// }
+// }
+
+// // Style of the button and clickable area for large sizes
+// @else if $padding == large {
+// padding-#{$opposite-direction}: $split-button-padding-lrg;
+
+// span { width: $split-button-span-width-lrg;
+// &:after {
+// border-top-style: solid;
+// border-width: $split-button-pip-size-lrg;
+// top: 48%;
+// margin-#{$default-float}: $split-button-pip-default-float-lrg;
+// }
+// }
+// }
+
+// // Control the color of the triangle pip
+// @if $pip-color {
+// span:after { border-color: $pip-color transparent transparent transparent; }
+// }
+// }
+
+// @include exports("split-button") {
+// @if $include-html-button-classes {
+
+// .split.button { @include split-button;
+
+// &.secondary { @include split-button(false, $split-button-pip-color, $secondary-color, false); }
+// &.alert { @include split-button(false, false, $alert-color, false); }
+// &.success { @include split-button(false, false, $success-color, false); }
+
+// &.tiny { @include split-button(tiny, false, false, false); }
+// &.small { @include split-button(small, false, false, false); }
+// &.large { @include split-button(large, false, false, false); }
+// &.expand { padding-left: 2rem; }
+
+// &.secondary { @include split-button(false, $split-button-pip-color-alt, false, false); }
+
+// &.radius span { @include side-radius($opposite-direction, $global-radius); }
+// &.round span { @include side-radius($opposite-direction, 1000px); }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_sub-nav.scss b/app/styles/app/foundation/scss/foundation/components/_sub-nav.scss
new file mode 100644
index 00000000..7db9f03e
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_sub-nav.scss
@@ -0,0 +1,123 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @name _sub-nav.scss
+// // @dependencies _global.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-nav-classes: $include-html-classes !default;
+
+// // We use these to control margin and padding
+// $sub-nav-list-margin: rem-calc(-4 0 18) !default;
+// $sub-nav-list-padding-top: rem-calc(4) !default;
+
+// // We use this to control the definition
+// $sub-nav-font-family: $body-font-family !default;
+// $sub-nav-font-size: rem-calc(14) !default;
+// $sub-nav-font-color: $aluminum !default;
+// $sub-nav-font-weight: $font-weight-normal !default;
+// $sub-nav-text-decoration: none !default;
+// $sub-nav-padding: rem-calc(3 16) !default;
+// $sub-nav-border-radius: 3px !default;
+// $sub-nav-font-color-hover: scale-color($sub-nav-font-color, $lightness: -25%) !default;
+
+
+// // We use these to control the active item styles
+
+// $sub-nav-active-font-weight: $font-weight-normal !default;
+// $sub-nav-active-bg: $primary-color !default;
+// $sub-nav-active-bg-hover: scale-color($sub-nav-active-bg, $lightness: -14%) !default;
+// $sub-nav-active-color: $white !default;
+// $sub-nav-active-padding: $sub-nav-padding !default;
+// $sub-nav-active-cursor: default !default;
+
+// $sub-nav-item-divider: "" !default;
+// $sub-nav-item-divider-margin: rem-calc(12) !default;
+
+// //
+// // @mixins
+// //
+
+
+// // Create a sub-nav item
+// //
+// // $font-color - Font color. Default: $sub-nav-font-color.
+// // $font-size - Font size. Default: $sub-nav-font-size.
+// // $active-bg - Background of active nav item. Default: $sub-nav-active-bg.
+// // $active-bg-hover - Background of active nav item, when hovered. Default: $sub-nav-active-bg-hover.
+// @mixin sub-nav(
+// $font-color: $sub-nav-font-color,
+// $font-size: $sub-nav-font-size,
+// $active-bg: $sub-nav-active-bg,
+// $active-bg-hover: $sub-nav-active-bg-hover) {
+// display: block;
+// width: auto;
+// overflow: hidden;
+// margin: $sub-nav-list-margin;
+// padding-top: $sub-nav-list-padding-top;
+
+// dt {
+// text-transform: uppercase;
+// }
+
+// dt,
+// dd,
+// li {
+// float: $default-float;
+// display: inline;
+// margin-#{$default-float}: rem-calc(16);
+// margin-bottom: 0;
+// font-family: $sub-nav-font-family;
+// font-weight: $sub-nav-font-weight;
+// font-size: $font-size;
+// color: $font-color;
+
+// a {
+// text-decoration: $sub-nav-text-decoration;
+// color: $sub-nav-font-color;
+// padding: $sub-nav-padding;
+// &:hover {
+// color: $sub-nav-font-color-hover;
+// }
+// }
+
+// &.active a {
+// @include radius($sub-nav-border-radius);
+// font-weight: $sub-nav-active-font-weight;
+// background: $active-bg;
+// padding: $sub-nav-active-padding;
+// cursor: $sub-nav-active-cursor;
+// color: $sub-nav-active-color;
+// &:hover {
+// background: $active-bg-hover;
+// }
+// }
+// @if $sub-nav-item-divider != "" {
+// margin-#{$default-float}: 0;
+
+// &:before {
+// content: "#{$sub-nav-item-divider}";
+// margin: 0 $sub-nav-item-divider-margin;
+// }
+
+// &:first-child:before {
+// content: "";
+// margin: 0;
+// }
+// }
+// }
+// }
+
+// @include exports("sub-nav") {
+// @if $include-html-nav-classes {
+// .sub-nav { @include sub-nav; }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_switches.scss b/app/styles/app/foundation/scss/foundation/components/_switches.scss
new file mode 100644
index 00000000..4dd79a02
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_switches.scss
@@ -0,0 +1,238 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @name
+// // @dependencies _global.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-form-classes: $include-html-classes !default;
+
+// // Controlling background color for the switch container
+// $switch-bg: $gainsboro !default;
+
+// // We use these to control the switch heights for our default classes
+// $switch-height-tny: 1.5rem !default;
+// $switch-height-sml: 1.75rem !default;
+// $switch-height-med: 2rem !default;
+// $switch-height-lrg: 2.5rem !default;
+// $switch-bottom-margin: 1.5rem !default;
+
+// // We use these to style the switch-paddle
+// $switch-paddle-bg: $white !default;
+// $switch-paddle-transition-speed: .15s !default;
+// $switch-paddle-transition-ease: ease-out !default;
+// $switch-active-color: $primary-color !default;
+
+
+// //
+// // @mixins
+// //
+
+// // We use this mixin to create the base styles for our switch element.
+// //
+// // $transition-speed - Time in ms for switch to toggle. Default: $switch-paddle-transition-speed.
+// // $transition-ease - Easing function to use for animation (i.e. ease-out). Default: $switch-paddle-transition-ease.
+// @mixin switch-base(
+// $transition-speed:$switch-paddle-transition-speed,
+// $transition-ease:$switch-paddle-transition-ease) {
+
+// padding: 0;
+// border: none;
+// position: relative;
+// outline: 0;
+// -webkit-user-select: none;
+// -moz-user-select: none;
+// user-select: none;
+
+// // Default label styles for type and transition
+// label {
+// display: block;
+// margin-bottom: ($switch-height-med / 2);
+// position: relative;
+// color: transparent;
+// background: $switch-bg;
+// text-indent: 100%;
+// width: $switch-height-med * 2; height: $switch-height-med;
+// cursor: pointer;
+
+// // Transition for the switch label to follow paddle
+// @include single-transition(left, $transition-speed, $transition-ease);
+// }
+
+// // So that we don't need to recreate the form with any JS, we use the
+// // existing checkbox or radio button, but we cleverly position and hide it.
+// input {
+// opacity: 0;
+// position: absolute;
+// top: 9px;
+// left: 10px;
+// padding:0;
+
+// & + label { margin-left: 0; margin-right: 0; }
+// }
+
+// // The paddle for the switch is created from an after psuedoclass
+// // content element. This is sized and positioned, and reacts to
+// // the state of the input.
+
+// label:after {
+// content: "";
+// display: block;
+// background: $switch-paddle-bg;
+// position: absolute;
+// top: .25rem;
+// left: .25rem;
+// width: $switch-height-med - 0.5rem;
+// height: $switch-height-med - 0.5rem;
+
+// -webkit-transition: left $transition-speed $transition-ease;
+// -moz-transition: left $transition-speed $transition-ease;
+// -o-transition: translate3d(0,0,0);
+// transition: left $transition-speed $transition-ease;
+
+// -webkit-transform: translate3d(0,0,0);
+// -moz-transform: translate3d(0,0,0);
+// -o-transform: translate3d(0,0,0);
+// transform: translate3d(0,0,0);
+// }
+
+// input:checked + label {
+// background: $switch-active-color;
+// }
+
+// input:checked + label:after {
+// left: $switch-height-med + 0.25rem;
+// }
+// }
+
+// // We use this mixin to create the size styles for switches.
+// //
+// // $height - Height (in px) of the switch. Default: $switch-height-med.
+// // $font-size - Font size of text in switch. Default: $switch-font-size-med.
+// // $line-height - Line height of switch. Default: 2.3rem.
+// @mixin switch-size($height: $switch-height-med) {
+
+// label {
+// width: $height * 2;
+// height: $height;
+// }
+
+// label:after {
+// width: $height - 0.5rem;
+// height: $height - 0.5rem;
+// }
+
+// input:checked + label:after {
+// left: $height + 0.25rem;
+// }
+
+// }
+
+// // We use this mixin to add color and other fanciness to the switches.
+// //
+// // $paddle-bg - Background of switch paddle. Default: $switch-paddle-bg.
+// // $active-color - Background color of positive side of switch. Default: $switch-positive-color.
+// // $negative-color - Background color of negative side of switch. Default: $switch-negative-color.
+// // $radius - Radius to apply to switch. Default: false.
+// // $base-style - Apply base styles? Default: true.
+// @mixin switch-style(
+// $paddle-bg:$switch-paddle-bg,
+// $active-color:$switch-active-color,
+// $radius:false,
+// $base-style:true) {
+
+// @if $base-style {
+
+// label {
+// color: transparent;
+// background: $switch-bg;
+// }
+
+// label:after {
+// background: $paddle-bg;
+// }
+
+// input:checked + label {
+// background: $active-color;
+// }
+// }
+
+// // Setting up the radius for switches
+// @if $radius == true {
+// label {
+// border-radius: 2rem;
+// }
+// label:after {
+// border-radius: 2rem;
+// }
+// }
+// @else if $radius {
+// label {
+// border-radius: $radius;
+// }
+// label:after {
+// border-radius: $radius;
+// }
+// }
+
+// }
+
+// // We use this to quickly create switches with a single mixin
+// //
+// // $transition-speed - Time in ms for switch to toggle. Default: $switch-paddle-transition-speed.
+// // $transition-ease - Easing function to use for animation (i.e. ease-out). Default: $switch-paddle-transition-ease.
+// // $height - Height (in px) of the switch. Default: $switch-height-med.
+// // $paddle-bg - Background of switch paddle. Default: $switch-paddle-bg.
+// // $active-color - Background color of an active switch. Default: $switch-active-color.
+// // $radius - Radius to apply to switch. Default: false.
+// // $base-style - Apply base styles? Default: true.
+// @mixin switch(
+// $transition-speed: $switch-paddle-transition-speed,
+// $transition-ease: $switch-paddle-transition-ease,
+// $height: $switch-height-med,
+// $paddle-bg: $switch-paddle-bg,
+// $active-color: $switch-active-color,
+// $radius:false,
+// $base-style:true) {
+// @include switch-base($transition-speed, $transition-ease);
+// @include switch-size($height);
+// @include switch-style($paddle-bg, $active-color, $radius, $base-style);
+// }
+
+// @include exports("switch") {
+// @if $include-html-form-classes {
+// .switch {
+// @include switch;
+
+// // Large radio switches
+// &.large { @include switch-size($switch-height-lrg); }
+
+// // Small radio switches
+// &.small { @include switch-size($switch-height-sml); }
+
+// // Tiny radio switches
+// &.tiny { @include switch-size($switch-height-tny); }
+
+// // Add a radius to the switch
+// &.radius {
+// label { @include radius(4px); }
+// label:after { @include radius(3px); }
+// }
+
+// // Make the switch completely round, like a pill
+// &.round { @include radius(1000px);
+// label { @include radius(2rem); }
+// label:after { @include radius(2rem); }
+// }
+
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_tables.scss b/app/styles/app/foundation/scss/foundation/components/_tables.scss
new file mode 100644
index 00000000..fd672fcc
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_tables.scss
@@ -0,0 +1,135 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @name _tables.scss
+// // @dependencies _global.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-table-classes: $include-html-classes !default;
+
+// // These control the background color for the table and even rows
+// $table-bg: $white !default;
+// $table-even-row-bg: $snow !default;
+
+// // These control the table cell border style
+// $table-border-style: solid !default;
+// $table-border-size: 1px !default;
+// $table-border-color: $gainsboro !default;
+
+// // These control the table head styles
+// $table-head-bg: $white-smoke !default;
+// $table-head-font-size: rem-calc(14) !default;
+// $table-head-font-color: $jet !default;
+// $table-head-font-weight: $font-weight-bold !default;
+// $table-head-padding: rem-calc(8 10 10) !default;
+
+// // These control the table foot styles
+// $table-foot-bg: $table-head-bg !default;
+// $table-foot-font-size: $table-head-font-size !default;
+// $table-foot-font-color: $table-head-font-color !default;
+// $table-foot-font-weight: $table-head-font-weight !default;
+// $table-foot-padding: $table-head-padding !default;
+
+// // These control the caption
+// $table-caption-bg: transparent !default;
+// $table-caption-font-color: $table-head-font-color !default;
+// $table-caption-font-size: rem-calc(16) !default;
+// $table-caption-font-weight: bold !default;
+
+// // These control the row padding and font styles
+// $table-row-padding: rem-calc(9 10) !default;
+// $table-row-font-size: rem-calc(14) !default;
+// $table-row-font-color: $jet !default;
+// $table-line-height: rem-calc(18) !default;
+
+// // These are for controlling the layout, display and margin of tables
+// $table-layout: auto !default;
+// $table-display: table-cell !default;
+// $table-margin-bottom: rem-calc(20) !default;
+
+
+// //
+// // @mixins
+// //
+
+// @mixin table {
+// background: $table-bg;
+// margin-bottom: $table-margin-bottom;
+// border: $table-border-style $table-border-size $table-border-color;
+// table-layout: $table-layout;
+
+// caption {
+// background: $table-caption-bg;
+// color: $table-caption-font-color;
+// font: {
+// size: $table-caption-font-size;
+// weight: $table-caption-font-weight;
+// }
+// }
+
+// thead {
+// background: $table-head-bg;
+
+// tr {
+// th,
+// td {
+// padding: $table-head-padding;
+// font-size: $table-head-font-size;
+// font-weight: $table-head-font-weight;
+// color: $table-head-font-color;
+// }
+// }
+// }
+
+// tfoot {
+// background: $table-foot-bg;
+
+// tr {
+// th,
+// td {
+// padding: $table-foot-padding;
+// font-size: $table-foot-font-size;
+// font-weight: $table-foot-font-weight;
+// color: $table-foot-font-color;
+// }
+// }
+// }
+
+// tr {
+// th,
+// td {
+// padding: $table-row-padding;
+// font-size: $table-row-font-size;
+// color: $table-row-font-color;
+// text-align: $default-float;
+// }
+
+// &.even,
+// &.alt,
+// &:nth-of-type(even) { background: $table-even-row-bg; }
+// }
+
+// thead tr th,
+// tfoot tr th,
+// tfoot tr td,
+// tbody tr th,
+// tbody tr td,
+// tr td { display: $table-display; line-height: $table-line-height; }
+// }
+
+
+// @include exports("table") {
+// @if $include-html-table-classes {
+// table {
+// @include table;
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_tabs.scss b/app/styles/app/foundation/scss/foundation/components/_tabs.scss
new file mode 100644
index 00000000..a96575c1
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_tabs.scss
@@ -0,0 +1,123 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "grid";
+
+// //
+// // @variables
+// //
+
+// $include-html-tabs-classes: $include-html-classes !default;
+
+// $tabs-navigation-padding: rem-calc(16) !default;
+// $tabs-navigation-bg-color: $silver !default;
+// $tabs-navigation-active-bg-color: $white !default;
+// $tabs-navigation-hover-bg-color: scale-color($tabs-navigation-bg-color, $lightness: -6%) !default;
+// $tabs-navigation-font-color: $jet !default;
+// $tabs-navigation-active-font-color: $tabs-navigation-font-color !default;
+// $tabs-navigation-font-size: rem-calc(16) !default;
+// $tabs-navigation-font-family: $body-font-family !default;
+
+// $tabs-content-margin-bottom: rem-calc(24) !default;
+// $tabs-content-padding: ($column-gutter/2) !default;
+
+// $tabs-vertical-navigation-margin-bottom: 1.25rem !default;
+
+// @include exports("tab") {
+// @if $include-html-tabs-classes {
+// .tabs {
+// @include clearfix;
+// margin-bottom: 0 !important;
+// margin-left: 0;
+// dd, .tab-title {
+// position: relative;
+// margin-bottom: 0 !important;
+// list-style: none;
+// float: $default-float;
+// > a {
+// outline: none;
+// display: block;
+// background: {
+// color: $tabs-navigation-bg-color;
+// }
+// color: $tabs-navigation-font-color;
+// padding: $tabs-navigation-padding $tabs-navigation-padding * 2;
+// font-family: $tabs-navigation-font-family;
+// font-size: $tabs-navigation-font-size;
+// &:hover {
+// background: {
+// color: $tabs-navigation-hover-bg-color;
+// }
+// }
+// }
+// &.active a {
+// background: {
+// color: $tabs-navigation-active-bg-color;
+// }
+// color:$tabs-navigation-active-font-color;
+// }
+// }
+// &.radius {
+// dd:first-child, .tab:first-child {
+// a { @include side-radius($default-float, $global-radius); }
+// }
+// dd:last-child, .tab:last-child {
+// a { @include side-radius($opposite-direction, $global-radius); }
+// }
+// }
+// &.vertical {
+// dd, .tab-title {
+// position: inherit;
+// float: none;
+// display: block;
+// top: auto;
+// }
+// }
+// }
+
+// .tabs-content {
+// @include clearfix;
+// margin-bottom: $tabs-content-margin-bottom;
+// width: 100%;
+// > .content {
+// display: none;
+// float: $default-float;
+// padding: $tabs-content-padding 0;
+// width: 100%;
+// &.active { display: block; float: none; }
+// &.contained { padding: $tabs-content-padding; }
+// }
+// &.vertical {
+// display: block;
+// > .content { padding: 0 $tabs-content-padding; }
+// }
+// }
+// @media #{$medium-up} {
+// .tabs {
+// &.vertical {
+// width: 20%;
+// max-width: 20%;
+// float: $default-float;
+// margin: 0 0 $tabs-vertical-navigation-margin-bottom;
+// }
+// }
+// .tabs-content {
+// &.vertical {
+// width: 80%;
+// max-width: 80%;
+// float: $default-float;
+// margin-#{$default-float}: -1px;
+// padding-#{$default-float}: 1rem;
+// }
+// }
+// }
+// .no-js {
+// .tabs-content > .content {
+// display: block;
+// float: none;
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_thumbs.scss b/app/styles/app/foundation/scss/foundation/components/_thumbs.scss
new file mode 100644
index 00000000..b80e89e0
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_thumbs.scss
@@ -0,0 +1,66 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // @name _thumbs.scss
+// // @dependencies _globals.scss
+// //
+
+// //
+// // @variables
+// //
+
+// $include-html-media-classes: $include-html-classes !default;
+
+// // We use these to control border styles
+// $thumb-border-style: solid !default;
+// $thumb-border-width: 4px !default;
+// $thumb-border-color: $white !default;
+// $thumb-box-shadow: 0 0 0 1px rgba($black,.2) !default;
+// $thumb-box-shadow-hover: 0 0 6px 1px rgba($primary-color,0.5) !default;
+
+// // Radius and transition speed for thumbs
+// $thumb-radius: $global-radius !default;
+// $thumb-transition-speed: 200ms !default;
+
+// //
+// // @mixins
+// //
+
+// // We use this to create image thumbnail styles.
+// //
+// // $border-width - Width of border around thumbnail. Default: $thumb-border-width.
+// // $box-shadow - Box shadow to apply to thumbnail. Default: $thumb-box-shadow.
+// // $box-shadow-hover - Box shadow to apply on hover. Default: $thumb-box-shadow-hover.
+// @mixin thumb(
+// $border-width:$thumb-border-width,
+// $box-shadow:$thumb-box-shadow,
+// $box-shadow-hover:$thumb-box-shadow-hover) {
+// line-height: 0;
+// display: inline-block;
+// border: $thumb-border-style $border-width $thumb-border-color;
+// max-width: 100%;
+// box-shadow: $box-shadow;
+
+// &:hover,
+// &:focus {
+// box-shadow: $box-shadow-hover;
+// }
+// }
+
+
+// @include exports("thumb") {
+// @if $include-html-media-classes {
+
+// /* Image Thumbnails */
+// .th {
+// @include thumb;
+// @include single-transition(all,$thumb-transition-speed,ease-out);
+
+// &.radius { @include radius($thumb-radius); }
+// }
+// }
+// }
\ No newline at end of file
diff --git a/app/styles/app/foundation/scss/foundation/components/_toolbar.scss b/app/styles/app/foundation/scss/foundation/components/_toolbar.scss
new file mode 100644
index 00000000..e674d5f3
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_toolbar.scss
@@ -0,0 +1,71 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+// // toolbar styles
+// @import 'global';
+
+// .toolbar {
+// background: $oil;
+// width: 100%;
+// font-size: 0;
+// display: inline-block;
+
+// &.label-bottom .tab .tab-content {
+// i, img { margin-bottom: 10px; }
+// }
+
+// &.label-right .tab .tab-content {
+// i, img { margin-right: 10px; display: inline-block;}
+// label { display: inline-block; }
+// }
+
+// &.vertical.label-right .tab .tab-content {
+// text-align: left;
+// }
+
+// &.vertical {
+// height: 100%;
+// width: auto;
+
+// .tab {
+// width: auto;
+// margin: auto;
+// float: none;
+// }
+// }
+
+// .tab {
+// text-align: center;
+// width: 25%;
+// margin: 0 auto;
+// display: block;
+// padding: 20px;
+// float: left;
+
+// &:hover {
+// background: rgba($white, 0.1);
+// }
+// }
+// }
+
+// .toolbar .tab-content {
+// font-size: 16px;
+// text-align: center;
+
+// label { color: $iron; }
+
+// i {
+// font-size: 30px;
+// display: block;
+// margin: 0 auto;
+// color: $iron;
+// vertical-align: middle;
+// }
+
+// img {
+// width: 30px;
+// height: 30px;
+// display: block;
+// margin: 0 auto;
+// }
+// }
\ No newline at end of file
diff --git a/app/styles/app/foundation/scss/foundation/components/_tooltips.scss b/app/styles/app/foundation/scss/foundation/components/_tooltips.scss
new file mode 100644
index 00000000..a7da277e
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_tooltips.scss
@@ -0,0 +1,142 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // Tooltip Variables
+// //
+// $include-html-tooltip-classes: $include-html-classes !default;
+
+// $has-tip-border-bottom: dotted 1px $iron !default;
+// $has-tip-font-weight: $font-weight-bold !default;
+// $has-tip-font-color: $oil !default;
+// $has-tip-border-bottom-hover: dotted 1px scale-color($primary-color, $lightness: -55%) !default;
+// $has-tip-font-color-hover: $primary-color !default;
+// $has-tip-cursor-type: help !default;
+
+// $tooltip-padding: rem-calc(12) !default;
+// $tooltip-bg: $oil !default;
+// $tooltip-font-size: rem-calc(14) !default;
+// $tooltip-font-weight: $font-weight-normal !default;
+// $tooltip-font-color: $white !default;
+// $tooltip-line-height: 1.3 !default;
+// $tooltip-close-font-size: rem-calc(10) !default;
+// $tooltip-close-font-weight: $font-weight-normal !default;
+// $tooltip-close-font-color: $monsoon !default;
+// $tooltip-font-size-sml: rem-calc(14) !default;
+// $tooltip-radius: $global-radius !default;
+// $tooltip-rounded: $global-rounded !default;
+// $tooltip-pip-size: 5px !default;
+// $tooltip-max-width: 300px !default;
+
+// @include exports("tooltip") {
+// @if $include-html-tooltip-classes {
+
+// /* Tooltips */
+// .has-tip {
+// border-bottom: $has-tip-border-bottom;
+// cursor: $has-tip-cursor-type;
+// font-weight: $has-tip-font-weight;
+// color: $has-tip-font-color;
+
+// &:hover,
+// &:focus {
+// border-bottom: $has-tip-border-bottom-hover;
+// color: $has-tip-font-color-hover;
+// }
+
+// &.tip-left,
+// &.tip-right { float: none !important; }
+// }
+
+// .tooltip {
+// display: none;
+// position: absolute;
+// z-index: 1006;
+// font-weight: $tooltip-font-weight;
+// font-size: $tooltip-font-size;
+// line-height: $tooltip-line-height;
+// padding: $tooltip-padding;
+// max-width: $tooltip-max-width;
+// #{$default-float}: 50%;
+// width: 100%;
+// color: $tooltip-font-color;
+// background: $tooltip-bg;
+
+// &>.nub {
+// display: block;
+// #{$default-float}: $tooltip-pip-size;
+// position: absolute;
+// width: 0;
+// height: 0;
+// border: solid $tooltip-pip-size;
+// border-color: transparent transparent $tooltip-bg transparent;
+// top: -($tooltip-pip-size * 2);
+// pointer-events: none;
+
+// &.rtl {
+// left: auto;
+// #{$opposite-direction}: $tooltip-pip-size;
+// }
+// }
+
+// &.radius {
+// @include radius($tooltip-radius);
+// }
+// &.round {
+// @include radius($tooltip-rounded);
+// &>.nub {
+// left: 2rem;
+// }
+// }
+
+// &.opened {
+// color: $has-tip-font-color-hover !important;
+// border-bottom: $has-tip-border-bottom-hover !important;
+// }
+// }
+
+// .tap-to-close {
+// display: block;
+// font-size: $tooltip-close-font-size;
+// color: $tooltip-close-font-color;
+// font-weight: $tooltip-close-font-weight;
+// }
+
+// @media #{$small} {
+// .tooltip {
+// &>.nub {
+// border-color: transparent transparent $tooltip-bg transparent;
+// top: -($tooltip-pip-size * 2);
+// }
+// &.tip-top>.nub {
+// border-color: $tooltip-bg transparent transparent transparent;
+// top: auto;
+// bottom: -($tooltip-pip-size * 2);
+// }
+
+// &.tip-left,
+// &.tip-right { float: none !important; }
+
+// &.tip-left>.nub {
+// border-color: transparent transparent transparent $tooltip-bg;
+// right: -($tooltip-pip-size * 2);
+// left: auto;
+// top: 50%;
+// margin-top: -$tooltip-pip-size;
+// }
+// &.tip-right>.nub {
+// border-color: transparent $tooltip-bg transparent transparent;
+// right: auto;
+// left: -($tooltip-pip-size * 2);
+// top: 50%;
+// margin-top: -$tooltip-pip-size;
+// }
+
+// }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_top-bar.scss b/app/styles/app/foundation/scss/foundation/components/_top-bar.scss
new file mode 100644
index 00000000..56d717f5
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_top-bar.scss
@@ -0,0 +1,689 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+// @import "grid";
+// @import "buttons";
+// @import "forms";
+
+// //
+// // Top Bar Variables
+// //
+// $include-html-top-bar-classes: $include-html-classes !default;
+
+// // Background color for the top bar
+// $topbar-bg-color: $oil !default;
+// $topbar-bg: $topbar-bg-color !default;
+
+// // Height and margin
+// $topbar-height: rem-calc(45) !default;
+// $topbar-margin-bottom: 0 !default;
+
+// // Controlling the styles for the title in the top bar
+// $topbar-title-weight: $font-weight-normal !default;
+// $topbar-title-font-size: rem-calc(17) !default;
+
+// // Set the link colors and styles for top-level nav
+// $topbar-link-color: $white !default;
+// $topbar-link-color-hover: $white !default;
+// $topbar-link-color-active: $white !default;
+// $topbar-link-color-active-hover: $white !default;
+// $topbar-link-weight: $font-weight-normal !default;
+// $topbar-link-font-size: rem-calc(13) !default;
+// $topbar-link-hover-lightness: -10% !default; // Darken by 10%
+// $topbar-link-bg: $topbar-bg !default;
+// $topbar-link-bg-hover: $oil !default;
+// $topbar-link-bg-color-hover: $charcoal !default;
+// $topbar-link-bg-active: $primary-color !default;
+// $topbar-link-bg-active-hover: scale-color($primary-color, $lightness: -14%) !default;
+// $topbar-link-font-family: $body-font-family !default;
+// $topbar-link-text-transform: none !default;
+// $topbar-link-padding: ($topbar-height / 3) !default;
+// $topbar-back-link-size: rem-calc(18) !default;
+// $topbar-link-dropdown-padding: rem-calc(20) !default;
+// $topbar-button-font-size: 0.75rem !default;
+// $topbar-button-top: 7px !default;
+
+// // Style the top bar dropdown elements
+// $topbar-dropdown-bg: $oil !default;
+// $topbar-dropdown-link-color: $white !default;
+// $topbar-dropdown-link-color-hover: $topbar-link-color-hover !default;
+// $topbar-dropdown-link-bg: $oil !default;
+// $topbar-dropdown-link-bg-hover: $oil !default;
+// $topbar-dropdown-link-weight: $font-weight-normal !default;
+// $topbar-dropdown-toggle-size: 5px !default;
+// $topbar-dropdown-toggle-color: $white !default;
+// $topbar-dropdown-toggle-alpha: 0.4 !default;
+
+// $topbar-dropdown-label-color: $monsoon !default;
+// $topbar-dropdown-label-text-transform: uppercase !default;
+// $topbar-dropdown-label-font-weight: $font-weight-bold !default;
+// $topbar-dropdown-label-font-size: rem-calc(10) !default;
+// $topbar-dropdown-label-bg: $oil !default;
+
+// // Top menu icon styles
+// $topbar-menu-link-transform: uppercase !default;
+// $topbar-menu-link-font-size: rem-calc(13) !default;
+// $topbar-menu-link-weight: $font-weight-bold !default;
+// $topbar-menu-link-color: $white !default;
+// $topbar-menu-icon-color: $white !default;
+// $topbar-menu-link-color-toggled: $jumbo !default;
+// $topbar-menu-icon-color-toggled: $jumbo !default;
+
+// // Transitions and breakpoint styles
+// $topbar-transition-speed: 300ms !default;
+// // Using rem-calc for the below breakpoint causes issues with top bar
+// $topbar-breakpoint: #{lower-bound($medium-range)} !default; // Change to 9999px for always mobile layout
+// $topbar-media-query: $medium-up !default;
+
+// // Top-bar input styles
+// $topbar-input-height: rem-calc(28) !default;
+
+// // Divider Styles
+// $topbar-divider-border-bottom: solid 1px scale-color($topbar-bg-color, $lightness: 13%) !default;
+// $topbar-divider-border-top: solid 1px scale-color($topbar-bg-color, $lightness: -50%) !default;
+
+// // Sticky Class
+// $topbar-sticky-class: ".sticky" !default;
+// $topbar-arrows: true !default; //Set false to remove the triangle icon from the menu item
+// $topbar-dropdown-arrows: true !default; //Set false to remove the \00bb >> text from dropdown subnavigation li
+
+// // Accessibility mixins for hiding and showing the menu dropdown items
+// @mixin topbar-hide-dropdown {
+// // Makes an element visually hidden by default, but visible when focused.
+// display: block;
+// @include element-invisible();
+// }
+
+// @mixin topbar-show-dropdown {
+// display: block;
+// @include element-invisible-off();
+// position: absolute !important; // Reset the position from static to absolute
+// }
+
+// @include exports("top-bar") {
+
+// @if $include-html-top-bar-classes {
+
+// // Used to provide media query values for javascript components.
+// // This class is generated despite the value of $include-html-top-bar-classes
+// // to ensure width calculations work correctly.
+// meta.foundation-mq-topbar {
+// font-family: "/" + unquote($topbar-media-query) + "/";
+// width: $topbar-breakpoint;
+// }
+
+// /* Wrapped around .top-bar to contain to grid width */
+// .contain-to-grid {
+// width: 100%;
+// background: $topbar-bg;
+
+// .top-bar { margin-bottom: $topbar-margin-bottom; }
+// }
+
+// // Wrapped around .top-bar to make it stick to the top
+// .fixed {
+// width: 100%;
+// #{$default-float}: 0;
+// position: fixed;
+// top: 0;
+// z-index: 99;
+
+// &.expanded:not(.top-bar) {
+// overflow-y: auto;
+// height: auto;
+// width: 100%;
+// max-height: 100%;
+
+// .title-area {
+// position: fixed;
+// width: 100%;
+// z-index: 99;
+// }
+// // Ensure you can scroll the menu on small screens
+// .top-bar-section {
+// z-index: 98;
+// margin-top: $topbar-height;
+// }
+// }
+// }
+
+// .top-bar {
+// overflow: hidden;
+// height: $topbar-height;
+// line-height: $topbar-height;
+// position: relative;
+// background: $topbar-bg;
+// margin-bottom: $topbar-margin-bottom;
+
+// // Topbar Global list Styles
+// ul {
+// margin-bottom: 0;
+// list-style: none;
+// }
+
+// .row { max-width: none; }
+
+// form,
+// input { margin-bottom: 0; }
+
+// input {
+// height: $topbar-input-height;
+// padding-top: .35rem;
+// padding-bottom: .35rem;
+// font-size: $topbar-button-font-size;
+// }
+
+// .button, button {
+// padding-top: .35rem + rem-calc(1);
+// padding-bottom: .35rem + rem-calc(1);
+// margin-bottom: 0;
+// font-size: $topbar-button-font-size;
+// // position: relative;
+// // top: -1px;
+
+// // Corrects a slight misalignment when put next to an input field
+// @media #{$small-only} {
+// position: relative;
+// top: -1px;
+// }
+// }
+
+// // Title Area
+// .title-area {
+// position: relative;
+// margin: 0;
+// }
+
+// .name {
+// height: $topbar-height;
+// margin: 0;
+// font-size: $rem-base;
+
+// h1, h2, h3, h4, p, span {
+// line-height: $topbar-height;
+// font-size: $topbar-title-font-size;
+// margin: 0;
+// a {
+// font-weight: $topbar-title-weight;
+// color: $topbar-link-color;
+// width: 75%;
+// display: block;
+// padding: 0 $topbar-link-padding;
+// }
+// }
+// }
+
+// // Menu toggle button on small devices
+// .toggle-topbar {
+// position: absolute;
+// #{$opposite-direction}: 0;
+// top: 0;
+
+// a {
+// color: $topbar-link-color;
+// text-transform: $topbar-menu-link-transform;
+// font-size: $topbar-menu-link-font-size;
+// font-weight: $topbar-menu-link-weight;
+// position: relative;
+// display: block;
+// padding: 0 $topbar-link-padding;
+// height: $topbar-height;
+// line-height: $topbar-height;
+// }
+
+// // Adding the class "menu-icon" will add the 3-line icon people love and adore.
+// &.menu-icon {
+// top: 50%;
+// margin-top: -16px;
+
+// a {
+// @if $text-direction == rtl {
+// text-indent: -58px;
+// }
+// height: 34px;
+// line-height: 33px;
+// padding: 0 $topbar-link-padding+rem-calc(25) 0 $topbar-link-padding;
+// color: $topbar-menu-link-color;
+// position: relative;
+
+// & {
+// // @include hamburger icon
+// //
+// // We use this to create the icon with three lines aka the hamburger icon, the menu-icon or the navicon
+// // $width - Width of hamburger icon
+// // $left - If false, icon will be centered horizontally || explicitly set value in rem
+// // $top - If false, icon will be centered vertically || explicitly set value in rem
+// // $thickness - thickness of lines in hamburger icon, set value in px
+// // $gap - spacing between the lines in hamburger icon, set value in px
+// // $color - icon color
+// // $hover-color - icon color during hover, here it isn't set b/c it would override $topbar-menu-icon-color-toggled
+// // $offcanvas - Set to false of @include in topbar
+// @include hamburger(16px, false, 0, 1px, 6px, $topbar-menu-icon-color, "", false);
+// }
+// }
+// }
+// }
+
+// // Change things up when the top-bar is expanded
+// &.expanded {
+// height: auto;
+// background: transparent;
+
+// .title-area { background: $topbar-bg; }
+
+// .toggle-topbar {
+// a { color: $topbar-menu-link-color-toggled;
+// span::after {
+// // Shh, don't tell, but box-shadows create the menu icon :)
+// // Change the color of the bars when the menu is expanded, using given thickness from hamburger() above
+// box-shadow: 0 0 0 1px $topbar-menu-icon-color-toggled,
+// 0 7px 0 1px $topbar-menu-icon-color-toggled,
+// 0 14px 0 1px $topbar-menu-icon-color-toggled;
+// }
+// }
+// }
+// }
+// }
+
+// // Right and Left Navigation that stacked by default
+// .top-bar-section {
+// #{$default-float}: 0;
+// position: relative;
+// width: auto;
+// @include single-transition($default-float, $topbar-transition-speed);
+
+// ul {
+// padding: 0;
+// width: 100%;
+// height: auto;
+// display: block;
+// font-size: $rem-base;
+// margin: 0;
+// }
+
+// .divider,
+// [role="separator"] {
+// border-top: $topbar-divider-border-top;
+// clear: both;
+// height: 1px;
+// width: 100%;
+// }
+
+// ul li {
+// background: $topbar-dropdown-bg;
+// & > a {
+// display: block;
+// width: 100%;
+// color: $topbar-link-color;
+// padding: 12px 0 12px 0;
+// padding-#{$default-float}: $topbar-link-padding;
+// font-family: $topbar-link-font-family;
+// font-size: $topbar-link-font-size;
+// font-weight: $topbar-link-weight;
+// text-transform: $topbar-link-text-transform;
+
+// &.button {
+// font-size: $topbar-link-font-size;
+// padding-#{$opposite-direction}: $topbar-link-padding;
+// padding-#{$default-float}: $topbar-link-padding;
+// @include button-style($bg:$primary-color);
+// }
+// &.button.secondary { @include button-style($bg:$secondary-color); }
+// &.button.success { @include button-style($bg:$success-color); }
+// &.button.alert { @include button-style($bg:$alert-color); }
+// &.button.warning { @include button-style($bg:$warning-color); }
+// }
+
+// > button {
+// font-size: $topbar-link-font-size;
+// padding-#{$opposite-direction}: $topbar-link-padding;
+// padding-#{$default-float}: $topbar-link-padding;
+// @include button-style($bg:$primary-color);
+
+// &.secondary { @include button-style($bg:$secondary-color); }
+// &.success { @include button-style($bg:$success-color); }
+// &.alert { @include button-style($bg:$alert-color); }
+// &.warning { @include button-style($bg:$warning-color); }
+// }
+
+// // Apply the hover link color when it has that class
+// &:hover:not(.has-form) > a {
+// background-color: $topbar-link-bg-color-hover;
+// @if ($topbar-link-bg-hover) {
+// background: $topbar-link-bg-hover;
+// }
+// color: $topbar-link-color-hover;
+// }
+
+// // Apply the active link color when it has that class
+// &.active > a {
+// background: $topbar-link-bg-active;
+// color: $topbar-link-color-active;
+// &:hover {
+// background: $topbar-link-bg-active-hover;
+// color: $topbar-link-color-active-hover;
+// }
+// }
+// }
+
+// // Add some extra padding for list items contains buttons
+// .has-form { padding: $topbar-link-padding; }
+
+// // Styling for list items that have a dropdown within them.
+// .has-dropdown {
+// position: relative;
+
+// & > a {
+// &:after {
+// @if ($topbar-arrows){
+// @include css-triangle($topbar-dropdown-toggle-size, rgba($topbar-dropdown-toggle-color, $topbar-dropdown-toggle-alpha), $default-float);
+// }
+// margin-#{$opposite-direction}: $topbar-link-padding;
+// margin-top: -($topbar-dropdown-toggle-size / 2) - 2;
+// position: absolute;
+// top: 50%;
+// #{$opposite-direction}: 0;
+// }
+// }
+
+// &.moved { position: static;
+// & > .dropdown {
+// @include topbar-show-dropdown();
+// width: 100%;
+// }
+// & > a:after {
+// display: none;
+// }
+// }
+// }
+
+// // Styling elements inside of dropdowns
+// .dropdown {
+// padding: 0;
+// position: absolute;
+// #{$default-float}: 100%;
+// top: 0;
+// z-index: 99;
+// @include topbar-hide-dropdown();
+
+// li {
+// width: 100%;
+// height: auto;
+
+// a {
+// font-weight: $topbar-dropdown-link-weight;
+// padding: 8px $topbar-link-padding;
+// &.parent-link {
+// font-weight: $topbar-link-weight;
+// }
+// }
+
+// &.title h5, &.parent-link {
+// // Back Button
+// margin-bottom: 0;
+// margin-top: 0;
+// font-size: $topbar-back-link-size;
+// a {
+// color: $topbar-link-color;
+// // line-height: ($topbar-height / 2);
+// display: block;
+// &:hover { background:none; }
+// }
+// }
+// &.has-form { padding: 8px $topbar-link-padding; }
+// .button, button { top: auto; }
+// }
+
+// label {
+// padding: 8px $topbar-link-padding 2px;
+// margin-bottom: 0;
+// text-transform: $topbar-dropdown-label-text-transform;
+// color: $topbar-dropdown-label-color;
+// font-weight: $topbar-dropdown-label-font-weight;
+// font-size: $topbar-dropdown-label-font-size;
+// }
+// }
+// }
+
+// .js-generated { display: block; }
+
+
+// // Top Bar styles intended for screen sizes above the breakpoint.
+// @media #{$topbar-media-query} {
+// .top-bar {
+// background: $topbar-bg;
+// @include clearfix;
+// overflow: visible;
+
+// .toggle-topbar { display: none; }
+
+// .title-area { float: $default-float; }
+// .name h1 a { width: auto; }
+
+// input,
+// .button,
+// button {
+// font-size: rem-calc(14);
+// position: relative;
+// height: $topbar-input-height;
+// top: (($topbar-height - $topbar-input-height) / 2);
+// }
+
+// &.expanded { background: $topbar-bg; }
+// }
+
+// .contain-to-grid .top-bar {
+// max-width: $row-width;
+// margin: 0 auto;
+// margin-bottom: $topbar-margin-bottom;
+// }
+
+// .top-bar-section {
+// @include single-transition(none,0,0);
+// #{$default-float}: 0 !important;
+
+// ul {
+// width: auto;
+// height: auto !important;
+// display: inline;
+
+// li {
+// float: $default-float;
+// .js-generated { display: none; }
+// }
+// }
+
+// li {
+// &.hover {
+// > a:not(.button) {
+// background-color: $topbar-link-bg-color-hover;
+// @if ($topbar-link-bg-hover) {
+// background: $topbar-link-bg-hover;
+// }
+// color: $topbar-link-color-hover;
+// }
+// }
+// &:not(.has-form) {
+// a:not(.button) {
+// padding: 0 $topbar-link-padding;
+// line-height: $topbar-height;
+// background: $topbar-link-bg;
+// &:hover {
+// background-color: $topbar-link-bg-color-hover;
+// @if ($topbar-link-bg-hover) {
+// background: $topbar-link-bg-hover;
+// }
+// }
+// }
+// }
+// &.active:not(.has-form) {
+// a:not(.button) {
+// padding: 0 $topbar-link-padding;
+// line-height: $topbar-height;
+// color: $topbar-link-color-active;
+// background: $topbar-link-bg-active;
+// &:hover {
+// background: $topbar-link-bg-active-hover;
+// color: $topbar-link-color-active-hover;
+// }
+// }
+// }
+// }
+
+// .has-dropdown {
+// @if($topbar-arrows){
+// & > a {
+// padding-#{$opposite-direction}: $topbar-link-padding + $topbar-link-dropdown-padding !important;
+// &:after {
+// @include css-triangle($topbar-dropdown-toggle-size, rgba($topbar-dropdown-toggle-color, $topbar-dropdown-toggle-alpha), top);
+// margin-top: -($topbar-dropdown-toggle-size / 2);
+// top: ($topbar-height / 2);
+// }
+// }
+// }
+
+// &.moved { position: relative;
+// & > .dropdown {
+// @include topbar-hide-dropdown();
+// }
+// }
+
+// &.hover, &.not-click:hover {
+// & > .dropdown {
+// @include topbar-show-dropdown();
+// }
+// }
+// > a:focus + .dropdown {
+// @include topbar-show-dropdown();
+// }
+
+// .dropdown li.has-dropdown {
+// & > a {
+// @if ($topbar-dropdown-arrows){
+// &:after {
+// border: none;
+// content: "\00bb";
+// top: 1rem;
+// margin-top: -1px;
+// #{$opposite-direction}: 5px;
+// line-height: 1.2;
+// }
+// }
+// }
+// }
+// }
+
+// .dropdown {
+// #{$default-float}: 0;
+// top: auto;
+// background: transparent;
+// min-width: 100%;
+
+// li {
+// a {
+// color: $topbar-dropdown-link-color;
+// line-height: $topbar-height;
+// white-space: nowrap;
+// padding: 12px $topbar-link-padding;
+// background: $topbar-dropdown-link-bg;
+// }
+
+// &:not(.has-form):not(.active) {
+// & > a:not(.button) {
+// color: $topbar-dropdown-link-color;
+// background: $topbar-dropdown-link-bg;
+// }
+
+// &:hover > a:not(.button) {
+// color: $topbar-dropdown-link-color-hover;
+// background-color: $topbar-link-bg-color-hover;
+// @if ($topbar-dropdown-link-bg-hover) {
+// background: $topbar-dropdown-link-bg-hover;
+// }
+// }
+// }
+
+// label {
+// white-space: nowrap;
+// background: $topbar-dropdown-label-bg;
+// }
+
+// // Second Level Dropdowns
+// .dropdown {
+// #{$default-float}: 100%;
+// top: 0;
+// }
+// }
+// }
+
+// & > ul > .divider,
+// & > ul > [role="separator"] {
+// border-bottom: none;
+// border-top: none;
+// border-#{$opposite-direction}: $topbar-divider-border-bottom;
+// clear: none;
+// height: $topbar-height;
+// width: 0;
+// }
+
+// .has-form {
+// background: $topbar-link-bg;
+// padding: 0 ($topbar-height / 3);
+// height: $topbar-height;
+// }
+
+// // Position overrides for ul.right and ul.left
+// .#{$opposite-direction} {
+// li .dropdown {
+// #{$default-float}: auto;
+// #{$opposite-direction}: 0;
+
+// li .dropdown { #{$opposite-direction}: 100%; }
+// }
+// }
+// .#{$default-float} {
+// li .dropdown {
+// #{$opposite-direction}: auto;
+// #{$default-float}: 0;
+
+// li .dropdown { #{$default-float}: 100%; }
+// }
+// }
+// }
+
+// // Degrade gracefully when Javascript is disabled. Displays dropdown and changes
+// // background & text color on hover.
+// .no-js .top-bar-section {
+// ul li {
+// // Apply the hover link color when it has that class
+// &:hover > a {
+// background-color: $topbar-link-bg-color-hover;
+// @if ($topbar-link-bg-hover) {
+// background: $topbar-link-bg-hover;
+// }
+// color: $topbar-link-color-hover;
+// }
+
+// // Apply the active link color when it has that class
+// &:active > a {
+// background: $topbar-link-bg-active;
+// color: $topbar-link-color-active;
+// }
+// }
+
+// .has-dropdown {
+// &:hover {
+// & > .dropdown {
+// @include topbar-show-dropdown();
+// }
+// }
+// > a:focus + .dropdown {
+// @include topbar-show-dropdown();
+// }
+// }
+// }
+// }
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_type.scss b/app/styles/app/foundation/scss/foundation/components/_type.scss
new file mode 100644
index 00000000..6a19d91d
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_type.scss
@@ -0,0 +1,525 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// $include-html-type-classes: $include-html-classes !default;
+
+// // We use these to control header font styles
+// $header-font-family: $body-font-family !default;
+// $header-font-weight: $font-weight-normal !default;
+// $header-font-style: $font-weight-normal !default;
+// $header-font-color: $jet !default;
+// $header-line-height: 1.4 !default;
+// $header-top-margin: .2rem !default;
+// $header-bottom-margin: .5rem !default;
+// $header-text-rendering: optimizeLegibility !default;
+
+// // We use these to control header font sizes
+// $h1-font-size: rem-calc(44) !default;
+// $h2-font-size: rem-calc(37) !default;
+// $h3-font-size: rem-calc(27) !default;
+// $h4-font-size: rem-calc(23) !default;
+// $h5-font-size: rem-calc(18) !default;
+// $h6-font-size: 1rem !default;
+
+// // We use these to control header size reduction on small screens
+// $h1-font-reduction: rem-calc(10) !default;
+// $h2-font-reduction: rem-calc(10) !default;
+// $h3-font-reduction: rem-calc(5) !default;
+// $h4-font-reduction: rem-calc(5) !default;
+// $h5-font-reduction: 0 !default;
+// $h6-font-reduction: 0 !default;
+
+// // These control how subheaders are styled.
+// $subheader-line-height: 1.4 !default;
+// $subheader-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+// $subheader-font-weight: $font-weight-normal !default;
+// $subheader-top-margin: .2rem !default;
+// $subheader-bottom-margin: .5rem !default;
+
+// // A general styling
+// $small-font-size: 60% !default;
+// $small-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+
+// // We use these to style paragraphs
+// $paragraph-font-family: inherit !default;
+// $paragraph-font-weight: $font-weight-normal !default;
+// $paragraph-font-size: 1rem !default;
+// $paragraph-line-height: 1.6 !default;
+// $paragraph-margin-bottom: rem-calc(20) !default;
+// $paragraph-aside-font-size: rem-calc(14) !default;
+// $paragraph-aside-line-height: 1.35 !default;
+// $paragraph-aside-font-style: italic !default;
+// $paragraph-text-rendering: optimizeLegibility !default;
+
+// // We use these to style tags
+// $code-color: $oil !default;
+// $code-font-family: $font-family-monospace !default;
+// $code-font-weight: $font-weight-normal !default;
+// $code-background-color: scale-color($secondary-color, $lightness: 70%) !default;
+// $code-border-size: 1px !default;
+// $code-border-style: solid !default;
+// $code-border-color: scale-color($code-background-color, $lightness: -10%) !default;
+// $code-padding: rem-calc(2) rem-calc(5) rem-calc(1) !default;
+
+// // We use these to style anchors
+// $anchor-text-decoration: none !default;
+// $anchor-text-decoration-hover: none !default;
+// $anchor-font-color: $primary-color !default;
+// $anchor-font-color-hover: scale-color($anchor-font-color, $lightness: -14%) !default;
+
+// // We use these to style the
element
+// $hr-border-width: 1px !default;
+// $hr-border-style: solid !default;
+// $hr-border-color: $gainsboro !default;
+// $hr-margin: rem-calc(20) !default;
+
+// // We use these to style lists
+// $list-font-family: $paragraph-font-family !default;
+// $list-font-size: $paragraph-font-size !default;
+// $list-line-height: $paragraph-line-height !default;
+// $list-margin-bottom: $paragraph-margin-bottom !default;
+// $list-style-position: outside !default;
+// $list-side-margin: 1.1rem !default;
+// $list-ordered-side-margin: 1.4rem !default;
+// $list-side-margin-no-bullet: 0 !default;
+// $list-nested-margin: rem-calc(20) !default;
+// $definition-list-header-weight: $font-weight-bold !default;
+// $definition-list-header-margin-bottom: .3rem !default;
+// $definition-list-margin-bottom: rem-calc(12) !default;
+
+// // We use these to style blockquotes
+// $blockquote-font-color: scale-color($header-font-color, $lightness: 35%) !default;
+// $blockquote-padding: rem-calc(9 20 0 19) !default;
+// $blockquote-border: 1px solid $gainsboro !default;
+// $blockquote-cite-font-size: rem-calc(13) !default;
+// $blockquote-cite-font-color: scale-color($header-font-color, $lightness: 23%) !default;
+// $blockquote-cite-link-color: $blockquote-cite-font-color !default;
+
+// // Acronym styles
+// // $acronym-underline: 1px dotted $gainsboro !default;
+
+// // We use these to control padding and margin
+// $microformat-padding: rem-calc(10 12) !default;
+// $microformat-margin: rem-calc(0 0 20 0) !default;
+
+// // We use these to control the border styles
+// $microformat-border-width: 1px !default;
+// $microformat-border-style: solid !default;
+// $microformat-border-color: $gainsboro !default;
+
+// // We use these to control full name font styles
+// $microformat-fullname-font-weight: $font-weight-bold !default;
+// $microformat-fullname-font-size: rem-calc(15) !default;
+
+// // We use this to control the summary font styles
+// $microformat-summary-font-weight: $font-weight-bold !default;
+
+// // We use this to control abbr padding
+// $microformat-abbr-padding: rem-calc(0 1) !default;
+
+// // We use this to control abbr font styles
+// $microformat-abbr-font-weight: $font-weight-bold !default;
+// $microformat-abbr-font-decoration: none !default;
+
+// // Text alignment class names
+// $align-class-names:
+// small-only,
+// small,
+// medium-only,
+// medium,
+// large-only,
+// large,
+// xlarge-only,
+// xlarge,
+// xxlarge-only,
+// xxlarge;
+
+// // Text alignment breakpoints
+// $align-class-breakpoints:
+// $small-only,
+// $small-up,
+// $medium-only,
+// $medium-up,
+// $large-only,
+// $large-up,
+// $xlarge-only,
+// $xlarge-up,
+// $xxlarge-only,
+// $xxlarge-up;
+
+// // Generates text align and justify classes
+// @mixin align-classes{
+// .text-left { text-align: left !important; }
+// .text-right { text-align: right !important; }
+// .text-center { text-align: center !important; }
+// .text-justify { text-align: justify !important; }
+
+// @for $i from 1 through length($align-class-names) {
+// @media #{(nth($align-class-breakpoints, $i))} {
+// .#{(nth($align-class-names, $i))}-text-left { text-align: left !important; }
+// .#{(nth($align-class-names, $i))}-text-right { text-align: right !important; }
+// .#{(nth($align-class-names, $i))}-text-center { text-align: center !important; }
+// .#{(nth($align-class-names, $i))}-text-justify { text-align: justify !important; }
+// }
+// }
+// }
+
+// //
+// // Typography Placeholders
+// //
+
+// // These will throw a deprecation warning if used within a media query.
+// @mixin lead {
+// font-size: $paragraph-font-size + rem-calc(3.5);
+// line-height: 1.6;
+// }
+
+// @mixin subheader {
+// line-height: $subheader-line-height;
+// color: $subheader-font-color;
+// font-weight: $subheader-font-weight;
+// margin-top: $subheader-top-margin;
+// margin-bottom: $subheader-bottom-margin;
+// }
+// @include exports("type") {
+// @if $include-html-type-classes {
+// // Responsive Text alignment
+// @include align-classes;
+
+// /* Typography resets */
+// div,
+// dl,
+// dt,
+// dd,
+// ul,
+// ol,
+// li,
+// h1,
+// h2,
+// h3,
+// h4,
+// h5,
+// h6,
+// pre,
+// form,
+// p,
+// blockquote,
+// th,
+// td {
+// margin:0;
+// padding:0;
+// }
+
+// /* Default Link Styles */
+// a {
+// color: $anchor-font-color;
+// text-decoration: $anchor-text-decoration;
+// line-height: inherit;
+
+// &:hover,
+// &:focus {
+// color: $anchor-font-color-hover;
+// @if $anchor-text-decoration-hover != $anchor-text-decoration {
+// text-decoration: $anchor-text-decoration-hover;
+// }
+// }
+
+// img { border:none; }
+// }
+
+// /* Default paragraph styles */
+// p {
+// font-family: $paragraph-font-family;
+// font-weight: $paragraph-font-weight;
+// font-size: $paragraph-font-size;
+// line-height: $paragraph-line-height;
+// margin-bottom: $paragraph-margin-bottom;
+// text-rendering: $paragraph-text-rendering;
+
+// &.lead { @include lead; }
+
+// & aside {
+// font-size: $paragraph-aside-font-size;
+// line-height: $paragraph-aside-line-height;
+// font-style: $paragraph-aside-font-style;
+// }
+// }
+
+// /* Default header styles */
+// h1, h2, h3, h4, h5, h6 {
+// font-family: $header-font-family;
+// font-weight: $header-font-weight;
+// font-style: $header-font-style;
+// color: $header-font-color;
+// text-rendering: $header-text-rendering;
+// margin-top: $header-top-margin;
+// margin-bottom: $header-bottom-margin;
+// line-height: $header-line-height;
+
+// small {
+// font-size: $small-font-size;
+// color: $small-font-color;
+// line-height: 0;
+// }
+// }
+
+// h1 { font-size: $h1-font-size - $h1-font-reduction; }
+// h2 { font-size: $h2-font-size - $h2-font-reduction; }
+// h3 { font-size: $h3-font-size - $h3-font-reduction; }
+// h4 { font-size: $h4-font-size - $h4-font-reduction; }
+// h5 { font-size: $h5-font-size - $h5-font-reduction; }
+// h6 { font-size: $h6-font-size - $h6-font-reduction; }
+
+// .subheader { @include subheader; }
+
+// hr {
+// border: $hr-border-style $hr-border-color;
+// border-width: $hr-border-width 0 0;
+// clear: both;
+// margin: $hr-margin 0 ($hr-margin - rem-calc($hr-border-width));
+// height: 0;
+// }
+
+// /* Helpful Typography Defaults */
+// em,
+// i {
+// font-style: italic;
+// line-height: inherit;
+// }
+
+// strong,
+// b {
+// font-weight: $font-weight-bold;
+// line-height: inherit;
+// }
+
+// small {
+// font-size: $small-font-size;
+// line-height: inherit;
+// }
+
+// code {
+// font-family: $code-font-family;
+// font-weight: $code-font-weight;
+// color: $code-color;
+// background-color: $code-background-color;
+// border-width: $code-border-size;
+// border-style: $code-border-style;
+// border-color: $code-border-color;
+// padding: $code-padding;
+// }
+
+// /* Lists */
+// ul,
+// ol,
+// dl {
+// font-size: $list-font-size;
+// line-height: $list-line-height;
+// margin-bottom: $list-margin-bottom;
+// list-style-position: $list-style-position;
+// font-family: $list-font-family;
+// }
+
+// ul {
+// margin-#{$default-float}: $list-side-margin;
+// &.no-bullet {
+// margin-#{$default-float}: $list-side-margin-no-bullet;
+// li {
+// ul,
+// ol {
+// margin-#{$default-float}: $list-nested-margin;
+// margin-bottom: 0;
+// list-style: none;
+// }
+// }
+// }
+// }
+
+// /* Unordered Lists */
+// ul {
+// li {
+// ul,
+// ol {
+// margin-#{$default-float}: $list-nested-margin;
+// margin-bottom: 0;
+// }
+// }
+// &.square,
+// &.circle,
+// &.disc {
+// li ul { list-style: inherit; }
+// }
+
+// &.square { list-style-type: square; margin-#{$default-float}: $list-side-margin;}
+// &.circle { list-style-type: circle; margin-#{$default-float}: $list-side-margin;}
+// &.disc { list-style-type: disc; margin-#{$default-float}: $list-side-margin;}
+// &.no-bullet { list-style: none; }
+// }
+
+// /* Ordered Lists */
+// ol {
+// margin-#{$default-float}: $list-ordered-side-margin;
+// li {
+// ul,
+// ol {
+// margin-#{$default-float}: $list-nested-margin;
+// margin-bottom: 0;
+// }
+// }
+// }
+
+// /* Definition Lists */
+// dl {
+// dt {
+// margin-bottom: $definition-list-header-margin-bottom;
+// font-weight: $definition-list-header-weight;
+// }
+// dd { margin-bottom: $definition-list-margin-bottom; }
+// }
+
+// /* Abbreviations */
+// // abbr,
+// // acronym {
+// // text-transform: uppercase;
+// // font-size: 90%;
+// // color: $body-font-color;
+// // cursor: $cursor-help-value;
+// // }
+// // abbr {
+// // text-transform: none;
+// // &[title] {
+// // border-bottom: $acronym-underline;
+// // }
+// // }
+
+// /* Blockquotes */
+// blockquote {
+// margin: 0 0 $paragraph-margin-bottom;
+// padding: $blockquote-padding;
+// border-#{$default-float}: $blockquote-border;
+
+// cite {
+// display: block;
+// font-size: $blockquote-cite-font-size;
+// color: $blockquote-cite-font-color;
+// &:before {
+// content: "\2014 \0020";
+// }
+
+// a,
+// a:visited {
+// color: $blockquote-cite-link-color;
+// }
+// }
+// }
+// blockquote,
+// blockquote p {
+// line-height: $paragraph-line-height;
+// color: $blockquote-font-color;
+// }
+
+// /* Microformats */
+// .vcard {
+// display: inline-block;
+// margin: $microformat-margin;
+// border: $microformat-border-width $microformat-border-style $microformat-border-color;
+// padding: $microformat-padding;
+
+// li {
+// margin: 0;
+// display: block;
+// }
+// .fn {
+// font-weight: $microformat-fullname-font-weight;
+// font-size: $microformat-fullname-font-size;
+// }
+// }
+
+// .vevent {
+// .summary { font-weight: $microformat-summary-font-weight; }
+
+// // abbr {
+// // cursor: $cursor-default-value;
+// // text-decoration: $microformat-abbr-font-decoration;
+// // font-weight: $microformat-abbr-font-weight;
+// // border: none;
+// // padding: $microformat-abbr-padding;
+// // }
+// }
+
+
+// @media #{$medium-up} {
+// h1,h2,h3,h4,h5,h6 { line-height: $header-line-height; }
+// h1 { font-size: $h1-font-size; }
+// h2 { font-size: $h2-font-size; }
+// h3 { font-size: $h3-font-size; }
+// h4 { font-size: $h4-font-size; }
+// h5 { font-size: $h5-font-size; }
+// h6 { font-size: $h6-font-size; }
+// }
+
+// // Only include these styles if you want them.
+// @if $include-print-styles {
+// /*
+// * Print styles.
+// *
+// * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
+// * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
+// */
+// .print-only { display: none !important; }
+// @media print {
+// * {
+// background: transparent !important;
+// color: $black !important; /* Black prints faster: h5bp.com/s */
+// box-shadow: none !important;
+// text-shadow: none !important;
+// }
+
+// a,
+// a:visited { text-decoration: underline;}
+// a[href]:after { content: " (" attr(href) ")"; }
+
+// // abbr[title]:after { content: " (" attr(title) ")"; }
+
+// // Don't show links for images, or javascript/internal links
+// .ir a:after,
+// a[href^="javascript:"]:after,
+// a[href^="#"]:after { content: ""; }
+
+// pre,
+// blockquote {
+// border: 1px solid $aluminum;
+// page-break-inside: avoid;
+// }
+
+// thead { display: table-header-group; /* h5bp.com/t */ }
+
+// tr,
+// img { page-break-inside: avoid; }
+
+// img { max-width: 100% !important; }
+
+// @page { margin: 0.5cm; }
+
+// p,
+// h2,
+// h3 {
+// orphans: 3;
+// widows: 3;
+// }
+
+// h2,
+// h3 { page-break-after: avoid; }
+
+// .hide-on-print { display: none !important; }
+// .print-only { display: block !important; }
+// .hide-for-print { display: none !important; }
+// .show-for-print { display: inherit !important; }
+// }
+// }
+
+// }
+// }
diff --git a/app/styles/app/foundation/scss/foundation/components/_visibility.scss b/app/styles/app/foundation/scss/foundation/components/_visibility.scss
new file mode 100644
index 00000000..d3eddd42
--- /dev/null
+++ b/app/styles/app/foundation/scss/foundation/components/_visibility.scss
@@ -0,0 +1,408 @@
+// // Foundation by ZURB
+// // foundation.zurb.com
+// // Licensed under MIT Open Source
+
+// @import "global";
+
+// //
+// // Foundation Visibility Classes
+// //
+// $include-html-visibility-classes: $include-html-classes !default;
+// $include-accessibility-classes: true !default;
+// $include-table-visibility-classes: true !default;
+// $include-legacy-visibility-classes: true !default;
+
+// //
+// // Media Class Names
+// //
+// // Visibility Breakpoints
+// $visibility-breakpoint-sizes:
+// small,
+// medium,
+// large,
+// xlarge,
+// xxlarge;
+
+// $visibility-breakpoint-queries:
+// unquote($small-up),
+// unquote($medium-up),
+// unquote($large-up),
+// unquote($xlarge-up),
+// unquote($xxlarge-up);
+
+// @mixin visibility-loop {
+// @each $current-visibility-breakpoint in $visibility-breakpoint-sizes {
+// $visibility-inherit-list: ();
+// $visibility-none-list: ();
+
+// $visibility-visible-list: ();
+// $visibility-hidden-list: ();
+
+// $visibility-table-list: ();
+// $visibility-table-header-group-list: ();
+// $visibility-table-row-group-list: ();
+// $visibility-table-row-list: ();
+// $visibility-table-cell-list: ();
+
+// @each $visibility-comparison-breakpoint in $visibility-breakpoint-sizes {
+// @if index($visibility-breakpoint-sizes, $visibility-comparison-breakpoint) < index($visibility-breakpoint-sizes, $current-visibility-breakpoint) {
+// // Smaller than current breakpoint
+
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.hide-for-#{$visibility-comparison-breakpoint}-only, table.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.hide-for-#{$visibility-comparison-breakpoint}-only, thead.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.hide-for-#{$visibility-comparison-breakpoint}-only, tbody.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.hide-for-#{$visibility-comparison-breakpoint}-only, tr.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.hide-for-#{$visibility-comparison-breakpoint}-only, td.hide-for-#{$visibility-comparison-breakpoint}-only, th.show-for-#{$visibility-comparison-breakpoint}-up, td.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+
+// // Foundation 4 compatibility:
+// // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+// // for small, medium, and large breakpoints only
+// @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.hide-for-#{$visibility-comparison-breakpoint}, table.hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.hide-for-#{$visibility-comparison-breakpoint}, thead.hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.hide-for-#{$visibility-comparison-breakpoint}, tbody.hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.hide-for-#{$visibility-comparison-breakpoint}, tr.hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.hide-for-#{$visibility-comparison-breakpoint}, td.hide-for-#{$visibility-comparison-breakpoint}, th.hide-for-#{$visibility-comparison-breakpoint}-down, td.hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// }
+
+// } @else if index($visibility-breakpoint-sizes, $visibility-comparison-breakpoint) > index($visibility-breakpoint-sizes, $current-visibility-breakpoint) {
+// // Larger than current breakpoint
+
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.hide-for-#{$visibility-comparison-breakpoint}-only, table.hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.hide-for-#{$visibility-comparison-breakpoint}-only, thead.hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.hide-for-#{$visibility-comparison-breakpoint}-only, tbody.hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.hide-for-#{$visibility-comparison-breakpoint}-only, tr.hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.hide-for-#{$visibility-comparison-breakpoint}-only, td.hide-for-#{$visibility-comparison-breakpoint}-only, th.hide-for-#{$visibility-comparison-breakpoint}-up, td.hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+
+// // Foundation 4 compatibility:
+// // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+// // for small, medium, and large breakpoints only
+// @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.hide-for-#{$visibility-comparison-breakpoint}, table.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.hide-for-#{$visibility-comparison-breakpoint}, thead.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.hide-for-#{$visibility-comparison-breakpoint}, tbody.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.hide-for-#{$visibility-comparison-breakpoint}, tr.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.hide-for-#{$visibility-comparison-breakpoint}, td.hide-for-#{$visibility-comparison-breakpoint}, th.show-for-#{$visibility-comparison-breakpoint}-down, td.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// }
+
+// } @else {
+// // Current breakpoint
+
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}-only, .show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}-only, .hide-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}-only, .visible-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}-only, .hidden-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.show-for-#{$visibility-comparison-breakpoint}-only, table.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.show-for-#{$visibility-comparison-breakpoint}-only, thead.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.show-for-#{$visibility-comparison-breakpoint}-only, tbody.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.show-for-#{$visibility-comparison-breakpoint}-only, tr.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.show-for-#{$visibility-comparison-breakpoint}-only, td.show-for-#{$visibility-comparison-breakpoint}-only, th.show-for-#{$visibility-comparison-breakpoint}-up, td.show-for-#{$visibility-comparison-breakpoint}-up'
+// ), comma);
+
+// // Foundation 4 compatibility:
+// // Include .show/hide-for-[size] and .show/hide-for-[size]-down classes
+// // for small, medium, and large breakpoints only
+// @if $include-legacy-visibility-classes and index((small, medium, large), $visibility-comparison-breakpoint) != false {
+// $visibility-inherit-list: append($visibility-inherit-list, unquote(
+// '.show-for-#{$visibility-comparison-breakpoint}, .show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-none-list: append($visibility-none-list, unquote(
+// '.hide-for-#{$visibility-comparison-breakpoint}, .hide-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-visible-list: append($visibility-visible-list, unquote(
+// '.visible-for-#{$visibility-comparison-breakpoint}, .visible-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-hidden-list: append($visibility-hidden-list, unquote(
+// '.hidden-for-#{$visibility-comparison-breakpoint}, .hidden-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-list: append($visibility-table-list, unquote(
+// 'table.show-for-#{$visibility-comparison-breakpoint}, table.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-header-group-list: append($visibility-table-header-group-list, unquote(
+// 'thead.show-for-#{$visibility-comparison-breakpoint}, thead.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-group-list: append($visibility-table-row-group-list, unquote(
+// 'tbody.show-for-#{$visibility-comparison-breakpoint}, tbody.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-row-list: append($visibility-table-row-list, unquote(
+// 'tr.show-for-#{$visibility-comparison-breakpoint}, tr.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// $visibility-table-cell-list: append($visibility-table-cell-list, unquote(
+// 'th.show-for-#{$visibility-comparison-breakpoint}, td.show-for-#{$visibility-comparison-breakpoint}, th.show-for-#{$visibility-comparison-breakpoint}-down, td.show-for-#{$visibility-comparison-breakpoint}-down'
+// ), comma);
+// }
+// }
+// }
+
+// /* #{$current-visibility-breakpoint} displays */
+// @media #{nth($visibility-breakpoint-queries, index($visibility-breakpoint-sizes, $current-visibility-breakpoint))} {
+// #{$visibility-inherit-list} {
+// display: inherit !important;
+// }
+// #{$visibility-none-list} {
+// display: none !important;
+// }
+// @if $include-accessibility-classes != false {
+// #{$visibility-visible-list} {
+// @include element-invisible-off;
+// }
+// #{$visibility-hidden-list} {
+// @include element-invisible;
+// }
+// }
+// @if $include-table-visibility-classes != false {
+// #{$visibility-table-list} {
+// display: table !important;
+// }
+// #{$visibility-table-header-group-list} {
+// display: table-header-group !important;
+// }
+// #{$visibility-table-row-group-list} {
+// display: table-row-group !important;
+// }
+// #{$visibility-table-row-list} {
+// display: table-row !important;
+// }
+// #{$visibility-table-cell-list} {
+// display: table-cell !important;
+// }
+// }
+// }
+// }
+// }
+
+
+// @if $include-html-visibility-classes != false {
+
+// @include visibility-loop;
+
+// /* Orientation targeting */
+// .show-for-landscape,
+// .hide-for-portrait { display: inherit !important; }
+// .hide-for-landscape,
+// .show-for-portrait { display: none !important; }
+
+// /* Specific visibility for tables */
+// table {
+// &.hide-for-landscape,
+// &.show-for-portrait { display: table !important; }
+// }
+// thead {
+// &.hide-for-landscape,
+// &.show-for-portrait { display: table-header-group !important; }
+// }
+// tbody {
+// &.hide-for-landscape,
+// &.show-for-portrait { display: table-row-group !important; }
+// }
+// tr {
+// &.hide-for-landscape,
+// &.show-for-portrait { display: table-row !important; }
+// }
+// td,
+// th {
+// &.hide-for-landscape,
+// &.show-for-portrait { display: table-cell !important; }
+// }
+
+// @media #{$landscape} {
+// .show-for-landscape,
+// .hide-for-portrait { display: inherit !important; }
+// .hide-for-landscape,
+// .show-for-portrait { display: none !important; }
+
+// /* Specific visibility for tables */
+// table {
+// &.show-for-landscape,
+// &.hide-for-portrait { display: table !important; }
+// }
+// thead {
+// &.show-for-landscape,
+// &.hide-for-portrait { display: table-header-group !important; }
+// }
+// tbody {
+// &.show-for-landscape,
+// &.hide-for-portrait { display: table-row-group !important; }
+// }
+// tr {
+// &.show-for-landscape,
+// &.hide-for-portrait { display: table-row !important; }
+// }
+// td,
+// th {
+// &.show-for-landscape,
+// &.hide-for-portrait { display: table-cell !important; }
+// }
+// }
+
+// @media #{$portrait} {
+// .show-for-portrait,
+// .hide-for-landscape { display: inherit !important; }
+// .hide-for-portrait,
+// .show-for-landscape { display: none !important; }
+
+// /* Specific visibility for tables */
+// table {
+// &.show-for-portrait,
+// &.hide-for-landscape { display: table !important; }
+// }
+// thead {
+// &.show-for-portrait,
+// &.hide-for-landscape { display: table-header-group !important; }
+// }
+// tbody {
+// &.show-for-portrait,
+// &.hide-for-landscape { display: table-row-group !important; }
+// }
+// tr {
+// &.show-for-portrait,
+// &.hide-for-landscape { display: table-row !important; }
+// }
+// td,
+// th {
+// &.show-for-portrait,
+// &.hide-for-landscape { display: table-cell !important; }
+// }
+// }
+
+// /* Touch-enabled device targeting */
+// .show-for-touch { display: none !important; }
+// .hide-for-touch { display: inherit !important; }
+// .touch .show-for-touch { display: inherit !important; }
+// .touch .hide-for-touch { display: none !important; }
+
+// /* Specific visibility for tables */
+// table.hide-for-touch { display: table !important; }
+// .touch table.show-for-touch { display: table !important; }
+// thead.hide-for-touch { display: table-header-group !important; }
+// .touch thead.show-for-touch { display: table-header-group !important; }
+// tbody.hide-for-touch { display: table-row-group !important; }
+// .touch tbody.show-for-touch { display: table-row-group !important; }
+// tr.hide-for-touch { display: table-row !important; }
+// .touch tr.show-for-touch { display: table-row !important; }
+// td.hide-for-touch { display: table-cell !important; }
+// .touch td.show-for-touch { display: table-cell !important; }
+// th.hide-for-touch { display: table-cell !important; }
+// .touch th.show-for-touch { display: table-cell !important; }
+
+
+// /* Print visibility */
+// @media print {
+// .show-for-print { display: block; }
+// .hide-for-print { display: none; }
+
+// table.show-for-print { display: table !important; }
+// thead.show-for-print { display: table-header-group !important; }
+// tbody.show-for-print { display: table-row-group !important; }
+// tr.show-for-print { display: table-row !important; }
+// td.show-for-print { display: table-cell !important; }
+// th.show-for-print { display: table-cell !important; }
+
+// }
+
+// }
diff --git a/assets/styles/getting_started.sass b/app/styles/app/getting_started.sass
similarity index 97%
rename from assets/styles/getting_started.sass
rename to app/styles/app/getting_started.sass
index 109f5a98..252db939 100644
--- a/assets/styles/getting_started.sass
+++ b/app/styles/app/getting_started.sass
@@ -2,7 +2,6 @@
width: 850px
margin: 0 auto
padding-top: 30px
- font-family: 'Source Sans Pro', Helvetica, sans-serif
font-size: 17px
line-height: 26px
text-align: center
diff --git a/assets/styles/app/github.sass b/app/styles/app/github.sass
similarity index 80%
rename from assets/styles/app/github.sass
rename to app/styles/app/github.sass
index fdf9f1b1..f7a0b394 100644
--- a/assets/styles/app/github.sass
+++ b/app/styles/app/github.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#github-wrapper
position: absolute
@@ -32,7 +31,6 @@
text-shadow: 0 0 10px #522600
pointer-events: auto
-
- @include rotate(45deg)
- @include box-shadow(rgba(black, 0.5) 1px 1px 10px, rgba(black, 0.07) 0 0 3px 1px inset)
+ transform: rotate(45deg)
+ box-shadow: rgba(black, 0.5) 1px 1px 10px, rgba(black, 0.07) 0 0 3px 1px inset
diff --git a/assets/styles/layout.sass b/app/styles/app/layout.sass
similarity index 53%
rename from assets/styles/layout.sass
rename to app/styles/app/layout.sass
index a1c892a8..022777e9 100644
--- a/assets/styles/layout.sass
+++ b/app/styles/app/layout.sass
@@ -1,53 +1,22 @@
-@import "_mixins/all"
-$left-width: 250px
+.centered .row
+ max-width: 1024px
-@mixin display-flex
- display: -webkit-flex
- display: -moz-flex
- display: -ms-flexbox
- display: flex
-
-@mixin flex($grow, $shrink, $size)
- -ms-flex: $grow $shrink $size
- -webkit-flex: $grow $shrink $size
- -moz-flex: $grow $shrink $size
- flex: $grow $shrink $size
-
-html, body
- min-height: 100vh
-
-body > div:first-child
- min-height: 100vh
-
-.application
+.main,
+.profile-view
position: relative
width: 100%
min-height: 100vh
- margin-top: 40px
- @include display-flex
-#top
- position: absolute
- top: -40px
- left: 0
- width: 100%
- min-width: 930px
- height: 55px
- z-index: 1000
-
-#auth, #not-found
+#auth, #not-found, #simple
#top
top: 0
#not-found #main
padding: 100px 50px 0 50px
-
-#left, #right
+#left, #right, .wrapper-main
position: relative
- min-height: 100%
- @include flex(0, 0, 25em)
#left
padding: 0 0 110px 0
@@ -64,24 +33,64 @@ body > div:first-child
background: inline-image('ui/clock.svg') no-repeat 0px 0px
background-size: contain
-
-@media screen and (max-width: 980px)
- #left
- max-width: 300px
-
#main
- -webkit-flex: 1
- -moz-flex: 1
- -ms-flex: 1
- flex: 1
position: relative
- min-width: 539px
- padding: 20px 40px 80px 30px
+ padding: 20px 30px 80px
+
+.wrapper
+ overflow: hidden
+ #main,
+ #left,
+ #right
+ margin-bottom: -99999px
+ padding-bottom: 100034px
+
+@media #{$medium-up}
+
+ // layout magic http://lea.verou.me/2011/01/styling-children-based-on-their-number-with-css3/
+ .wrapper-main
+ overflow: hidden
+ height: 100%
+ & > div:first-child:nth-last-child(2)
+ width: grid-calc(20, 24)
+ float: left
+
+ & > div:first-child:nth-last-child(2) ~ div
+ width: grid-calc(4, 24)
+ max-width: 180px
+ float: right
+
+ .maximized
+ .wrapper-main
+ & > div:first-child:nth-last-child(2)
+ width: grid-calc(24, 24)
+ float: none
+
+ & > div:first-child:nth-last-child(2) ~ div
+ display: none
+
+@media #{$large-up}
+
+ #left, #right, .wrapper-main
+ min-height: 100vh
+
+ #left
+ width: grid-calc(5, 24)
+ float: left
+ margin-left: -100%
+ max-width: 325px
+
+ .wrapper-main
+ width: grid-calc(19, 24)
+ float: left
+ margin-left: grid-calc(5, 24)
+ overflow: visible
+
.travis-lint
- background-color: #fafafa
+ background-color: $travis-lint-bg
width: 100%
- color: #9b9d9e
+ color: $travis-lint-color
margin: 10px 0 36px 0
p
padding: 10px
@@ -132,3 +141,14 @@ body > div:first-child
min-width: 960px
#tools
display: none
+
+a
+ text-decoration : none
+
+.application,
+.dashboard
+ height: 100%
+
+
+.no-padding
+ padding : 0
diff --git a/app/styles/app/layouts/dashboard.sass b/app/styles/app/layouts/dashboard.sass
new file mode 100644
index 00000000..9e1732ea
--- /dev/null
+++ b/app/styles/app/layouts/dashboard.sass
@@ -0,0 +1,191 @@
+/*
+ * Dashboard
+ * @todo: split into components: filter, search
+ */
+
+.wrapper-dashboard
+ background-color: $wrapper-bg-color
+
+ #top
+ .user
+ a
+ padding-right: 0
+
+.current-org-avatar
+ display : inline-block
+ height : 20px
+ width : 20px
+ vertical-align: top
+ margin : -5px 5px 0 0
+
+#filters-search
+ background : $white
+ font-size : 14px
+ padding : 5px 0 5px 0
+ max-height : 44px
+
+#filters
+ float : left
+
+#filters ul
+ text-align : left
+ display : inline
+ margin : 0
+ padding : 0
+ list-style : none
+ z-index : 1000
+
+#filters ul li
+ background : $white
+ position : relative
+ display : inline-block
+ padding : 10px 0 10px 0
+ margin-right : -4px
+ margin-top : 0
+ cursor : pointer
+ border-radius : 0px
+
+#filters li.filters-start:hover
+ background-color : #fff
+
+#filters ul li ul
+ padding : 0
+ position : absolute
+ top : 35px
+ left : 0
+ width : 200px
+ display : none
+ opacity : 0
+ visibility : hidden
+ box-shadow : 2px 1px 4px 0px rgba(148,145,138,0.4)
+
+#filters ul li ul li
+ display : block
+ line-height : 23px
+ padding-left : 20px
+
+#filters ul li ul li:first-child
+ border-top-left-radius : 4px
+ border-top-right-radius : 4px
+
+#filters ul li ul li:last-child
+ border-bottom-left-radius : 4px
+ border-bottom-right-radius : 4px
+
+#filters ul li ul li div
+ display : inline-block
+ width : 20px
+ height : 20px
+ margin-right : 5px
+ text-indent : -9999px
+ border-radius : 100px
+
+#filters ul li ul li:hover
+ background : #5e869a
+ color : $white
+
+#filters ul li:hover ul
+ display : block
+ opacity : 1
+ visibility : visible
+
+#views
+ float : left
+
+#views ul
+ text-align : left
+ display : inline
+ margin : 0
+ padding : 0
+ list-style : none
+ z-index : 1000
+
+#views ul li
+ background : $white
+ position : relative
+ display : inline-block
+ padding : 10px 0 10px 0
+ margin-right : -4px
+ margin-top : 0
+ cursor : pointer
+ border-radius : 0px
+ -webkit-border-radius : 0px
+ -moz-border-radius : 0px
+
+#views li.views-start:hover
+ background-color : #fff
+
+#views ul li ul
+ padding : 0
+ position : absolute
+ top : 35px
+ left : 0
+ width : 200px
+ display : none
+ opacity : 0
+ visibility : hidden
+ box-shadow : 2px 1px 4px 0px rgba(148,145,138,0.4)
+
+#views ul li ul li
+ display : block
+ line-height : 23px
+ padding-left : 20px
+
+#views ul li ul li:first-child
+ border-top-left-radius : 4px
+ border-top-right-radius : 4px
+
+#views ul li ul li:last-child
+ border-bottom-left-radius : 4px
+ border-bottom-right-radius : 4px
+
+#views ul li ul li:hover
+ background : #5e869a
+ color : $white
+
+#views ul li:hover ul
+ display : block
+ opacity : 1
+ visibility : visible
+
+.currently-selected
+ font-weight : 600
+
+.arrow-down
+ width : 0
+ height : 0
+ display : inline-block
+ padding-top : 2px
+ margin-left : 5px
+ border-left : 5px solid transparent
+ border-right : 5px solid transparent
+ border-top : 5px solid $dashboard-text-color
+
+#search
+ float : right
+
+#search ul
+ text-align : left
+ margin : 0
+ padding-left : 0
+ list-style : none
+
+#search ul li
+ position : relative
+ display : inline-block
+ padding : 9px 0 8px 0
+ margin-top : 0
+ width : 158px
+ line-height : 17px
+
+.search-field
+ background-image : url('/images/dashboard/search-icon.svg')
+ background-repeat : no-repeat
+ background-position: right 5px center
+ display : inline-block
+ float : right
+ border : 1px solid #666
+ padding : 0.5em
+ width : 300px
+ background-size : 16px 16px
+
diff --git a/app/styles/app/layouts/error.sass b/app/styles/app/layouts/error.sass
new file mode 100644
index 00000000..5ea61f29
--- /dev/null
+++ b/app/styles/app/layouts/error.sass
@@ -0,0 +1,149 @@
+/*
+ * Error Pages
+ */
+
+
+.error,
+.maintenance
+ height: 100%
+ overflow: hidden
+
+ .full-size
+ position: absolute
+ top: 0
+ height: 100%
+ width: 100%
+ overflow: hidden
+ background:
+ repeat: no-repeat
+
+.main--error
+ min-height: 100%
+
+.error-text,
+.maintenance-text
+ position: absolute
+ left: 0
+ right: 0
+ z-index: 10
+ h1
+ margin: 1em 0 .4em
+ font-weight: 600
+ color: $error-heading-color
+ font-size: 40px
+ line-height: 1
+ text-align: center
+ @media #{$medium-up}
+ margin: 1.5em 0 .4em
+ font-size: 70px
+ p
+ padding: 0 1em
+ color: $error-copy-color
+ font-size: 18px
+ text-align: center
+ a
+ color: $error-copy-color
+ &:hover,
+ &:focus
+ color: $error-copy-color
+ text-decoration: underline
+
+.icon-twitter
+ display: inline-block
+ width: 1.1em
+ height: 1.1em
+ background:
+ image: url(../images/error/twitter.svg)
+ size: 100% auto
+ repeat: no-repeat
+ position: 0 .2em
+
+
+/*
+ * Maintenance
+ */
+.maintenance-bg
+ background: linear-gradient(0deg, $maintenance-grass, $maintenance-grass 34.9%, $error-bg-gradient 35%, $white 60%, $white)
+
+ .hill-left
+ background:
+ image: url(../images/error/maintenance-hills-left.svg)
+ size: 80vw auto
+ position: 0 62%
+ @media #{$medium-up}
+ background-size: 58vw auto
+ background-position: 0 62%
+ @media #{$large-up}
+ background-size: 50vw auto
+ background-position: 0 61%
+ .hill-right
+ display: none
+ background:
+ image: url(../images/error/maintenance-hills-right.svg)
+ size: 38vw auto
+ position: 99% 63%
+ @media #{$medium-up}
+ display: block
+ .shadow-left
+ background:
+ image: url(../images/error/maintenance-grass-shade-left.svg)
+ size: 24vw auto
+ position: 6% 82%
+ .shadow-right
+ background:
+ image: url(../images/error/maintenance-grass-shade-right.svg)
+ size: 17vw auto
+ position: 95% 89%
+
+.maintenance-tractor
+ background:
+ image: url(../images/error/maintenance-tractor.svg)
+ size: 87vw auto
+ position: 63% 87%
+ @media #{$medium-up}
+ background-size: auto 40vh
+ @media #{$large-up}
+ background-size: auto 40vh
+
+/*
+ * 404
+ */
+.error-bg
+ background: linear-gradient(0deg, $error-hill-grey, $error-hill-grey 34.9%, $error-bg-gradient 35%, $white 60%, $white)
+
+.error-hill-left
+ display: none
+ background:
+ image: url(../images/error/404-hills-left.svg)
+ size: 30vw auto
+ position: 0 (100% - 37%)
+ @media #{$medium-up}
+ display: block
+
+.error-hill-right
+ background:
+ image: url(../images/error/404-hills-right.svg)
+ size: auto 20vw
+ position: 99% 63%
+ @media #{$medium-up}
+ background-size: 50vw auto
+ background-position: 99% 63%
+ @media #{$large-up}
+ background-position: 99% 61%
+
+.error-excavator
+ background:
+ image: url(../images/error/excavator.svg)
+ size: auto 25vh
+ position: 71% 83%
+
+.error-travis
+ background:
+ image: url(../images/error/pensive-travis.svg)
+ size: auto 60vh
+ position: 34% 92%
+ @media #{$medium-up}
+ background-size: auto 50vh
+ @media #{$large-up}
+ background-size: auto 60vh
+
diff --git a/app/styles/app/layouts/footer.sass b/app/styles/app/layouts/footer.sass
new file mode 100644
index 00000000..3d28b0cf
--- /dev/null
+++ b/app/styles/app/layouts/footer.sass
@@ -0,0 +1,74 @@
+/*
+ * Footer on the dashboard
+ */
+
+a
+ color : $color-link
+ text-decoration : none
+
+footer
+ padding : 20px 0
+ background-color : $footer-bg-color
+ min-height : 334px
+ font-size : 12px
+ line-height : 22px
+ margin-top : -334px /* sticky footer */
+
+ a
+ display : block
+ color : $footer-color
+
+.wrapper
+ padding-bottom: 334px
+ min-height: 100%
+ height: auto
+@media (min-width: 640px)
+ .wrapper
+ padding-bottom: 204px
+
+ footer
+ margin-top: -204px
+ min-height: 204px
+
+
+footer h3
+ font-size : 15px
+ margin : 0 0 10px 0
+ padding-top : 6px
+ font-weight : 400
+ color : $footer-h3-color
+ border-top : solid 4px $footer-h3-corder-color
+
+footer .row p
+ display : inline-block
+ margin : 0
+
+footer .row ul,
+footer .row li
+ display : block
+ color : $footer-color
+ line-height : 22px
+ padding : 0
+ margin-top : 0
+ list-style-type : none
+
+footer a
+ text-decoration : none
+ display : inline-block
+ color : $footer-color
+
+footer a:hover,
+footer a:active
+ text-decoration : underline
+
+.status-circle
+ background : $pass-color
+ display : inline-block
+ height : 11px
+ width : 11px
+ text-indent : -9999px
+ margin-right : 5px
+ border-radius : 100px
+ -webkit-border-radius : 100px
+ -moz-border-radius : 100px
+ vertical-align: middle
diff --git a/assets/styles/left.sass b/app/styles/app/left.sass
similarity index 64%
rename from assets/styles/left.sass
rename to app/styles/app/left.sass
index 8f95f077..7961690f 100644
--- a/assets/styles/left.sass
+++ b/app/styles/app/left.sass
@@ -1,10 +1,9 @@
-@import "_mixins/all.sass"
#left
#search_box
height: 87px
- padding: 50px 20px 0 20px
- background-color: #e9e9e7
+ padding: 35px 20px 90px 20px
+ background-color: $left-bg
input[type=text]
height: 28px
@@ -12,8 +11,10 @@
padding: 0 0 0 10px
color: $color-text
font-size: $font-size-small
- @include box-sizing(border-box)
border: 0
background: $color-bg-input inline-image('ui/search.svg') no-repeat 95%
- background-size: 5%
+ background-size: 3%
+
+ @media #{$large-up}
+ background-size: 5%
diff --git a/assets/styles/left/list.sass b/app/styles/app/left/list.sass
similarity index 88%
rename from assets/styles/left/list.sass
rename to app/styles/app/left/list.sass
index 767097ba..63a68470 100644
--- a/assets/styles/left/list.sass
+++ b/app/styles/app/left/list.sass
@@ -1,10 +1,18 @@
-@import "_mixins/all"
#accounts,
#repos
+ @include resetul
+
&.open li .info
display: block
+ a:hover,
+ a:active
+ text-decoration: underline
+
+ a:focus
+ outline: 1px dotted
+
li
position: relative
font-size: $font-size-big
@@ -25,6 +33,12 @@
overflow: hidden
text-overflow: ellipsis
padding-right: 35px
+ a
+ display: inline-block
+ width: 91%
+ text-overflow: ellipsis
+ overflow: hidden
+ vertical-align: top
.last_build
position: absolute
@@ -69,7 +83,7 @@
p
margin: 0 -10px 0 -10px
padding: 12px 35px 12px 73px
- @include box-shadow($color-shadow-list-info 0 1px 8px 0 inset)
+ box-shadow: $color-shadow-list-info 0 1px 8px 0 inset
.indicator
display: none
@@ -88,7 +102,7 @@
width: 20px
height: 20px
border: 1px solid $color-border-normal
- @include rotate(45deg)
+ transform: rotate(45deg)
&.selected .indicator
display: block
diff --git a/assets/styles/app/loading.sass b/app/styles/app/loading.sass
similarity index 93%
rename from assets/styles/app/loading.sass
rename to app/styles/app/loading.sass
index c3371a4e..741431fa 100644
--- a/assets/styles/app/loading.sass
+++ b/app/styles/app/loading.sass
@@ -1,6 +1,5 @@
-@import "_mixins/all"
-.loading
+div.loading, p.loading
padding: 15px 25px 0 0
span
padding-right: 25px
diff --git a/assets/styles/main.sass b/app/styles/app/main.sass
similarity index 66%
rename from assets/styles/main.sass
rename to app/styles/app/main.sass
index 76064b22..e8e943d3 100644
--- a/assets/styles/main.sass
+++ b/app/styles/app/main.sass
@@ -1,14 +1,14 @@
-@import "_mixins/all"
#main
h3
- margin: 15px 60px 0 0
+ margin: 13px 5px 0 0
font-size: $font-size-huge
+ line-height: 1
a
- color: #50555b
+ color: $main-repo-link-color
text-decoration: none
a:hover
- color: #607a84
+ color: $main-repo-hover-color
text-decoration: underline
#stats
diff --git a/assets/styles/main/annotations.sass b/app/styles/app/main/annotations.sass
similarity index 90%
rename from assets/styles/main/annotations.sass
rename to app/styles/app/main/annotations.sass
index 7fd355e7..35fe3b3c 100644
--- a/assets/styles/main/annotations.sass
+++ b/app/styles/app/main/annotations.sass
@@ -1,9 +1,8 @@
-@import "_mixins/all"
#annotations
+ @include clearfix
margin: 8px 0 25px 12px
padding: 12px 0 0 0
- @include clearfix
a
text-decoration: underline
diff --git a/assets/styles/main/list.sass b/app/styles/app/main/list.sass
similarity index 88%
rename from assets/styles/main/list.sass
rename to app/styles/app/main/list.sass
index eecc6f52..e01b9831 100644
--- a/assets/styles/main/list.sass
+++ b/app/styles/app/main/list.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
table.list
width: 100%
@@ -39,10 +38,10 @@ table.list
white-space: normal
td:first-child
- @include border-left-radius(4px)
+ border-left-radius: 4px
td:last-child
- @include border-right-radius(4px)
+ border-right-radius: 4px
tr.message, td.message
width: 100%
diff --git a/assets/styles/main/log.sass b/app/styles/app/main/log.sass
similarity index 94%
rename from assets/styles/main/log.sass
rename to app/styles/app/main/log.sass
index d55c80ac..e85f6256 100644
--- a/assets/styles/main/log.sass
+++ b/app/styles/app/main/log.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
pre#log
position: relative
@@ -123,8 +122,8 @@ pre#log
border: 1px solid #bbb
border-top-color: #ddd
border-bottom-color: #bbb
- @include border-radius(8px)
- @include background(linear-gradient(#fff, #e0e0e0))
+ border-radius: 8px
+ background: linear-gradient(#fff, #e0e0e0)
label
display: none
@@ -149,8 +148,8 @@ pre#log
width: 8px
height: 8px
background-color: #aaa
- @include border-radius(4px)
- @include box-shadow(white 1px 1px 2px)
+ border-radius: 4px
+ box-shadow: $white 1px 1px 2px
&.active .status
background-color: #6b0
@@ -162,7 +161,6 @@ pre#log
bottom: 2px
right: 2px
- width: 50px
margin-right: 2px
padding-right: 16px
text-align: right
diff --git a/assets/styles/main/repository.sass b/app/styles/app/main/repository.sass
similarity index 86%
rename from assets/styles/main/repository.sass
rename to app/styles/app/main/repository.sass
index 1b74bef8..dc88f2e8 100644
--- a/assets/styles/main/repository.sass
+++ b/app/styles/app/main/repository.sass
@@ -1,28 +1,23 @@
-@import "_mixins/all"
#repo
position: relative
width: 100%
overflow-x: hidden
- padding: 15px 0 0 10px
+ padding: 1px 0 0 10px
h3
- display: inline-block
margin-right: 5px
.status-image
+ display: inline-block
position: relative
- top: 1px
width: 90px
height: 25px
- display: inline-block
- margin-left: 15px
+ vertical-align: top
a#status-image-popup
display: inline-block
opacity: 1.0
- //margin-top: 8px
-
img
border: none
@@ -31,11 +26,8 @@
height: 21px
display: inline-block
position: relative
- top: 1px
-
- .github-icon
+ vertical-align: top
img
- margin-top: 2px
opacity: 0.65
.not-found
@@ -45,7 +37,6 @@
.description, .language
font-weight: normal
- color: #666a72
font-size: 15px
.description
@@ -55,6 +46,7 @@
.language
display: none
padding-right: 5px
+ color: #666a72
.github-stats
position: absolute
@@ -87,3 +79,16 @@
background-size: 12px
opacity: 1
padding-right: 16px
+
+
+ @media #{$large-up}
+ h3
+ display: inline-block
+ .github-icon
+ display: inline-block
+ top: 17px
+ margin-right: 1em
+ .status-image
+ top: 18px
+
+
diff --git a/assets/styles/main/sponsors.sass b/app/styles/app/main/sponsors.sass
similarity index 100%
rename from assets/styles/main/sponsors.sass
rename to app/styles/app/main/sponsors.sass
diff --git a/assets/styles/main/summary.sass b/app/styles/app/main/summary.sass
similarity index 84%
rename from assets/styles/main/summary.sass
rename to app/styles/app/main/summary.sass
index 84ac3397..852d47ba 100644
--- a/assets/styles/main/summary.sass
+++ b/app/styles/app/main/summary.sass
@@ -1,37 +1,43 @@
-@import "_mixins/all"
.green .build-status
- background: #549e54 inline-image('icons/state-passed-white.svg') no-repeat
- background-size: 14px 14px
- background-position: 12px 12px
+ background:
+ color: #549e54
+ image: inline-image('icons/state-passed-white.svg')
.yellow .build-status
- background: #bcaf39 inline-image('icons/state-pending-white.svg') no-repeat
- background-size: 14px 14px
- background-position: 12px 12px
+ background:
+ color: #bcaf39
+ image: inline-image('icons/state-pending-white.svg')
.red .build-status
- background: #b54223 inline-image('icons/state-failed-white.svg') no-repeat
- background-size: 14px 14px
- background-position: 12px 12px
+ background:
+ color: #b54223
+ image: inline-image('icons/state-failed-white.svg')
.gray .build-status
- background: #a8a8a9 inline-image('icons/state-errored-white.svg') no-repeat
+ background:
+ color: #a8a8a9
+ image: inline-image('icons/state-errored-white.svg')
+
+.build-status
background-size: 14px 14px
background-position: 12px 12px
+ background-repeat: no-repeat
#new-summary
@include clearfix
- @include border-radius(4px)
+ border-radius: 4px
padding: 0 11px 0 51px
position: relative
min-height: 155px
- padding-right: 240px
background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mN4/+HDfwAJcAPPMJixRQAAAABJRU5ErkJggg=='), #fafafa
background-size: 41px 100%
background-repeat: no-repeat
+ @media #{$large-up}
+ padding-right: 240px
+
.mainline
display: -webkit-flex
display: flex
@@ -94,7 +100,7 @@
text-decoration: underline
.build-status
- @include border-radius(4px)
+ border-radius: 4px
color: white
padding: 8px 0
font-size: 16px
@@ -146,13 +152,20 @@
display: inline-block
max-width: 175px
line-height: 24px
+ color: $color-link
.right
- width: 220px
font-size: 11px
- top: 10px
- right: 10px
- position: absolute
+
+ color: $color-link
+ a:hover
+ text-decoration: underline
+
+ @media #{$large-up}
+ position: absolute
+ top: 10px
+ right: 10px
+ width: 220px
.footer
a
@@ -168,6 +181,7 @@
display: inline-block
position: relative
top: 2px
+ font-size: $font-size-small
.author
float: left
diff --git a/assets/styles/main/tools.sass b/app/styles/app/main/tools.sass
similarity index 81%
rename from assets/styles/main/tools.sass
rename to app/styles/app/main/tools.sass
index 4d1b040b..15062e94 100644
--- a/assets/styles/main/tools.sass
+++ b/app/styles/app/main/tools.sass
@@ -1,43 +1,38 @@
-@import "_mixins/all"
#tools
position: relative
- float: right
- top: 2px
- width: 600px
+ margin-top: 5px
& > a.menu-popup-button
display: inline-block
text-align: left
- margin-top: -31px
color: #fff
font-size: 13px
- padding: 3px 24px 2px 25px
+ padding: 3px 24px 3px 25px
background-image: inline-image('icons/settings.svg'), inline-image('icons/dropdown-arrow-white.svg')
background-size: 14px 14px, 8px 8px
- background-position: 6px 6px, right 9px center
+ background-position: 6px 7px, right 9px center
background-color: #a6adad
background-repeat: no-repeat
- @include border-radius(4px)
-
+ border-radius: 4px
cursor: pointer
- float: right
img
width: 7px
padding-left: 10px
.menu
+ @include resetul
+ @include border-bottom-radius(4px)
+ margin-top: 1px
z-index: 1000
display: none
position: absolute
- right: 0
- top: -3px
width: 140px
background-color: #a6adad
- @include border-bottom-radius(4px)
a
display: block
- color: #ffffff
+ color: $white
+ font-size: $font-size-small
padding: 5px 25px 5px 25px
&:hover:not(.disabled)
background-color: #909393
@@ -47,6 +42,19 @@
cursor: default
color: $color-link-disabled
+ @media screen and (min-width: 46em)
+ position: relative
+ top: 2px
+ width: 600px
+ float: right
+ & > a.menu-popup-button
+ margin-top: -37px
+ float: right
+ .menu
+ right: 0
+ top: -8px
+ margin-top: 0
+
#code-climate
a
text-decoration: underline
@@ -60,9 +68,20 @@
margin-right: 10px
#actions
- float: right
text-align: right
+ ul
+ @include resetul
+ li
+ display: inline
+
+ @media #{$medium-up}
+ float: right
+ position: relative
+ top: 1.8em
+ ul
+ margin-top: -21px
+
li.restart-build a, li.restart-job a
background-image: inline-image('icons/repeat.svg')
@@ -125,9 +144,3 @@
opacity: 0.6
display: none
visibility: hidden
-
- ul
- margin-top: -27px
-
- li
- display: inline
diff --git a/app/styles/app/maximize.sass b/app/styles/app/maximize.sass
new file mode 100644
index 00000000..fefd80e5
--- /dev/null
+++ b/app/styles/app/maximize.sass
@@ -0,0 +1,25 @@
+#global_slider
+ display: none
+
+.pro.maximized
+ #right
+ display: none
+
+ #global_slider
+ position: absolute
+ background-color: $color-bg-slider
+ cursor: pointer
+ background: transparent inline-image('ui/slider-open.svg') no-repeat 6px 5px
+ border-top-left-radius: 4px
+ top: 85px
+ right: 0
+ width: 20px
+ height: 20px
+ border-bottom-left-radius: 4px
+ display: block
+
+ &:hover
+ background-color: $color-border-slider-hover
+
+#top .profile
+ margin-right: 15px
diff --git a/assets/styles/app/misc.sass b/app/styles/app/misc.sass
similarity index 91%
rename from assets/styles/app/misc.sass
rename to app/styles/app/misc.sass
index 2b5a7a4a..0a6e4bb0 100644
--- a/assets/styles/app/misc.sass
+++ b/app/styles/app/misc.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
.display
display: block !important
diff --git a/assets/styles/app/popup.sass b/app/styles/app/popup.sass
similarity index 91%
rename from assets/styles/app/popup.sass
rename to app/styles/app/popup.sass
index 1d8c86ca..2dcdba7a 100644
--- a/assets/styles/app/popup.sass
+++ b/app/styles/app/popup.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
.help
display: inline-block
@@ -21,7 +20,7 @@
margin: -200px 0 0 -200px
padding: 20px
@include popup
- @include box-sizing(border-box)
+ box-sizing: border-box
.close
position: absolute
@@ -48,7 +47,8 @@
background-color: $color-bg-pre
margin: 0
padding: 10px 20px
- @include border-radius(4px)
+ border-radius: 4px
+ overflow-x: scroll
#status-images
display: none
@@ -67,7 +67,7 @@
padding: 4px
resize: vertical
margin-bottom: 0px
- @include border-radius(3px)
+ border-radius: 3px
p:last-child
margin-top: 10px
@@ -93,7 +93,7 @@
border: 1px solid $color-border-light
width: 505px
padding: 4px
- @include border-radius(3px)
+ border-radius: 3px
#regenerate-key, #regeneration-success
display: none
diff --git a/assets/styles/pro.sass b/app/styles/app/pro.sass
similarity index 87%
rename from assets/styles/pro.sass
rename to app/styles/app/pro.sass
index 2dc3c6b0..a6db3606 100644
--- a/assets/styles/pro.sass
+++ b/app/styles/app/pro.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
.pro
#log-container
@@ -104,17 +103,16 @@
.group a
cursor: pointer
- @import "_mixins/all"
-
#right
- padding-bottom: 80px
-
+ padding-top: 13px
+ padding-right: 20px
+ padding-left: 20px
+ color: $color-link
h4
- margin: 24px 0 0 0
-
+ margin: 24px 0 0
ul
+ @include resetul
margin-top: 10px
-
li
word-wrap: break-word
@@ -147,28 +145,17 @@
background-color: $color-bg-slider
cursor: pointer
background: transparent url(/images/ui/slider-closed.png) no-repeat 3px 38px
- @include border-top-left-radius(4px)
+ border-top-left-radius: 4px
&:hover
background-color: $color-border-slider-hover
- .maximized
- #slider
- top: 45px
-
#right .show-more-jobs
text-decoration: underline
cursor: pointer
- @mixin flex($grow, $shrink, $size)
- -webkit-flex: $grow $shrink $size
- flex: $grow $shrink $size
-
#right
- @include flex(1, 1, 300px)
- max-width: 180px
- padding: 25px 20px 80px 20px
- background-color: #E9E9E7
+ background-color: $right-bg
border-left: 1px solid $color-border-normal
#settings li.env-var span.name
diff --git a/assets/styles/profile.sass b/app/styles/app/profile.sass
similarity index 90%
rename from assets/styles/profile.sass
rename to app/styles/app/profile.sass
index ff7c488b..7545fcb7 100644
--- a/assets/styles/profile.sass
+++ b/app/styles/app/profile.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#profile
#main
@@ -6,15 +5,16 @@
h3
height: 19px
- padding-bottom: 35px
+ padding-bottom: 50px
line-height: 19px
+ color: $color-text
img
float: left
width: 100px
height: 100px
margin: 3px 20px 0 0
- @include border-radius(100px)
+ border-radius: 100px
background-color: $color-bg-light
dl.profile
diff --git a/assets/styles/profile/hooks.sass b/app/styles/app/profile/hooks.sass
similarity index 91%
rename from assets/styles/profile/hooks.sass
rename to app/styles/app/profile/hooks.sass
index aeaeb318..7d6b6b09 100644
--- a/assets/styles/profile/hooks.sass
+++ b/app/styles/app/profile/hooks.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#profile
#unadministerable-hooks
@@ -9,12 +8,15 @@
margin-top: 5px
#hooks, #unadministerable-hooks
+
+ @include resetul
+
.travis-switch
font-size: 10px
- // @include list-base
margin-top: 10px
li
+ box-sizing: content-box
position: relative
height: 19px
padding: 10px
@@ -22,9 +24,6 @@
overflow: hidden
border-bottom: 1px solid $color-border-light
- &:nth-child(3)
- border-top: 1px solid $color-border-light
-
&:nth-child(odd)
background-color: $color-bg-hooks-odd
.controls
@@ -52,7 +51,7 @@
.controls
position: absolute
- top: 10px
+ top: 8px
right: 0
white-space: nowrap
a
diff --git a/assets/styles/requests.sass b/app/styles/app/requests.sass
similarity index 95%
rename from assets/styles/requests.sass
rename to app/styles/app/requests.sass
index cd0227a7..efd61334 100644
--- a/assets/styles/requests.sass
+++ b/app/styles/app/requests.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#request
h3
diff --git a/assets/styles/right.sass b/app/styles/app/right.sass
similarity index 73%
rename from assets/styles/right.sass
rename to app/styles/app/right.sass
index 4457762b..23a00c68 100644
--- a/assets/styles/right.sass
+++ b/app/styles/app/right.sass
@@ -1,12 +1,10 @@
-@import "_mixins/all"
#profile
#right
- min-width: 180px
- max-width: 180px
- padding: 13px 20px 80px 20px
+ padding-top: 13px
+ padding-right: 20px
+ padding-left: 20px
background-color: #E9E9E7
- float: right
border-left: 1px solid $color-border-normal
h4
@@ -20,7 +18,7 @@
margin-left: -3px
padding: 15px
border: 1px solid #e0e0e0
- background-color: #ffffff
+ background-color: $white
h4
margin: 0
diff --git a/assets/styles/right/lists.sass b/app/styles/app/right/lists.sass
similarity index 95%
rename from assets/styles/right/lists.sass
rename to app/styles/app/right/lists.sass
index 0ad786c8..71e61b07 100644
--- a/assets/styles/right/lists.sass
+++ b/app/styles/app/right/lists.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#right
.tabs
@@ -15,7 +14,7 @@
border-bottom-color: $color-border-light
white-space: nowrap
cursor: pointer
- @include border-top-radius(2px)
+ border-top-radius: 2px
font-size: 10px
&:hover
@@ -100,5 +99,5 @@
width: 8px
height: 8px
margin-right: 3px
- @include border-radius(4px)
+ border-radius: 4px
diff --git a/assets/styles/right/sponsors.sass b/app/styles/app/right/sponsors.sass
similarity index 90%
rename from assets/styles/right/sponsors.sass
rename to app/styles/app/right/sponsors.sass
index a4b05d49..bdb1813b 100644
--- a/assets/styles/right/sponsors.sass
+++ b/app/styles/app/right/sponsors.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#right
.sponsors
@@ -11,7 +10,7 @@
width: 205px
margin: 0 0 8px 0
border: 1px solid $color-border-light
- @include border-radius(8px)
+ border-radius: 8px
list-style-type: none
a
@@ -21,7 +20,7 @@
z-index: 200
overflow: hidden
width: 205px
- @include border-radius(8px)
+ border-radius: 8px
.platinum
height: 130px
diff --git a/assets/styles/settings.sass b/app/styles/app/settings.sass
similarity index 88%
rename from assets/styles/settings.sass
rename to app/styles/app/settings.sass
index 005c5cfc..9e8dadf1 100644
--- a/assets/styles/settings.sass
+++ b/app/styles/app/settings.sass
@@ -1,5 +1,7 @@
#settings
- min-width: 830px
+ ul
+ @include resetul
+
.settings-form
margin: 30px 0 30px 0
@@ -37,6 +39,9 @@
.field
padding-bottom: 10px
+ clear: left
+ @media screen and (min-width: 47em)
+ clear: none
.field:after
visibility: hidden
display: block
@@ -45,6 +50,10 @@
clear: both
height: 0
+ .travis-switch
+ display: block
+ margin-top: 4px
+
label
display: inline-block
@@ -111,10 +120,9 @@
background-repeat: no-repeat
background-size: 0.5em
padding-left: 26px
- width: 142px
.add-env-var, .add-ssh-key
- color: #ffffff
+ color: $white
background-color: #97a3aa
border-radius: 4px
padding: 8px 12px 8px 12px
@@ -199,6 +207,10 @@
span.error
margin-left: 0
+ display: none
+
+ &.show
+ display: inline-block
label.name, label.value
display: none
@@ -236,15 +248,6 @@
margin: 10px 40px 0 0
padding-bottom: 10px
overflow: auto
- display: flex
- display: -webkit-flex
- display: -moz-flex
- -webkit-align-items: center
- -moz-align-items: center
- align-items: center
- justify-content: left
- -webkit-justify-content: left
- -moz-justify-content: left
border-bottom: 1px solid #F1F1F1
width: 100%
@@ -265,34 +268,29 @@
margin-top: 4px
height: 20px
- span.name, span.value
- display: inline-block
+ .name,
+ .value
line-height: 20px
position: relative
font-size: 15px
- word-wrap: break-word
.equals
margin: 0 10px 0 14px
- span.name
+ .name
width: 250px
margin: 0 10px 0 20px
text-align: left
- span.value
+ .value
+ display: block
width: auto
text-align: left
- min-width: 158px
max-width: 390px
min-height: 25px
- display: flex
- display: -webkit-flex
- display: -moz-flex
- -webkit-align-items: center
- -moz-align-items: center
- align-items: center
- justify-content: left
- -webkit-justify-content: left
- -moz-justify-content: left
- padding: 8px 12px
+ padding: 7px 12px 3px
+
+ @media #{$medium-up}
+ .value,
+ .name
+ display: inline-block
diff --git a/assets/styles/stats.sass b/app/styles/app/stats.sass
similarity index 81%
rename from assets/styles/stats.sass
rename to app/styles/app/stats.sass
index 0a6e72b4..aecdcf56 100644
--- a/assets/styles/stats.sass
+++ b/app/styles/app/stats.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
#repo_count_container,
#build_count_container
diff --git a/assets/styles/status.sass b/app/styles/app/status.sass
similarity index 94%
rename from assets/styles/status.sass
rename to app/styles/app/status.sass
index 8e701646..2ddd2618 100644
--- a/assets/styles/status.sass
+++ b/app/styles/app/status.sass
@@ -1,4 +1,3 @@
-@import "_mixins/all"
.status
display: inline-block
@@ -76,6 +75,12 @@ table.list
.number a
color: $color-text-status-gray
+ .number a
+ display: inline-block
+ text-decoration: none
+ &:hover
+ text-decoration: underline
+
#workers
.status
background-color: $color-bg-status-waiting
diff --git a/assets/styles/tabs.sass b/app/styles/app/tabs.sass
similarity index 71%
rename from assets/styles/tabs.sass
rename to app/styles/app/tabs.sass
index 198a1a42..94a1c02c 100644
--- a/assets/styles/tabs.sass
+++ b/app/styles/app/tabs.sass
@@ -1,28 +1,33 @@
-@import "_mixins/all"
+/*
+ * It's a nightmare to overwrite this
+ * @todo refactor and get rid of all IDs
+ */
+
.tabs
- height: 29px
-
+ @include resetul
li
- display: inline-block
height: 28px
vertical-align: top
- background-color: #f8f8f8
+ background-color: $tab-nav-inactive-bg
border-radius: 4px 4px 0px 0px
padding: 0 12px 0 12px
margin-right: 10px
white-space: nowrap
cursor: pointer
-
- &:hover
- background-color: $color-bg-tab-hover
+ @media #{$medium-up}
+ height: 29px
+ li
+ display: inline-block
+ &:hover
+ background-color: $tab-nav-inactive-bg-hover
.active
background-color: $color-bg-tab-active
border-bottom-color: $color-bg-tab-active
a
- color: #666666
+ color: $color-text
font-weight: 600
h5
@@ -38,12 +43,16 @@
#left
+
.tabs
margin: -28px 20px 0 15px
#tab_search:not(.active)
display: none
+ #tab_recent.hidden
+ display: none
+
#tab_owned
display: none
#tab_owned.display
@@ -66,48 +75,52 @@
#main
.tabs
border-bottom: 3px solid #f5f5f6
-
li
- height: 30px
+ height: 29px
background-color: #f5f5f6
margin-right: 0
-
+ overflow: hidden
&:hover
background-color: #e1e8eb
-
a
text-decoration: none
.active
- background-color: #d8e2e6
- border-bottom-color: #d8e2e6
-
+ display: block
+ background-color: $tab-active-bg
+ border-bottom-color: $tab-active-bg
&:hover
- background-color: #d8e2e6
-
+ background-color: $tab-active-bg
a
color: #6c878e
+ @media #{$medium-up}
+ display: inline-block
.tab
margin-top: 15px
-
ul.navigation
- height: 40px
- line-height: 40px
+ @include resetul
border-bottom: 1px solid #EAEAEA
-
li
- display: inline-block
margin-right: 10px
-
a
color: #ACACAC
font-weight: 600
font-size: 14px
-
a.active
color: #55888E
+ @media #{$small-up}
+ li
+ display: inline-block
+ @media #{$medium-up}
+ height: 40px
+ line-height: 40px
+ #builds
+ a
+ display: inline
+
+.tabs--main
#tab_build,
#tab_job,
#tab_request,
diff --git a/assets/styles/tipsy.css b/app/styles/app/tipsy.scss
similarity index 100%
rename from assets/styles/tipsy.css
rename to app/styles/app/tipsy.scss
diff --git a/app/styles/app/top.sass b/app/styles/app/top.sass
new file mode 100644
index 00000000..3904a624
--- /dev/null
+++ b/app/styles/app/top.sass
@@ -0,0 +1,238 @@
+
+#top
+ font-size: $font-size-normal
+ background : $topbar-bg
+
+ #logo
+ position: relative
+ float : left
+ width : 123px
+ height : 55px
+ margin-right : 14px
+ z-index: 999
+ text-indent : -9999px
+ background : $logo-red inline-image('ui/travis-logo.svg') no-repeat 20px 18px
+ a
+ display: block
+
+ ul
+ @include resetul
+ line-height: 30px
+
+ #navigation
+ height: 0
+ overflow: hidden
+ &.is-open
+ height: auto
+
+ a, span
+ color: $white
+ text-decoration: none
+
+ li
+ border-top: 1px solid $topbar-bg-darker
+ a, span
+ display: block
+ padding: 0 12px
+ &:hover
+ color: $color-link-top-highlight
+
+ a.werehiring
+ background-color: $topbar-bg-darker
+ border-radius: 4px
+ padding: 8px 16px
+ line-height: 20px
+ margin-right: 80px
+ display: inline
+
+ li.traviscicom
+ a
+ padding-left: 0px
+
+ @media #{$medium-up}
+ overflow: visible
+ height: 55px
+
+ #navigation
+ height: auto
+ overflow: visible
+ ul
+ line-height: 55px
+ position: relative
+ top: 3px
+ li
+ display: inline-block
+ border: none
+
+ @media #{$medium-only}
+ li.traviscicom
+ display: none
+
+ .nav-burger
+ overflow: auto
+ @media #{$medium-up}
+ display: none
+
+ #burger
+ float: right
+ font-size: 50px
+ background: none
+ border: none
+ line-height: 1
+ color: $white
+ outline: none !important
+ @include clearfix
+ &:hover
+ cursor: pointer
+
+ .menu
+ position: relative
+
+ &.signed-out
+ ul
+ display: none
+ .handle
+ margin: 0
+
+ &:hover > ul
+ display: block
+
+ ul li a
+ padding-left: 3em
+
+ @media #{$medium-up}
+ ul
+ display: none
+ position: absolute
+ z-index: 300
+ right: 0px
+ top: 52px
+ width: 100%
+ background-color: $color-bg-dropdown
+ li
+ display: block
+ li a
+ display: block
+ line-height: 24px
+ white-space: nowrap
+ padding: 5px 20px
+ &:hover
+ background-color: $color-bg-dropdown-highlight
+
+ .menu.community
+ min-width: 120px
+
+ .user
+ text-align: right
+
+ .menu.profile
+ .signing-in
+ background: inline-image('ui/spinner.svg') no-repeat 110px 22px
+
+ img
+ width: 30px
+ height: 30px
+ border-radius: 100px
+
+ ul
+ min-width: 145px
+ a
+ padding: 5px 25px 5px 45px
+
+ @media #{$medium-up}
+ float: right
+
+ .handle > *
+ display: none
+ padding: 0 15px 0 45px
+ .signed-out, .signing-in
+ min-width: 110px
+ &.signed-out .signed-out
+ display: block
+ &.signing-in .signing-in
+ display: inline-block
+ &.signed-in .signed-in
+ display: block
+
+ &:not(.signed-in):hover ul
+ display: none
+
+
+#home #navigation .home,
+#stats #navigation .stats,
+#profile #navigation .profile
+ background-color: transparent
+ a
+ color: #ffffff
+ a:hover
+ color: $color-link-top-highlight
+
+
+// .status-graph
+// background : url('/images/dashboard/health-stats.svg') no-repeat
+// background : contain
+// margin-top : 17px
+// height : 18px
+// width : 78px
+// text-indent : -9999px
+
+// #user
+// text-align : right
+// cursor : pointer
+
+// #user p
+// display : none
+
+#top img
+ margin: 10px 10px 7px 10px
+ width : 30px
+ height : 30px
+ border-radius: 100px
+ @media #{$medium-up}
+ float : right
+ margin : 10px 0 0 10px
+
+// #user ul
+// text-align : left
+// display : inline
+// margin : 0
+// padding : 15px 0 17px 0
+// list-style : none
+// z-index : 1000
+
+// #user ul li ul
+// padding : 0
+// position : absolute
+// top : 55px
+// right : 0
+// width : 150px
+// display : none
+// opacity : 0
+// visibility : hidden
+
+// #user ul li ul li
+// background : $topbar-bg
+// color : $white
+// display : block
+// line-height : 18px
+// padding : 8px 18px
+// margin : 0
+
+// #user ul li ul li:last-child
+// border-bottom-left-radius : 4px
+// border-bottom-right-radius : 4px
+
+// #user ul li ul li:hover
+// background : #5e869a
+// color : $white
+// a
+// color: $white
+
+
+// #user ul li:hover ul
+// display : block
+// opacity : 1
+// visibility : visible
+// #user .handle a
+// display: inline
+
diff --git a/app/templates/.gitkeep b/app/templates/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/assets/scripts/app/templates/account.hbs b/app/templates/account.hbs
similarity index 92%
rename from assets/scripts/app/templates/account.hbs
rename to app/templates/account.hbs
index 05e13dd4..54c9119e 100644
--- a/assets/scripts/app/templates/account.hbs
+++ b/app/templates/account.hbs
@@ -20,7 +20,7 @@
{{else}}
- Last synchronized from GitHub: {{formatTime user.syncedAt}}
+ Last synchronized from GitHub: {{format-time user.syncedAt}}
Sync now
@@ -34,7 +34,7 @@
{{hook.description}}
- {{#link-to "settings" hook.repo class="repo-settings-icon tool-tip" title="Repository settings"}}{{/link-to}}
+ {{#link-to "settings" hook.ownerName hook.name class="repo-settings-icon tool-tip" title="Repository settings"}}{{/link-to}}
{{travis-switch action="toggle" target=hook toggleAutomatically="false"}}
diff --git a/assets/scripts/app/templates/loading.hbs b/app/templates/accounts-list/empty.hbs
similarity index 100%
rename from assets/scripts/app/templates/loading.hbs
rename to app/templates/accounts-list/empty.hbs
diff --git a/assets/scripts/app/templates/accounts.hbs b/app/templates/accounts.hbs
similarity index 100%
rename from assets/scripts/app/templates/accounts.hbs
rename to app/templates/accounts.hbs
diff --git a/assets/scripts/app/templates/annotations/list.hbs b/app/templates/annotations/list.hbs
similarity index 100%
rename from assets/scripts/app/templates/annotations/list.hbs
rename to app/templates/annotations/list.hbs
diff --git a/app/templates/application.hbs b/app/templates/application.hbs
new file mode 100644
index 00000000..54b490eb
--- /dev/null
+++ b/app/templates/application.hbs
@@ -0,0 +1,8 @@
+{{outlet}}
+
+
+{{#if config.pro}}
+
+
+
+{{/if}}
diff --git a/assets/scripts/app/templates/auth/signin.hbs b/app/templates/auth/signin.hbs
similarity index 100%
rename from assets/scripts/app/templates/auth/signin.hbs
rename to app/templates/auth/signin.hbs
diff --git a/assets/scripts/app/templates/builds/show.hbs b/app/templates/build.hbs
similarity index 69%
rename from assets/scripts/app/templates/builds/show.hbs
rename to app/templates/build.hbs
index 615deabe..ddb6e2b9 100644
--- a/assets/scripts/app/templates/builds/show.hbs
+++ b/app/templates/build.hbs
@@ -10,11 +10,11 @@
- {{#if build.isFinished}}ran{{else}}running{{/if}} for {{formatDuration build.duration}}
+ {{#if build.isFinished}}ran{{else}}running{{/if}} for {{format-duration build.duration}}
- {{formatTime build.finishedAt}}
+ {{format-time build.finishedAt}}
{{#if build.tagName}}
@@ -24,14 +24,14 @@
{{/if}}
{{#if build.pullRequest}}
#{{build.pullRequestNumber}}: {{build.pullRequestTitle}}
{{else}}
{{#if build.commit.compareUrl}}
- Compare {{shortCompareShas build.commit.compareUrl}}
+ Compare {{short-compare-shas build.commit.compareUrl}}
{{/if}}
{{/if}}
@@ -43,20 +43,20 @@
- - {{formatMessage build.commit.subject repoBinding=build.repo}}
+ - {{format-message build.commit.subject repoBinding=build.repo}}
- {{formatMessage build.commit.body repoBinding=build.repo pre=true}}
+ {{format-message build.commit.body repoBinding=build.repo pre=true}}
{{#if commit.authorName}}
-
{{commit.authorName}} authored{{#if commit.authorIsCommitter}} and committed{{/if}}
+
{{commit.authorName}} authored{{#if commit.authorIsCommitter}} and committed{{/if}}
{{/if}}
{{#unless commit.authorIsCommitter}}
{{#if commit.committerName}}
-
{{commit.committerName}} committed
+
{{commit.committerName}} committed
{{/if}}
{{/unless}}
diff --git a/assets/scripts/app/templates/builds/list.hbs b/app/templates/builds.hbs
similarity index 59%
rename from assets/scripts/app/templates/builds/list.hbs
rename to app/templates/builds.hbs
index 221b16eb..7978bf25 100644
--- a/assets/scripts/app/templates/builds/list.hbs
+++ b/app/templates/builds.hbs
@@ -22,46 +22,46 @@
{{#each build in controller itemController="buildsItem"}}
- {{#view Travis.BuildsItemView contextBinding="build"}}
+
- {{#if id}}
- {{#link-to "build" repo this}}
- {{number}}
+ {{#if build.id}}
+ {{#link-to "build" build.repo build}}
+ {{build.number}}
{{/link-to}}
{{/if}}
- {{{formatMessage commit.message short="true" repoBinding=build.repo}}}
+ {{{format-message build.commit.message short="true" repoBinding=build.repo}}}
-
- {{formatCommit commit}}
+
+ {{format-commit build.commit}}
- {{commit.committerName}}
+ {{build.commit.committerName}}
{{#if isPullRequestsList}}
-
- #{{pullRequestNumber}}
+
+ #{{build.pullRequestNumber}}
{{/if}}
-
- {{formatDuration duration}}
+
+ {{format-duration build.duration}}
-
- {{formatTime finishedAt}}
+
+ {{format-time build.finishedAt}}
- {{/view}}
+
{{/each}}
{{#if displayShowMoreButton}}
- {{view view.ShowMoreButton}}
+ {{view 'show-more-button'}}
{{#if isLoading}}
{{/if}}
diff --git a/assets/scripts/app/templates/builds/not_found.hbs b/app/templates/builds/not-found.hbs
similarity index 100%
rename from assets/scripts/app/templates/builds/not_found.hbs
rename to app/templates/builds/not-found.hbs
diff --git a/assets/scripts/app/templates/caches.hbs b/app/templates/caches.hbs
similarity index 94%
rename from assets/scripts/app/templates/caches.hbs
rename to app/templates/caches.hbs
index 9f11b2ad..a8efb9e1 100644
--- a/assets/scripts/app/templates/caches.hbs
+++ b/app/templates/caches.hbs
@@ -13,7 +13,7 @@
- {{#each cache in caches itemController="cacheItem"}}
+ {{#each cache in caches itemController="cachesItem"}}
-
Slug: {{cache.slug}},
Last modified: {{cache.last_modified}},
diff --git a/assets/scripts/app/templates/components/travis-switch.hbs b/app/templates/components/travis-switch.hbs
similarity index 100%
rename from assets/scripts/app/templates/components/travis-switch.hbs
rename to app/templates/components/travis-switch.hbs
diff --git a/assets/scripts/app/templates/application.hbs b/app/templates/dashboard.hbs
similarity index 100%
rename from assets/scripts/app/templates/application.hbs
rename to app/templates/dashboard.hbs
diff --git a/app/templates/dashboard/loading.hbs b/app/templates/dashboard/loading.hbs
new file mode 100644
index 00000000..7a59046c
--- /dev/null
+++ b/app/templates/dashboard/loading.hbs
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+ {{!--
+
Hold tight.
+ We're consulting the internet.
+ --}}
+
+
diff --git a/app/templates/dashboard/repositories.hbs b/app/templates/dashboard/repositories.hbs
new file mode 100644
index 00000000..f28712ac
--- /dev/null
+++ b/app/templates/dashboard/repositories.hbs
@@ -0,0 +1,61 @@
+
+
+
+
+ {{filter-input placeholder="Search all repositories" class="search-field"
+ action="updateFilter" on="key-up"}}
+
+
+
+
+
+ {{#each repo in filteredRepositories}}
+
+
+
+
+
+ {{repo.owner.login}}
+ {{#link-to "repo" repo.owner.login repo.name}}{{repo.name}}{{/link-to}}
+ {{format-duration repo.last_build.duration}}
+ {{format-time repo.last_build.finished_at}}
+
+ {{#link-to "build" repo.owner.login repo.name repo.last_build.id}}
+ #{{repo.last_build.number}} {{repo.last_build.state}}
+ {{/link-to}}
+
+
+
+
+
+
+ {{/each}}
+
+
diff --git a/app/templates/env-vars.hbs b/app/templates/env-vars.hbs
new file mode 100644
index 00000000..152ebe68
--- /dev/null
+++ b/app/templates/env-vars.hbs
@@ -0,0 +1,20 @@
+{{outlet}}
+
+
+ {{#each vars itemController="envVar"}}
+ {{#unless isNew}}
+ -
+ {{#if isEditing}}
+ {{partial 'env_vars/form'}}
+ {{else}}
+ Edit
+
+ Delete
+
+ {{name}}
+ {{value}}
+ {{/if}}
+
+ {{/unless}}
+ {{/each}}
+
diff --git a/assets/scripts/app/templates/env_vars/_form.hbs b/app/templates/env-vars/_form.hbs
similarity index 96%
rename from assets/scripts/app/templates/env_vars/_form.hbs
rename to app/templates/env-vars/_form.hbs
index 3042cd7c..646a6df0 100644
--- a/assets/scripts/app/templates/env_vars/_form.hbs
+++ b/app/templates/env-vars/_form.hbs
@@ -12,7 +12,7 @@
{{else}}
{{value}}
{{/if}}
-
+
{{travis-switch active=public class="value"}}
{{#label for="secure" class="public"}}Display value in build logs{{/label}}
diff --git a/assets/scripts/app/templates/env_vars/index.hbs b/app/templates/env-vars/index.hbs
similarity index 100%
rename from assets/scripts/app/templates/env_vars/index.hbs
rename to app/templates/env-vars/index.hbs
diff --git a/assets/scripts/app/templates/env_vars/new.hbs b/app/templates/env-vars/new.hbs
similarity index 100%
rename from assets/scripts/app/templates/env_vars/new.hbs
rename to app/templates/env-vars/new.hbs
diff --git a/app/templates/error404.hbs b/app/templates/error404.hbs
new file mode 100644
index 00000000..d408249b
--- /dev/null
+++ b/app/templates/error404.hbs
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+ 404: Something's Missing
+ We're sorry! It seems like this page cannot be found.
+
diff --git a/assets/scripts/app/templates/events/list.hbs b/app/templates/events/list.hbs
similarity index 86%
rename from assets/scripts/app/templates/events/list.hbs
rename to app/templates/events/list.hbs
index bc29f881..eaf24b0a 100644
--- a/assets/scripts/app/templates/events/list.hbs
+++ b/app/templates/events/list.hbs
@@ -11,9 +11,9 @@
{{#each event in view.events}}
- {{#view Travis.EventsItemView contextBinding="event"}}
+ {{#view "events-item" contextBinding="event"}}
- {{formatTime createdAt}}
+ {{format-time createdAt}}
{{event.event_}}
diff --git a/assets/scripts/app/templates/first_sync.hbs b/app/templates/first-sync.hbs
similarity index 100%
rename from assets/scripts/app/templates/first_sync.hbs
rename to app/templates/first-sync.hbs
diff --git a/assets/scripts/app/templates/no_owned_repos.hbs b/app/templates/getting-started.hbs
similarity index 100%
rename from assets/scripts/app/templates/no_owned_repos.hbs
rename to app/templates/getting-started.hbs
diff --git a/app/templates/helpers/label.hbs b/app/templates/helpers/label.hbs
new file mode 100644
index 00000000..411baadd
--- /dev/null
+++ b/app/templates/helpers/label.hbs
@@ -0,0 +1 @@
+{{view.content}}
diff --git a/app/templates/helpers/travis-errors.hbs b/app/templates/helpers/travis-errors.hbs
new file mode 100644
index 00000000..1f8c68c6
--- /dev/null
+++ b/app/templates/helpers/travis-errors.hbs
@@ -0,0 +1 @@
+{{#each error in view.errors}}{{error.message}}{{/each}}
diff --git a/assets/scripts/app/templates/insufficient_oauth_permissions.hbs b/app/templates/insufficient-oauth-permissions.hbs
similarity index 100%
rename from assets/scripts/app/templates/insufficient_oauth_permissions.hbs
rename to app/templates/insufficient-oauth-permissions.hbs
diff --git a/assets/scripts/app/templates/jobs/show.hbs b/app/templates/job.hbs
similarity index 84%
rename from assets/scripts/app/templates/jobs/show.hbs
rename to app/templates/job.hbs
index 9dfdfd01..c77b5179 100644
--- a/assets/scripts/app/templates/jobs/show.hbs
+++ b/app/templates/job.hbs
@@ -11,11 +11,11 @@
- {{#if job.isFinished}}ran{{else}}running{{/if}} for {{formatDuration job.duration}}
+ {{#if job.isFinished}}ran{{else}}running{{/if}} for {{format-duration job.duration}}
- {{formatTime job.finishedAt}}
+ {{format-time job.finishedAt}}
{{#if job.tagName}}
@@ -25,14 +25,14 @@
{{/if}}
{{#if job.build.pullRequest}}
{{else}}
{{#if job.build.commit.compareUrl}}
-
+
{{/if}}
{{/if}}
@@ -43,10 +43,10 @@
- - {{formatMessage job.commit.subject repoBinding=job.repo}}
+ - {{format-message job.commit.subject repoBinding=job.repo}}
- {{formatMessage job.commit.body repoBinding=job.repo pre=true}}
+ {{format-message job.commit.body repoBinding=job.repo pre=true}}
diff --git a/assets/scripts/app/templates/jobs/list.hbs b/app/templates/jobs.hbs
similarity index 95%
rename from assets/scripts/app/templates/jobs/list.hbs
rename to app/templates/jobs.hbs
index c9aee3f9..adc08d93 100644
--- a/assets/scripts/app/templates/jobs/list.hbs
+++ b/app/templates/jobs.hbs
@@ -30,10 +30,10 @@
{{/if}}
- {{formatDuration duration}}
+ {{format-duration duration}}
- {{formatTime finishedAt}}
+ {{format-time finishedAt}}
{{#each value in configValues}}
{{value}}
diff --git a/assets/scripts/app/templates/jobs/log.hbs b/app/templates/jobs/log.hbs
similarity index 100%
rename from assets/scripts/app/templates/jobs/log.hbs
rename to app/templates/jobs/log.hbs
diff --git a/assets/scripts/app/templates/jobs/pre.hbs b/app/templates/jobs/pre.hbs
similarity index 88%
rename from assets/scripts/app/templates/jobs/pre.hbs
rename to app/templates/jobs/pre.hbs
index 76aafb56..c8793760 100644
--- a/assets/scripts/app/templates/jobs/pre.hbs
+++ b/app/templates/jobs/pre.hbs
@@ -12,7 +12,7 @@
- To Top
+ Top
{{#if view.limited}}
diff --git a/app/templates/layouts/dashboard.hbs b/app/templates/layouts/dashboard.hbs
new file mode 100644
index 00000000..34a3685d
--- /dev/null
+++ b/app/templates/layouts/dashboard.hbs
@@ -0,0 +1,82 @@
+
+
+
+
+
+ {{#link-to "main"}}Home{{/link-to}}
+
+
+ - Docs
+ - Blog
+
+ -
+
+ {{#if auth.signedOut}}
+ Sign in with GitHub
+ {{/if}}
+ {{#if auth.signedIn}}
+ {{#link-to "profile" class="signed-in"}}
{{auth.userName}}{{/link-to}}
+ {{/if}}
+ {{#if auth.signingIn}}
+ Signing In
+ {{/if}}
+
+
+
+
+
+
+
+ {{yield}}
+
+
+
+
+
diff --git a/app/templates/layouts/error.hbs b/app/templates/layouts/error.hbs
new file mode 100644
index 00000000..d4401b49
--- /dev/null
+++ b/app/templates/layouts/error.hbs
@@ -0,0 +1,38 @@
+
+
+
+ {{#link-to "main"}}Home{{/link-to}}
+
+
+
+
+
+ - Blog
+ - Status
+
+ -
+
+ {{#if auth.signedOut}}
+ Sign in with GitHub
+ {{/if}}
+ {{#if auth.signedIn}}
+ {{#link-to "profile" class="signed-in"}}
{{auth.userName}}{{/link-to}}
+ {{/if}}
+ {{#if auth.signingIn}}
+ Signing In
+ {{/if}}
+
+
+
+
+
+
+
+
+ {{yield}}
+
diff --git a/assets/scripts/app/templates/layouts/flash.hbs b/app/templates/layouts/flash.hbs
similarity index 72%
rename from assets/scripts/app/templates/layouts/flash.hbs
rename to app/templates/layouts/flash.hbs
index 193d0d8c..635ad6a1 100644
--- a/assets/scripts/app/templates/layouts/flash.hbs
+++ b/app/templates/layouts/flash.hbs
@@ -1,5 +1,5 @@
{{#each flash in controller}}
- {{#view Travis.FlashItemView flashBinding="flash"}}
+ {{#view "flash-item" flashBinding="flash"}}
{{{flash.message}}}
{{/view}}
diff --git a/app/templates/layouts/home.hbs b/app/templates/layouts/home.hbs
new file mode 100644
index 00000000..b2977b03
--- /dev/null
+++ b/app/templates/layouts/home.hbs
@@ -0,0 +1,23 @@
+
+
+
+ {{render "top"}}
+
+
+
+
+ {{render "flash"}}
+ {{yield}}
+
+ {{#if config.pro}}
+
+ {{render "sidebar"}}
+
+ {{/if}}
+
+
+
+
+
diff --git a/app/templates/layouts/profile.hbs b/app/templates/layouts/profile.hbs
new file mode 100644
index 00000000..8aa1ac64
--- /dev/null
+++ b/app/templates/layouts/profile.hbs
@@ -0,0 +1,37 @@
+
+
+ {{render "top"}}
+
+
+
+
+ {{render "flash"}}
+ {{yield}}
+
+
+
+
+
+
+
+
+ Getting started?
+
+ Please read our guide.
+ You'll be up and running in no time!
+
+
+ You can find detailed docs on our documentation site.
+
+
+ If you need help ask a question or hop on #travis on irc.freenode.net
+
+
+
+
+
+
+
+
diff --git a/assets/scripts/app/templates/layouts/simple.hbs b/app/templates/layouts/simple.hbs
similarity index 100%
rename from assets/scripts/app/templates/layouts/simple.hbs
rename to app/templates/layouts/simple.hbs
diff --git a/assets/scripts/app/templates/layouts/support.hbs b/app/templates/layouts/support.hbs
similarity index 91%
rename from assets/scripts/app/templates/layouts/support.hbs
rename to app/templates/layouts/support.hbs
index fe2557ab..e7ec03aa 100644
--- a/assets/scripts/app/templates/layouts/support.hbs
+++ b/app/templates/layouts/support.hbs
@@ -1,7 +1,7 @@
How can we help?
- {{#if config.billing_endpoint}}
+ {{#if config.billingEndpoint}}
- Support Ticket
{{/if}}
- Live Chat
diff --git a/assets/scripts/app/templates/main/loading.hbs b/app/templates/loading.hbs
similarity index 100%
rename from assets/scripts/app/templates/main/loading.hbs
rename to app/templates/loading.hbs
diff --git a/assets/scripts/app/templates/main.hbs b/app/templates/main.hbs
similarity index 100%
rename from assets/scripts/app/templates/main.hbs
rename to app/templates/main.hbs
diff --git a/assets/scripts/app/templates/main/error.hbs b/app/templates/main/error.hbs
similarity index 100%
rename from assets/scripts/app/templates/main/error.hbs
rename to app/templates/main/error.hbs
diff --git a/assets/scripts/app/templates/profile/loading.hbs b/app/templates/main/loading.hbs
similarity index 100%
rename from assets/scripts/app/templates/profile/loading.hbs
rename to app/templates/main/loading.hbs
diff --git a/app/templates/maintenance.hbs b/app/templates/maintenance.hbs
new file mode 100644
index 00000000..957b4ab8
--- /dev/null
+++ b/app/templates/maintenance.hbs
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+ Under Maintenance
+ Stay up to date with Travis CI by following us
+
diff --git a/assets/scripts/app/templates/not_found.hbs b/app/templates/not-found.hbs
similarity index 100%
rename from assets/scripts/app/templates/not_found.hbs
rename to app/templates/not-found.hbs
diff --git a/assets/scripts/app/templates/pro/repos/show/empty.hbs b/app/templates/pro/repos/show/empty.hbs
similarity index 100%
rename from assets/scripts/app/templates/pro/repos/show/empty.hbs
rename to app/templates/pro/repos/show/empty.hbs
diff --git a/assets/scripts/app/templates/profile.hbs b/app/templates/profile.hbs
similarity index 100%
rename from assets/scripts/app/templates/profile.hbs
rename to app/templates/profile.hbs
diff --git a/assets/scripts/app/templates/profile/accounts.hbs b/app/templates/profile/accounts.hbs
similarity index 87%
rename from assets/scripts/app/templates/profile/accounts.hbs
rename to app/templates/profile/accounts.hbs
index 3a02f44f..89b547b5 100644
--- a/assets/scripts/app/templates/profile/accounts.hbs
+++ b/app/templates/profile/accounts.hbs
@@ -8,7 +8,7 @@
- {{#collection Travis.AccountsListView contentBinding="controller"}}
+ {{#collection "accounts-list" contentBinding="controller"}}
{{#link-to "account" view.account class="name"}}{{view.name}}{{/link-to}}
Repositories:
diff --git a/assets/scripts/app/templates/repo/loading.hbs b/app/templates/profile/loading.hbs
similarity index 100%
rename from assets/scripts/app/templates/repo/loading.hbs
rename to app/templates/profile/loading.hbs
diff --git a/assets/scripts/app/templates/profile/repo.hbs b/app/templates/profile/repo.hbs
similarity index 100%
rename from assets/scripts/app/templates/profile/repo.hbs
rename to app/templates/profile/repo.hbs
diff --git a/assets/scripts/app/templates/profile/show.hbs b/app/templates/profile/show.hbs
similarity index 88%
rename from assets/scripts/app/templates/profile/show.hbs
rename to app/templates/profile/show.hbs
index e90482ad..b243e92f 100644
--- a/assets/scripts/app/templates/profile/show.hbs
+++ b/app/templates/profile/show.hbs
@@ -1,6 +1,6 @@
{{view.name}}
-{{#if config.billing_endpoint}}
+{{#if config.billingEndpoint}}
{{#if view.subscribed}}
Subscription active!
@@ -18,7 +18,7 @@
{{/if}}
{{/if}}
-{{view Travis.ProfileTabsView}}
+{{view 'profile-tabs'}}
{{outlet}}
diff --git a/assets/scripts/app/templates/profile/tabs.hbs b/app/templates/profile/tabs.hbs
similarity index 93%
rename from assets/scripts/app/templates/profile/tabs.hbs
rename to app/templates/profile/tabs.hbs
index cc1feea6..38c2a174 100644
--- a/assets/scripts/app/templates/profile/tabs.hbs
+++ b/app/templates/profile/tabs.hbs
@@ -11,7 +11,7 @@
{{/if}}
- {{#if config.billing_endpoint}}
+ {{#if config.billingEndpoint}}
-
Billing
diff --git a/assets/scripts/app/templates/profile/tabs/user.hbs b/app/templates/profile/tabs/user.hbs
similarity index 100%
rename from assets/scripts/app/templates/profile/tabs/user.hbs
rename to app/templates/profile/tabs/user.hbs
diff --git a/assets/scripts/app/templates/queues/show.hbs b/app/templates/queue.hbs
similarity index 75%
rename from assets/scripts/app/templates/queues/show.hbs
rename to app/templates/queue.hbs
index f4e47aa9..7229b182 100644
--- a/assets/scripts/app/templates/queues/show.hbs
+++ b/app/templates/queue.hbs
@@ -1,10 +1,10 @@
-
-
Queue ({{controller.length}})
+ Queue ({{length}})
- {{#if controller.length}}
+ {{#if length}}
{{#each job in controller}}
- {{#view Travis.QueueItemView jobBinding="job"}}
+ -
{{#if job.repo.slug}}
{{#link-to "job" job.repo job}}
@@ -13,7 +13,7 @@
#{{job.number}}
{{/link-to}}
{{/if}}
- {{/view}}
+
{{/each}}
{{else}}
There are no jobs
diff --git a/assets/scripts/app/templates/remove_log.hbs b/app/templates/remove-log.hbs
similarity index 100%
rename from assets/scripts/app/templates/remove_log.hbs
rename to app/templates/remove-log.hbs
diff --git a/assets/scripts/app/templates/repos/show.hbs b/app/templates/repo.hbs
similarity index 93%
rename from assets/scripts/app/templates/repos/show.hbs
rename to app/templates/repo.hbs
index 0be0cf77..537ae360 100644
--- a/assets/scripts/app/templates/repos/show.hbs
+++ b/app/templates/repo.hbs
@@ -1,6 +1,6 @@
{{#if view.isEmpty}}
- {{view Travis.ReposEmptyView}}
+ {{view 'repos-empty'}}
{{else}}
{{#if repo.isLoaded}}
@@ -17,10 +17,10 @@
{{description}}
- {{view 'repo-show-tabs'}}
{{view 'repo-actions'}}
+ {{view 'repo-show-tabs'}}
-
+
{{outlet}}
{{else}}
diff --git a/assets/scripts/app/templates/settings/loading.hbs b/app/templates/repo/loading.hbs
similarity index 100%
rename from assets/scripts/app/templates/settings/loading.hbs
rename to app/templates/repo/loading.hbs
diff --git a/app/templates/repos-list/empty.hbs b/app/templates/repos-list/empty.hbs
new file mode 100644
index 00000000..0277cf2e
--- /dev/null
+++ b/app/templates/repos-list/empty.hbs
@@ -0,0 +1 @@
+Loading
diff --git a/assets/scripts/app/templates/repos/list.hbs b/app/templates/repos.hbs
similarity index 82%
rename from assets/scripts/app/templates/repos/list.hbs
rename to app/templates/repos.hbs
index 574414ba..2988d1cc 100644
--- a/assets/scripts/app/templates/repos/list.hbs
+++ b/app/templates/repos.hbs
@@ -16,8 +16,10 @@
{{#with repo.lastBuildHash as lastBuild}}
{{#if repo.slug}}
- {{#link-to "build" repo lastBuild.id
- class="last_build"}}{{lastBuild.number}}{{/link-to}}
+ {{#if lastBuild.id}}
+ {{#link-to "build" repo lastBuild.id
+ class="last_build"}}{{lastBuild.number}}{{/link-to}}
+ {{/if}}
{{/if}}
{{/with}}
@@ -25,13 +27,13 @@
Duration:
- {{formatDuration repo.lastBuildDuration}}
+ {{format-duration repo.lastBuildDuration}}
Finished:
- {{formatTime repo.lastBuildFinishedAt}}
+ {{format-time repo.lastBuildFinishedAt}}
{{/if}}
diff --git a/assets/scripts/app/templates/repos/list/tabs.hbs b/app/templates/repos/list/tabs.hbs
similarity index 100%
rename from assets/scripts/app/templates/repos/list/tabs.hbs
rename to app/templates/repos/list/tabs.hbs
diff --git a/assets/scripts/app/templates/repos/show/actions.hbs b/app/templates/repos/show/actions.hbs
similarity index 95%
rename from assets/scripts/app/templates/repos/show/actions.hbs
rename to app/templates/repos/show/actions.hbs
index 504d70c2..c262912b 100644
--- a/assets/scripts/app/templates/repos/show/actions.hbs
+++ b/app/templates/repos/show/actions.hbs
@@ -44,8 +44,7 @@
{{#if view.jobIdForLog}}
{{#if view.displayRemoveLog}}
-
-
+
{{/if}}
{{/if}}
diff --git a/assets/scripts/app/templates/repos/show/tabs.hbs b/app/templates/repos/show/tabs.hbs
similarity index 98%
rename from assets/scripts/app/templates/repos/show/tabs.hbs
rename to app/templates/repos/show/tabs.hbs
index 8b8174b8..7c9e17fb 100644
--- a/assets/scripts/app/templates/repos/show/tabs.hbs
+++ b/app/templates/repos/show/tabs.hbs
@@ -1,4 +1,4 @@
-
+
-
{{#if repo.slug}}
diff --git a/assets/scripts/app/templates/repos/show/tools.hbs b/app/templates/repos/show/tools.hbs
similarity index 96%
rename from assets/scripts/app/templates/repos/show/tools.hbs
rename to app/templates/repos/show/tools.hbs
index 26d351e8..87f897f4 100644
--- a/assets/scripts/app/templates/repos/show/tools.hbs
+++ b/app/templates/repos/show/tools.hbs
@@ -10,7 +10,7 @@
-
{{#link-to "requests" view.repo}}Requests{{/link-to}}
- {{#if config.caches_enabled}}
+ {{#if view.displayCachesLink}}
-
{{#link-to "caches" view.repo}}Caches{{/link-to}}
@@ -56,7 +56,7 @@
Integrating Code Climate's test coverage reporting with your test
suite on Travis CI allows to track changes in coverage over time. If you haven't tried it out already, sign
+ {{bind-attr href=config.codeClimateUrl}}" target="_blank">sign
up today to improve your code's quality. New customers get 20% off for the first three months!
diff --git a/assets/scripts/app/templates/request.hbs b/app/templates/request.hbs
similarity index 87%
rename from assets/scripts/app/templates/request.hbs
rename to app/templates/request.hbs
index 82264dcc..0f556e01 100644
--- a/assets/scripts/app/templates/request.hbs
+++ b/app/templates/request.hbs
@@ -7,7 +7,7 @@
#{{pullRequestNumber}}
pull request.
{{else}}
- This request is based on a commit {{formatCommit commit}} by {{commit.authorName}}
+ This request is based on a commit {{format-commit commit}} by {{commit.authorName}}
pushed to
{{#if branchName}}
to {{branchName}}
diff --git a/assets/scripts/app/templates/requests.hbs b/app/templates/requests.hbs
similarity index 83%
rename from assets/scripts/app/templates/requests.hbs
rename to app/templates/requests.hbs
index 7ce6cfcb..5d9c7e9f 100644
--- a/assets/scripts/app/templates/requests.hbs
+++ b/app/templates/requests.hbs
@@ -25,7 +25,7 @@
{{id}}
- {{githubCommitLink repo.slug commit.sha}}
+ {{github-commit-link repo.slug commit.sha}}
{{#if build}}
{{#link-to "build" build}}#{{build.number}}{{/link-to}}
@@ -33,7 +33,7 @@
-
{{/if}}
- {{{formatMessage commit.message short="true" repoBinding=build.repo}}}
+ {{{format-message commit.message short="true" repoBinding=build.repo}}}
{{type}}
{{message}}
diff --git a/assets/scripts/app/templates/jobs.hbs b/app/templates/running-jobs.hbs
similarity index 100%
rename from assets/scripts/app/templates/jobs.hbs
rename to app/templates/running-jobs.hbs
diff --git a/assets/scripts/app/templates/settings.hbs b/app/templates/settings.hbs
similarity index 88%
rename from assets/scripts/app/templates/settings.hbs
rename to app/templates/settings.hbs
index ec0f6259..ad5a438d 100644
--- a/assets/scripts/app/templates/settings.hbs
+++ b/app/templates/settings.hbs
@@ -1,7 +1,8 @@
- {{#link-to "settings.index"}}General Settings{{/link-to}}
- {{#link-to "env_vars"}}Environment Variables{{/link-to}}
- {{#if config.ssh_key_enabled}}
+
+ {{#if config.endpoints.sshKey}}
- {{#link-to "ssh_key"}}SSH Key{{/link-to}}
{{/if}}
diff --git a/assets/scripts/app/templates/settings/index.hbs b/app/templates/settings/index.hbs
similarity index 100%
rename from assets/scripts/app/templates/settings/index.hbs
rename to app/templates/settings/index.hbs
diff --git a/app/templates/settings/loading.hbs b/app/templates/settings/loading.hbs
new file mode 100644
index 00000000..0277cf2e
--- /dev/null
+++ b/app/templates/settings/loading.hbs
@@ -0,0 +1 @@
+Loading
diff --git a/app/templates/show-more-button.hbs b/app/templates/show-more-button.hbs
new file mode 100644
index 00000000..ac193f34
--- /dev/null
+++ b/app/templates/show-more-button.hbs
@@ -0,0 +1 @@
+{{view.label}}
diff --git a/assets/scripts/app/templates/layouts/sidebar.hbs b/app/templates/sidebar.hbs
similarity index 74%
rename from assets/scripts/app/templates/layouts/sidebar.hbs
rename to app/templates/sidebar.hbs
index a3578949..1eafabb1 100644
--- a/assets/scripts/app/templates/layouts/sidebar.hbs
+++ b/app/templates/sidebar.hbs
@@ -1,4 +1,4 @@
-
+
@@ -16,4 +16,4 @@
{{render "runningJobs"}}
-{{view Travis.QueueView}}
+{{render "queue"}}
diff --git a/assets/scripts/app/templates/ssh_key.hbs b/app/templates/ssh-key.hbs
similarity index 100%
rename from assets/scripts/app/templates/ssh_key.hbs
rename to app/templates/ssh-key.hbs
diff --git a/assets/scripts/app/templates/ssh_key/_form.hbs b/app/templates/ssh-key/_form.hbs
similarity index 100%
rename from assets/scripts/app/templates/ssh_key/_form.hbs
rename to app/templates/ssh-key/_form.hbs
diff --git a/assets/scripts/app/templates/stats/show.hbs b/app/templates/stats/show.hbs
similarity index 100%
rename from assets/scripts/app/templates/stats/show.hbs
rename to app/templates/stats/show.hbs
diff --git a/assets/scripts/app/templates/status_images.hbs b/app/templates/status-images.hbs
similarity index 84%
rename from assets/scripts/app/templates/status_images.hbs
rename to app/templates/status-images.hbs
index 677e2ca3..4c30aacd 100644
--- a/assets/scripts/app/templates/status_images.hbs
+++ b/app/templates/status-images.hbs
@@ -10,5 +10,5 @@
- {{view Travis.StatusImageInput valueBinding="view.statusString" class="url" rows=3}}
+ {{view 'status-image-input' valueBinding="view.statusString" class="url" rows=3}}
diff --git a/assets/scripts/app/templates/layouts/top.hbs b/app/templates/top.hbs
similarity index 87%
rename from assets/scripts/app/templates/layouts/top.hbs
rename to app/templates/top.hbs
index eb7462d8..dcd73aa1 100644
--- a/assets/scripts/app/templates/layouts/top.hbs
+++ b/app/templates/top.hbs
@@ -1,10 +1,14 @@
{{#link-to "main"}}
-
+
Travis
{{/link-to}}
-
+
+
+
+
+
-
{{#link-to "main"}}Home{{/link-to}}
@@ -36,7 +40,7 @@
{{/unless}}
- {{#if config.pages_endpoint}}
+ {{#if config.pagesEndpoint}}
-
Legal
@@ -77,9 +81,9 @@
-
{{#link-to "profile" class="signed-in"}}Accounts{{/link-to}}
- {{#if Travis.config.billing_endpoint}}
+ {{#if config.billingEndpoint}}
-
- Billing
+ Billing
{{/if}}
-
diff --git a/app/transforms/object.coffee b/app/transforms/object.coffee
new file mode 100644
index 00000000..30c7c698
--- /dev/null
+++ b/app/transforms/object.coffee
@@ -0,0 +1,10 @@
+`import DS from 'ember-data'`
+
+Transform = DS.Transform.extend
+ deserialize: (serialized) ->
+ serialized
+
+ serialize: (deserialized) ->
+ deserialized
+
+`export default Transform`
diff --git a/assets/scripts/lib/travis/ajax.coffee b/app/utils/ajax.coffee
similarity index 92%
rename from assets/scripts/lib/travis/ajax.coffee
rename to app/utils/ajax.coffee
index 5b3a37ed..11ef8686 100644
--- a/assets/scripts/lib/travis/ajax.coffee
+++ b/app/utils/ajax.coffee
@@ -1,13 +1,16 @@
+`import Ember from 'ember';`
+`import config from 'travis/config/environment'`
+
jQuery.support.cors = true
-Travis.ajax = Em.Object.create
+default_options =
+ accepts:
+ json: 'application/json; version=2'
+
+ajax = Em.Object.create
publicEndpoints: [/\/repos\/?.*/, /\/builds\/?.*/, /\/jobs\/?.*/]
privateEndpoints: [/\/repos\/\d+\/caches/]
- DEFAULT_OPTIONS:
- accepts:
- json: 'application/json; version=2'
-
get: (url, callback, errorCallback) ->
@ajax(url, 'get', success: callback, error: errorCallback)
@@ -18,7 +21,7 @@ Travis.ajax = Em.Object.create
@ajax(url, 'patch', data: data, success: callback)
needsAuth: (method, url) ->
- return true if Travis.ajax.pro
+ return true if config.pro
return true if method != 'GET'
publicEndpoint = @publicEndpoints.find (pattern) ->
@@ -36,11 +39,11 @@ Travis.ajax = Em.Object.create
method = method || "GET"
method = method.toUpperCase()
- endpoint = Travis.config.api_endpoint || ''
+ endpoint = config.apiEndpoint || ''
options = options || {}
token = Travis.sessionStorage.getItem('travis.token')
- if token && (Travis.ajax.needsAuth(method, url) || options.forceAuth)
+ if token && (ajax.needsAuth(method, url) || options.forceAuth)
options.headers ||= {}
options.headers['Authorization'] ||= "token #{token}"
@@ -67,7 +70,7 @@ Travis.ajax = Em.Object.create
delete data.flash if data?
error.apply(this, arguments)
- options = $.extend(options, Travis.ajax.DEFAULT_OPTIONS)
+ options = $.extend(options, default_options)
if testMode?
console.log('Running ajax with', options.url)
@@ -148,3 +151,5 @@ Travis.ajax = Em.Object.create
xhr.send(data)
return promise
+
+`export default ajax`
diff --git a/assets/scripts/app/auth.coffee b/app/utils/auth.coffee
similarity index 75%
rename from assets/scripts/app/auth.coffee
rename to app/utils/auth.coffee
index ba6f6cef..6a894333 100644
--- a/assets/scripts/app/auth.coffee
+++ b/app/utils/auth.coffee
@@ -1,22 +1,28 @@
-window.Auth = Ember.Object.extend
+`import config from 'travis/config/environment'`
+`import Ajax from 'travis/utils/ajax'`
+
+Auth = Ember.Object.extend
state: "signed-out"
receivingEnd: "#{location.protocol}//#{location.host}"
init: ->
window.addEventListener('message', (e) => @receiveMessage(e))
+ token: ->
+ Travis.sessionStorage.getItem('travis.token')
+
endpoint: (->
- @container.lookup('application:main').config.api_endpoint
+ config.apiEndpoint
).property(),
signOut: ->
- Travis.storage.removeItem('travis.user')
- Travis.storage.removeItem('travis.token')
- Travis.sessionStorage.clear()
+ @storage.removeItem('travis.user')
+ @storage.removeItem('travis.token')
+ @sessionStorage.clear()
@set('state', 'signed-out')
@set('user', undefined)
if user = @get('currentUser')
- user.unload()
+ @store.unloadAll('user')
@set('currentUser', null)
@sendToApp('afterSignOut')
@@ -29,7 +35,7 @@ window.Auth = Ember.Object.extend
$('').hide().appendTo('body').attr('src', url)
autoSignIn: (data) ->
- data ||= @userDataFrom(Travis.sessionStorage) || @userDataFrom(Travis.storage)
+ data ||= @userDataFrom(@sessionStorage) || @userDataFrom(@storage)
@setData(data) if data
userDataFrom: (storage) ->
@@ -47,7 +53,7 @@ window.Auth = Ember.Object.extend
validateUser: (user) ->
fieldsToValidate = ['id', 'login', 'token', 'correct_scopes']
- if Travis.config.pro
+ if config.pro
fieldsToValidate.push 'channels'
fieldsToValidate.every( (field) => @validateHas(field, user) ) && user.correct_scopes
@@ -60,8 +66,8 @@ window.Auth = Ember.Object.extend
false
setData: (data) ->
- @storeData(data, Travis.sessionStorage)
- @storeData(data, Travis.storage) unless @userDataFrom(Travis.storage)
+ @storeData(data, @sessionStorage)
+ @storeData(data, @storage) unless @userDataFrom(@storage)
user = @loadUser(data.user)
@set('currentUser', user)
@@ -71,13 +77,13 @@ window.Auth = Ember.Object.extend
@refreshUserData(data.user)
refreshUserData: (user) ->
- Travis.ajax.get "/users/#{user.id}", (data) =>
- Travis.loadOrMerge(Travis.User, data.user)
+ Ajax.get "/users/#{user.id}", (data) =>
+ @store.pushPayload(users: [data.user])
# if user is still signed in, update saved data
if @get('signedIn')
data.user.token = user.token
- @storeData(data, Travis.sessionStorage)
- @storeData(data, Travis.storage)
+ @storeData(data, @sessionStorage)
+ @storeData(data, @storage)
, (status, xhr) =>
@signOut() if status == 403
@@ -98,8 +104,8 @@ window.Auth = Ember.Object.extend
storage.setItem('travis.user', JSON.stringify(data.user))
loadUser: (user) ->
- Travis.loadOrMerge(Travis.User, user)
- user = Travis.User.find(user.id)
+ @store.pushPayload(users: [user])
+ user = @store.recordForId('user', user.id)
user.get('permissions')
user
@@ -130,13 +136,14 @@ window.Auth = Ember.Object.extend
unless error.message =~ /Can't trigger action/
throw error
-Ember.onLoad 'Ember.Application', (Application) ->
- Application.initializer
- name: "auth",
+ userName: (->
+ @get('currentUser.name') || @get('currentUser.login')
+ ).property('currentUser.login', 'currentUser.name')
- initialize: (container, application) ->
- application.register 'auth:main', Auth
+ gravatarUrl: (->
+ "#{location.protocol}//www.gravatar.com/avatar/#{@get('currentUser.gravatarId')}?s=48&d=mm"
+ ).property('currentUser.gravatarId')
- application.inject('route', 'auth', 'auth:main')
- application.inject('controller', 'auth', 'auth:main')
- application.inject('application', 'auth', 'auth:main')
+ permissions: Ember.computed.alias('currentUser.permissions')
+
+`export default Auth`
diff --git a/assets/scripts/lib/ext/ember/computed.js b/app/utils/computed-limit.js
similarity index 77%
rename from assets/scripts/lib/ext/ember/computed.js
rename to app/utils/computed-limit.js
index 089f8fe1..e594acef 100644
--- a/assets/scripts/lib/ext/ember/computed.js
+++ b/app/utils/computed-limit.js
@@ -1,6 +1,8 @@
-Ember.computed.limit = function(dependentKey, limitKey) {
+import Ember from 'ember';
+
+var limit = function(dependentKey, limitKey) {
var options = {
- addedItem: function(array, item, changeMeta, instanceMeta) {
+ addedItem: function(array, item, changeMeta) {
var limit = Ember.get(this, limitKey);
if (changeMeta.index < limit) {
array.insertAt(changeMeta.index, item);
@@ -10,7 +12,7 @@ Ember.computed.limit = function(dependentKey, limitKey) {
}
return array;
},
- removedItem: function(array, item, changeMeta, instanceMeta) {
+ removedItem: function(array, item, changeMeta) {
var limit = Ember.get(this, limitKey);
if (changeMeta.index < limit && changeMeta.index < Ember.get(array, 'length')) {
array.removeAt(changeMeta.index, 1);
@@ -24,3 +26,5 @@ Ember.computed.limit = function(dependentKey, limitKey) {
};
return Ember.arrayComputed(dependentKey, limitKey, options);
};
+
+export default limit;
diff --git a/assets/scripts/app/models/extensions.coffee b/app/utils/duration-calculations.coffee
similarity index 64%
rename from assets/scripts/app/models/extensions.coffee
rename to app/utils/duration-calculations.coffee
index ce334f01..9ab8369b 100644
--- a/assets/scripts/app/models/extensions.coffee
+++ b/app/utils/duration-calculations.coffee
@@ -1,14 +1,19 @@
-Travis.DurationCalculations = Ember.Mixin.create
+`import Ember from 'ember'`
+`import { durationFrom } from 'travis/utils/helpers'`
+
+mixin = Ember.Mixin.create
duration: (->
if @get('notStarted')
null
else if duration = @get('_duration')
duration
else
- Travis.Helpers.durationFrom(@get('startedAt'), @get('finishedAt'))
+ durationFrom(@get('startedAt'), @get('finishedAt'))
).property('_duration', 'finishedAt', 'startedAt', 'notStarted', '_finishedAt', '_startedAt')
updateTimes: ->
unless @get('isFinished')
@notifyPropertyChange '_duration'
@notifyPropertyChange 'finished_at'
+
+`export default mixin`
diff --git a/app/utils/emoji-dictionary.coffee b/app/utils/emoji-dictionary.coffee
new file mode 100644
index 00000000..5ef923de
--- /dev/null
+++ b/app/utils/emoji-dictionary.coffee
@@ -0,0 +1,3 @@
+d = ['+1', '-1', '0', '1', '100', '109', '1234', '2', '3', '4', '5', '6', '7', '8', '8ball', '9', 'a', 'ab', 'abc', 'abcd', 'accept', 'aerial_tramway', 'airplane', 'alarm_clock', 'alien', 'ambulance', 'anchor', 'angel', 'anger', 'angry', 'anguished', 'ant', 'apple', 'aquarius', 'aries', 'arrow_backward', 'arrow_double_down', 'arrow_double_up', 'arrow_down', 'arrow_down_small', 'arrow_forward', 'arrow_heading_down', 'arrow_heading_up', 'arrow_left', 'arrow_lower_left', 'arrow_lower_right', 'arrow_right', 'arrow_right_hook', 'arrow_up', 'arrow_up_down', 'arrow_up_small', 'arrow_upper_left', 'arrow_upper_right', 'arrows_clockwise', 'arrows_counterclockwise', 'art', 'articulated_lorry', 'astonished', 'atm', 'b', 'baby', 'baby_bottle', 'baby_chick', 'baby_symbol', 'baggage_claim', 'balloon', 'ballot_box_with_check', 'bamboo', 'banana', 'bangbang', 'bank', 'bar_chart', 'barber', 'baseball', 'basketball', 'bath', 'bathtub', 'battery', 'bear', 'bee', 'beer', 'beers', 'beetle', 'beginner', 'bell', 'bento', 'bicyclist', 'bike', 'bikini', 'bird', 'birthday', 'black_circle', 'black_joker', 'black_nib', 'black_square', 'black_square_button', 'blossom', 'blowfish', 'blue_book', 'blue_car', 'blue_heart', 'blush', 'boar', 'boat', 'bomb', 'book', 'bookmark', 'bookmark_tabs', 'books', 'boom', 'boot', 'bouquet', 'bow', 'bowling', 'bowtie', 'boy', 'bread', 'bride_with_veil', 'bridge_at_night', 'briefcase', 'broken_heart', 'bug', 'bulb', 'bullettrain_front', 'bullettrain_side', 'bus', 'busstop', 'bust_in_silhouette', 'busts_in_silhouette', 'cactus', 'cake', 'calendar', 'calling', 'camel', 'camera', 'cancer', 'candy', 'capital_abcd', 'capricorn', 'car', 'card_index', 'carousel_horse', 'cat', 'cat2', 'cd', 'chart', 'chart_with_downwards_trend', 'chart_with_upwards_trend', 'checkered_flag', 'cherries', 'cherry_blossom', 'chestnut', 'chicken', 'children_crossing', 'chocolate_bar', 'christmas_tree', 'church', 'cinema', 'circus_tent', 'city_sunrise', 'city_sunset', 'cl', 'clap', 'clapper', 'clipboard', 'clock1', 'clock10', 'clock1030', 'clock11', 'clock1130', 'clock12', 'clock1230', 'clock130', 'clock2', 'clock230', 'clock3', 'clock330', 'clock4', 'clock430', 'clock5', 'clock530', 'clock6', 'clock630', 'clock7', 'clock730', 'clock8', 'clock830', 'clock9', 'clock930', 'closed_book', 'closed_lock_with_key', 'closed_umbrella', 'cloud', 'clubs', 'cn', 'cocktail', 'coffee', 'cold_sweat', 'collision', 'computer', 'confetti_ball', 'confounded', 'confused', 'congratulations', 'construction', 'construction_worker', 'convenience_store', 'cookie', 'cool', 'cop', 'copyright', 'corn', 'couple', 'couple_with_heart', 'couplekiss', 'cow', 'cow2', 'credit_card', 'crocodile', 'crossed_flags', 'crown', 'cry', 'crying_cat_face', 'crystal_ball', 'cupid', 'curly_loop', 'currency_exchange', 'curry', 'custard', 'customs', 'cyclone', 'dancer', 'dancers', 'dango', 'dart', 'dash', 'date', 'de', 'deciduous_tree', 'department_store', 'diamond_shape_with_a_dot_inside', 'diamonds', 'disappointed', 'disappointed_relieved', 'dizzy', 'dizzy_face', 'do_not_litter', 'dog', 'dog2', 'dollar', 'dolls', 'dolphin', 'donut', 'door', 'doughnut', 'dragon', 'dragon_face', 'dress', 'dromedary_camel', 'droplet', 'dvd', 'e-mail', 'ear', 'ear_of_rice', 'earth_africa', 'earth_americas', 'earth_asia', 'egg', 'eggplant', 'eight', 'eight_pointed_black_star', 'eight_spoked_asterisk', 'electric_plug', 'elephant', 'email', 'end', 'envelope', 'es', 'euro', 'european_castle', 'european_post_office', 'evergreen_tree', 'exclamation', 'expressionless', 'eyeglasses', 'eyes', 'facepunch', 'factory', 'fallen_leaf', 'family', 'fast_forward', 'fax', 'fearful', 'feelsgood', 'feet', 'ferris_wheel', 'file_folder', 'finnadie', 'fire', 'fire_engine', 'fireworks', 'first_quarter_moon', 'first_quarter_moon_with_face', 'fish', 'fish_cake', 'fishing_pole_and_fish', 'fist', 'five', 'flags', 'flashlight', 'floppy_disk', 'flower_playing_cards', 'flushed', 'foggy', 'football', 'fork_and_knife', 'fountain', 'four', 'four_leaf_clover', 'fr', 'free', 'fried_shrimp', 'fries', 'frog', 'frowning', 'fu', 'fuelpump', 'full_moon', 'full_moon_with_face', 'game_die', 'gb', 'gem', 'gemini', 'ghost', 'gift', 'gift_heart', 'girl', 'globe_with_meridians', 'goat', 'goberserk', 'godmode', 'golf', 'grapes', 'green_apple', 'green_book', 'green_heart', 'grey_exclamation', 'grey_question', 'grimacing', 'grin', 'grinning', 'guardsman', 'guitar', 'gun', 'haircut', 'hamburger', 'hammer', 'hamster', 'hand', 'handbag', 'hankey', 'hash', 'hatched_chick', 'hatching_chick', 'headphones', 'hear_no_evil', 'heart', 'heart_decoration', 'heart_eyes', 'heart_eyes_cat', 'heartbeat', 'heartpulse', 'hearts', 'heavy_check_mark', 'heavy_division_sign', 'heavy_dollar_sign', 'heavy_exclamation_mark', 'heavy_minus_sign', 'heavy_multiplication_x', 'heavy_plus_sign', 'helicopter', 'herb', 'hibiscus', 'high_brightness', 'high_heel', 'hocho', 'honey_pot', 'honeybee', 'horse', 'horse_racing', 'hospital', 'hotel', 'hotsprings', 'hourglass', 'hourglass_flowing_sand', 'house', 'house_with_garden', 'hurtrealbad', 'hushed', 'ice_cream', 'icecream', 'id', 'ideograph_advantage', 'imp', 'inbox_tray', 'incoming_envelope', 'information_desk_person', 'information_source', 'innocent', 'interrobang', 'iphone', 'it', 'izakaya_lantern', 'jack_o_lantern', 'japan', 'japanese_castle', 'japanese_goblin', 'japanese_ogre', 'jeans', 'joy', 'joy_cat', 'jp', 'key', 'keycap_ten', 'kimono', 'kiss', 'kissing', 'kissing_cat', 'kissing_closed_eyes', 'kissing_face', 'kissing_heart', 'kissing_smiling_eyes', 'koala', 'koko', 'kr', 'large_blue_circle', 'large_blue_diamond', 'large_orange_diamond', 'last_quarter_moon', 'last_quarter_moon_with_face', 'laughing', 'leaves', 'ledger', 'left_luggage', 'left_right_arrow', 'leftwards_arrow_with_hook', 'lemon', 'leo', 'leopard', 'libra', 'light_rail', 'link', 'lips', 'lipstick', 'lock', 'lock_with_ink_pen', 'lollipop', 'loop', 'loudspeaker', 'love_hotel', 'love_letter', 'low_brightness', 'm', 'mag', 'mag_right', 'mahjong', 'mailbox', 'mailbox_closed', 'mailbox_with_mail', 'mailbox_with_no_mail', 'man', 'man_with_gua_pi_mao', 'man_with_turban', 'mans_shoe', 'maple_leaf', 'mask', 'massage', 'meat_on_bone', 'mega', 'melon', 'memo', 'mens', 'metal', 'metro', 'microphone', 'microscope', 'milky_way', 'minibus', 'minidisc', 'mobile_phone_off', 'money_with_wings', 'moneybag', 'monkey', 'monkey_face', 'monorail', 'moon', 'mortar_board', 'mount_fuji', 'mountain_bicyclist', 'mountain_cableway', 'mountain_railway', 'mouse', 'mouse2', 'movie_camera', 'moyai', 'muscle', 'mushroom', 'musical_keyboard', 'musical_note', 'musical_score', 'mute', 'nail_care', 'name_badge', 'neckbeard', 'necktie', 'negative_squared_cross_mark', 'neutral_face', 'new', 'new_moon', 'new_moon_with_face', 'newspaper', 'ng', 'nine', 'no_bell', 'no_bicycles', 'no_entry', 'no_entry_sign', 'no_good', 'no_mobile_phones', 'no_mouth', 'no_pedestrians', 'no_smoking', 'non-potable_water', 'nose', 'notebook', 'notebook_with_decorative_cover', 'notes', 'nut_and_bolt', 'o', 'o2', 'ocean', 'octocat', 'octopus', 'oden', 'office', 'ok', 'ok_hand', 'ok_woman', 'older_man', 'older_woman', 'on', 'oncoming_automobile', 'oncoming_bus', 'oncoming_police_car', 'oncoming_taxi', 'one', 'open_file_folder', 'open_hands', 'open_mouth', 'ophiuchus', 'orange_book', 'outbox_tray', 'ox', 'page_facing_up', 'page_with_curl', 'pager', 'palm_tree', 'panda_face', 'paperclip', 'parking', 'part_alternation_mark', 'partly_sunny', 'passport_control', 'paw_prints', 'peach', 'pear', 'pencil', 'pencil2', 'penguin', 'pensive', 'performing_arts', 'persevere', 'person_frowning', 'person_with_blond_hair', 'person_with_pouting_face', 'phone', 'pig', 'pig2', 'pig_nose', 'pill', 'pineapple', 'pisces', 'pizza', 'plus1', 'point_down', 'point_left', 'point_right', 'point_up', 'point_up_2', 'police_car', 'poodle', 'poop', 'post_office', 'postal_horn', 'postbox', 'potable_water', 'pouch', 'poultry_leg', 'pound', 'pouting_cat', 'pray', 'princess', 'punch', 'purple_heart', 'purse', 'pushpin', 'put_litter_in_its_place', 'question', 'rabbit', 'rabbit2', 'racehorse', 'radio', 'radio_button', 'rage', 'rage1', 'rage2', 'rage3', 'rage4', 'railway_car', 'rainbow', 'raised_hand', 'raised_hands', 'raising_hand', 'ram', 'ramen', 'rat', 'recycle', 'red_car', 'red_circle', 'registered', 'relaxed', 'relieved', 'repeat', 'repeat_one', 'restroom', 'revolving_hearts', 'rewind', 'ribbon', 'rice', 'rice_ball', 'rice_cracker', 'rice_scene', 'ring', 'rocket', 'roller_coaster', 'rooster', 'rose', 'rotating_light', 'round_pushpin', 'rowboat', 'ru', 'rugby_football', 'runner', 'running', 'running_shirt_with_sash', 'sa', 'sagittarius', 'sailboat', 'sake', 'sandal', 'santa', 'satellite', 'satisfied', 'saxophone', 'school', 'school_satchel', 'scissors', 'scorpius', 'scream', 'scream_cat', 'scroll', 'seat', 'secret', 'see_no_evil', 'seedling', 'seven', 'shaved_ice', 'sheep', 'shell', 'ship', 'shipit', 'shirt', 'shit', 'shoe', 'shower', 'signal_strength', 'six', 'six_pointed_star', 'ski', 'skull', 'sleeping', 'sleepy', 'slot_machine', 'small_blue_diamond', 'small_orange_diamond', 'small_red_triangle', 'small_red_triangle_down', 'smile', 'smile_cat', 'smiley', 'smiley_cat', 'smiling_imp', 'smirk', 'smirk_cat', 'smoking', 'snail', 'snake', 'snowboarder', 'snowflake', 'snowman', 'sob', 'soccer', 'soon', 'sos', 'sound', 'space_invader', 'spades', 'spaghetti', 'sparkler', 'sparkles', 'sparkling_heart', 'speak_no_evil', 'speaker', 'speech_balloon', 'speedboat', 'squirrel', 'star', 'star2', 'stars', 'station', 'statue_of_liberty', 'steam_locomotive', 'stew', 'straight_ruler', 'strawberry', 'stuck_out_tongue', 'stuck_out_tongue_closed_eyes', 'stuck_out_tongue_winking_eye', 'sun_with_face', 'sunflower', 'sunglasses', 'sunny', 'sunrise', 'sunrise_over_mountains', 'surfer', 'sushi', 'suspect', 'suspension_railway', 'sweat', 'sweat_drops', 'sweat_smile', 'sweet_potato', 'swimmer', 'symbols', 'syringe', 'tada', 'tanabata_tree', 'tangerine', 'taurus', 'taxi', 'tea', 'telephone', 'telephone_receiver', 'telescope', 'tennis', 'tent', 'thought_balloon', 'three', 'thumbsdown', 'thumbsup', 'ticket', 'tiger', 'tiger2', 'tired_face', 'tm', 'toilet', 'tokyo_tower', 'tomato', 'tongue', 'top', 'tophat', 'tractor', 'traffic_light', 'train', 'train2', 'tram', 'triangular_flag_on_post', 'triangular_ruler', 'trident', 'triumph', 'trolleybus', 'trollface', 'trophy', 'tropical_drink', 'tropical_fish', 'truck', 'trumpet', 'tshirt', 'tulip', 'turtle', 'tv', 'twisted_rightwards_arrows', 'two', 'two_hearts', 'two_men_holding_hands', 'two_women_holding_hands', 'u5272', 'u5408', 'u55b6', 'u6307', 'u6708', 'u6709', 'u6e80', 'u7121', 'u7533', 'u7981', 'u7a7a', 'uk', 'umbrella', 'unamused', 'underage', 'unlock', 'up', 'us', 'v', 'vertical_traffic_light', 'vhs', 'vibration_mode', 'video_camera', 'video_game', 'violin', 'virgo', 'volcano', 'vs', 'walking', 'waning_crescent_moon', 'waning_gibbous_moon', 'warning', 'watch', 'water_buffalo', 'watermelon', 'wave', 'wavy_dash', 'waxing_crescent_moon', 'waxing_gibbous_moon', 'wc', 'weary', 'wedding', 'whale', 'whale2', 'wheelchair', 'white_check_mark', 'white_circle', 'white_flower', 'white_square', 'white_square_button', 'wind_chime', 'wine_glass', 'wink', 'wink2', 'wolf', 'woman', 'womans_clothes', 'womans_hat', 'womens', 'worried', 'wrench', 'x', 'yellow_heart', 'yen', 'yum', 'zap', 'zero', 'zzz']
+
+`export default d`
diff --git a/assets/scripts/lib/travis/expandable_record_array.coffee b/app/utils/expandable-record-array.coffee
similarity index 61%
rename from assets/scripts/lib/travis/expandable_record_array.coffee
rename to app/utils/expandable-record-array.coffee
index 4db4321e..9689a391 100644
--- a/assets/scripts/lib/travis/expandable_record_array.coffee
+++ b/app/utils/expandable-record-array.coffee
@@ -1,16 +1,14 @@
-Travis.ExpandableRecordArray = Ember.RecordArray.extend
+`import Ember from 'ember'`
+
+ExpandableRecordArray = Ember.ArrayProxy.extend
isLoaded: false
isLoading: false
promise: (->
- console.log 'promise'
self = this
new Ember.RSVP.Promise (resolve, reject) ->
- console.log 'inside promise'
observer = ->
- console.log 'observer', self.get('isLoaded')
if self.get('isLoaded')
- console.log 'resolve'
resolve(self)
self.removeObserver('isLoaded', observer)
true
@@ -21,23 +19,14 @@ Travis.ExpandableRecordArray = Ember.RecordArray.extend
load: (array) ->
@set 'isLoading', true
- self = this
+ array.then =>
+ array.forEach (record) =>
+ @pushObject(record) unless @contains(record)
- observer = ->
- if @get 'isLoaded'
- content = self.get 'content'
+ @set 'isLoading', false
+ @set 'isLoaded', true
- array.removeObserver 'isLoaded', observer
- array.forEach (record) ->
- self.pushObject(record) unless self.contains(record)
-
- self.set 'isLoading', false
- self.set 'isLoaded', true
-
- array.addObserver 'isLoaded', observer
-
- observe: (collection, filterWith) ->
- @set 'filterWith', filterWith
+ observe: (collection) ->
collection.addArrayObserver this,
willChange: 'observedArrayWillChange'
didChange: 'observedArraydidChange'
@@ -52,9 +41,11 @@ Travis.ExpandableRecordArray = Ember.RecordArray.extend
for object in addedObjects
# TODO: I'm not sure why deleted objects get here, but I'll just filter them
# for now
- if !object.get('isDeleted') && @get('filterWith').call(this, object)
+ if !object.get('isDeleted')
@pushObject(object) unless @contains(object)
pushObject: (record) ->
if content = @get('content')
content.pushObject(record) unless content.contains(record)
+
+`export default ExpandableRecordArray`
diff --git a/assets/scripts/app/helpers/helpers.coffee b/app/utils/helpers.coffee
similarity index 76%
rename from assets/scripts/app/helpers/helpers.coffee
rename to app/utils/helpers.coffee
index bd423d11..14799ee9 100644
--- a/assets/scripts/app/helpers/helpers.coffee
+++ b/app/utils/helpers.coffee
@@ -1,12 +1,9 @@
-require 'config/emoij'
-require 'helpers/urls'
+`import emojiDictionary from 'travis/utils/emoji-dictionary'`
+`import { githubCommit as githubCommitUrl } from 'travis/utils/urls'`
+`import configKeysMap from 'travis/utils/keys-map'`
+`import config from 'travis/config/environment'`
-config_keys_map = Travis.CONFIG_KEYS_MAP
-config = Travis.config
-githubCommitUrl = Travis.Urls.githubCommit
timeago = $.timeago
-intersect = $.intersect
-only = $.only
mapObject = $.map
colors = {
@@ -17,6 +14,28 @@ colors = {
canceled: 'gray'
}
+mapObject = (elems, callback, arg) ->
+ value = undefined
+ key = undefined
+ ret = []
+ i = 0
+ for key of elems
+ value = callback(elems[key], key, arg)
+ ret[ret.length] = value if value?
+ ret.concat.apply [], ret
+
+only = (object) ->
+ keys = Array::slice.apply(arguments)
+ object = (if (typeof keys[0] is 'object') then keys.shift() else this)
+ result = {}
+ for key of object
+ result[key] = object[key] unless keys.indexOf(key) is -1
+ result
+
+intersect = (array, other) ->
+ array.filter (element) ->
+ other.indexOf(element) != -1
+
compact = (object) ->
result = {}
(result[key] = value unless Ember.isEmpty(value)) for key, value of object || {}
@@ -35,12 +54,12 @@ formatSha = (sha) ->
(sha || '').substr(0, 7)
formatConfig = (config) ->
- config = only config, Object.keys(config_keys_map)
+ config = only config, Object.keys(configKeysMap)
values = mapObject config, (value, key) ->
value = (if value && value.join then value.join(', ') else value) || ''
if key == 'rvm' && "#{value}".match(/^\d+$/)
value = "#{value}.0"
- '%@: %@'.fmt config_keys_map[key], value
+ '%@: %@'.fmt configKeysMap[key], value
if values.length == 0 then '-' else values.join(', ')
formatMessage = (message, options) ->
@@ -53,11 +72,8 @@ formatMessage = (message, options) ->
message = message.replace /\n/g, '
'
message
-pathFrom = (url) ->
- (url || '').split('/').pop()
-
timeAgoInWords = (date) ->
- timeago.distanceInWords date
+ timeago date if date
durationFrom = (started, finished) ->
started = started and _toUtc(new Date(_normalizeDateString(started)))
@@ -94,12 +110,12 @@ _githubReferenceRegexp = new RegExp("([\\w-]+)?\\/?([\\w-]+)?(?:#|gh-)(\\d+)", '
_githubReferenceLink = (reference, current, matched) ->
owner = matched.owner || current.owner
repo = matched.repo || current.repo
- "#{reference}"
+ "#{reference}"
_githubUserRegexp = new RegExp("\\B@([\\w-]+)", 'g')
_githubUserLink = (reference, username) ->
- "#{reference}"
+ "#{reference}"
_githubCommitReferenceRegexp = new RegExp("([\\w-]+)?\\/([\\w-]+)?@([0-9A-Fa-f]+)", 'g')
@@ -128,7 +144,7 @@ _emojize = (text) ->
if emojis isnt null
emojis.uniq().forEach (emoji, ix) ->
strippedEmoji = emoji.substring(1, emoji.length - 1)
- unless EmojiDictionary.indexOf(strippedEmoji) is -1
+ unless emojiDictionary.indexOf(strippedEmoji) is -1
image = '
'
text = text.replace(new RegExp(emoji, 'g'), image)
text
@@ -138,30 +154,12 @@ _escape = (text) ->
configKeys = (config) ->
return [] unless config
- intersect(Object.keys(config), Object.keys(config_keys_map))
+ intersect(Object.keys(config), Object.keys(configKeysMap))
-Travis.Helpers =
- configKeys: configKeys
- _escape: _escape
- _emojize: _emojize
- _toUtc: _toUtc
- _nowUtc: _nowUtc
- _normalizeDateString: _normalizeDateString
- _githubCommitReferenceLink: _githubCommitReferenceLink
- _githubCommitReferenceRegexp: _githubCommitReferenceRegexp
- _githubUserLink: _githubUserLink
- _githubUserRegexp: _githubUserRegexp
- _githubReferenceLink: _githubReferenceLink
- _githubReferenceRegexp: _githubReferenceRegexp
- githubify: githubify
- timeInWords: timeInWords
- durationFrom: durationFrom
- timeAgoInWords: timeAgoInWords
- pathFrom: pathFrom
- formatMessage: formatMessage
- formatConfig: formatConfig
- formatSha: formatSha
- formatCommit: formatCommit
- colorForState: colorForState
- safe: safe
- compact: compact
+pathFrom = (url) ->
+ (url || '').split('/').pop()
+
+`export {
+ configKeys, githubify, timeInWords, durationFrom, timeAgoInWords, formatMessage, formatConfig,
+ formatSha, formatCommit, colorForState, safe, compact, pathFrom
+}`
diff --git a/app/utils/keys-map.coffee b/app/utils/keys-map.coffee
new file mode 100644
index 00000000..c22ea01d
--- /dev/null
+++ b/app/utils/keys-map.coffee
@@ -0,0 +1,26 @@
+configKeysMap = {
+ go: 'Go'
+ rvm: 'Ruby'
+ gemfile: 'Gemfile'
+ env: 'ENV'
+ jdk: 'JDK'
+ otp_release: 'OTP Release'
+ php: 'PHP'
+ node_js: 'Node.js'
+ perl: 'Perl'
+ python: 'Python'
+ scala: 'Scala'
+ compiler: 'Compiler'
+ ghc: 'GHC'
+ os: 'OS'
+ ruby: 'Ruby'
+ xcode_sdk: 'Xcode SDK'
+ xcode_scheme:'Xcode Scheme'
+ d: 'D'
+ julia: 'Julia'
+ csharp: 'C#'
+ dart: 'Dart'
+ elixir: 'Elixir'
+}
+
+`export default configKeysMap`
diff --git a/assets/scripts/lib/travis/limited_array.coffee b/app/utils/limited-array.coffee
similarity index 68%
rename from assets/scripts/lib/travis/limited_array.coffee
rename to app/utils/limited-array.coffee
index f5f9941f..af6637aa 100644
--- a/assets/scripts/lib/travis/limited_array.coffee
+++ b/app/utils/limited-array.coffee
@@ -1,7 +1,10 @@
-Travis.LimitedArray = Em.ArrayProxy.extend
+`import Ember from 'ember'`
+`import limit from 'travis/utils/computed-limit'`
+
+LimitedArray = Ember.ArrayProxy.extend
limit: 10
isLoadedBinding: 'content.isLoaded'
- arrangedContent: Ember.computed.limit('content', 'limit')
+ arrangedContent: limit('content', 'limit')
totalLength: (->
@get('content.length')
@@ -21,3 +24,5 @@ Travis.LimitedArray = Em.ArrayProxy.extend
showAll: ->
@set 'limit', Infinity
+
+`export default LimitedArray`
diff --git a/assets/scripts/lib/travis/lines_selector.coffee b/app/utils/lines-selector.coffee
similarity index 81%
rename from assets/scripts/lib/travis/lines_selector.coffee
rename to app/utils/lines-selector.coffee
index 1f81002c..92812a06 100644
--- a/assets/scripts/lib/travis/lines_selector.coffee
+++ b/app/utils/lines-selector.coffee
@@ -1,4 +1,6 @@
-class Travis.LinesSelector
+`import Ember from 'ember'`
+
+class LinesSelector
Location:
getHash: ->
window.location.hash
@@ -29,16 +31,24 @@ class Travis.LinesSelector
willDestroy: ->
@location.setHash('')
+ @destroyed = true
loadLineNumbers: (element, multiple) ->
@setHashValueWithLine(element, multiple)
@highlightLines()
- highlightLines: ->
+ highlightLines: (tries) ->
+ tries ||= 0
@removeAllHighlights()
if lines = @getSelectedLines()
- @element.find('p:visible').slice(lines.first - 1, lines.last).addClass('highlight')
+ elements = @element.find('p:visible').slice(lines.first - 1, lines.last)
+ if elements.length
+ elements.addClass('highlight')
+ else if tries < 4
+ Ember.run.later this, (-> @highlightLines(tries + 1) unless @destroyed) , 500
+ return
+
@scroll.tryScroll()
@unfoldLines()
@@ -71,3 +81,5 @@ class Travis.LinesSelector
first = match[1]
last = match[3] || match[1]
{first: first, last: last}
+
+`export default LinesSelector`
diff --git a/app/utils/location.coffee b/app/utils/location.coffee
new file mode 100644
index 00000000..822b34bd
--- /dev/null
+++ b/app/utils/location.coffee
@@ -0,0 +1,8 @@
+`import Ember from 'ember'`
+
+Location = Ember.HistoryLocation.extend
+ getURL: ->
+ location = @get('location')
+ location.pathname + location.hash
+
+`export default Location`
diff --git a/assets/scripts/lib/travis/log_chunks.coffee b/app/utils/log-chunks.coffee
similarity index 95%
rename from assets/scripts/lib/travis/log_chunks.coffee
rename to app/utils/log-chunks.coffee
index 9570ad4a..9c1abd11 100644
--- a/assets/scripts/lib/travis/log_chunks.coffee
+++ b/app/utils/log-chunks.coffee
@@ -1,4 +1,6 @@
-Travis.LogChunks = Em.ArrayProxy.extend
+`import Ember from 'ember'`
+
+LogChunks = Ember.ArrayProxy.extend
timeout: 30000
init: ->
@@ -80,3 +82,5 @@ Travis.LogChunks = Em.ArrayProxy.extend
Ember.run.once this, ->
@tryFinalizing()
@resetTimeout()
+
+`export default LogChunks`
diff --git a/assets/scripts/lib/travis/log_folder.coffee b/app/utils/log-folder.coffee
similarity index 92%
rename from assets/scripts/lib/travis/log_folder.coffee
rename to app/utils/log-folder.coffee
index 1d1bb1be..78a01410 100644
--- a/assets/scripts/lib/travis/log_folder.coffee
+++ b/app/utils/log-folder.coffee
@@ -1,4 +1,4 @@
-class Travis.LogFolder
+class LogFolder
constructor: (@element) ->
@element.on 'click', '.fold', (event) =>
folder = @getFolderFromLine $(event.target)
@@ -22,3 +22,5 @@ class Travis.LogFolder
getFolderFromLine: (line) ->
line.parent('.fold')
+
+`export default LogFolder`
diff --git a/app/utils/pusher.coffee b/app/utils/pusher.coffee
new file mode 100644
index 00000000..05c97e5b
--- /dev/null
+++ b/app/utils/pusher.coffee
@@ -0,0 +1,172 @@
+`import ENV from 'travis/config/environment'`
+`import Ajax from 'travis/utils/ajax'`
+
+TravisPusher = (config) ->
+ @init(config)
+ this
+
+TravisPusher.prototype.active_channels = []
+
+TravisPusher.prototype.init = (config) ->
+ Pusher.warn = @warn.bind(this)
+ Pusher.host = config.host if config.host
+ @pusher = new Pusher(config.key, encrypted: config.encrypted, disableStats: true)
+
+ @callbacksToProcess = []
+
+ Visibility.change (e, state) =>
+ @processSavedCallbacks() if state == 'visible'
+
+ setInterval @processSavedCallbacks.bind(this), @processingIntervalWhenHidden
+
+TravisPusher.prototype.subscribeAll = (channels) ->
+ @subscribe(channel) for channel in channels
+
+TravisPusher.prototype.unsubscribeAll = (channels) ->
+ @unsubscribe(channel) for channel in channels
+
+TravisPusher.prototype.subscribe = (channel) ->
+ return unless channel
+ channel = @prefix(channel)
+ console.log("subscribing to #{channel}")
+ unless @pusher?.channel(channel)
+ @pusher.subscribe(channel).bind_all((event, data) => @receive(event, data))
+
+TravisPusher.prototype.unsubscribe = (channel) ->
+ return unless channel
+ channel = @prefix(channel)
+ console.log("unsubscribing from #{channel}")
+ @pusher.unsubscribe(channel) if @pusher?.channel(channel)
+
+TravisPusher.prototype.prefix = (channel) ->
+ prefix = ENV.pusher.channel_prefix || ''
+ if channel.indexOf(prefix) != 0
+ "#{prefix}#{channel}"
+ else
+ channel
+
+# process pusher messages in batches every 5 minutes when the page is hidden
+TravisPusher.prototype.processingIntervalWhenHidden = 1000 * 60 * 5
+
+TravisPusher.prototype.receive = (event, data) ->
+ return if event.substr(0, 6) == 'pusher'
+ data = @normalize(event, data) if data.id
+
+ @processWhenVisible =>
+ # TODO remove job:requeued, once sf-restart-event has been merged
+ # TODO this also needs to clear logs on build:created if matrix jobs are already loaded
+ if event == 'job:created' || event == 'job:requeued'
+ if job = @store.getById('job', data.job.id)
+ job.clearLog()
+
+ Ember.run.next =>
+ @store.receivePusherEvent(event, data)
+
+TravisPusher.prototype.processSavedCallbacks = ->
+ while callback = @callbacksToProcess.shiftObject()
+ callback.call(this)
+
+TravisPusher.prototype.processLater = (callback) ->
+ @callbacksToProcess.pushObject(callback)
+
+TravisPusher.prototype.processWhenVisible = (callback) ->
+ if Visibility.hidden() && Visibility.isSupported()
+ @processLater(callback)
+ else
+ callback.call(this)
+
+TravisPusher.prototype.normalize = (event, data) ->
+ switch event
+ when 'build:started', 'build:finished'
+ data
+ when 'job:created', 'job:started', 'job:requeued', 'job:finished', 'job:log', 'job:canceled', 'job:received'
+ data.queue = data.queue.replace('builds.', '') if data.queue
+ { job: data }
+ when 'worker:added', 'worker:updated', 'worker:removed'
+ { worker: data }
+ when 'annotation:created', 'annotation:updated'
+ { annotation: data }
+
+TravisPusher.prototype.warn = (type, object) ->
+ console.warn(type, object.error) unless @ignoreWarning(type, object.error)
+
+TravisPusher.prototype.ignoreWarning = (type, error) ->
+ code = error?.data?.code || 0
+ message = error?.data?.message || ''
+ @ignoreCode(code) || @ignoreMessage(message)
+
+TravisPusher.prototype.ignoreCode = (code) ->
+ code == 1006
+
+TravisPusher.prototype.ignoreMessage = (message) ->
+ message.indexOf('Existing subscription') == 0 or message.indexOf('No current subscription') == 0
+
+Pusher.SockJSTransport.isSupported = -> false if ENV.pusher.host != 'ws.pusherapp.com'
+
+if ENV.pro
+ Pusher.channel_auth_transport = 'bulk_ajax'
+
+ Pusher.authorizers.bulk_ajax = (socketId, _callback) ->
+ channels = Travis.pusher.pusher.channels
+ channels.callbacks ||= []
+
+ name = this.channel.name
+ names = Object.keys(channels.channels)
+
+ channels.callbacks.push (auths) ->
+ _callback(false, auth: auths[name])
+
+ unless channels.fetching
+ channels.fetching = true
+ Ajax.post Pusher.channel_auth_endpoint, { socket_id: socketId, channels: names }, (data) ->
+ channels.fetching = false
+ callback(data.channels) for callback in channels.callbacks
+
+
+ Pusher.getDefaultStrategy = (config) ->
+ [
+ [":def", "ws_options", {
+ hostUnencrypted: config.wsHost + ":" + config.wsPort + (ENV.pusher.path && "/#{config.pusher.path}" || ''),
+ hostEncrypted: config.wsHost + ":" + config.wssPort + (ENV.pusher.path && "/#{config.pusher.path}" || '')
+ path: config.path
+ }],
+ [":def", "sockjs_options", {
+ hostUnencrypted: config.httpHost + ":" + config.httpPort,
+ hostEncrypted: config.httpHost + ":" + config.httpsPort
+ }],
+ [":def", "timeouts", {
+ loop: true,
+ timeout: 15000,
+ timeoutLimit: 60000
+ }],
+
+ [":def", "ws_manager", [":transport_manager", {
+ lives: 2,
+ minPingDelay: 10000,
+ maxPingDelay: config.activity_timeout
+ }]],
+
+ [":def_transport", "ws", "ws", 3, ":ws_options", ":ws_manager"],
+ [":def_transport", "flash", "flash", 2, ":ws_options", ":ws_manager"],
+ [":def_transport", "sockjs", "sockjs", 1, ":sockjs_options"],
+ [":def", "ws_loop", [":sequential", ":timeouts", ":ws"]],
+ [":def", "flash_loop", [":sequential", ":timeouts", ":flash"]],
+ [":def", "sockjs_loop", [":sequential", ":timeouts", ":sockjs"]],
+
+ [":def", "strategy",
+ [":cached", 1800000,
+ [":first_connected",
+ [":if", [":is_supported", ":ws"], [
+ ":best_connected_ever", ":ws_loop", [":delayed", 2000, [":sockjs_loop"]]
+ ], [":if", [":is_supported", ":flash"], [
+ ":best_connected_ever", ":flash_loop", [":delayed", 2000, [":sockjs_loop"]]
+ ], [
+ ":sockjs_loop"
+ ]
+ ]]
+ ]
+ ]
+ ]
+ ]
+
+`export default TravisPusher`
diff --git a/app/utils/slider.coffee b/app/utils/slider.coffee
new file mode 100644
index 00000000..cfccf992
--- /dev/null
+++ b/app/utils/slider.coffee
@@ -0,0 +1,24 @@
+`import Ember from 'ember'`
+
+Slider = (storage) ->
+ @minimize() if storage.getItem('travis.maximized') == 'true'
+ this
+
+Slider.prototype.persist = ->
+ Travis.storage.setItem('travis.maximized', @isMinimized())
+
+Slider.prototype.isMinimized = ->
+ return $('body').hasClass('maximized');
+
+Slider.prototype.minimize = ->
+ $('body').addClass('maximized')
+
+Slider.prototype.toggle = ->
+ $('body').toggleClass('maximized')
+ @persist()
+ # TODO gotta force redraws here :/
+ element = $('')
+ $('#top .profile').append(element)
+ Ember.run.later (-> element.remove()), 10
+
+`export default Slider`
diff --git a/app/utils/status-image-formats.coffee b/app/utils/status-image-formats.coffee
new file mode 100644
index 00000000..a2faa313
--- /dev/null
+++ b/app/utils/status-image-formats.coffee
@@ -0,0 +1,49 @@
+`import { ccXml as ccXmlUrl, statusImage as statusImageUrl } from 'travis/utils/urls'`
+
+urlRepo = ( (slug) ->
+ "https://#{location.host}/#{slug}"
+)
+
+markdownStatusImage = ( (url, slug, branch) ->
+ "[})](#{url})"
+)
+
+textileStatusImage = ( (url, slug, branch) ->
+ "!#{statusImageUrl(slug, branch)}!:#{url}"
+)
+
+rdocStatusImage = ( (url, slug, branch) ->
+ "{
}[#{url}]"
+)
+
+asciidocStatusImage = ( (url, slug, branch) ->
+ "image:#{statusImageUrl(slug, branch)}[\"Build Status\", link=\"#{url}\"]"
+)
+
+rstStatusImage = ( (url, slug, branch) ->
+ ".. image:: #{statusImageUrl(slug, branch)}\n :target: #{url}"
+)
+
+podStatusImage = ( (url, slug, branch) ->
+ "=for HTML
"
+)
+
+ccxmlStatusUrl = ( (slug) ->
+ ccXmlUrl(slug)
+)
+
+format = (version, slug, branch) ->
+ url = urlRepo(slug)
+
+ switch version
+ when 'Image URL' then statusImageUrl(slug, branch)
+ when 'Markdown' then markdownStatusImage(url, slug, branch)
+ when 'Textile' then textileStatusImage(url, slug, branch)
+ when 'Rdoc' then rdocStatusImage(url, slug, branch)
+ when 'AsciiDoc' then asciidocStatusImage(url, slug, branch)
+ when 'Rst' then rstStatusImage(url, slug, branch)
+ when 'Pod' then podStatusImage(url, slug, branch)
+ when 'CCTray' then ccxmlStatusUrl(url, slug, branch)
+
+
+`export default format`
diff --git a/assets/scripts/app/tailing.coffee b/app/utils/tailing.coffee
similarity index 52%
rename from assets/scripts/app/tailing.coffee
rename to app/utils/tailing.coffee
index 39f10452..46df53c8 100644
--- a/assets/scripts/app/tailing.coffee
+++ b/app/utils/tailing.coffee
@@ -1,37 +1,6 @@
-class Travis.ToTop
- # NOTE: I could have probably extract fixed positioning from
- # Tailing, but then I would need to parametrize positionElement
- # function to make it flexible to handle both cases. In that
- # situation I prefer a bit less DRY code over simplicity of
- # the calculations.
- constructor: (@window, @element_selector, @container_selector) ->
- @position = @window.scrollTop()
- @window.scroll( $.throttle( 200, @onScroll.bind(this) ) )
- this
+`import Ember from 'ember'`
- element: ->
- $(@element_selector)
- container: ->
- $(@container_selector)
-
- onScroll: ->
- @positionElement()
-
- positionElement: ->
- element = @element()
- container = @container()
- return if element.length is 0
- containerHeight = container.outerHeight()
- windowHeight = @window.height()
- offset = container.offset().top + containerHeight - (@window.scrollTop() + windowHeight)
- max = containerHeight - windowHeight
- offset = max if offset > max
- if offset > 0
- element.css(bottom: offset + 4)
- else
- element.css(bottom: 2)
-
-class @Travis.Tailing
+class Tailing
options:
timeout: 200
@@ -42,7 +11,8 @@ class @Travis.Tailing
constructor: (@window, @tail_selector, @log_selector) ->
@position = @window.scrollTop()
- @window.scroll( $.throttle( 200, @onScroll.bind(this) ) )
+ @window.scroll =>
+ Ember.run.throttle(this, @onScroll, [], 200, false)
this
run: ->
@@ -93,3 +63,5 @@ class @Travis.Tailing
tail.css(top: offset - 2)
else
tail.css(top: 0)
+
+`export default Tailing`
diff --git a/app/utils/test-auth.coffee b/app/utils/test-auth.coffee
new file mode 100644
index 00000000..fdffd7a3
--- /dev/null
+++ b/app/utils/test-auth.coffee
@@ -0,0 +1,51 @@
+`import Ember from 'ember'`
+
+Auth = Ember.Object.extend
+ state: 'signed-out'
+
+ # I want to disable auto sign in for tests for now, the plan is to either
+ # explicitly say that you're signed in or out (the latter being the default)
+ autoSignIn: (->)
+
+ signOutForTests: ->
+ @set('state', 'signed-out')
+ @set('currentUser', null)
+
+ signInForTests: (user) ->
+ @set('state', 'signed-in')
+ if user.constructor.typeKey? != 'user'
+ @store.pushPayload(users: [user])
+ user = @store.recordForId('user', user.id)
+
+ @set('currentUser', user)
+
+ # TODO: we use these properties in templates, but there
+ # really should be something like a 'session' service that can be
+ # injected where we need it
+ userName: (->
+ @get('currentUser.name') || @get('currentUser.login')
+ ).property('currentUser.login', 'currentUser.name')
+
+ gravatarUrl: (->
+ "#{location.protocol}//www.gravatar.com/avatar/#{@get('currentUser.gravatarId')}?s=48&d=mm"
+ ).property('currentUser.gravatarId')
+
+ permissions: Ember.computed.alias('currentUser.permissions')
+
+ signedIn: (->
+ @get('state') == 'signed-in'
+ ).property('state')
+
+ signedOut: (->
+ @get('state') == 'signed-out'
+ ).property('state')
+
+ signingIn: (->
+ @get('state') == 'signing-in'
+ ).property('state')
+
+ token: ->
+ if @get('state') == 'signed-in'
+ 'a-token'
+
+`export default Auth`
diff --git a/app/utils/to-top.coffee b/app/utils/to-top.coffee
new file mode 100644
index 00000000..abc21925
--- /dev/null
+++ b/app/utils/to-top.coffee
@@ -0,0 +1,37 @@
+`import Ember from 'ember'`
+
+class ToTop
+ # NOTE: I could have probably extract fixed positioning from
+ # Tailing, but then I would need to parametrize positionElement
+ # function to make it flexible to handle both cases. In that
+ # situation I prefer a bit less DRY code over simplicity of
+ # the calculations.
+ constructor: (@window, @element_selector, @container_selector) ->
+ @position = @window.scrollTop()
+ @window.scroll =>
+ Ember.run.throttle(this, @onScroll, [], 200, false)
+ this
+
+ element: ->
+ $(@element_selector)
+ container: ->
+ $(@container_selector)
+
+ onScroll: ->
+ @positionElement()
+
+ positionElement: ->
+ element = @element()
+ container = @container()
+ return if element.length is 0
+ containerHeight = container.outerHeight()
+ windowHeight = @window.height()
+ offset = container.offset().top + containerHeight - (@window.scrollTop() + windowHeight)
+ max = containerHeight - windowHeight
+ offset = max if offset > max
+ if offset > 0
+ element.css(bottom: offset + 4)
+ else
+ element.css(bottom: 2)
+
+`export default ToTop`
diff --git a/app/utils/urls.coffee b/app/utils/urls.coffee
new file mode 100644
index 00000000..a6088527
--- /dev/null
+++ b/app/utils/urls.coffee
@@ -0,0 +1,44 @@
+`import config from 'travis/config/environment'`
+
+plainTextLog = (id) ->
+ "#{config.apiEndpoint}/jobs/#{id}/log.txt?deansi=true"
+
+githubPullRequest = (slug, pullRequestNumber) ->
+ "#{config.sourceEndpoint}/#{slug}/pull/#{pullRequestNumber}"
+
+githubCommit = (slug, sha) ->
+ "#{config.sourceEndpoint}/#{slug}/commit/#{sha}"
+
+githubRepo = (slug) ->
+ "#{config.sourceEndpoint}/#{slug}"
+
+githubWatchers = (slug) ->
+ "#{config.sourceEndpoint}/#{slug}/watchers"
+
+githubNetwork = (slug) ->
+ "#{config.sourceEndpoint}/#{slug}/network"
+
+githubAdmin = (slug) ->
+ "#{config.sourceEndpoint}/#{slug}/settings/hooks#travis_minibucket"
+
+statusImage = (slug, branch) ->
+ if config.pro
+ token = Travis.__container__.lookup('controller:currentUser').get('token')
+ "#{location.protocol}//#{location.host}/#{slug}.svg?token=#{token}" + if branch then "&branch=#{branch}" else ''
+ else
+ "#{location.protocol}//#{location.host}/#{slug}.svg" + if branch then "?branch=#{encodeURIComponent(branch)}" else ''
+
+ccXml = (slug) ->
+ if config.pro
+ token = Travis.__container__.lookup('controller:currentUser').get('token')
+ "##{config.apiEndpoint}/repos/#{slug}/cc.xml?token=#{token}"
+ else
+ "#{config.apiEndpoint}/repos/#{slug}/cc.xml"
+
+email = (email) ->
+ "mailto:#{email}"
+
+gravatarImage = (email, size) ->
+ "https://www.gravatar.com/avatar/#{md5(email)}?s=#{size}&d=#{encodeURIComponent(config.avatar_default_url)}"
+
+`export { plainTextLog, githubPullRequest, githubCommit, githubRepo, githubWatchers, githubNetwork, githubAdmin, statusImage, ccXml, email, gravatarImage }`
diff --git a/assets/scripts/lib/travis/validations.coffee b/app/utils/validations.coffee
similarity index 93%
rename from assets/scripts/lib/travis/validations.coffee
rename to app/utils/validations.coffee
index 25ca1567..be4998f3 100644
--- a/assets/scripts/lib/travis/validations.coffee
+++ b/app/utils/validations.coffee
@@ -1,4 +1,4 @@
-get = Ember.get
+`import Ember from 'ember'`
Error = Ember.Object.extend
message: (->
@@ -43,13 +43,13 @@ Validator = Ember.Object.extend
isValid: (target) ->
name = @get('name')
- @get('validator').call(target, get(target, name))
+ @get('validator').call(target, Ember.get(target, name))
validate: (target) ->
unless @isValid(target)
@setError(target)
-Travis.Validations = Ember.Mixin.create
+Validations = Ember.Mixin.create
init: ->
@_super.apply this, arguments
@@ -89,3 +89,5 @@ Travis.Validations = Ember.Mixin.create
addErrorsFromResponse: (errors) ->
for error in errors
@get('errors').add(error.field, error.code)
+
+`export default Validations`
diff --git a/app/views/.gitkeep b/app/views/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/app/views/accounts-info.coffee b/app/views/accounts-info.coffee
new file mode 100644
index 00000000..ac252392
--- /dev/null
+++ b/app/views/accounts-info.coffee
@@ -0,0 +1,11 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'profile/tabs/user'
+ userBinding: 'controller.user'
+
+ gravatarUrl: (->
+ "#{location.protocol}//www.gravatar.com/avatar/#{@get('user.gravatarId')}?s=200&d=mm"
+ ).property('user.gravatarId')
+
+`export default View`
diff --git a/app/views/accounts-list.coffee b/app/views/accounts-list.coffee
new file mode 100644
index 00000000..20871935
--- /dev/null
+++ b/app/views/accounts-list.coffee
@@ -0,0 +1,31 @@
+`import Ember from 'ember'`
+`import { account as accountUrl } from 'travis/utils/urls'`
+
+View = Ember.CollectionView.extend
+ elementId: 'accounts'
+ accountBinding: 'content'
+ tagName: 'ul'
+
+ emptyView: Ember.View.extend
+ templateName: 'accounts-list/empty'
+
+ itemViewClass: Ember.View.extend
+ accountBinding: 'content'
+ typeBinding: 'content.type'
+ selectedBinding: 'account.selected'
+
+ classNames: ['account']
+ classNameBindings: ['type', 'selected']
+
+ name: (->
+ @get('content.name') || @get('content.login')
+ ).property('content.login', 'content.name')
+
+ urlAccount: (->
+ accountUrl(@get('account.login'))
+ ).property('account.login')
+
+ click: ->
+ @get('controller').transitionToRoute("account", @get('account.login'))
+
+`export default View`
diff --git a/app/views/annotation.coffee b/app/views/annotation.coffee
new file mode 100644
index 00000000..e5c1f2c2
--- /dev/null
+++ b/app/views/annotation.coffee
@@ -0,0 +1,6 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'annotations/list'
+
+`export default View`
diff --git a/app/views/annotations.coffee b/app/views/annotations.coffee
new file mode 100644
index 00000000..46fb86a2
--- /dev/null
+++ b/app/views/annotations.coffee
@@ -0,0 +1,5 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend()
+
+`export default View`
diff --git a/app/views/application.coffee b/app/views/application.coffee
new file mode 100644
index 00000000..d14ffb73
--- /dev/null
+++ b/app/views/application.coffee
@@ -0,0 +1,19 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ classNames: ['application']
+ click: (event) ->
+ # TODO: this solves the case of closing menus and popups,
+ # but I would like to rewrite it later, not sure how
+ # yet, but this does not seem optimal
+ targetAndParents = $(event.target).parents().andSelf()
+ if ! ( targetAndParents.hasClass('open-popup') || targetAndParents.hasClass('popup') )
+ @popupCloseAll()
+
+ # TODO: I needed to add second check to this conditional, because for some reason
+ # event.stopPropagation() in menu() function in RepoShowToolsView does
+ # not prevent calling following code
+ if ! targetAndParents.hasClass('menu') && !targetAndParents.is('#tools > a')
+ $('.menu').removeClass('display')
+
+`export default View`
diff --git a/app/views/application/loading.coffee b/app/views/application/loading.coffee
new file mode 100644
index 00000000..524f31d2
--- /dev/null
+++ b/app/views/application/loading.coffee
@@ -0,0 +1,5 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend()
+
+`export default View`
diff --git a/app/views/auth/signin.coffee b/app/views/auth/signin.coffee
new file mode 100644
index 00000000..05804613
--- /dev/null
+++ b/app/views/auth/signin.coffee
@@ -0,0 +1,6 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ layoutName: 'layouts/simple'
+
+`export default View`
diff --git a/app/views/basic.coffee b/app/views/basic.coffee
new file mode 100644
index 00000000..c302c38b
--- /dev/null
+++ b/app/views/basic.coffee
@@ -0,0 +1,21 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ actions:
+ popup: (name) -> @popup(name)
+ popupClose: -> @popupClose()
+
+ popup: (name) ->
+ @popupCloseAll()
+ name = event?.target?.name || name
+ $("##{name}").toggleClass('display')
+ popupClose: ->
+ $('.popup').removeClass('display')
+ popupCloseAll: ->
+ if view = Ember.View.currentPopupView
+ view.destroy()
+ Ember.View.currentPopupView = null
+
+ $('.popup').removeClass('display')
+
+`export default View`
diff --git a/app/views/build.coffee b/app/views/build.coffee
new file mode 100644
index 00000000..c1921190
--- /dev/null
+++ b/app/views/build.coffee
@@ -0,0 +1,13 @@
+`import { colorForState } from 'travis/utils/helpers'`
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ classNameBindings: ['color', 'loading']
+ buildBinding: 'controller.build'
+ loadingBinding: 'controller.loading'
+
+ color: (->
+ colorForState(@get('build.state'))
+ ).property('build.state')
+
+`export default View`
diff --git a/app/views/dashboard.coffee b/app/views/dashboard.coffee
new file mode 100644
index 00000000..2bad9c73
--- /dev/null
+++ b/app/views/dashboard.coffee
@@ -0,0 +1,7 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ layoutName: 'layouts/dashboard'
+ classNames: ['dashboard']
+
+`export default View`
diff --git a/app/views/dashboard/loading.coffee b/app/views/dashboard/loading.coffee
new file mode 100644
index 00000000..46fb86a2
--- /dev/null
+++ b/app/views/dashboard/loading.coffee
@@ -0,0 +1,5 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend()
+
+`export default View`
diff --git a/app/views/error404.coffee b/app/views/error404.coffee
new file mode 100644
index 00000000..8066dc8c
--- /dev/null
+++ b/app/views/error404.coffee
@@ -0,0 +1,7 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ layoutName: 'layouts/error'
+ classNames: ['error']
+
+`export default View`
diff --git a/app/views/first-sync.coffee b/app/views/first-sync.coffee
new file mode 100644
index 00000000..a33e0330
--- /dev/null
+++ b/app/views/first-sync.coffee
@@ -0,0 +1,6 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ layoutName: 'layouts/simple'
+
+`export default View`
diff --git a/app/views/flash-item.coffee b/app/views/flash-item.coffee
new file mode 100644
index 00000000..9b8107f4
--- /dev/null
+++ b/app/views/flash-item.coffee
@@ -0,0 +1,15 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ tagName: 'li'
+ classNameBindings: ['type']
+
+ type: (->
+ @get('flash.type') || 'broadcast'
+ ).property('flash.type')
+
+ actions:
+ close: ->
+ @get('controller').close(@get('flash'))
+
+`export default View`
diff --git a/app/views/flash.coffee b/app/views/flash.coffee
new file mode 100644
index 00000000..f23d3fc6
--- /dev/null
+++ b/app/views/flash.coffee
@@ -0,0 +1,8 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ classNames: ['flash']
+ tagname: 'ul'
+ templateName: 'layouts/flash'
+
+`export default View`
diff --git a/app/views/hooks.coffee b/app/views/hooks.coffee
new file mode 100644
index 00000000..0f2b8b8b
--- /dev/null
+++ b/app/views/hooks.coffee
@@ -0,0 +1,12 @@
+`import BasicView from 'travis/views/basic'`
+`import { githubAdmin as githubAdminUrl } from 'travis/utils/urls'`
+
+View = BasicView.extend
+ templateName: 'profile/tabs/hooks'
+ userBinding: 'controller.user'
+
+ urlGithubAdmin: (->
+ githubAdminUrl(@get('hook.slug'))
+ ).property('hook.slug')
+
+`export default View`
diff --git a/app/views/insufficient-oauth-permissions.coffee b/app/views/insufficient-oauth-permissions.coffee
new file mode 100644
index 00000000..a33e0330
--- /dev/null
+++ b/app/views/insufficient-oauth-permissions.coffee
@@ -0,0 +1,6 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ layoutName: 'layouts/simple'
+
+`export default View`
diff --git a/app/views/job.coffee b/app/views/job.coffee
new file mode 100644
index 00000000..8eaeeafb
--- /dev/null
+++ b/app/views/job.coffee
@@ -0,0 +1,29 @@
+`import Ember from 'ember'`
+`import { colorForState } from 'travis/utils/helpers'`
+`import { githubCommit, gravatarImage } from 'travis/utils/urls'`
+
+View = Ember.View.extend
+ repoBinding: 'controller.repo'
+ jobBinding: 'controller.job'
+ commitBinding: 'job.commit'
+ annotationsBinding: 'job.annotations'
+
+ currentItemBinding: 'job'
+
+ color: (->
+ colorForState(@get('job.state'))
+ ).property('job.state')
+
+ urlGithubCommit: (->
+ githubCommit(@get('repo.slug'), @get('commit.sha'))
+ ).property('repo.slug', 'commit.sha')
+
+ urlCommitterGravatarImage: (->
+ gravatarImage(@get('commit.committerEmail'), 40)
+ ).property('commit.committerEmail')
+
+ urlAuthorGravatarImage: (->
+ gravatarImage(@get('commit.authorEmail'), 40)
+ ).property('commit.authorEmail')
+
+`export default View`
diff --git a/app/views/jobs-item.coffee b/app/views/jobs-item.coffee
new file mode 100644
index 00000000..bcf55e6c
--- /dev/null
+++ b/app/views/jobs-item.coffee
@@ -0,0 +1,14 @@
+`import BasicView from 'travis/views/basic'`
+`import { colorForState } from 'travis/utils/helpers'`
+
+View = BasicView.extend
+ tagName: 'tr'
+ classNameBindings: ['color']
+ repoBinding: 'context.repo'
+ jobBinding: 'context'
+
+ color: (->
+ colorForState(@get('job.state'))
+ ).property('job.state')
+
+`export default View`
diff --git a/app/views/jobs.coffee b/app/views/jobs.coffee
new file mode 100644
index 00000000..ec805629
--- /dev/null
+++ b/app/views/jobs.coffee
@@ -0,0 +1,22 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ templateName: 'jobs'
+ buildBinding: 'controller.build'
+
+ jobTableId: Ember.computed(->
+ if @get('required')
+ 'jobs'
+ else
+ 'allowed_failure_jobs'
+ )
+
+ actions:
+ popupClose: ->
+ @popupCloseAll()
+
+ openHelpPopup: ->
+ @popupCloseAll()
+ @popup('help-allowed_failures')
+
+`export default View`
diff --git a/app/views/log.coffee b/app/views/log.coffee
new file mode 100644
index 00000000..4591adfe
--- /dev/null
+++ b/app/views/log.coffee
@@ -0,0 +1,32 @@
+`import BasicView from 'travis/views/basic'`
+`import config from 'travis/config/environment'`
+
+View = BasicView.extend
+ templateName: 'jobs/log'
+ logBinding: 'job.log'
+
+ didInsertElement: ->
+ @setupLog()
+
+ logDidChange: (->
+ @setupLog()
+ ).observes('log')
+
+ logWillChange: (->
+ @teardownLog()
+ ).observesBefore('log')
+
+ willDestroyElement: ->
+ @teardownLog()
+
+ teardownLog: ->
+ job = @get('job')
+ job.unsubscribe() if job
+
+ setupLog: ->
+ job = @get('job')
+ if job
+ job.get('log').fetch()
+ job.subscribe()
+
+`export default View`
diff --git a/app/views/main.coffee b/app/views/main.coffee
new file mode 100644
index 00000000..bc56cfd7
--- /dev/null
+++ b/app/views/main.coffee
@@ -0,0 +1,7 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ layoutName: 'layouts/home'
+ classNames: ['main']
+
+`export default View`
diff --git a/app/views/maintenance.coffee b/app/views/maintenance.coffee
new file mode 100644
index 00000000..22e526e3
--- /dev/null
+++ b/app/views/maintenance.coffee
@@ -0,0 +1,7 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ layoutName: 'layouts/error'
+ classNames: ['error maintenance']
+
+`export default View`
diff --git a/app/views/not-found.coffee b/app/views/not-found.coffee
new file mode 100644
index 00000000..05804613
--- /dev/null
+++ b/app/views/not-found.coffee
@@ -0,0 +1,6 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ layoutName: 'layouts/simple'
+
+`export default View`
diff --git a/app/views/pre.coffee b/app/views/pre.coffee
new file mode 100644
index 00000000..5f86af96
--- /dev/null
+++ b/app/views/pre.coffee
@@ -0,0 +1,114 @@
+`import LinesSelector from 'travis/utils/lines-selector'`
+`import LogFolder from 'travis/utils/log-folder'`
+`import config from 'travis/config/environment'`
+`import { plainTextLog as plainTextLogUrl } from 'travis/utils/urls'`
+
+Log.DEBUG = false
+Log.LIMIT = 10000
+
+Log.Scroll = (options) ->
+ options ||= {}
+ @beforeScroll = options.beforeScroll
+ this
+Log.Scroll.prototype = $.extend new Log.Listener,
+ insert: (log, data, pos) ->
+ @tryScroll() if @numbers
+ true
+
+ tryScroll: ->
+ if element = $("#log p:visible.highlight:first")
+ if @beforeScroll
+ @beforeScroll()
+ $('#main').scrollTop(0)
+ $('html, body').scrollTop(element.offset()?.top - (window.innerHeight / 3)) # weird, html works in chrome, body in firefox
+
+View = Ember.View.extend
+ templateName: 'jobs/pre'
+
+ logWillChange: (->
+ console.log 'log view: log will change' if Log.DEBUG
+ @teardownLog()
+ ).observesBefore('log')
+
+ didInsertElement: ->
+ console.log 'log view: did insert' if Log.DEBUG
+ @_super.apply this, arguments
+ @createEngine()
+
+ willDestroyElement: ->
+ console.log 'log view: will destroy' if Log.DEBUG
+ @teardownLog()
+
+ versionDidChange: (->
+ @rerender() if @get('_state') == 'inDOM'
+ ).observes('log.version')
+
+ logDidChange: (->
+ console.log 'log view: log did change: rerender' if Log.DEBUG
+
+ if @get('log')
+ @createEngine()
+ @rerender() if @get('_state') == 'inDOM'
+ ).observes('log')
+
+ teardownLog: ->
+ if log = @get('log')
+ parts = log.get('parts')
+ parts.removeArrayObserver(@, didChange: 'partsDidChange', willChange: 'noop')
+ parts.destroy()
+ log.notifyPropertyChange('parts')
+ @lineSelector?.willDestroy()
+
+ createEngine: ->
+ if @get('log')
+ console.log 'log view: create engine' if Log.DEBUG
+ @scroll = new Log.Scroll beforeScroll: =>
+ @unfoldHighlight()
+ @engine = Log.create(limit: Log.LIMIT, listeners: [@scroll])
+ @logFolder = new LogFolder(@$().find('#log'))
+ @lineSelector = new LinesSelector(@$().find('#log'), @scroll, @logFolder)
+ @observeParts()
+
+ unfoldHighlight: ->
+ @lineSelector.unfoldLines()
+
+ observeParts: ->
+ if log = @get('log')
+ parts = log.get('parts')
+ parts.addArrayObserver(@, didChange: 'partsDidChange', willChange: 'noop')
+ parts = parts.slice(0)
+ @partsDidChange(parts, 0, null, parts.length)
+
+ partsDidChange: (parts, start, _, added) ->
+ console.log 'log view: parts did change' if Log.DEBUG
+ for part, i in parts.slice(start, start + added)
+ # console.log "limit in log view: #{@get('limited')}"
+ break if @get('limited')
+ @engine.set(part.number, part.content)
+ @propertyDidChange('limited')
+
+ limited: (->
+ @engine?.limit?.limited
+ ).property()
+
+ plainTextLogUrl: (->
+ if id = @get('log.job.id')
+ url = plainTextLogUrl(id)
+ if config.pro
+ url += "&access_token=#{@get('job.log.token')}"
+ url
+ ).property('job.log.id', 'job.log.token')
+
+ actions:
+ toTop: () ->
+ $(window).scrollTop(0)
+
+ toggleTailing: ->
+ Travis.tailing.toggle()
+ @engine.autoCloseFold = !Travis.tailing.isActive()
+ event.preventDefault()
+
+ noop: -> # TODO required?
+
+`export default View`
+Travis.PreView = View
diff --git a/app/views/profile-accounts.coffee b/app/views/profile-accounts.coffee
new file mode 100644
index 00000000..05836e6c
--- /dev/null
+++ b/app/views/profile-accounts.coffee
@@ -0,0 +1,11 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ tabBinding: 'controller.tab'
+ templateName: 'profile/accounts'
+ classAccounts: (->
+ 'active' if @get('tab') == 'accounts'
+ ).property('tab')
+
+
+`export default View`
diff --git a/app/views/profile-tabs.coffee b/app/views/profile-tabs.coffee
new file mode 100644
index 00000000..9a195b6a
--- /dev/null
+++ b/app/views/profile-tabs.coffee
@@ -0,0 +1,22 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'profile/tabs'
+ tabBinding: 'controller.tab'
+
+ activate: ->
+ @get('controller').activate(event.target.name)
+
+ classHooks: (->
+ 'active' if @get('tab') == 'hooks'
+ ).property('tab')
+
+ classUser: (->
+ 'active' if @get('tab') == 'user'
+ ).property('tab')
+
+ displayUser: (->
+ @get('controller.account.login') == @get('controller.user.login')
+ ).property('controller.account.login', 'controller.user.login')
+
+`export default View`
diff --git a/app/views/profile.coffee b/app/views/profile.coffee
new file mode 100644
index 00000000..f9a218b3
--- /dev/null
+++ b/app/views/profile.coffee
@@ -0,0 +1,15 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'profile/show'
+ layoutName: 'layouts/profile'
+ classNames: ['profile-view']
+ accountBinding: 'controller.account'
+ subscribedBinding: 'account.subscribed'
+ educationBinding: 'account.education'
+
+ name: (->
+ @get('account.name') || @get('account.login')
+ ).property('account.name', 'account.login')
+
+`export default View`
diff --git a/app/views/repo-actions.coffee b/app/views/repo-actions.coffee
new file mode 100644
index 00000000..ff8fece9
--- /dev/null
+++ b/app/views/repo-actions.coffee
@@ -0,0 +1,177 @@
+`import Ember from 'ember'`
+`import { plainTextLog as plainTextLogUrl } from 'travis/utils/urls'`
+`import Job from 'travis/models/job'`
+`import config from 'travis/config/environment'`
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'repos/show/actions'
+
+ repoBinding: 'controller.repo'
+ buildBinding: 'controller.build'
+ jobBinding: 'controller.job'
+ tabBinding: 'controller.tab'
+ currentUserBinding: 'controller.currentUser'
+
+ actions:
+ requeueBuild: ->
+ if @get('canRequeueBuild')
+ @requeue @get('build')
+
+ requeueJob: ->
+ if @get('canRequeueJob')
+ @requeue @get('_job')
+
+ cancelBuild: ->
+ if @get('canCancelBuild')
+ Travis.flash(notice: 'Build cancellation has been scheduled.')
+ @get('build').cancel().then ->
+ Travis.flash(success: 'Build has been successfully canceled.')
+ , (xhr) ->
+ if xhr.status == 422
+ Travis.flash(error: 'This build can\'t be canceled')
+ else if xhr.status == 403
+ Travis.flash(error: 'You don\'t have sufficient access to cancel this build')
+ else
+ Travis.flash(error: 'An error occured when canceling the build')
+
+
+ removeLog: ->
+ @popupCloseAll()
+ if @get('canRemoveLog')
+ job = @get('_job') || @get('build.jobs.firstObject')
+ job.removeLog().then ->
+ Travis.flash(success: 'Log has been successfully removed.')
+ , (xhr) ->
+ if xhr.status == 409
+ Travis.flash(error: 'Log can\'t be removed')
+ else if xhr.status == 401
+ Travis.flash(error: 'You don\'t have sufficient access to remove the log')
+ else
+ Travis.flash(error: 'An error occured when removing the log')
+
+ cancelJob: ->
+ if @get('canCancelJob')
+ Travis.flash(notice: 'Job cancellation has been scheduled.')
+ @get('_job').cancel().then ->
+ Travis.flash(success: 'Job has been successfully canceled.')
+ , (xhr) ->
+ if xhr.status == 422
+ Travis.flash(error: 'This job can\'t be canceled')
+ else if xhr.status == 403
+ Travis.flash(error: 'You don\'t have sufficient access to cancel this job')
+ else
+ Travis.flash(error: 'An error occured when canceling the job')
+
+ codeClimatePopup: ->
+ @popupCloseAll()
+ @popup('code-climate')
+ return false
+
+ removeLogPopup: ->
+ if @get('canRemoveLog')
+ @set('active', true)
+ @popup('remove-log-popup')
+ return false
+
+ hasPermission: (->
+ if permissions = @get('currentUser.permissions')
+ permissions.contains parseInt(@get('repo.id'))
+ ).property('currentUser.permissions.length', 'repo.id')
+
+ hasPushPermission: (->
+ if permissions = @get('currentUser.pushPermissions')
+ permissions.contains parseInt(@get('repo.id'))
+ ).property('currentUser.pushPermissions.length', 'repo.id')
+
+ displayRequeueBuild: (->
+ @get('isBuildTab') && @get('build.isFinished')
+ ).property('isBuildTab', 'build.isFinished')
+
+ canRequeueBuild: (->
+ @get('displayRequeueBuild') && @get('hasPermission')
+ ).property('displayRequireBuild', 'hasPermission')
+
+ displayRequeueJob: (->
+ @get('isJobTab') && @get('job.isFinished')
+ ).property('isJobTab', 'job.isFinished')
+
+ canRequeueJob: (->
+ @get('displayRequeueJob') && @get('hasPermission')
+ ).property('displayRequeueJob', 'hasPermission')
+
+ showDownloadLog: (->
+ @get('jobIdForLog') && (@get('isJobTab') || @get('isBuildTab'))
+ ).property('jobIdForLog', 'isJobTab', 'isBuildTab')
+
+ _job: (->
+ if id = @get('jobIdForLog')
+ store =Travis.__container__.lookup('store:main')
+ store.find('job', id)
+ store.recordForId('job', id)
+ ).property('jobIdForLog')
+
+ jobIdForLog: (->
+ job = @get('job.id')
+ unless job
+ if @get('build.jobs.length') == 1
+ job = @get('build.jobs').objectAt?(0).get?('id')
+ job
+ ).property('job.id', 'build.jobs.firstObject.id', 'build.jobs.length')
+
+ plainTextLogUrl: (->
+ if id = @get('jobIdForLog')
+ url = plainTextLogUrl(id)
+ if config.pro
+ token = @get('job.log.token') || @get('build.jobs.firstObject.log.token')
+ url += "&access_token=#{token}"
+ url
+ ).property('jobIdForLog', 'job.log.token', 'build.jobs.firstObject.log.token')
+
+ canRemoveLog: (->
+ @get('displayRemoveLog')
+ ).property('displayRemoveLog')
+
+ displayRemoveLog: (->
+ if job = @get('_job')
+ (@get('isJobTab') || (@get('isBuildTab') && @get('build.jobs.length') == 1)) &&
+ job.get('canRemoveLog') && @get('hasPermission')
+ ).property('isJobTab', 'isBuildTab', 'build.jobs.length', '_job.canRemoveLog', 'jobIdForLog', 'canRemoveLog', 'hasPermission')
+
+ canCancelBuild: (->
+ @get('displayCancelBuild') && @get('hasPermission')
+ ).property('displayCancelBuild', 'hasPermission')
+
+ displayCancelBuild: (->
+ @get('isBuildTab') && @get('build.canCancel')
+ ).property('isBuildTab', 'build.canCancel')
+
+ canCancelJob: (->
+ @get('displayCancelJob') && @get('hasPermission')
+ ).property('displayCancelJob', 'hasPermission')
+
+ displayCancelJob: (->
+ @get('isJobTab') && @get('job.canCancel')
+ ).property('isJobTab', 'job.canCancel')
+
+ isJobTab: (->
+ @get('tab') == 'job'
+ ).property('tab', 'repo.id')
+
+ isBuildTab: (->
+ ['current', 'build'].indexOf(@get('tab')) > -1
+ ).property('tab')
+
+ displayCodeClimate: (->
+ @get('repo.githubLanguage') == 'Ruby'
+ ).property('repo.githubLanguage')
+
+ requeueFinished: ->
+ @set('requeueing', false)
+
+ requeue: (thing) ->
+ return if @get('requeueing')
+ @set('requeueing', true)
+ thing.requeue().then(this.requeueFinished.bind(this), this.requeueFinished.bind(this))
+
+`export default View`
diff --git a/app/views/repo-show-tabs.coffee b/app/views/repo-show-tabs.coffee
new file mode 100644
index 00000000..993d5bb8
--- /dev/null
+++ b/app/views/repo-show-tabs.coffee
@@ -0,0 +1,59 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ templateName: 'repos/show/tabs'
+
+ tabBinding: 'controller.tab'
+ contextBinding: 'controller'
+
+ # hrm. how to parametrize bind-attr?
+ classCurrent: (->
+ 'active' if @get('tab') == 'current'
+ ).property('tab')
+
+ classBuilds: (->
+ 'active' if @get('tab') == 'builds'
+ ).property('tab')
+
+ classPullRequests: (->
+ 'active' if @get('tab') == 'pull_requests'
+ ).property('tab')
+
+ classBranches: (->
+ 'active' if @get('tab') == 'branches'
+ ).property('tab')
+
+ classEvents: (->
+ 'active' if @get('tab') == 'events'
+ ).property('tab')
+
+ classBuild: (->
+ tab = @get('tab')
+ classes = []
+ classes.push('active') if tab == 'build'
+ classes.push('display-inline') if tab == 'build' || tab == 'job'
+ classes.join(' ')
+ ).property('tab')
+
+ # TODO: refactor tabs, most of the things here are not really DRY
+ classJob: (->
+ 'active' if @get('tab') == 'job'
+ ).property('tab')
+
+ classRequests: (->
+ 'active' if @get('tab') == 'requests'
+ ).property('tab')
+
+ classCaches: (->
+ 'active' if @get('tab') == 'caches'
+ ).property('tab')
+
+ classSettings: (->
+ 'active' if @get('tab') == 'settings'
+ ).property('tab')
+
+ classRequest: (->
+ 'active' if @get('tab') == 'request'
+ ).property('tab')
+
+`export default View`
diff --git a/app/views/repo-show-tools.coffee b/app/views/repo-show-tools.coffee
new file mode 100644
index 00000000..57b153f2
--- /dev/null
+++ b/app/views/repo-show-tools.coffee
@@ -0,0 +1,84 @@
+`import Ember from 'ember'`
+`import BasicView from 'travis/views/basic'`
+`import config from 'travis/config/environment'`
+
+View = BasicView.extend
+ templateName: 'repos/show/tools'
+
+ repoBinding: 'controller.repo'
+ buildBinding: 'controller.build'
+ jobBinding: 'controller.job'
+ tabBinding: 'controller.tab'
+ currentUserBinding: 'controller.currentUser'
+ slugBinding: 'controller.repo.slug'
+
+
+ didInsertElement: ->
+ self = this
+ $('.menu a').on 'click', ->
+ self.closeMenu()
+
+ willRemoveElement: ->
+ $('.menu a').off 'click'
+
+ closeMenu: ->
+ $('.menu').removeClass('display')
+
+ actions:
+ menu: ->
+ @popupCloseAll()
+ $('#tools .menu').toggleClass('display')
+ return false
+
+ regenerateKeyPopup: ->
+ if @get('canRegenerateKey')
+ @set('active', true)
+ @closeMenu()
+ @popup('regenerate-key-popup')
+ return false
+
+ regenerateKey: ->
+ @popupCloseAll()
+
+ (@get('repo.content') || @get('repo')).regenerateKey
+ success: =>
+ @popup('regeneration-success')
+ error: ->
+ Travis.lookup('controller:flash').loadFlashes([{ error: 'Travis encountered an error while trying to regenerate the key, please try again.'}])
+
+ canRegenerateKey: (->
+ @get('hasAdminPermission')
+ ).property('hasAdminPermission')
+
+ hasPermission: (->
+ if permissions = @get('currentUser.permissions')
+ permissions.contains parseInt(@get('repo.id'))
+ ).property('currentUser.permissions.length', 'repo.id')
+
+ hasPushPermission: (->
+ if permissions = @get('currentUser.pushPermissions')
+ permissions.contains parseInt(@get('repo.id'))
+ ).property('currentUser.pushPermissions.length', 'repo.id')
+
+ hasAdminPermission: (->
+ if permissions = @get('currentUser.adminPermissions')
+ permissions.contains parseInt(@get('repo.id'))
+ ).property('currentUser.adminPermissions.length', 'repo.id')
+
+ displayRegenerateKey: (->
+ @get('canRegenerateKey')
+ ).property('canRegenerateKey')
+
+ displaySettingsLink: (->
+ @get('hasPushPermission')
+ ).property('hasPushPermission')
+
+ displayCachesLink: (->
+ @get('hasPushPermission') && config.endpoints.caches
+ ).property('hasPushPermission')
+
+ displayStatusImages: (->
+ @get('hasPermission')
+ ).property('hasPermission')
+
+`export default View`
diff --git a/app/views/repo.coffee b/app/views/repo.coffee
new file mode 100644
index 00000000..64089307
--- /dev/null
+++ b/app/views/repo.coffee
@@ -0,0 +1,39 @@
+`import { statusImage } from 'travis/utils/urls'`
+`import StatusImagesView from 'travis/views/status-images'`
+`import BasicView from 'travis/views/basic'`
+`import config from 'travis/config/environment'`
+
+View = BasicView.extend
+ reposBinding: 'controllers.repos'
+ repoBinding: 'controller.repo'
+ buildBinding: 'controller.build'
+ jobBinding: 'controller.job'
+ tabBinding: 'controller.tab'
+
+ classNameBindings: ['controller.isLoading:loading']
+
+ isEmpty: (->
+ @get('repos.isLoaded') && @get('repos.length') == 0
+ ).property('repos.isLoaded', 'repos.length')
+
+ statusImageUrl: (->
+ statusImage(@get('controller.repo.slug'))
+ ).property('controller.repo.slug')
+
+ actions:
+ statusImages: () ->
+ @popupCloseAll()
+ view = StatusImagesView.create(toolsView: this, container: @container)
+ BasicView.currentPopupView = view
+ view.appendTo($('body'))
+ return false
+
+ ReposEmptyView: BasicView.extend
+ template: (->
+ if config.pro
+ 'pro/repos/show/empty'
+ else
+ ''
+ ).property()
+
+`export default View`
diff --git a/app/views/repos-list-tabs.coffee b/app/views/repos-list-tabs.coffee
new file mode 100644
index 00000000..7500b450
--- /dev/null
+++ b/app/views/repos-list-tabs.coffee
@@ -0,0 +1,30 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ templateName: 'repos/list/tabs'
+ tabBinding: 'controller.tab'
+ currentUserBinding: 'controller.currentUser.id'
+
+ classRecent: (->
+ if @get('tab') == 'recent'
+ 'active'
+ else if @get('tab') == 'search' && @auth.get('signedIn')
+ 'hidden'
+ ).property('tab')
+
+ classOwned: (->
+ classes = []
+ classes.push('active') if @get('tab') == 'owned'
+ classes.push('display-inline') if @get('currentUser')
+ classes.join(' ')
+ ).property('tab', 'currentUser')
+
+ classSearch: (->
+ 'active' if @get('tab') == 'search'
+ ).property('tab')
+
+ classNew: (->
+ 'display-inline' if @get('currentUser')
+ ).property('currentUser')
+
+`export default View`
diff --git a/app/views/repos-list.coffee b/app/views/repos-list.coffee
new file mode 100644
index 00000000..5352cd99
--- /dev/null
+++ b/app/views/repos-list.coffee
@@ -0,0 +1,26 @@
+`import Ember from 'ember'`
+`import { colorForState } from 'travis/utils/helpers'`
+
+View = Ember.CollectionView.extend
+ elementId: 'repos'
+ tagName: 'ul'
+
+ emptyView: Ember.View.extend
+ templateName: 'repos-list/empty'
+
+ itemViewClass: Ember.View.extend
+ repoBinding: 'content'
+ classNames: ['repo']
+ classNameBindings: ['color', 'selected']
+ selected: (->
+ @get('content') == @get('controller.selectedRepo')
+ ).property('controller.selectedRepo')
+
+ color: (->
+ colorForState(@get('repo.lastBuildState'))
+ ).property('repo.lastBuildState')
+
+ click: ->
+ @get('controller').transitionToRoute('/' + @get('repo.slug'))
+
+`export default View`
diff --git a/app/views/show-more-button.coffee b/app/views/show-more-button.coffee
new file mode 100644
index 00000000..cb6a7c53
--- /dev/null
+++ b/app/views/show-more-button.coffee
@@ -0,0 +1,20 @@
+`import Ember from 'ember'`
+
+View = Ember.View.extend
+ tagName: 'button'
+ classNameBindings: ['isLoading', 'showMore']
+ showMore: true
+ attributeBindings: ['disabled']
+ isLoadingBinding: 'controller.isLoading'
+ templateName: 'show-more-button'
+
+ disabledBinding: 'isLoading'
+
+ label: (->
+ if @get('isLoading') then 'Loading' else 'Show more'
+ ).property('isLoading')
+
+ click: ->
+ @get('controller').showMore()
+
+`export default View`
diff --git a/app/views/signin.coffee b/app/views/signin.coffee
new file mode 100644
index 00000000..036291e8
--- /dev/null
+++ b/app/views/signin.coffee
@@ -0,0 +1,6 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ templateName: 'auth/signin'
+
+`export default View`
diff --git a/app/views/status-image-input.coffee b/app/views/status-image-input.coffee
new file mode 100644
index 00000000..e7545708
--- /dev/null
+++ b/app/views/status-image-input.coffee
@@ -0,0 +1,7 @@
+`import Ember from 'ember'`
+
+View = Ember.TextArea.extend
+ click: ->
+ @get('element').select()
+
+`export default View`
diff --git a/assets/scripts/app/views/status_images.coffee b/app/views/status-images.coffee
similarity index 82%
rename from assets/scripts/app/views/status_images.coffee
rename to app/views/status-images.coffee
index f3e733e5..4f150b8d 100644
--- a/assets/scripts/app/views/status_images.coffee
+++ b/app/views/status-images.coffee
@@ -1,4 +1,7 @@
-Travis.StatusImagesView = Em.View.extend
+`import Ember from 'ember'`
+`import format from 'travis/utils/status-image-formats'`
+
+View = Ember.View.extend
templateName: 'status_images'
elementId: 'status-images'
classNames: ['popup']
@@ -46,6 +49,7 @@ Travis.StatusImagesView = Em.View.extend
).observes('repo.branches', 'repo.branches.isLoaded', 'build.commit.branch')
statusString: (->
- Travis.StatusImageFormatter.format(@get('statusImageFormat'), @get('repo.slug'), @get('statusImageBranch.commit.branch'))
+ format(@get('statusImageFormat'), @get('repo.slug'), @get('statusImageBranch.commit.branch'))
).property('statusImageFormat', 'repo.slug', 'statusImageBranch.commit.branch')
+`export default View`
diff --git a/app/views/top.coffee b/app/views/top.coffee
new file mode 100644
index 00000000..318ba69c
--- /dev/null
+++ b/app/views/top.coffee
@@ -0,0 +1,28 @@
+`import BasicView from 'travis/views/basic'`
+
+View = BasicView.extend
+ tabBinding: 'controller.tab'
+
+ # hrm. how to parametrize bind-attr?
+ classHome: (->
+ 'active' if @get('tab') == 'home'
+ ).property('tab')
+
+ classStats: (->
+ 'active' if @get('tab') == 'stats'
+ ).property('tab')
+
+ classProfile: (->
+ classes = ['profile menu']
+ classes.push('active') if @get('tab') == 'profile'
+ classes.push(@get('controller.auth.state') || 'signed-out')
+ classes.join(' ')
+ ).property('tab', 'controller.auth.state')
+
+ showProfile: ->
+ $('#top .profile ul').show()
+
+ hideProfile: ->
+ $('#top .profile ul').hide()
+
+`export default View`
diff --git a/assets/scripts/app/app.coffee b/assets/scripts/app/app.coffee
deleted file mode 100644
index 78d0a8dc..00000000
--- a/assets/scripts/app/app.coffee
+++ /dev/null
@@ -1,189 +0,0 @@
-unless window.TravisApplication
- window.TravisApplication = Em.Application.extend(Ember.Evented,
- LOG_TRANSITIONS: true,
-
- mappings: (->
- broadcasts: Travis.Broadcast
- repositories: Travis.Repo
- repository: Travis.Repo
- repos: Travis.Repo
- repo: Travis.Repo
- builds: Travis.Build
- build: Travis.Build
- commits: Travis.Commit
- commit: Travis.Commit
- jobs: Travis.Job
- job: Travis.Job
- account: Travis.Account
- accounts: Travis.Account
- worker: Travis.Worker
- workers: Travis.Worker
- annotation: Travis.Annotation
- annotations: Travis.Annotation
- request: Travis.Request
- requests: Travis.Request
- env_var: Travis.EnvVar
- env_vars: Travis.EnvVar
- ssh_key: Travis.SshKey
- ).property()
-
- modelClasses: (->
- [Travis.User, Travis.Build, Travis.Job, Travis.Repo, Travis.Commit, Travis.Worker, Travis.Account, Travis.Broadcast, Travis.Hook, Travis.Annotation, Travis.Request, Travis.EnvVar, Travis.SshKey]
- ).property()
-
- setup: ->
- @get('modelClasses').forEach (klass) ->
- klass.adapter = Travis.Adapter.create()
- klass.url = "/#{klass.pluralName()}"
-
- Travis.EnvVar.url = "/settings/env_vars"
- Travis.EnvVar.adapter = Travis.EnvVarsAdapter.create()
-
- Travis.SshKey.url = "/settings/ssh_key"
- Travis.SshKey.adapter = Travis.SshKeyAdapter.create()
-
- @slider = new Travis.Slider()
- @pusher = new Travis.Pusher(key: Travis.config.pusher_key, host: Travis.config.pusher_host) if Travis.config.pusher_key
- @tailing = new Travis.Tailing($(window), '#tail', '#log')
- @toTop = new Travis.ToTop($(window), '.to-top', '#log-container')
-
- @on 'user:signed_in', (user) ->
- Travis.onUserUpdate(user)
-
- @on 'user:synced', (user) ->
- Travis.onUserUpdate(user)
-
- reset: ->
- @_super.apply(this, arguments)
- @get('modelClasses').forEach (klass) ->
- klass.resetData()
- @setup()
-
- lookup: ->
- @__container__.lookup.apply @__container__, arguments
-
- flash: (options) ->
- Travis.lookup('controller:flash').loadFlashes([options])
-
- receive: (event, data) ->
- [name, type] = event.split(':')
-
- type = Ember.get(Travis, 'mappings')[name]
-
- if name == 'job' && data.job?.commit
- @loadOrMerge(Travis.Commit, data.job.commit)
-
- if name == 'build' && data.build?.commit
- # TODO: commit should be a sideload record on build, not mixed with it
- build = data.build
- commit = {
- id: build.commit_id
- author_email: build.author_email
- author_name: build.author_name
- branch: build.branch
- committed_at: build.committed_at
- committer_email: build.committer_email
- committer_name: build.committer_name
- compare_url: build.compare_url
- message: build.message
- sha: build.commit
- }
- delete(data.build.commit)
- @loadOrMerge(Travis.Commit, commit)
-
-
- if event == 'job:log'
- console.log 'store: received job:log event', data if Log.DEBUG
- data = data.job
- job = Travis.Job.find(data.id)
- job.appendLog(number: parseInt(data.number), content: data._log, final: data.final)
- else if data[type.singularName()]
- @_loadOne(this, type, data)
- else if data[type.pluralName()]
- @_loadMany(this, type, data)
- else
- throw "can't load data for #{name}" unless type
-
- _loadOne: (store, type, json) ->
- root = type.singularName()
- reference = @loadOrMerge(type, json[root])
- unless reference.record
- type.loadRecordForReference(reference)
-
- # we get other types of records only in a few situations and
- # it's not always needed to update data, so I'm specyfing which
- # things I want to update here:
- if type == Travis.Build && (json.repository || json.repo)
- data = json.repository || json.repo
- reference = @loadOrMerge(Travis.Repo, data)
- unless reference.record
- Travis.Repo.loadRecordForReference(reference)
-
- loadOrMerge: (type, hash, options) ->
- options ||= {}
-
- reference = type._getReferenceById(hash.id)
-
- if reference && options.skipIfExists
- return
-
- reference = type._getOrCreateReferenceForId(hash.id)
- if reference.record
- reference.record.merge(hash)
- else
- if type.sideloadedData && type.sideloadedData[hash.id]
- Ember.merge(type.sideloadedData[hash.id], hash)
- else
- type.load([hash])
-
- reference
-
- toggleSidebar: ->
- $('body').toggleClass('maximized')
- # TODO gotta force redraws here :/
- element = $('')
- $('#top .profile').append(element)
- Em.run.later (-> element.remove()), 10
- element = $('')
- $('#repo').append(element)
- Em.run.later (-> element.remove()), 10
-
- ready: ->
- location.href = location.href.replace('#!/', '') if location.hash.slice(0, 2) == '#!'
-
- currentDate: ->
- new Date()
-
- onUserUpdate: (user) ->
- if Travis.config.pro
- @identifyCustomer(user)
- @subscribePusher(user)
- @setupCharm(user)
-
- subscribePusher: (user) ->
- channels = user.channels
- channels = channels.map (channel) ->
- if channel.match /^private-/
- channel
- else
- "private-#{channel}"
- Travis.pusher.subscribeAll(channels)
-
- setupCharm: (user) ->
- $.extend window.__CHARM,
- customer: user.login,
- customer_id: user.id,
- email: user.email
-
- displayCharm: ->
- __CHARM.show()
-
- identifyCustomer: (user) ->
- if _cio && _cio.identify
- _cio.identify
- id: user.id
- email: user.email
- name: user.name
- created_at: (Date.parse(user.created_at) / 1000) || null
- login: user.login
- )
diff --git a/assets/scripts/app/controllers.coffee b/assets/scripts/app/controllers.coffee
deleted file mode 100644
index 22f829e4..00000000
--- a/assets/scripts/app/controllers.coffee
+++ /dev/null
@@ -1,96 +0,0 @@
-require 'helpers'
-
-Travis.Controller = Em.Controller.extend()
-Travis.TopController = Em.Controller.extend
- needs: ['currentUser']
- userBinding: 'controllers.currentUser'
-
- userName: (->
- @get('user.name') || @get('user.login')
- ).property('user.login', 'user.name')
-
- gravatarUrl: (->
- "#{location.protocol}//www.gravatar.com/avatar/#{@get('user.gravatarId')}?s=48&d=mm"
- ).property('user.gravatarId')
-
- signedIn: (->
- Travis.get('authState') == 'signed-in'
- ).property('Travis.authState')
-
- signedOut: (->
- Travis.get('authState') == 'signed-out'
- ).property('Travis.authState')
-
- signingIn: (->
- Travis.get('authState') == 'signing-in'
- ).property('Travis.authState')
-
-Travis.MainController = Em.Controller.extend()
-Travis.StatsLayoutController = Em.Controller.extend()
-Travis.ProfileLayoutController = Em.Controller.extend()
-Travis.AuthLayoutController = Em.Controller.extend()
-
-Travis.AccountsInfoController = Em.Controller.extend
- needs: ['currentUser', 'repos']
- userBinding: 'controllers.currentUser'
-
-Travis.FirstSyncController = Em.Controller.extend
- needs: ['currentUser']
- user: Ember.computed.alias('controllers.currentUser')
-
- isSyncing: Ember.computed.alias('user.isSyncing')
-
-Travis.MainErrorController = Em.Controller.extend()
-Travis.BuildsItemController = Em.ObjectController.extend(Travis.GithubUrlProperties,
- needs: ['builds']
- isPullRequestsListBinding: 'controllers.builds.isPullRequestsList'
- buildBinding: 'content'
-)
-
-Travis.QueuesController = Em.ArrayController.extend
- content: (->
- Travis.Job.queued()
- ).property()
-
-Travis.RunningJobsController = Em.ArrayController.extend
- content: (->
- Travis.Job.running()
- ).property()
-
-Travis.SidebarController = Em.ArrayController.extend
- init: ->
- @_super.apply this, arguments
- @tickables = []
-
- tips: [
- "Did you know that you can parallelize tests on Travis CI? Learn more"
- "Did you know that you can split a build into several smaller pieces? Learn more"
- "Did you know that you can skip a build? Learn more"
- ]
-
- tip: (->
- if tips = @get('tips')
- tips[Math.floor(Math.random()*tips.length)]
- ).property().volatile()
-
-require 'controllers/accounts'
-require 'controllers/auth'
-require 'controllers/account'
-require 'controllers/build'
-require 'controllers/builds'
-require 'controllers/flash'
-require 'controllers/home'
-require 'controllers/job'
-require 'controllers/profile'
-require 'controllers/repos'
-require 'controllers/repo'
-require 'controllers/settings'
-require 'controllers/stats'
-require 'controllers/current_user'
-require 'controllers/request'
-require 'controllers/requests'
-require 'controllers/caches'
-require 'controllers/env_var'
-require 'controllers/env_vars'
-require 'controllers/env_var_new'
-require 'controllers/ssh_key'
diff --git a/assets/scripts/app/controllers/accounts.coffee b/assets/scripts/app/controllers/accounts.coffee
deleted file mode 100644
index b96965a1..00000000
--- a/assets/scripts/app/controllers/accounts.coffee
+++ /dev/null
@@ -1,2 +0,0 @@
-Travis.AccountsController = Ember.ArrayController.extend
- tab: 'accounts'
diff --git a/assets/scripts/app/controllers/auth.coffee b/assets/scripts/app/controllers/auth.coffee
deleted file mode 100644
index cfaac6d0..00000000
--- a/assets/scripts/app/controllers/auth.coffee
+++ /dev/null
@@ -1 +0,0 @@
-Travis.AuthController = Travis.Controller.extend()
diff --git a/assets/scripts/app/controllers/build.coffee b/assets/scripts/app/controllers/build.coffee
deleted file mode 100644
index c8763418..00000000
--- a/assets/scripts/app/controllers/build.coffee
+++ /dev/null
@@ -1,12 +0,0 @@
-Travis.BuildController = Ember.Controller.extend Travis.GithubUrlProperties,
- needs: ['repo']
- repoBinding: 'controllers.repo.repo'
- commitBinding: 'build.commit'
- currentUserBinding: 'controllers.repo.currentUser'
- tabBinding: 'controllers.repo.tab'
-
- currentItemBinding: 'build'
-
- loading: (->
- @get('build.isLoading')
- ).property('build.isLoading')
diff --git a/assets/scripts/app/controllers/caches.coffee b/assets/scripts/app/controllers/caches.coffee
deleted file mode 100644
index 7a054876..00000000
--- a/assets/scripts/app/controllers/caches.coffee
+++ /dev/null
@@ -1,61 +0,0 @@
-Travis.CachesController = Ember.ArrayController.extend
- isDeleting: false
- needs: ['repo']
- repo: Ember.computed.alias('controllers.repo.repo')
-
- actions:
- deleteRepoCache: ->
- return if @get('isDeleting')
-
- if confirm('Are you sure?')
- @set('isDeleting', true)
-
- deletingDone = => @set('isDeleting', false)
-
- repo = @get('repo')
- Travis.ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE").then(deletingDone, deletingDone).then =>
- @clear()
-
-Travis.CachesByBranchController = Ember.ObjectController.extend
- isDeleting: false
- needs: ['repo', 'caches']
- repo: Ember.computed.alias('controllers.repo.repo')
-
- actions:
- delete: ->
- return if @get('isDeleting')
-
- if confirm('Are you sure?')
- @set('isDeleting', true)
-
- data = { branch: @get('branch') }
-
- deletingDone = => @set('isDeleting', false)
-
- repo = @get('repo')
- Travis.ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE", data: data).then(deletingDone, deletingDone).then =>
- model = @get('model')
- @get('controllers.caches').removeObject(model)
-
-Travis.CacheItemController = Ember.ObjectController.extend
- isDeleting: false
- needs: ['repo', 'caches']
- repo: Ember.computed.alias('controllers.repo.repo')
-
- actions:
- delete: ->
- return if @get('isDeleting')
-
- if confirm('Are you sure?')
- @set('isDeleting', true)
-
- data = { branch: @get('branch'), match: @get('slug') }
-
- deletingDone = => @set('isDeleting', false)
-
- repo = @get('repo')
- Travis.ajax.ajax("/repos/#{repo.get('id')}/caches", "DELETE", data: data).then(deletingDone, deletingDone).then =>
- model = @get('model')
- @get('parent.caches').removeObject(model)
- if @get('parent.caches.length') == 0
- @get('controllers.caches').removeObject(@get('parent'))
diff --git a/assets/scripts/app/controllers/env_vars.coffee b/assets/scripts/app/controllers/env_vars.coffee
deleted file mode 100644
index 5c6d4d65..00000000
--- a/assets/scripts/app/controllers/env_vars.coffee
+++ /dev/null
@@ -1 +0,0 @@
-Travis.EnvVarsController = Ember.ArrayController.extend()
diff --git a/assets/scripts/app/controllers/home.coffee b/assets/scripts/app/controllers/home.coffee
deleted file mode 100644
index 068e6edd..00000000
--- a/assets/scripts/app/controllers/home.coffee
+++ /dev/null
@@ -1 +0,0 @@
-Travis.HomeLayoutController = Travis.Controller.extend()
diff --git a/assets/scripts/app/controllers/ssh_key.coffee b/assets/scripts/app/controllers/ssh_key.coffee
deleted file mode 100644
index 640fde1a..00000000
--- a/assets/scripts/app/controllers/ssh_key.coffee
+++ /dev/null
@@ -1,59 +0,0 @@
-require 'travis/validations'
-
-Travis.SshKeyController = Ember.ObjectController.extend Travis.Validations,
- isEditing: false
- isSaving: false
- isDeleting: false
- defaultKey: null
-
- needs: ['repo']
- repo: Ember.computed.alias('controllers.repo.repo')
-
- validates:
- value: ['presence']
-
- reset: ->
- @set('isEditing', false)
-
- actions:
- add: ->
- model = Travis.SshKey.create(id: @get('repo.id'))
- @set('model', model)
- @set('isEditing', true)
-
- save: ->
- return if @get('isSaving')
- @set('isSaving', true)
-
- if @isValid()
- @get('model').save().then =>
- @set('isEditing', false)
- @set('isSaving', false)
- , (xhr) =>
- @set('isSaving', false)
- if xhr.status == 422
- @addErrorsFromResponse(JSON.parse(xhr.response)['errors'])
- else
- @set('isSaving', false)
-
- delete: ->
- return if @get('isDeleting')
- @set('isDeleting', true)
-
- deletingDone = => @set('isDeleting', false)
-
- # because of the bug in ember model reference is not cleared after
- # deleting the record, so I'm doing it manually here
- delete @get('model').constructor._referenceCache[parseInt(@get('model.id'))]
-
- @get('model').deleteRecord().then(deletingDone, deletingDone).then =>
- @set('model', null)
-
- cancel: ->
- if model = @get('model')
- if model.get('isNew')
- @set('model', null)
- @set('isEditing', false)
-
- edit: ->
- @set('isEditing', true)
diff --git a/assets/scripts/app/controllers/stats.coffee b/assets/scripts/app/controllers/stats.coffee
deleted file mode 100644
index 3d6da596..00000000
--- a/assets/scripts/app/controllers/stats.coffee
+++ /dev/null
@@ -1,9 +0,0 @@
-Travis.StatsController = Travis.Controller.extend
- name: 'stats'
-
- init: ->
- @_super.apply this, arguments
- #@connectOutlet(outletName: 'main', controller: this, viewClass: Travis.StatsView)
-
- activate: (action, params) ->
- # noop
diff --git a/assets/scripts/app/helpers.coffee b/assets/scripts/app/helpers.coffee
deleted file mode 100644
index 5c5b4f46..00000000
--- a/assets/scripts/app/helpers.coffee
+++ /dev/null
@@ -1,5 +0,0 @@
-require 'helpers/handlebars'
-require 'helpers/helpers'
-require 'helpers/urls'
-require 'helpers/status_image_formatter'
-require 'helpers/github_url_properties'
diff --git a/assets/scripts/app/helpers/github_url_properties.coffee b/assets/scripts/app/helpers/github_url_properties.coffee
deleted file mode 100644
index 6a19e21c..00000000
--- a/assets/scripts/app/helpers/github_url_properties.coffee
+++ /dev/null
@@ -1,8 +0,0 @@
-Travis.GithubUrlProperties = Ember.Mixin.create
- urlGithubCommit: (->
- Travis.Urls.githubCommit(@get('repo.slug'), @get('commit.sha'))
- ).property('repo.slug', 'commit.sha')
-
- urlGithubPullRequest: (->
- Travis.Urls.githubPullRequest(@get('repo.slug'), @get('build.pullRequestNumber'))
- ).property('repo.slug', 'build.pullRequestNumber')
diff --git a/assets/scripts/app/helpers/handlebars.coffee b/assets/scripts/app/helpers/handlebars.coffee
deleted file mode 100644
index 0dd474d4..00000000
--- a/assets/scripts/app/helpers/handlebars.coffee
+++ /dev/null
@@ -1,183 +0,0 @@
-safe = (string) ->
- new Handlebars.SafeString(string)
-
-Ember.Handlebars.helper('mb', (size) ->
- if size
- (size / 1024 / 1024).toFixed(2)
-, 'size')
-
-Ember.LinkView.reopen
- init: ->
- @_super()
- eventName = Ember.get(this, 'eventName')
- if Ember.get(this, 'trackEvent')
- @on(eventName, this, @_trackEvent)
- @on(eventName, this, @_invoke)
-
- _trackEvent: (event) ->
- event.preventDefault()
-
-FormFieldRowView = Ember.View.extend
- invalid: Ember.computed.notEmpty('errors.[]')
- classNameBindings: ['invalid']
- classNames: 'field'
-
-LabelView = Ember.View.extend(
- tagName: 'label'
-
- attributeBindings: ['for', 'accesskey', 'form']
- classNameBindings: ['class']
-)
-
-Ember.Handlebars.registerHelper('label', (options) ->
- view = LabelView
-
- name = options.hash.for
- if name
- labels = @get('_labels')
- unless labels
- labels = Ember.Object.create()
- @set('_labels', labels)
-
- # for now I support only label + input in their own context
- id = labels.get(name)
- unless id
- id = "#{name}-#{Math.round(Math.random() * 1000000)}"
- labels.set(name, id)
-
- options.hash.for = id
- options.hashTypes.for = 'STRING'
- options.hashContexts.for = this
- if options.hash.content
- options.fn = Ember.Handlebars.compile("{{view.content}}")
-
- Ember.Handlebars.helpers.view.call(this, view, options)
-)
-
-originalInputHelper = Ember.Handlebars.helpers.input
-
-Ember.Handlebars.registerHelper('input', (options) ->
- # for now I can match label only with the property name
- # passed here matches the label
- name = (options.hash.value || options.hash.checked)
- id = options.hash.id
-
- # generate id only if it's not given
- if name && !name.match(/\./) && !id
- labels = @get('_labels')
- unless labels
- labels = Ember.Object.create()
- @set('_labels', labels)
-
- # for now I support only label + input in their own context
- id = labels.get(name)
- unless id
- id = "#{name}-#{Math.round(Math.random() * 1000000)}"
- labels.set(name, id)
-
- options.hash.id = id
- options.hashTypes.id = 'STRING'
- options.hashContexts.id = this
-
- originalInputHelper.call(this, options)
-)
-
-Ember.Handlebars.registerHelper('travis-field', (name, options) ->
- errors = @get('errors').for(name)
- template = options.fn
- delete options.fn
-
- view = FormFieldRowView.create(
- controller: this
- template: template
- errors: errors
- name: name
- classNameBindings: ['name']
- )
-
- Ember.Handlebars.helpers.view.call(this, view, options)
-)
-
-Travis.ErrorsView = Ember.View.extend
- tagName: 'span'
- template: Ember.Handlebars.compile("{{#each view.errors}}{{message}}{{/each}}")
- classNames: ['error']
- classNameBindings: ['codes']
- attributeBindings: ['style']
- style: (->
- 'display: none' unless @get('show')
- ).property('show')
- codes: (->
- @get('errors').mapBy('code')
- ).property('@errors')
- show: Ember.computed.notEmpty('errors.[]')
-
-Ember.Handlebars.registerHelper('travis-errors', (name, options) ->
- errors = @get('errors').for(name)
- view = Travis.ErrorsView.create(
- controller: this
- errors: errors
- )
-
- Ember.Handlebars.helpers.view.call(this, view, options)
-)
-
-Handlebars.registerHelper 'tipsy', (text, tip) ->
- safe '' + text + ''
-
-Ember.Handlebars.registerBoundHelper 'capitalize', (value, options) ->
- if value?
- safe $.capitalize(value)
- else
- ''
-
-Ember.Handlebars.helper('githubCommitLink', (slug, commitSha) ->
- return '' unless commitSha
- sha = Handlebars.Utils.escapeExpression Travis.Helpers.formatCommit(commitSha)
- return sha unless slug
- url = Handlebars.Utils.escapeExpression Travis.Urls.githubCommit(slug, sha)
-
- safe '' + sha + ''
-)
-
-Ember.Handlebars.registerBoundHelper 'formatTime', (value, options) ->
- safe Travis.Helpers.timeAgoInWords(value) || '-'
-
-Ember.Handlebars.registerBoundHelper 'formatDuration', (duration, options) ->
- safe Travis.Helpers.timeInWords(duration)
-
-Ember.Handlebars.helper('formatCommit', (commit) ->
- safe Travis.Helpers.formatCommit(commit.get('sha'), commit.get('branch')) if commit
-, 'sha', 'branch')
-
-Ember.Handlebars.helper 'formatSha', (sha) ->
- safe Travis.Helpers.formatSha(sha)
-
-Ember.Handlebars.registerBoundHelper 'pathFrom', (url, options) ->
- safe Travis.Helpers.pathFrom(url)
-
-Ember.Handlebars.helper 'formatMessage', (message, options) ->
- safe Travis.Helpers.formatMessage(message, options.hash)
-
-Ember.Handlebars.registerBoundHelper 'formatConfig', (config, options) ->
- safe Travis.Helpers.formatConfig(config)
-
-Ember.Handlebars.registerBoundHelper 'shortCompareShas', (url, options) ->
- path = Travis.Helpers.pathFrom(url)
- if path.indexOf('...') >= 0
- shas = path.split('...')
- "#{shas[0][0..6]}..#{shas[1][0..6]}"
- else
- path
-
-Ember.Handlebars.registerBoundHelper 'formatLog', (log, options) ->
- parentView = @get 'parentView'
- repo = parentView.get(options.repo)
- item = parentView.get(options.item)
- Travis.Helpers.formatLog(log, repo, item) || ''
-
-Ember.Handlebars.registerBoundHelper 'humanize-state', (state) ->
- if state == 'received'
- 'booting'
- else
- state
diff --git a/assets/scripts/app/helpers/status_image_formatter.coffee b/assets/scripts/app/helpers/status_image_formatter.coffee
deleted file mode 100644
index 348346bc..00000000
--- a/assets/scripts/app/helpers/status_image_formatter.coffee
+++ /dev/null
@@ -1,55 +0,0 @@
-@Travis.StatusImageFormatter =
- slug: null
- url: null
- branch: null
-
- format: (version, slug, branch) ->
- @slug = slug
- @branch = branch
- @url = @urlRepo()
-
- switch version
- when 'Image URL' then @statusImageUrl()
- when 'Markdown' then @markdownStatusImage()
- when 'Textile' then @textileStatusImage()
- when 'Rdoc' then @rdocStatusImage()
- when 'AsciiDoc' then @asciidocStatusImage()
- when 'Rst' then @rstStatusImage()
- when 'Pod' then @podStatusImage()
- when 'CCTray' then @ccxmlStatusUrl()
-
- urlRepo: (->
- "https://#{location.host}/#{@slug}"
- )
-
- statusImageUrl: (->
- Travis.Urls.statusImage(@slug, @branch)
- )
-
- markdownStatusImage: (->
- "[})](#{@url})"
- )
-
- textileStatusImage: (->
- "!#{@statusImageUrl()}!:#{@url}"
- )
-
- rdocStatusImage: (->
- "{
}[#{@url}]"
- )
-
- asciidocStatusImage: (->
- "image:#{@statusImageUrl()}[\"Build Status\", link=\"#{@url}\"]"
- )
-
- rstStatusImage: (->
- ".. image:: #{@statusImageUrl()}\n :target: #{@url}"
- )
-
- podStatusImage: (->
- "=for HTML
"
- )
-
- ccxmlStatusUrl: (->
- Travis.Urls.ccXml(@slug)
- )
diff --git a/assets/scripts/app/helpers/urls.coffee b/assets/scripts/app/helpers/urls.coffee
deleted file mode 100644
index 9e7d5fbc..00000000
--- a/assets/scripts/app/helpers/urls.coffee
+++ /dev/null
@@ -1,41 +0,0 @@
-@Travis.Urls =
- plainTextLog: (id) ->
- "#{Travis.config.api_endpoint}/jobs/#{id}/log.txt?deansi=true"
-
- githubPullRequest: (slug, pullRequestNumber) ->
- "#{Travis.config.source_endpoint}/#{slug}/pull/#{pullRequestNumber}"
-
- githubCommit: (slug, sha) ->
- "#{Travis.config.source_endpoint}/#{slug}/commit/#{sha}"
-
- githubRepo: (slug) ->
- "#{Travis.config.source_endpoint}/#{slug}"
-
- githubWatchers: (slug) ->
- "#{Travis.config.source_endpoint}/#{slug}/watchers"
-
- githubNetwork: (slug) ->
- "#{Travis.config.source_endpoint}/#{slug}/network"
-
- githubAdmin: (slug) ->
- "#{Travis.config.source_endpoint}/#{slug}/settings/hooks#travis_minibucket"
-
- statusImage: (slug, branch) ->
- if Travis.config.pro
- token = Travis.__container__.lookup('controller:currentUser').get('token')
- "#{location.protocol}//#{location.host}/#{slug}.svg?token=#{token}" + if branch then "&branch=#{branch}" else ''
- else
- "#{location.protocol}//#{location.host}/#{slug}.svg" + if branch then "?branch=#{encodeURIComponent(branch)}" else ''
-
- ccXml: (slug) ->
- if Travis.config.pro
- token = Travis.__container__.lookup('controller:currentUser').get('token')
- "##{Travis.config.api_endpoint}/repos/#{slug}/cc.xml?token=#{token}"
- else
- "#{Travis.config.api_endpoint}/repos/#{slug}/cc.xml"
-
- email: (email) ->
- "mailto:#{email}"
-
- gravatarImage: (email, size) ->
- "https://www.gravatar.com/avatar/#{md5(email)}?s=#{size}&d=#{encodeURIComponent(Travis.config.avatar_default_url)}"
diff --git a/assets/scripts/app/models.coffee b/assets/scripts/app/models.coffee
deleted file mode 100644
index 937eb98b..00000000
--- a/assets/scripts/app/models.coffee
+++ /dev/null
@@ -1,17 +0,0 @@
-require 'models/extensions'
-require 'models/account'
-require 'models/broadcast'
-require 'models/branch'
-require 'models/build'
-require 'models/commit'
-require 'models/event'
-require 'models/hook'
-require 'models/job'
-require 'models/log'
-require 'models/annotation'
-require 'models/repo'
-require 'models/request'
-require 'models/user'
-require 'models/worker'
-require 'models/env_var'
-require 'models/ssh_key'
diff --git a/assets/scripts/app/models/account.coffee b/assets/scripts/app/models/account.coffee
deleted file mode 100644
index f936df1d..00000000
--- a/assets/scripts/app/models/account.coffee
+++ /dev/null
@@ -1,20 +0,0 @@
-require 'travis/model'
-
-@Travis.Account = Travis.Model.extend
- login: Ember.attr('string')
- name: Ember.attr('string')
- type: Ember.attr('string')
- _reposCount: Ember.attr(Number, key: 'repos_count')
- subscribed: Ember.attr(Boolean)
- education: Ember.attr(Boolean)
-
- urlGithub: (->
- "#{Travis.config.source_endpoint}/#{@get('login')}"
- ).property()
-
- # TODO: maybe it would be good to add a "default" value for Ember.attr
- reposCount: (->
- @get('_reposCount') || 0
- ).property('_reposCount')
-
-Travis.Account.primaryKey = 'login'
diff --git a/assets/scripts/app/models/annotation.coffee b/assets/scripts/app/models/annotation.coffee
deleted file mode 100644
index 471ad76e..00000000
--- a/assets/scripts/app/models/annotation.coffee
+++ /dev/null
@@ -1,10 +0,0 @@
-require 'travis/model'
-
-@Travis.Annotation = Travis.Model.extend
- jobId: Ember.attr('number')
- description: Ember.attr('string')
- url: Ember.attr('string')
- status: Ember.attr('string')
- providerName: Ember.attr('string')
-
- job: Ember.belongsTo('Travis.Job')
diff --git a/assets/scripts/app/models/branch.coffee b/assets/scripts/app/models/branch.coffee
deleted file mode 100644
index 9f6e66f7..00000000
--- a/assets/scripts/app/models/branch.coffee
+++ /dev/null
@@ -1,27 +0,0 @@
-require 'travis/model'
-
-@Travis.Branch = Travis.Model.extend
- repoId: Ember.attr('number', key: 'repository_id')
- commitId: Ember.attr('number')
- state: Ember.attr('string')
- number: Ember.attr('number')
- branch: Ember.attr('string')
- message: Ember.attr('string')
- result: Ember.attr('number')
- duration: Ember.attr('number')
- startedAt: Ember.attr('string')
- finishedAt: Ember.attr('string')
-
- commit: Ember.belongsTo('Travis.Commit')
-
- repo: (->
- Travis.Repo.find @get('repoId') if @get('repoId')
- ).property('repoId')
-
- updateTimes: ->
- @notifyPropertyChange 'started_at'
- @notifyPropertyChange 'finished_at'
-
-@Travis.Branch.reopenClass
- byRepoId: (id) ->
- @find repository_id: id
diff --git a/assets/scripts/app/models/commit.coffee b/assets/scripts/app/models/commit.coffee
deleted file mode 100644
index e654af68..00000000
--- a/assets/scripts/app/models/commit.coffee
+++ /dev/null
@@ -1,33 +0,0 @@
-require 'travis/model'
-
-@Travis.Commit = Travis.Model.extend
- buildId: Ember.attr('number')
- sha: Ember.attr('string')
- branch: Ember.attr('string')
- message: Ember.attr('string')
- compareUrl: Ember.attr('string')
- authorName: Ember.attr('string')
- authorEmail: Ember.attr('string')
- committerName: Ember.attr('string')
- committerEmail: Ember.attr('string')
- subject: Ember.attr('string')
- body: Ember.attr('string')
-
- build: Ember.belongsTo('Travis.Build')
-
- subject: ( ->
- @get('message').split("\n", 1)[0]
- ).property('message')
-
- body: ( ->
- message = @get('message')
- if message.indexOf("\n") > 0
- message.substr(message.indexOf("\n") + 1).trim()
- else
- ""
- ).property('message')
-
- authorIsCommitter: ( ->
- @get('authorName') == @get('committerName') and
- @get('authorEmail') == @get('committerEmail')
- ).property('authorName', 'authorEmail', 'committerName', 'committerEmail')
diff --git a/assets/scripts/app/models/env_var.coffee b/assets/scripts/app/models/env_var.coffee
deleted file mode 100644
index 168df98f..00000000
--- a/assets/scripts/app/models/env_var.coffee
+++ /dev/null
@@ -1,8 +0,0 @@
-require 'travis/model'
-
-Travis.EnvVar = Travis.Model.extend
- name: Ember.attr('string')
- value: Ember.attr('string')
- public: Ember.attr('boolean')
-
- repo: Ember.belongsTo('Travis.Repo', key: 'repository_id')
diff --git a/assets/scripts/app/models/event.coffee b/assets/scripts/app/models/event.coffee
deleted file mode 100644
index 357d9abd..00000000
--- a/assets/scripts/app/models/event.coffee
+++ /dev/null
@@ -1,28 +0,0 @@
-require 'travis/model'
-
-@Travis.Event = Travis.Model.extend
- event: Ember.attr('string')
- repoId: Ember.attr('number', key: 'repository_id')
- sourceId: Ember.attr('number', key: 'source_id')
- sourceType: Ember.attr('string', key: 'source_type')
- createdAt: Ember.attr('string', key: 'created_at')
-
- event_: (->
- @get('event')
- ).property('event')
-
- state: (->
- @get('data.data.state')
- ).property('data.data.state')
-
- message: (->
- @get('data.data.message')
- ).property('data.data.message')
-
- source: (->
- Travis[type].find(@get('sourceId')) if type = @get('sourceType')
- ).property('sourceType', 'sourceId')
-
-@Travis.Event.reopenClass
- byRepoId: (id) ->
- @find repository_id: id
diff --git a/assets/scripts/app/models/hook.coffee b/assets/scripts/app/models/hook.coffee
deleted file mode 100644
index 350706aa..00000000
--- a/assets/scripts/app/models/hook.coffee
+++ /dev/null
@@ -1,39 +0,0 @@
-require 'travis/model'
-
-@Travis.Hook = Travis.Model.extend
- name: Ember.attr('string')
- ownerName: Ember.attr('string')
- description: Ember.attr('string')
- active: Ember.attr('boolean')
- admin: Ember.attr('boolean')
-
- account: (->
- @get('slug').split('/')[0]
- ).property('slug')
-
- slug: (->
- "#{@get('ownerName')}/#{@get('name')}"
- ).property('ownerName', 'name')
-
- urlGithub: (->
- "#{Travis.config.source_endpoint}/#{@get('slug')}"
- ).property()
-
- urlGithubAdmin: (->
- "#{Travis.config.source_endpoint}/#{@get('slug')}/settings/hooks#travis_minibucket"
- ).property()
-
- toggle: ->
- return if @get('isSaving')
- @set 'active', !@get('active')
- @save()
-
- repo: (->
- # I don't want to make an ajax request for each repository showed in profile,
- # especially, because most of them does not have any builds anyway. That's why
- # I add an info which we have here to the store - this will allow to display
- # a link to the repo and if more info is needed, it will be requested when the
- # link is used
- Travis.loadOrMerge(Travis.Repo, @getProperties('id', 'slug', 'name', 'ownerName'), skipIfExists: true)
- Travis.Repo.find(@get('id'))
- ).property('id')
diff --git a/assets/scripts/app/models/repo.coffee b/assets/scripts/app/models/repo.coffee
deleted file mode 100644
index 2e9a1cd0..00000000
--- a/assets/scripts/app/models/repo.coffee
+++ /dev/null
@@ -1,183 +0,0 @@
-require 'travis/expandable_record_array'
-require 'travis/model'
-
-@Travis.Repo = Travis.Model.extend
- id: Ember.attr('string')
- slug: Ember.attr('string')
- description: Ember.attr('string')
- private: Ember.attr('boolean')
- lastBuildId: Ember.attr('string')
- lastBuildNumber: Ember.attr(Number)
- lastBuildState: Ember.attr('string')
- lastBuildStartedAt: Ember.attr('string')
- lastBuildFinishedAt: Ember.attr('string')
- githubLanguage: Ember.attr('string')
- _lastBuildDuration: Ember.attr(Number, key: 'last_build_duration')
-
- lastBuild: Ember.belongsTo('Travis.Build', key: 'last_build_id')
-
- lastBuildHash: (->
- {
- id: @get('lastBuildId')
- number: @get('lastBuildNumber')
- repo: this
- }
- ).property('lastBuildId', 'lastBuildNumber')
-
- withLastBuild: ->
- @filter( (repo) -> repo.get('lastBuildId') )
-
- sshKey: (->
- Travis.SshKey.find(@get('id'))
- )
-
- envVars: (->
- id = @get('id')
- envVars = Travis.EnvVar.find repository_id: id
-
- # TODO: move to controller
- array = Travis.ExpandableRecordArray.create
- type: Travis.EnvVar
- content: Ember.A([])
-
- array.load(envVars)
-
- globalEnvVars = Ember.RecordArray.create({ modelClass: Travis.EnvVar, content: Ember.A([]) })
- Travis.EnvVar.registerRecordArray(globalEnvVars)
-
- array.observe(globalEnvVars, (envVar) -> envVar.get('isLoaded') && envVar.get('repo.id') == id )
-
- array
- ).property()
-
- allBuilds: (->
- recordArray = Ember.RecordArray.create({ modelClass: Travis.Build, content: Ember.A([]) })
- Travis.Build.registerRecordArray(recordArray)
- recordArray
- ).property()
-
- builds: (->
- id = @get('id')
- builds = Travis.Build.byRepoId id, event_type: 'push'
-
- # TODO: move to controller
- array = Travis.ExpandableRecordArray.create
- type: Travis.Build
- content: Ember.A([])
-
- array.load(builds)
-
- id = @get('id')
- array.observe(@get('allBuilds'), (build) -> build.get('isLoaded') && build.get('repo.id') == id && !build.get('isPullRequest') )
-
- array
- ).property()
-
- pullRequests: (->
- id = @get('id')
- builds = Travis.Build.byRepoId id, event_type: 'pull_request'
- array = Travis.ExpandableRecordArray.create
- type: Travis.Build
- content: Ember.A([])
-
- array.load(builds)
-
- id = @get('id')
- array.observe(@get('allBuilds'), (build) -> build.get('isLoaded') && build.get('repo.id') == id && build.get('isPullRequest') )
-
- array
- ).property()
-
- branches: (->
- Travis.Build.branches repoId: @get('id')
- ).property()
-
- events: (->
- Travis.Event.byRepoId @get('id')
- ).property()
-
- owner: (->
- (@get('slug') || '').split('/')[0]
- ).property('slug')
-
- name: (->
- (@get('slug') || '').split('/')[1]
- ).property('slug')
-
- lastBuildDuration: (->
- duration = @get('_lastBuildDuration')
- duration = Travis.Helpers.durationFrom(@get('lastBuildStartedAt'), @get('lastBuildFinishedAt')) unless duration
- duration
- ).property('_lastBuildDuration', 'lastBuildStartedAt', 'lastBuildFinishedAt')
-
- sortOrder: (->
- # cuz sortAscending seems buggy when set to false
- if lastBuildFinishedAt = @get('lastBuildFinishedAt')
- - new Date(lastBuildFinishedAt).getTime()
- else
- - new Date('9999').getTime() - parseInt(@get('lastBuildId'))
- ).property('lastBuildFinishedAt', 'lastBuildId')
-
- stats: (->
- if @get('slug')
- @get('_stats') || $.get("https://api.github.com/repos/#{@get('slug')}", (data) =>
- @set('_stats', data)
- @notifyPropertyChange 'stats'
- ) && {}
- ).property('slug')
-
- updateTimes: ->
- @notifyPropertyChange 'lastBuildDuration'
-
- regenerateKey: (options) ->
- Travis.ajax.ajax '/repos/' + @get('id') + '/key', 'post', options
-
- fetchSettings: ->
- Travis.ajax.ajax('/repos/' + @get('id') + '/settings', 'get', forceAuth: true).then (data) ->
- data['settings']
-
- saveSettings: (settings) ->
- Travis.ajax.ajax('/repos/' + @get('id') + '/settings', 'patch', data: { settings: settings })
-
-@Travis.Repo.reopenClass
- recent: ->
- @find()
-
- ownedBy: (login) ->
- @find(owner_name: login, orderBy: 'name')
-
- accessibleBy: (login) ->
- @find(member: login, orderBy: 'name')
-
- search: (query) ->
- @find(search: query, orderBy: 'name')
-
- withLastBuild: ->
- filtered = Ember.FilteredRecordArray.create(
- modelClass: Travis.Repo
- filterFunction: (repo) -> repo.get('lastBuildId')
- filterProperties: ['lastBuildId']
- )
-
- Travis.Repo.fetch().then (array) ->
- filtered.updateFilter()
- filtered.set('isLoaded', true)
-
- filtered
-
- bySlug: (slug) ->
- repo = $.select(@find().toArray(), (repo) -> repo.get('slug') == slug)
- if repo.length > 0 then repo else @find(slug: slug)
-
- fetchBySlug: (slug) ->
- repos = $.select(@find().toArray(), (repo) -> repo.get('slug') == slug)
- if repos.length > 0
- repos[0]
- else
- @fetch(slug: slug).then (repos) ->
- error = new Error('repo not found')
- error.slug = slug
- Ember.get(repos, 'firstObject') || throw(error)
-
- # buildURL: (slug) ->
- # if slug then slug else 'repos'
diff --git a/assets/scripts/app/models/request.coffee b/assets/scripts/app/models/request.coffee
deleted file mode 100644
index 6f238a05..00000000
--- a/assets/scripts/app/models/request.coffee
+++ /dev/null
@@ -1,30 +0,0 @@
-require 'travis/model'
-
-@Travis.Request = Travis.Model.extend
- id: Ember.attr('string')
- created_at: Ember.attr('string')
- event_type: Ember.attr('string')
- result: Ember.attr('string')
- message: Ember.attr('string')
- headCommit: Ember.attr('string')
- baseCommit: Ember.attr('string')
- branchName: Ember.attr('string', key: 'branch')
- tagName: Ember.attr('string', key: 'tag')
- pullRequest: Ember.attr('boolean')
- pullRequestTitle: Ember.attr('string')
- pullRequestNumber: Ember.attr(Number)
-
- repo: Ember.belongsTo('Travis.Repo', key: 'repository_id')
- commit: Ember.belongsTo('Travis.Commit', key: 'commit_id')
- build: Ember.belongsTo('Travis.Build', key: 'build_id')
-
- isAccepted: (->
- # For some reason some of the requests have a null result beside the fact that
- # the build was created. We need to look into it, but for now we can just assume
- # that if build was created, the request was accepted
- @get('result') == 'accepted' || @get('build')
- ).property('result')
-
- isPullRequest: (->
- @get('event_type') == 'pull_request'
- ).property('event_type')
diff --git a/assets/scripts/app/models/ssh_key.coffee b/assets/scripts/app/models/ssh_key.coffee
deleted file mode 100644
index 40d83fb0..00000000
--- a/assets/scripts/app/models/ssh_key.coffee
+++ /dev/null
@@ -1,5 +0,0 @@
-Travis.SshKey = Travis.Model.extend
- id: Ember.attr('string')
- value: Ember.attr('string')
- description: Ember.attr('string')
- fingerprint: Ember.attr('string')
diff --git a/assets/scripts/app/models/worker.coffee b/assets/scripts/app/models/worker.coffee
deleted file mode 100644
index c5bc8539..00000000
--- a/assets/scripts/app/models/worker.coffee
+++ /dev/null
@@ -1,61 +0,0 @@
-require 'travis/model'
-
-@Travis.Worker = Travis.Model.extend
- state: Ember.attr('string')
- name: Ember.attr('string')
- host: Ember.attr('string')
- payload: Ember.attr('object')
-
- number: (->
- @get('name').match(/\d+$/)[0]
- ).property('name')
-
- isWorking: (->
- @get('state') == 'working'
- ).property('state')
-
- jobId: (->
- @get('payload.build.id') || @get('payload.job.id')
- ).property('payload.job.id', 'payload.build.id')
-
- job: (->
- Travis.Job.find @get('job_id')
- ).property('jobId')
-
- jobNumber: (->
- @get('payload.job.number')
- ).property('jobNumber')
-
- repo: (->
- id = @get('payload.repository.id') || @get('payload.repo.id')
- slug = @get('repoSlug')
-
- @get('store').loadIncomplete(Travis.Repo, {
- id: id,
- slug: slug
- }, { skipIfExists: true })
-
- Travis.Repo.find(@get('payload.repository.id') || @get('payload.repo.id'))
- ).property('payload.repository.id', 'payload.repo.id')
-
- repoSlug: (->
- @get('payload.repo.slug') || @get('payload.repository.slug')
- ).property('payload.repo.slug', 'payload.repository.slug')
-
- repoId: (->
- @get('payload.repo.id') || @get('payload.repository.id')
- ).property('payload.repo.id', 'payload.repository.id')
-
- nameForSort: (->
- if name = @get('name')
- match = name.match /(.*?)-(\d+)/
- if match
- name = match[1]
- id = match[2].toString()
- if id.length < 2
- id = "00#{id}"
- else if id.length < 3
- id = "0#{id}"
-
- "#{name}-#{id}"
- ).property('name')
diff --git a/assets/scripts/app/pusher.coffee b/assets/scripts/app/pusher.coffee
deleted file mode 100644
index e610a265..00000000
--- a/assets/scripts/app/pusher.coffee
+++ /dev/null
@@ -1,180 +0,0 @@
-Travis.Pusher = (config) ->
- @init(config)
- this
-
-if Travis.config.pro
- $.extend Travis.Pusher,
- CHANNELS: []
- CHANNEL_PREFIX: 'private-'
- ENCRYPTED: true
- KEY: ''
-else
- $.extend Travis.Pusher,
- CHANNELS: ['common']
- CHANNEL_PREFIX: ''
- ENCRYPTED: false
-
-$.extend Travis.Pusher.prototype,
- active_channels: []
-
- init: (config) ->
- Pusher.warn = @warn.bind(this)
- Pusher.host = config.host if config.host
- @pusher = new Pusher(config.key, encrypted: Travis.Pusher.ENCRYPTED, disableStats: true)
- @subscribeAll(Travis.Pusher.CHANNELS) if Travis.Pusher.CHANNELS
-
- @callbacksToProcess = []
-
- Visibility.change (e, state) =>
- @processSavedCallbacks() if state == 'visible'
-
- setInterval @processSavedCallbacks.bind(this), @processingIntervalWhenHidden
-
- subscribeAll: (channels) ->
- @subscribe(channel) for channel in channels
-
- subscribe: (channel) ->
- return unless channel
- channel = @prefix(channel)
- console.log("subscribing to #{channel}")
- unless @pusher?.channel(channel)
- @pusher.subscribe(channel).bind_all((event, data) => @receive(event, data))
-
- unsubscribe: (channel) ->
- return unless channel
- channel = @prefix(channel)
- console.log("unsubscribing from #{channel}")
- @pusher.unsubscribe(channel) if @pusher?.channel(channel)
-
- prefix: (channel) ->
- if channel.indexOf(Travis.Pusher.CHANNEL_PREFIX) != 0
- "#{Travis.Pusher.CHANNEL_PREFIX}#{channel}"
- else
- channel
-
- # process pusher messages in batches every 5 minutes when the page is hidden
- processingIntervalWhenHidden: 1000 * 60 * 5
-
- receive: (event, data) ->
- return if event.substr(0, 6) == 'pusher'
- data = @normalize(event, data) if data.id
-
- @processWhenVisible ->
- # TODO remove job:requeued, once sf-restart-event has been merged
- # TODO this also needs to clear logs on build:created if matrix jobs are already loaded
- if event == 'job:created' || event == 'job:requeued'
- if Travis.Job.isRecordLoaded(data.job.id)
- Travis.Job.find(data.job.id).clearLog()
-
- Ember.run.next ->
- Travis.receive(event, data)
-
- processSavedCallbacks: ->
- while callback = @callbacksToProcess.shiftObject()
- callback.call(this)
-
- processLater: (callback) ->
- @callbacksToProcess.pushObject(callback)
-
- processWhenVisible: (callback) ->
- if Visibility.hidden() && Visibility.isSupported()
- @processLater(callback)
- else
- callback.call(this)
-
- normalize: (event, data) ->
- switch event
- when 'build:started', 'build:finished'
- data
- when 'job:created', 'job:started', 'job:requeued', 'job:finished', 'job:log', 'job:canceled', 'job:received'
- data.queue = data.queue.replace('builds.', '') if data.queue
- { job: data }
- when 'worker:added', 'worker:updated', 'worker:removed'
- { worker: data }
- when 'annotation:created', 'annotation:updated'
- { annotation: data }
-
- warn: (type, object) ->
- console.warn(type, object.error) unless @ignoreWarning(type, object.error)
-
- ignoreWarning: (type, error) ->
- code = error?.data?.code || 0
- message = error?.data?.message || ''
- @ignoreCode(code) || @ignoreMessage(message)
-
- ignoreCode: (code) ->
- code == 1006
-
- ignoreMessage: (message) ->
- message.indexOf('Existing subscription') == 0 or message.indexOf('No current subscription') == 0
-
-pusher_host = $('meta[name="travis.pusher_host"]').attr('value')
-pusher_path = $('meta[name="travis.pusher_path"]').attr('value')
-
-Pusher.SockJSTransport.isSupported = -> false if pusher_host != 'ws.pusherapp.com'
-
-if Travis.config.pro
- Pusher.channel_auth_transport = 'bulk_ajax'
-
- Pusher.authorizers.bulk_ajax = (socketId, _callback) ->
- channels = Travis.pusher.pusher.channels
- channels.callbacks ||= []
-
- name = this.channel.name
- names = $.keys(channels.channels)
-
- channels.callbacks.push (auths) ->
- _callback(false, auth: auths[name])
-
- unless channels.fetching
- channels.fetching = true
- Travis.ajax.post Pusher.channel_auth_endpoint, { socket_id: socketId, channels: names }, (data) ->
- channels.fetching = false
- callback(data.channels) for callback in channels.callbacks
-
-
- Pusher.getDefaultStrategy = (config) ->
- [
- [":def", "ws_options", {
- hostUnencrypted: config.wsHost + ":" + config.wsPort + (pusher_path && "/#{pusher_path}" || ''),
- hostEncrypted: config.wsHost + ":" + config.wssPort + (pusher_path && "/#{pusher_path}" || '')
- path: config.path
- }],
- [":def", "sockjs_options", {
- hostUnencrypted: config.httpHost + ":" + config.httpPort,
- hostEncrypted: config.httpHost + ":" + config.httpsPort
- }],
- [":def", "timeouts", {
- loop: true,
- timeout: 15000,
- timeoutLimit: 60000
- }],
-
- [":def", "ws_manager", [":transport_manager", {
- lives: 2,
- minPingDelay: 10000,
- maxPingDelay: config.activity_timeout
- }]],
-
- [":def_transport", "ws", "ws", 3, ":ws_options", ":ws_manager"],
- [":def_transport", "flash", "flash", 2, ":ws_options", ":ws_manager"],
- [":def_transport", "sockjs", "sockjs", 1, ":sockjs_options"],
- [":def", "ws_loop", [":sequential", ":timeouts", ":ws"]],
- [":def", "flash_loop", [":sequential", ":timeouts", ":flash"]],
- [":def", "sockjs_loop", [":sequential", ":timeouts", ":sockjs"]],
-
- [":def", "strategy",
- [":cached", 1800000,
- [":first_connected",
- [":if", [":is_supported", ":ws"], [
- ":best_connected_ever", ":ws_loop", [":delayed", 2000, [":sockjs_loop"]]
- ], [":if", [":is_supported", ":flash"], [
- ":best_connected_ever", ":flash_loop", [":delayed", 2000, [":sockjs_loop"]]
- ], [
- ":sockjs_loop"
- ]
- ]]
- ]
- ]
- ]
- ]
diff --git a/assets/scripts/app/routes.coffee b/assets/scripts/app/routes.coffee
deleted file mode 100644
index 4cec4a95..00000000
--- a/assets/scripts/app/routes.coffee
+++ /dev/null
@@ -1,508 +0,0 @@
-require 'travis/location'
-
-Ember.Router.reopen
- location: (if testMode? then Ember.NoneLocation.create() else Travis.Location.create())
-
- handleURL: (url) ->
- url = url.replace(/#.*?$/, '')
- @_super(url)
-
-Travis.Route = Ember.Route.extend
- beforeModel: (transition) ->
- @auth.autoSignIn() unless @signedIn()
-
- if !@signedIn() && @get('needsAuth')
- @auth.set('afterSignInTransition', transition)
- Ember.RSVP.reject("needs-auth")
- else
- @_super.apply(this, arguments)
-
- signedIn: ->
- @controllerFor('currentUser').get('model')
-
- needsAuth: (->
- # on pro, we need to auth on every route
- Travis.config.pro
- ).property()
-
-Travis.ApplicationRoute = Travis.Route.extend
- needsAuth: false
-
- renderTemplate: ->
- if Travis.config.pro
- $('body').addClass('pro')
-
- @_super.apply(this, arguments)
-
- actions:
- redirectToGettingStarted: ->
- # do nothing, we handle it only in index path
-
- renderDefaultTemplate: ->
- @renderDefaultTemplate() if @renderDefaultTemplate
-
- error: (error) ->
- if error == 'needs-auth'
- authController = @container.lookup('controller:auth')
- authController.set('redirected', true)
- @transitionTo('auth')
- else
- return true
-
- renderFirstSync: ->
- @transitionTo 'first_sync'
-
- afterSignIn: ->
- if transition = @auth.get('afterSignInTransition')
- @auth.set('afterSignInTransition', null)
- transition.retry()
- else
- @transitionTo('main')
-
- afterSignOut: ->
- if Travis.config.pro
- @transitionTo('auth')
- else
- @transitionTo('main')
-
-Travis.Router.map ->
- @resource 'main', path: '/', ->
- @resource 'getting_started'
- @route 'recent'
- @route 'repositories'
- @route 'my_repositories'
- @route 'search', path: '/search/:phrase'
- @resource 'repo', path: '/:owner/:name', ->
- @route 'index', path: '/'
- @resource 'build', path: '/builds/:build_id'
- @resource 'job', path: '/jobs/:job_id'
- @resource 'builds', path: '/builds'
- @resource 'pullRequests', path: '/pull_requests'
- @resource 'branches', path: '/branches'
- @resource 'requests', path: '/requests'
- @resource 'caches', path: '/caches' if Travis.config.caches_enabled
- @resource 'request', path: '/requests/:request_id'
-
- @resource 'settings', ->
- @route 'index', path: '/'
- @resource 'env_vars', ->
- @route 'new'
- @resource 'ssh_key' if Travis.config.ssh_key_enabled
-
- @route 'first_sync'
- @route 'insufficient_oauth_permissions'
- @route 'stats', path: '/stats'
- @route 'auth', path: '/auth'
-
- @resource 'profile', path: '/profile', ->
- @resource 'accounts', path: '/', ->
- @resource 'account', path: '/:login'
- @route 'info', path: '/info'
-
- @route 'notFound', path: "/*path"
-
-Travis.RequestsRoute = Travis.Route.extend
- needsAuth: true
- setupController: ->
- @_super.apply this, arguments
- @controllerFor('repo').activate('requests')
-
- model: ->
- Travis.Request.fetch repository_id: @modelFor('repo').get('id')
-
-Travis.CachesRoute = Travis.Route.extend
- needsAuth: true
- setupController: ->
- @_super.apply this, arguments
- @controllerFor('repo').activate('caches')
-
- model: ->
- repo = @modelFor('repo')
- Travis.ajax.get("/repos/#{repo.get('id')}/caches").then( (data) ->
- groups = {}
- data["caches"].forEach (cacheData) ->
- branch = cacheData["branch"]
- group = groups[branch]
- unless group
- group = groups[branch] = Ember.Object.create(branch: branch, caches: [])
- cache = Ember.Object.create(cacheData)
- cache.set('parent', group)
- group.get('caches').pushObject(cache)
-
- result = []
- for branch, caches of groups
- result.push caches
-
- result
- )
-
-Travis.RequestRoute = Travis.Route.extend
- setupController: ->
- @_super.apply this, arguments
- @controllerFor('repo').activate('request')
-
- model: (params) ->
- Travis.Request.fetch params.request_id
-
-Travis.GettingStartedRoute = Travis.Route.extend
- renderTemplate: ->
- @render('no_owned_repos')
-
-Travis.SimpleLayoutRoute = Travis.Route.extend
- setupController: ->
- $('body').attr('id', 'home')
- toActivate = if @signedIn() then 'owned' else 'recent'
- @container.lookup('controller:repos').activate(toActivate)
- @_super.apply(this, arguments)
-
- renderTemplate: ->
- @_super.apply(this, arguments)
-
-Travis.FirstSyncRoute = Travis.SimpleLayoutRoute.extend
- actions:
- redirectToGettingStarted: ->
- # do nothing, we are showing first sync, so it's normal that there is
- # no owned repos
-
-Travis.InsufficientOauthPermissionsRoute = Travis.SimpleLayoutRoute.extend
- setupController: (controller) ->
- @_super.apply this, arguments
- existingUser = document.location.hash.match(/#existing[_-]user/)
- controller.set('existingUser', existingUser)
-
-Travis.MainTabRoute = Travis.Route.extend
- renderTemplate: ->
- @render 'repo'
- @render 'build', into: 'repo'
-
- setupController: ->
- @_super.apply this, arguments
-
- @controllerFor('repo').activate('index')
- @controllerFor('repos').activate(@get('reposTabName'))
-
- @currentRepoDidChange()
- @controllerFor('repos').addObserver('firstObject', this, 'currentRepoDidChange')
-
- deactivate: ->
- @controllerFor('repos').removeObserver('firstObject', this, 'currentRepoDidChange')
-
- currentRepoDidChange: ->
- if repo = @controllerFor('repos').get('firstObject')
- @controllerFor('repo').set('repo', repo)
-
- actions:
- redirectToGettingStarted: ->
- @transitionTo('getting_started')
-
-Travis.MainMyRepositoriesRoute = Travis.Route.extend
- redirect: ->
- @transitionTo("main.repositories")
-
-Travis.MainRepositoriesRoute = Travis.MainTabRoute.extend
- needsAuth: true
- reposTabName: 'owned'
- afterModel: ->
- @controllerFor('repos').possiblyRedirectToGettingStartedPage()
-
-Travis.MainRecentRoute = Travis.MainTabRoute.extend
- reposTabName: 'recent'
-
-Travis.MainSearchRoute = Travis.MainTabRoute.extend
- renderTemplate: ->
- @render 'repo'
- @render 'build', into: 'repo'
-
- setupController: (controller, searchPhrase) ->
- # TODO: this method is almost the same as _super, refactor this
- @controllerFor('repo').activate('index')
- @controllerFor('repos').activate('search', searchPhrase)
-
- @currentRepoDidChange()
- @controllerFor('repos').addObserver('firstObject', this, 'currentRepoDidChange')
-
- model: (params) ->
- params.phrase
-
- deactivate: ->
- @_super.apply(this, arguments)
-
- @controllerFor('repos').set('search', undefined)
-
-Travis.AbstractBuildsRoute = Travis.Route.extend
- renderTemplate: ->
- @render 'builds'
-
- setupController: ->
- @controllerFor('repo').activate(@get('contentType'))
- @contentDidChange()
- @controllerFor('repo').addObserver(@get('path'), this, 'contentDidChange')
-
- deactivate: ->
- @controllerFor('repo').removeObserver(@get('path'), this, 'contentDidChange')
-
- contentDidChange: ->
- path = @get('path')
- @controllerFor('builds').set('model', @controllerFor('repo').get(path))
-
- path: (->
- type = @get('contentType')
- "repo.#{type.camelize()}"
- ).property('contentType')
-
-Travis.BuildsRoute = Travis.AbstractBuildsRoute.extend(contentType: 'builds')
-Travis.BranchesRoute = Travis.AbstractBuildsRoute.extend(contentType: 'branches')
-Travis.PullRequestsRoute = Travis.AbstractBuildsRoute.extend(
- contentType: 'pull_requests'
-
- # TODO: it would be better to have separate controller for branches and PRs list
- setupController: (controller, model) ->
- @_super(controller, model)
-
- this.controllerFor('builds').set('isPullRequestsList', true)
-
- deactivate: ->
- this.controllerFor('builds').set('isPullRequestsList', false)
-)
-
-Travis.BuildRoute = Travis.Route.extend
- serialize: (model, params) ->
- id = if model.get then model.get('id') else model
-
- { build_id: id }
-
- setupController: (controller, model) ->
- model = Travis.Build.find(model) if model && !model.get
-
- repo = @controllerFor('repo')
- #repo.set('build', model)
- @controllerFor('build').set('build', model)
- repo.activate('build')
- #repo.set('build', model)
-
- model: (params) ->
- Travis.Build.fetch(params.build_id)
-
- deactivate: ->
- @controllerFor('job').set('job', null)
- @controllerFor('build').set('build', null)
-
-Travis.JobRoute = Travis.Route.extend
- serialize: (model, params) ->
- id = if model.get then model.get('id') else model
-
- { job_id: id }
-
- setupController: (controller, model) ->
- model = Travis.Job.find(model) if model && !model.get
-
- repo = @controllerFor('repo')
- @controllerFor('job').set('job', model)
- repo.activate('job')
-
- if build = model.get('build')
- @controllerFor('build').set('build', build)
-
- model: (params) ->
- Travis.Job.fetch(params.job_id)
-
- deactivate: ->
- @controllerFor('build').set('build', null)
- @controllerFor('job').set('job', null)
-
-
-Travis.RepoIndexRoute = Travis.Route.extend
- setupController: (controller, model) ->
- @_super.apply this, arguments
- @controllerFor('repo').activate('current')
-
- renderTemplate: ->
- if @modelFor('repo').get('lastBuildId')
- @render 'build'
- else
- @render 'builds/not_found'
-
- deactivate: ->
- repo = @controllerFor('repo')
- @controllerFor('build').set('build', null)
- @controllerFor('job').set('job', null)
-
-Travis.RepoRoute = Travis.Route.extend
- renderTemplate: ->
- @render 'repo', into: 'main'
-
- setupController: (controller, model) ->
- # TODO: if repo is just a data hash with id and slug load it
- # as incomplete record
- model = Travis.Repo.find(model.id) if model && !model.get
- controller.set('repo', model)
-
- serialize: (repo) ->
- slug = if repo.get then repo.get('slug') else repo.slug
- [owner, name] = slug.split('/')
- { owner: owner, name: name }
-
- model: (params) ->
- slug = "#{params.owner}/#{params.name}"
- Travis.Repo.fetchBySlug(slug)
-
- resetController: ->
- @controllerFor('repo').deactivate()
-
- actions:
- error: (error) ->
- # if error throwed has a slug (ie. it was probably repo not found)
- # set the slug on main.error controller to allow to properly
- # display the repo information
- if error.slug
- this.controllerFor('main.error').set('slug', error.slug)
-
- # bubble to the top
- return true
-
-Travis.MainIndexRoute = Travis.Route.extend
- redirect: ->
- target = if @signedIn() then 'repositories' else 'recent'
- @transitionTo("main.#{target}")
-
-Travis.MainRoute = Travis.Route.extend
- renderTemplate: ->
- $('body').attr('id', 'home')
-
- @_super.apply this, arguments
-
- @render 'repos', outlet: 'left', into: 'main'
-
- setupController: (controller)->
- # TODO: this is redundant with repositories and recent routes
- toActivate = if @signedIn() then 'owned' else 'recent'
- @container.lookup('controller:repos').activate(toActivate)
-
-Travis.StatsRoute = Travis.Route.extend
- renderTemplate: ->
- $('body').attr('id', 'stats')
-
- @render 'stats'
-
-Travis.NotFoundRoute = Travis.Route.extend
- renderTemplate: ->
- $('body').attr('id', 'not-found')
-
- @render 'not_found'
-
-Travis.ProfileRoute = Travis.Route.extend
- needsAuth: true
-
- setupController: (controller, model) ->
- @controllerFor('accounts').set('model', model)
-
- renderTemplate: ->
- $('body').attr('id', 'profile')
- @_super.apply(this, arguments)
- @render 'loading', outlet: 'left', into: 'profile'
-
-Travis.AccountsRoute = Travis.Route.extend
- model: ->
- Travis.Account.fetch(all: true)
-
- renderTemplate: ->
- @_super.apply(this, arguments)
- @render 'profile_accounts', outlet: 'left', into: 'profile'
-
-Travis.AccountsIndexRoute = Travis.Route.extend
- redirect: ->
- # TODO: setting accounts model in ProfileRoute is wrong, but
- # at this stage it's better than what we had before
- accounts = @modelFor('accounts')
- login = @controllerFor('currentUser').get('login')
- account = accounts.find (account) -> account.get('login') == login
- @replaceWith 'account', account
-
-Travis.AccountRoute = Travis.Route.extend
- setupController: (controller, account) ->
- @_super.apply this, arguments
-
- @controllerFor('profile').activate 'hooks'
-
- model: (params) ->
- @modelFor('accounts').find (account) -> account.get('login') == params.login
-
- serialize: (account) ->
- if account && account.get
- { login: account.get('login') }
- else
- {}
-
-Travis.AccountsInfoRoute = Travis.Route.extend
- setupController: ->
- user = @controllerFor('currentUser').get('model')
- @controllerFor('account').set('model', user)
- @controllerFor('profile').activate 'user'
-
- renderTemplate: ->
- @render 'accounts_info'
-
-Travis.AuthRoute = Travis.Route.extend
- needsAuth: false
-
- renderTemplate: ->
- $('body').attr('id', 'auth')
-
- @render 'auth.signin'
-
- deactivate: ->
- @controllerFor('auth').set('redirected', false)
-
- actions:
- afterSignIn: ->
- @transitionTo('main')
- return true
-
- redirect: ->
- if @signedIn()
- @transitionTo('main')
-
-Travis.SettingsRoute = Travis.Route.extend
- needsAuth: true
- setupController: (controller, model) ->
- @controllerFor('repo').activate('settings')
-
-Travis.SettingsIndexRoute = Travis.Route.extend
- model: ->
- repo = @modelFor('repo')
- repo.fetchSettings().then (settings) ->
- repo.set('settings', settings)
-
-Travis.EnvVarsRoute = Travis.Route.extend
- model: (params) ->
- repo = @modelFor('repo')
- repo.get('envVars.promise')
-
-Travis.SshKeyRoute = Travis.Route.extend
- model: (params) ->
- repo = @modelFor('repo')
- self = this
- Travis.SshKey.fetch(repo.get('id')).then ( (result) -> result unless result.get('isNew') ), (xhr) ->
- if xhr.status == 404
- # if there is no model, just return null. I'm not sure if this is the
- # best answer, maybe we should just redirect to different route, like
- # ssh_key.new or ssh_key.no_key
- return null
-
- afterModel: (model, transition) ->
- repo = @modelFor('repo')
- Travis.ajax.get "/repositories/#{repo.get('id')}/key", (data) =>
- @defaultKey = Ember.Object.create(fingerprint: data.fingerprint)
-
- setupController: (controller, model) ->
- controller.reset()
- @_super.apply this, arguments
-
- if @defaultKey
- controller.set('defaultKey', @defaultKey)
- @defaultKey = null
-
- deactivate: ->
- @_super.apply(this, arguments)
-
- @controllerFor('ssh_key').send('cancel')
diff --git a/assets/scripts/app/slider.coffee b/assets/scripts/app/slider.coffee
deleted file mode 100644
index 470f42c1..00000000
--- a/assets/scripts/app/slider.coffee
+++ /dev/null
@@ -1,24 +0,0 @@
-@Travis.Slider = ->
- @minimize() if Travis.storage.getItem('travis.maximized') == 'true'
- this
-
-$.extend Travis.Slider.prototype,
- persist: ->
- Travis.storage.setItem('travis.maximized', @isMinimized())
-
- isMinimized: ->
- return $('body').hasClass('maximized');
-
- minimize: ->
- $('body').addClass('maximized')
-
- toggle: ->
- $('body').toggleClass('maximized')
- @persist()
- # TODO gotta force redraws here :/
- element = $('')
- $('#top .profile').append(element)
- Em.run.later (-> element.remove()), 10
-
-
-
diff --git a/assets/scripts/app/store/fixture_adapter.coffee b/assets/scripts/app/store/fixture_adapter.coffee
deleted file mode 100644
index 0ed65579..00000000
--- a/assets/scripts/app/store/fixture_adapter.coffee
+++ /dev/null
@@ -1,30 +0,0 @@
-@Travis.FixtureAdapter = DS.Adapter.extend
- find: (store, type, id) ->
- fixtures = type.FIXTURES
- Ember.assert "Unable to find fixtures for model type " + type.toString(), !!fixtures
- return if fixtures.hasLoaded
- setTimeout (->
- store.loadMany type, fixtures
- fixtures.hasLoaded = true
- ), 300
-
- findMany: ->
- @find.apply this, arguments
-
- findAll: (store, type) ->
- fixtures = type.FIXTURES
- Ember.assert "Unable to find fixtures for model type " + type.toString(), !!fixtures
- ids = fixtures.map (item, index, self) ->
- item.id
- store.loadMany type, ids, fixtures
-
- findQuery: (store, type, params, array) ->
- fixtures = type.FIXTURES
- Ember.assert "Unable to find fixtures for model type " + type.toString(), !!fixtures
- hashes = for fixture in fixtures
- matches = for key, value of params
- key == 'orderBy' || fixture[key] == value
- if matches.reduce((a, b) -> a && b) then fixture else null
- array.load(hashes.compact())
-
-
diff --git a/assets/scripts/app/store/rest_adapter.coffee b/assets/scripts/app/store/rest_adapter.coffee
deleted file mode 100644
index 939ebaff..00000000
--- a/assets/scripts/app/store/rest_adapter.coffee
+++ /dev/null
@@ -1,150 +0,0 @@
-require 'travis/ajax'
-require 'models'
-
-DS.JSONTransforms['object'] = {
- deserialize: (serialized) -> serialized
- serialize: (deserialized) -> deserialized
-}
-
-Travis.Serializer = DS.RESTSerializer.extend
- # The next 3 methods specify the behavior of adding records to dirty sets
- # (ie. which records will be treated as dirty on the next commit). We don't
- # allow to change most of the records on the client, so for anything except
- # the User, we ignore dirtyiness.
- dirtyRecordsForAttributeChange: (dirtySet, record) ->
- if record.constructor == Travis.User
- @_super.apply this, arguments
-
- dirtyRecordsForBelongsToChange: (dirtySet, record) ->
- if record.constructor == Travis.User
- @_super.apply this, arguments
-
- dirtyRecordsForHasManyChange: (dirtySet, record) ->
- if record.constructor == Travis.User
- @_super.apply this, arguments
-
- merge: (record, serialized) ->
- data = record.get('data')
-
- # TODO: write test that ensures that we go to materializingData
- # only if we can
- state = record.get('stateManager.currentState.path')
- unless state == "rootState.loaded.materializing"
- record.send('materializingData')
-
- record.eachAttribute( (name, attribute) ->
- value = @extractAttribute(record.constructor, serialized, name)
- if value != undefined
- value = @deserializeValue(value, attribute.type)
- if value != data.attributes[name]
- record.materializeAttribute(name, value)
- record.notifyPropertyChange(name)
- , this)
-
- record.eachRelationship( (name, relationship) ->
- if relationship.kind == 'belongsTo'
- key = @_keyForBelongsTo(record.constructor, relationship.key)
- value = @extractBelongsTo(record.constructor, serialized, key)
-
- if value != undefined && data.belongsTo[name] != value
- record.materializeBelongsTo name, value
- record.notifyPropertyChange(name)
- else if relationship.kind == 'hasMany'
- key = @_keyForHasMany(record.constructor, relationship.key)
- value = @extractHasMany(record.constructor, serialized, key)
-
- if value != undefined
- record.materializeHasMany name, value
- record.notifyPropertyChange(name)
- , this)
-
- record.notifyPropertyChange('data')
-
-Travis.RestAdapter = DS.RESTAdapter.extend
- serializer: Travis.Serializer
- mappings:
- broadcasts: Travis.Broadcast
- repositories: Travis.Repo
- repository: Travis.Repo
- repos: Travis.Repo
- repo: Travis.Repo
- builds: Travis.Build
- build: Travis.Build
- commits: Travis.Commit
- commit: Travis.Commit
- jobs: Travis.Job
- job: Travis.Job
- account: Travis.Account
- accounts: Travis.Account
- worker: Travis.Worker
- workers: Travis.Worker
- annotation: Travis.Annotation
- annotations: Travis.Annotation
-
- plurals:
- repositories: 'repositories',
- repository: 'repositories',
- repo: 'repos',
- repos: 'repos',
- build: 'builds'
- branch: 'branches'
- job: 'jobs'
- worker: 'workers'
- profile: 'profile'
- annotation: 'annotations'
-
- ajax: ->
- Travis.ajax.ajax.apply(this, arguments)
-
- sideload: (store, type, json, root) ->
- if json && json.result
- return
- else
- @_super.apply this, arguments
-
- merge: (store, record, serialized) ->
- @get('serializer').merge(record, serialized)
-
- didFindRecord: (store, type, payload, id) ->
- if (type == Travis.Build || type == Travis.Job) && payload.commit?
- payload.commits = payload.commit
- delete payload.commit
-
- @_super.apply this, arguments
-
- didSaveRecord: (store, type, record, payload) ->
- # API sometimes return { result: true } response
- # which does not play nice with ember-data. For now
- # let's just change payload to have serialized record
- # included, but ideally it should be fixed in the API
- # to be consistent across all the endpoints.
- if payload?.result == true
- payload = {}
- payload[type.singularName()] = record.serialize()
-
- @_super(store, type, record, payload)
-
-Travis.RestAdapter.map 'Travis.Commit', {}
-
-Travis.RestAdapter.map 'Travis.Build', {
- repoId: { key: 'repository_id' }
- repo: { key: 'repository_id' }
- _duration: { key: 'duration' }
- jobs: { key: 'job_ids' }
- _config: { key: 'config' }
-}
-
-Travis.RestAdapter.map 'Travis.Repo', {
- _lastBuildDuration: { key: 'last_build_duration' }
-}
-
-Travis.RestAdapter.map 'Travis.Job', {
- repoId: { key: 'repository_id' }
- repo: { key: 'repository_id' }
- _config: { key: 'config' }
- annotations: { key: 'annotation_ids' }
-}
-
-Travis.RestAdapter.map 'Travis.User', {
- _name: { key: 'name' }
-}
diff --git a/assets/scripts/app/templates/env_vars.hbs b/assets/scripts/app/templates/env_vars.hbs
deleted file mode 100644
index b3cc1cb2..00000000
--- a/assets/scripts/app/templates/env_vars.hbs
+++ /dev/null
@@ -1,18 +0,0 @@
-{{outlet}}
-
-
- {{#each controller itemController="envVar"}}
- -
- {{#if isEditing}}
- {{partial 'env_vars/form'}}
- {{else}}
- Edit
-
- Delete
-
- {{name}}
- {{value}}
- {{/if}}
-
- {{/each}}
-
diff --git a/assets/scripts/app/templates/layouts/home.hbs b/assets/scripts/app/templates/layouts/home.hbs
deleted file mode 100644
index ff2aa177..00000000
--- a/assets/scripts/app/templates/layouts/home.hbs
+++ /dev/null
@@ -1,18 +0,0 @@
-
- {{render "top"}}
-
-
-
- {{outlet "left"}}
-
-
-
- {{render "flash"}}
- {{yield}}
-
-
-{{#if config.pro}}
-
- {{render "layouts/sidebar"}}
-
-{{/if}}
diff --git a/assets/scripts/app/templates/layouts/profile.hbs b/assets/scripts/app/templates/layouts/profile.hbs
deleted file mode 100644
index 736b3899..00000000
--- a/assets/scripts/app/templates/layouts/profile.hbs
+++ /dev/null
@@ -1,32 +0,0 @@
-
- {{render "top"}}
-
-
-
- {{outlet "left"}}
-
-
-
- {{render "flash"}}
- {{yield}}
-
-
-
-
-
-
-
-
- Getting started?
-
- Please read our guide.
- You'll be up and running in no time!
-
-
- You can find detailed docs on our documentation site.
-
-
- If you need help ask a question or hop on #travis on irc.freenode.net
-
-
-
diff --git a/assets/scripts/app/templates/pro/no_owned_repos.hbs b/assets/scripts/app/templates/pro/no_owned_repos.hbs
deleted file mode 100644
index 5e0127cf..00000000
--- a/assets/scripts/app/templates/pro/no_owned_repos.hbs
+++ /dev/null
@@ -1,77 +0,0 @@
-
- Welcome to Travis CI!
-
- Hey, it looks like you're new around here and have yet to set up your first
repository on Travis CI. We're here to help you get started, it's easy!
-
-
-
-
-
-
-
- Step 1: Enabling your projects
-
- Start by going to your {{#link-to "profile"}}profile{{/link-to}} and enable one of your projects. We've been
- synchronizing all repositories you have administrative access to. Pick one and flip the switch next to it.
-
-
-
-
-
-
-
-
-
-
- Step 2: Adding Travis
-
- Once you've enabled one of your projects, add a .travis.yml
to your project, push some code, and we'll start processing your builds. Wait a
- whee while and reload the page, and your newly setup and built project will show up on the right.
-
-
-
-
-
-
-
-
-
-
- Step 3: Wait for your build to finish
-
- We'll be sending you an email once the build has finished. Then, it's up to you to do the happy dance.
-
-
-
-
-
- Build Configuration
-
- We use sensible defaults for most languages, but you can customize
- both the build process and the build
- environment to fit your project's needs.
-
-
- Notifications
-
- You can also configure how you want to be notified of build results. Email is only one channel you can use. We
- support Campfire, HipChat, Flowdock, IRC, and webhooks. To avoid
- exposing any private credentials, you can shield them from the public using encrypted
- configuration settings.
-
-
- Questions
-
- Should you have any questions or issues, have a look at our
- documentation, open an issue or
- send us an email.
-
-
-
diff --git a/assets/scripts/app/templates/queues/list.hbs b/assets/scripts/app/templates/queues/list.hbs
deleted file mode 100644
index 82ceb940..00000000
--- a/assets/scripts/app/templates/queues/list.hbs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-{{#each queue in controller}}
- -
-
Queue: {{queue.name}}
-
- {{#each job in queue}}
- {{#view Travis.QueueItemView jobBinding="job"}}
- {{#if job.repo.slug}}
- {{#link-to "job" job.repo job}}
-
- {{job.repo.slug}}
-
- #{{job.number}}
- {{/link-to}}
- {{/if}}
- {{/view}}
- {{else}}
- There are no jobs
- {{/each}}
-
-
- {{#if queue.isMore}}
-
- {{queue.leftLength}} more jobs - show all
-
- {{/if}}
-
-{{/each}}
-
diff --git a/assets/scripts/app/templates/workers/list.hbs b/assets/scripts/app/templates/workers/list.hbs
deleted file mode 100644
index 9edba910..00000000
--- a/assets/scripts/app/templates/workers/list.hbs
+++ /dev/null
@@ -1,34 +0,0 @@
-{{#view Travis.WorkersView}}
-
-
- {{#each group in controller.groups}}
- {{#view Travis.WorkersListView}}
- -
-
- {{group.firstObject.host}}
-
-
- {{#each worker in group}}
- {{#view Travis.WorkersItemView workerBinding="worker"}}
- -
-
- {{#if worker.isWorking}}
- {{#if worker.jobId}}
- {{#link-to "job" worker.repo worker.jobId}}
- {{view.display}}
- {{/link-to}}
- {{/if}}
- {{else}}
- {{view.display}}
- {{/if}}
-
- {{/view}}
- {{/each}}
-
-
- {{/view}}
- {{else}}
- No workers
- {{/each}}
-
-{{/view}}
diff --git a/assets/scripts/app/views.coffee b/assets/scripts/app/views.coffee
deleted file mode 100644
index ea0aa8b9..00000000
--- a/assets/scripts/app/views.coffee
+++ /dev/null
@@ -1,122 +0,0 @@
-require 'ext/ember/namespace'
-
-Em.View.reopen
- init: ->
- this.container ||= Travis.__container__
-
- @_super.apply(this, arguments)
-
-Travis.NotFoundView = Ember.View.extend
- layoutName: 'layouts/simple'
-
-@Travis.reopen
- View: Em.View.extend
- actions:
- popup: (name) -> @popup(name)
- popupClose: -> @popupClose()
-
- popup: (name) ->
- @popupCloseAll()
- name = event?.target?.name || name
- $("##{name}").toggleClass('display')
- popupClose: ->
- $('.popup').removeClass('display')
- popupCloseAll: ->
- if view = Travis.View.currentPopupView
- view.destroy()
- Travis.View.currentPopupView = null
-
- $('.popup').removeClass('display')
-
-Travis.MainView = Travis.View.extend
- layoutName: 'layouts/home'
- classNames: ['application']
-
-@Travis.NoOwnedReposView = Ember.View.extend
- templateName: 'pro/no_owned_repos'
-
-Travis.GettingStartedView = Travis.View.extend
- templateName: (->
- if Travis.config.pro
- 'pro/no_owned_repos'
- else
- 'no_owned_repos'
- ).property()
-
-Travis.AuthSigninView = Travis.View.extend
- layoutName: 'layouts/simple'
-
-Travis.InsufficientOauthPermissionsView = Travis.View.extend
- layoutName: 'layouts/simple'
- classNames: ['application']
-
-Travis.FirstSyncView = Travis.View.extend
- layoutName: 'layouts/simple'
- classNames: ['application']
- didInsertElement: ->
- this.addObserver('controller.isSyncing', this, this.isSyncingDidChange)
-
- willDestroyElement: ->
- this.removeObserver('controller.isSyncing', this, this.isSyncingDidChange)
-
- isSyncingDidChange: ->
- if !@get('controller.isSyncing')
- self = this
- Ember.run.later this, ->
- Travis.Repo.fetch(member: @get('controller.user.login')).then( (repos) ->
- if repos.get('length')
- self.get('controller').transitionToRoute('index')
- else
- self.get('controller').transitionToRoute('profile')
- ).then(null, (e) ->
- console.log('There was a problem while redirecting from first sync', e)
- )
- , Travis.config.syncingPageRedirectionTime
-
-
-Travis.SidebarView = Travis.View.extend
- templateName: 'layouts/sidebar'
-
- didInsertElement: ->
- @_super.apply this, arguments
-
- classQueues: (->
- 'active' if @get('activeTab') == 'queues'
- ).property('activeTab')
-
- classWorkers: (->
- 'active' if @get('activeTab') == 'workers'
- ).property('activeTab')
-
- classJobs: (->
- 'active' if @get('activeTab') == 'jobs'
- ).property('activeTab')
-
-Travis.QueueItemView = Travis.View.extend
- tagName: 'li'
-
-Travis.RunningJobsView = Em.View.extend
- templateName: 'jobs'
- elementId: 'running-jobs'
-
-Travis.QueueView = Em.View.extend
- templateName: 'queues/show'
- init: ->
- @_super.apply this, arguments
- @set 'controller', @get('controller').container.lookup('controller:queues')
-
-require 'views/accounts'
-require 'views/annotation'
-require 'views/application'
-require 'views/build'
-require 'views/events'
-require 'views/flash'
-require 'views/job'
-require 'views/log'
-require 'views/repo'
-require 'views/profile'
-require 'views/stats'
-require 'views/signin'
-require 'views/top'
-require 'views/status_images'
-require 'views/status_image_input'
diff --git a/assets/scripts/app/views/accounts.coffee b/assets/scripts/app/views/accounts.coffee
deleted file mode 100644
index 3713eaf4..00000000
--- a/assets/scripts/app/views/accounts.coffee
+++ /dev/null
@@ -1,34 +0,0 @@
-@Travis.reopen
- ProfileAccountsView: Travis.View.extend
- tabBinding: 'controller.tab'
- templateName: 'profile/accounts'
- classAccounts: (->
- 'active' if @get('tab') == 'accounts'
- ).property('tab')
-
- AccountsListView: Em.CollectionView.extend
- elementId: 'accounts'
- accountBinding: 'content'
- tagName: 'ul'
-
- emptyView: Ember.View.extend
- template: Ember.Handlebars.compile('Loading')
-
- itemViewClass: Travis.View.extend
- accountBinding: 'content'
- typeBinding: 'content.type'
- selectedBinding: 'account.selected'
-
- classNames: ['account']
- classNameBindings: ['type', 'selected']
-
- name: (->
- @get('content.name') || @get('content.login')
- ).property('content.login', 'content.name')
-
- urlAccount: (->
- Travis.Urls.account(@get('account.login'))
- ).property('account.login')
-
- click: ->
- @get('controller').transitionToRoute("account", @get('account.login'))
diff --git a/assets/scripts/app/views/annotation.coffee b/assets/scripts/app/views/annotation.coffee
deleted file mode 100644
index 712f10a0..00000000
--- a/assets/scripts/app/views/annotation.coffee
+++ /dev/null
@@ -1,4 +0,0 @@
-Travis.reopen
- AnnotationsView: Travis.View.extend
- templateName: 'annotations/list'
-
diff --git a/assets/scripts/app/views/annotations.coffee b/assets/scripts/app/views/annotations.coffee
deleted file mode 100644
index 556ee80f..00000000
--- a/assets/scripts/app/views/annotations.coffee
+++ /dev/null
@@ -1,2 +0,0 @@
-Travis.reopen
- AnnotationsView: Travis.View.extend
diff --git a/assets/scripts/app/views/application.coffee b/assets/scripts/app/views/application.coffee
deleted file mode 100644
index 09a293a6..00000000
--- a/assets/scripts/app/views/application.coffee
+++ /dev/null
@@ -1,16 +0,0 @@
-Travis.reopen
- ApplicationView: Travis.View.extend
- click: (event) ->
- # TODO: this solves the case of closing menus and popups,
- # but I would like to rewrite it later, not sure how
- # yet, but this does not seem optimal
- targetAndParents = $(event.target).parents().andSelf()
- if ! ( targetAndParents.hasClass('open-popup') || targetAndParents.hasClass('popup') )
- @popupCloseAll()
-
- # TODO: I needed to add second check to this conditional, because for some reason
- # event.stopPropagation() in menu() function in RepoShowToolsView does
- # not prevent calling following code
- if ! targetAndParents.hasClass('menu') && !targetAndParents.is('#tools > a')
- $('.menu').removeClass('display')
-
diff --git a/assets/scripts/app/views/build.coffee b/assets/scripts/app/views/build.coffee
deleted file mode 100644
index 58a464c9..00000000
--- a/assets/scripts/app/views/build.coffee
+++ /dev/null
@@ -1,54 +0,0 @@
-Travis.reopen
- BuildsView: Travis.View.extend
- templateName: 'builds/list'
- buildsBinding: 'controller.builds'
-
- ShowMoreButton: Em.View.extend
- tagName: 'button'
- classNameBindings: ['isLoading', 'showMore']
- showMore: true
- attributeBindings: ['disabled']
- isLoadingBinding: 'controller.isLoading'
- template: Em.Handlebars.compile('{{view.label}}')
-
- disabledBinding: 'isLoading'
-
- label: (->
- if @get('isLoading') then 'Loading' else 'Show more'
- ).property('isLoading')
-
- click: ->
- @get('controller').showMore()
-
- BuildsItemView: Travis.View.extend
- tagName: 'tr'
- classNameBindings: ['color']
- repoBinding: 'controller.repo'
- buildBinding: 'context'
- commitBinding: 'build.commit'
-
- isPullRequestsList: ( -> @get('parentView.isPullRequestsList') ).property('parentView.isPullRequestsList')
-
- color: (->
- Travis.Helpers.colorForState(@get('build.state'))
- ).property('build.state')
-
- BuildView: Travis.View.extend
- templateName: 'builds/show'
- classNameBindings: ['color', 'loading']
- buildBinding: 'controller.build'
- commitBinding: 'build.commit'
-
- urlCommitterGravatarImage: (->
- Travis.Urls.gravatarImage(@get('commit.committerEmail'), 40)
- ).property('commit.committerEmail')
-
- urlAuthorGravatarImage: (->
- Travis.Urls.gravatarImage(@get('commit.authorEmail'), 40)
- ).property('commit.authorEmail')
-
- loadingBinding: 'controller.loading'
-
- color: (->
- Travis.Helpers.colorForState(@get('build.state'))
- ).property('build.state')
diff --git a/assets/scripts/app/views/events.coffee b/assets/scripts/app/views/events.coffee
deleted file mode 100644
index df223b08..00000000
--- a/assets/scripts/app/views/events.coffee
+++ /dev/null
@@ -1,8 +0,0 @@
-@Travis.reopen
- EventsView: Travis.View.extend
- templateName: 'events/list'
- eventsBinding: 'controller.events'
-
- EventsItemView: Travis.View.extend
- tagName: 'tr'
-
diff --git a/assets/scripts/app/views/flash.coffee b/assets/scripts/app/views/flash.coffee
deleted file mode 100644
index 3901b187..00000000
--- a/assets/scripts/app/views/flash.coffee
+++ /dev/null
@@ -1,17 +0,0 @@
-@Travis.reopen
- FlashView: Travis.View.extend
- classNames: ['flash']
- tagName: 'ul'
- templateName: 'layouts/flash'
-
- FlashItemView: Travis.View.extend
- tagName: 'li'
- classNameBindings: ['type']
-
- type: (->
- @get('flash.type') || 'broadcast'
- ).property('flash.type')
-
- actions:
- close: ->
- @get('controller').close(@get('flash'))
diff --git a/assets/scripts/app/views/job.coffee b/assets/scripts/app/views/job.coffee
deleted file mode 100644
index d87e283d..00000000
--- a/assets/scripts/app/views/job.coffee
+++ /dev/null
@@ -1,55 +0,0 @@
-Travis.reopen
- JobsView: Travis.View.extend
- templateName: 'jobs/list'
- buildBinding: 'controller.build'
-
- jobTableId: Ember.computed(->
- if @get('required')
- 'jobs'
- else
- 'allowed_failure_jobs'
- )
-
- actions:
- popupClose: ->
- @popupCloseAll()
-
- openHelpPopup: ->
- @popupCloseAll()
- @popup('help-allowed_failures')
-
- JobsItemView: Travis.View.extend
- tagName: 'tr'
- classNameBindings: ['color']
- repoBinding: 'context.repo'
- jobBinding: 'context'
-
- color: (->
- Travis.Helpers.colorForState(@get('job.state'))
- ).property('job.state')
-
- JobView: Travis.View.extend
- templateName: 'jobs/show'
-
- repoBinding: 'controller.repo'
- jobBinding: 'controller.job'
- commitBinding: 'job.commit'
- annotationsBinding: 'job.annotations'
-
- currentItemBinding: 'job'
-
- color: (->
- Travis.Helpers.colorForState(@get('job.state'))
- ).property('job.state')
-
- urlGithubCommit: (->
- Travis.Urls.githubCommit(@get('repo.slug'), @get('commit.sha'))
- ).property('repo.slug', 'commit.sha')
-
- urlCommitterGravatarImage: (->
- Travis.Urls.gravatarImage(@get('commit.committerEmail'), 40)
- ).property('commit.committerEmail')
-
- urlAuthorGravatarImage: (->
- Travis.Urls.gravatarImage(@get('commit.authorEmail'), 40)
- ).property('commit.authorEmail')
diff --git a/assets/scripts/app/views/left.coffee b/assets/scripts/app/views/left.coffee
deleted file mode 100644
index f79cf82a..00000000
--- a/assets/scripts/app/views/left.coffee
+++ /dev/null
@@ -1,20 +0,0 @@
-@Travis.reopen
- ReposView: Travis.View.extend
- templateName: 'repos/list'
- tabBinding: 'controller.tab'
-
- classRecent: (->
- 'active' if @get('tab') == 'recent'
- ).property('tab')
-
- classOwned: (->
- classes = []
- classes.push('active') if @get('tab') == 'owned'
- classes.push('display') if @get('controller.currentUser')
- classes.join(' ')
- ).property('tab', 'controller.currentUser')
-
- classSearch: (->
- 'active' if @get('tab') == 'search'
- ).property('tab')
-
diff --git a/assets/scripts/app/views/log.coffee b/assets/scripts/app/views/log.coffee
deleted file mode 100644
index 7e0b1b61..00000000
--- a/assets/scripts/app/views/log.coffee
+++ /dev/null
@@ -1,151 +0,0 @@
-require 'log'
-require 'travis/lines_selector'
-require 'travis/log_folder'
-
-Log.DEBUG = false
-Log.LIMIT = 10000
-
-Travis.reopen
- LogView: Travis.View.extend
- templateName: 'jobs/log'
- logBinding: 'job.log'
-
- didInsertElement: ->
- @setupLog()
-
- logDidChange: (->
- @setupLog()
- ).observes('log')
-
- logWillChange: (->
- @teardownLog()
- ).observesBefore('log')
-
- willDestroyElement: ->
- @teardownLog()
-
- teardownLog: ->
- job = @get('job')
- job.unsubscribe() if job
-
- setupLog: ->
- job = @get('job')
- if job
- job.get('log').fetch()
- job.subscribe()
-
- PreView: Em.View.extend
- templateName: 'jobs/pre'
-
- logWillChange: (->
- console.log 'log view: log will change' if Log.DEBUG
- @teardownLog()
- ).observesBefore('log')
-
- didInsertElement: ->
- console.log 'log view: did insert' if Log.DEBUG
- @_super.apply this, arguments
- @createEngine()
-
- willDestroyElement: ->
- console.log 'log view: will destroy' if Log.DEBUG
- @teardownLog()
-
- versionDidChange: (->
- @rerender() if @get('_state') == 'inDOM'
- ).observes('log.version')
-
- logDidChange: (->
- console.log 'log view: log did change: rerender' if Log.DEBUG
-
- if @get('log')
- @createEngine()
- @rerender() if @get('_state') == 'inDOM'
- ).observes('log')
-
- teardownLog: ->
- if log = @get('log')
- parts = log.get('parts')
- parts.removeArrayObserver(@, didChange: 'partsDidChange', willChange: 'noop')
- parts.destroy()
- log.notifyPropertyChange('parts')
- @lineSelector?.willDestroy()
-
- createEngine: ->
- if @get('log')
- console.log 'log view: create engine' if Log.DEBUG
- @scroll = new Log.Scroll beforeScroll: =>
- @unfoldHighlight()
- @engine = Log.create(limit: Log.LIMIT, listeners: [@scroll])
- @logFolder = new Travis.LogFolder(@$().find('#log'))
- @lineSelector = new Travis.LinesSelector(@$().find('#log'), @scroll, @logFolder)
- @observeParts()
-
- unfoldHighlight: ->
- @lineSelector.unfoldLines()
-
- observeParts: ->
- if log = @get('log')
- parts = log.get('parts')
- parts.addArrayObserver(@, didChange: 'partsDidChange', willChange: 'noop')
- parts = parts.slice(0)
- @partsDidChange(parts, 0, null, parts.length)
-
- partsDidChange: (parts, start, _, added) ->
- console.log 'log view: parts did change' if Log.DEBUG
- for part, i in parts.slice(start, start + added)
- # console.log "limit in log view: #{@get('limited')}"
- break if @get('limited')
- @engine.set(part.number, part.content)
- @propertyDidChange('limited')
-
- limited: (->
- @engine?.limit?.limited
- ).property()
-
- plainTextLogUrl: (->
- if id = @get('log.job.id')
- url = Travis.Urls.plainTextLog(id)
- if Travis.config.pro
- url += "&access_token=#{@get('job.log.token')}"
- url
- ).property('job.log.id', 'job.log.token')
-
- actions:
- toTop: () ->
- $(window).scrollTop(0)
-
- toggleTailing: ->
- Travis.tailing.toggle()
- @engine.autoCloseFold = !Travis.tailing.isActive()
- event.preventDefault()
-
- noop: -> # TODO required?
-
-Log.Scroll = (options) ->
- options ||= {}
- @beforeScroll = options.beforeScroll
- this
-Log.Scroll.prototype = $.extend new Log.Listener,
- insert: (log, data, pos) ->
- @tryScroll() if @numbers
- true
-
- tryScroll: ->
- if element = $("#log p:visible.highlight:first")
- if @beforeScroll
- @beforeScroll()
- $('#main').scrollTop(0)
- $('html, body').scrollTop(element.offset()?.top - (window.innerHeight / 3)) # weird, html works in chrome, body in firefox
-
-# Log.Logger = ->
-# Log.Logger.prototype = $.extend new Log.Listener,
-# receive: (log, num, string) ->
-# @log("rcv #{num} #{JSON.stringify(string)}")
-# true
-# insert: (log, element, pos) ->
-# @log("ins #{element.id}, #{if pos.before then 'before' else 'after'}: #{pos.before || pos.after || '?'}, #{JSON.stringify(element)}")
-# remove: (log, element) ->
-# @log("rem #{element.id}")
-# log: (line) ->
-# console.log(line)
diff --git a/assets/scripts/app/views/profile.coffee b/assets/scripts/app/views/profile.coffee
deleted file mode 100644
index 2d852159..00000000
--- a/assets/scripts/app/views/profile.coffee
+++ /dev/null
@@ -1,47 +0,0 @@
-Travis.reopen
- ProfileView: Travis.View.extend
- templateName: 'profile/show'
- layoutName: 'layouts/profile'
- classNames: ['application']
- accountBinding: 'controller.account'
- subscribedBinding: 'account.subscribed'
- educationBinding: 'account.education'
-
- name: (->
- @get('account.name') || @get('account.login')
- ).property('account.name', 'account.login')
-
- ProfileTabsView: Travis.View.extend
- templateName: 'profile/tabs'
- tabBinding: 'controller.tab'
-
- activate: ->
- @get('controller').activate(event.target.name)
-
- classHooks: (->
- 'active' if @get('tab') == 'hooks'
- ).property('tab')
-
- classUser: (->
- 'active' if @get('tab') == 'user'
- ).property('tab')
-
- displayUser: (->
- @get('controller.account.login') == @get('controller.user.login')
- ).property('controller.account.login', 'controller.user.login')
-
- HooksView: Travis.View.extend
- templateName: 'profile/tabs/hooks'
- userBinding: 'controller.user'
-
- urlGithubAdmin: (->
- Travis.Urls.githubAdmin(@get('hook.slug'))
- ).property('hook.slug')
-
- AccountsInfoView: Travis.View.extend
- templateName: 'profile/tabs/user'
- userBinding: 'controller.user'
-
- gravatarUrl: (->
- "#{location.protocol}//www.gravatar.com/avatar/#{@get('user.gravatarId')}?s=200&d=mm"
- ).property('user.gravatarId')
diff --git a/assets/scripts/app/views/repo.coffee b/assets/scripts/app/views/repo.coffee
deleted file mode 100644
index d4e7a7b6..00000000
--- a/assets/scripts/app/views/repo.coffee
+++ /dev/null
@@ -1,2 +0,0 @@
-require 'views/repo/list'
-require 'views/repo/show'
diff --git a/assets/scripts/app/views/repo/list.coffee b/assets/scripts/app/views/repo/list.coffee
deleted file mode 100644
index 9b130163..00000000
--- a/assets/scripts/app/views/repo/list.coffee
+++ /dev/null
@@ -1,49 +0,0 @@
-@Travis.reopen
- ReposView: Travis.View.extend
- templateName: 'repos/list'
-
- ReposListView: Em.CollectionView.extend
- elementId: 'repos'
- tagName: 'ul'
-
- emptyView: Ember.View.extend
- template: Ember.Handlebars.compile('Loading')
-
- itemViewClass: Travis.View.extend
- repoBinding: 'content'
- classNames: ['repo']
- classNameBindings: ['color', 'selected']
- selected: (->
- @get('content') == @get('controller.selectedRepo')
- ).property('controller.selectedRepo')
-
- color: (->
- Travis.Helpers.colorForState(@get('repo.lastBuildState'))
- ).property('repo.lastBuildState')
-
- click: ->
- @get('controller').transitionToRoute('/' + @get('repo.slug'))
-
- ReposListTabsView: Travis.View.extend
- templateName: 'repos/list/tabs'
- tabBinding: 'controller.tab'
- currentUserBinding: 'controller.currentUser.id'
-
- classRecent: (->
- 'active' if @get('tab') == 'recent'
- ).property('tab')
-
- classOwned: (->
- classes = []
- classes.push('active') if @get('tab') == 'owned'
- classes.push('display-inline') if @get('currentUser')
- classes.join(' ')
- ).property('tab', 'currentUser')
-
- classSearch: (->
- 'active' if @get('tab') == 'search'
- ).property('tab')
-
- classNew: (->
- 'display-inline' if @get('currentUser')
- ).property('currentUser')
diff --git a/assets/scripts/app/views/repo/show.coffee b/assets/scripts/app/views/repo/show.coffee
deleted file mode 100644
index c84c2db6..00000000
--- a/assets/scripts/app/views/repo/show.coffee
+++ /dev/null
@@ -1,335 +0,0 @@
-Travis.reopen
- RepoView: Travis.View.extend
- templateName: 'repos/show'
-
- reposBinding: 'controllers.repos'
- repoBinding: 'controller.repo'
- buildBinding: 'controller.build'
- jobBinding: 'controller.job'
- tabBinding: 'controller.tab'
-
- classNameBindings: ['controller.isLoading:loading']
-
- isEmpty: (->
- @get('repos.isLoaded') && @get('repos.length') == 0
- ).property('repos.isLoaded', 'repos.length')
-
- statusImageUrl: (->
- Travis.Urls.statusImage(@get('controller.repo.slug'))
- ).property('controller.repo.slug')
-
- actions:
- statusImages: () ->
- @popupCloseAll()
- view = Travis.StatusImagesView.create(toolsView: this)
- Travis.View.currentPopupView = view
- view.appendTo($('body'))
- return false
-
- ReposEmptyView: Travis.View.extend
- template: (->
- if Travis.config.pro
- 'pro/repos/show/empty'
- else
- ''
- ).property()
-
- RepoShowTabsView: Travis.View.extend
- templateName: 'repos/show/tabs'
-
- tabBinding: 'controller.tab'
- contextBinding: 'controller'
-
- # hrm. how to parametrize bind-attr?
- classCurrent: (->
- 'active' if @get('tab') == 'current'
- ).property('tab')
-
- classBuilds: (->
- 'active' if @get('tab') == 'builds'
- ).property('tab')
-
- classPullRequests: (->
- 'active' if @get('tab') == 'pull_requests'
- ).property('tab')
-
- classBranches: (->
- 'active' if @get('tab') == 'branches'
- ).property('tab')
-
- classEvents: (->
- 'active' if @get('tab') == 'events'
- ).property('tab')
-
- classBuild: (->
- tab = @get('tab')
- classes = []
- classes.push('active') if tab == 'build'
- classes.push('display-inline') if tab == 'build' || tab == 'job'
- classes.join(' ')
- ).property('tab')
-
- # TODO: refactor tabs, most of the things here are not really DRY
- classJob: (->
- 'active display-inline' if @get('tab') == 'job'
- ).property('tab')
-
- classRequests: (->
- 'active display-inline' if @get('tab') == 'requests'
- ).property('tab')
-
- classCaches: (->
- 'active display-inline' if @get('tab') == 'caches'
- ).property('tab')
-
- classSettings: (->
- 'active display-inline' if @get('tab') == 'settings'
- ).property('tab')
-
- classRequest: (->
- 'active display-inline' if @get('tab') == 'request'
- ).property('tab')
-
- RepoShowToolsView: Travis.View.extend
- templateName: 'repos/show/tools'
-
- repoBinding: 'controller.repo'
- buildBinding: 'controller.build'
- jobBinding: 'controller.job'
- tabBinding: 'controller.tab'
- currentUserBinding: 'controller.currentUser'
- slugBinding: 'controller.repo.slug'
-
-
- didInsertElement: ->
- self = this
- $('.menu a').on 'click', ->
- self.closeMenu()
-
- willRemoveElement: ->
- $('.menu a').off 'click'
-
- closeMenu: ->
- $('.menu').removeClass('display')
-
- actions:
- menu: ->
- @popupCloseAll()
- $('#tools .menu').toggleClass('display')
- return false
-
- regenerateKeyPopup: ->
- if @get('canRegenerateKey')
- @set('active', true)
- @closeMenu()
- @popup('regenerate-key-popup')
- return false
-
- regenerateKey: ->
- @popupCloseAll()
-
- (@get('repo.content') || @get('repo')).regenerateKey
- success: =>
- @popup('regeneration-success')
- error: ->
- Travis.lookup('controller:flash').loadFlashes([{ error: 'Travis encountered an error while trying to regenerate the key, please try again.'}])
-
- canRegenerateKey: (->
- @get('hasAdminPermission')
- ).property('hasAdminPermission')
-
- hasPermission: (->
- if permissions = @get('currentUser.permissions')
- permissions.contains parseInt(@get('repo.id'))
- ).property('currentUser.permissions.length', 'repo.id')
-
- hasPushPermission: (->
- if permissions = @get('currentUser.pushPermissions')
- permissions.contains parseInt(@get('repo.id'))
- ).property('currentUser.pushPermissions.length', 'repo.id')
-
- hasAdminPermission: (->
- if permissions = @get('currentUser.adminPermissions')
- permissions.contains parseInt(@get('repo.id'))
- ).property('currentUser.adminPermissions.length', 'repo.id')
-
- displayRegenerateKey: (->
- @get('canRegenerateKey')
- ).property('canRegenerateKey')
-
- displaySettingsLink: (->
- @get('hasPushPermission')
- ).property('hasPushPermission')
-
- displayStatusImages: (->
- @get('hasPermission')
- ).property('hasPermission')
-
- RepoActionsView: Travis.View.extend
- templateName: 'repos/show/actions'
-
- repoBinding: 'controller.repo'
- buildBinding: 'controller.build'
- jobBinding: 'controller.job'
- tabBinding: 'controller.tab'
- currentUserBinding: 'controller.currentUser'
-
- actions:
- requeueBuild: ->
- if @get('canRequeueBuild')
- @requeue @get('build')
-
- requeueJob: ->
- if @get('canRequeueJob')
- @requeue @get('_job')
-
- cancelBuild: ->
- if @get('canCancelBuild')
- Travis.flash(notice: 'Build cancellation has been scheduled.')
- @get('build').cancel().then ->
- Travis.flash(success: 'Build has been successfully canceled.')
- , (xhr) ->
- if xhr.status == 422
- Travis.flash(error: 'This build can\'t be canceled')
- else if xhr.status == 403
- Travis.flash(error: 'You don\'t have sufficient access to cancel this build')
- else
- Travis.flash(error: 'An error occured when canceling the build')
-
-
- removeLog: ->
- @popupCloseAll()
- if @get('canRemoveLog')
- job = @get('_job') || @get('build.jobs.firstObject')
- job.removeLog().then ->
- Travis.flash(success: 'Log has been successfully removed.')
- , (xhr) ->
- if xhr.status == 409
- Travis.flash(error: 'Log can\'t be removed')
- else if xhr.status == 401
- Travis.flash(error: 'You don\'t have sufficient access to remove the log')
- else
- Travis.flash(error: 'An error occured when removing the log')
-
- cancelJob: ->
- if @get('canCancelJob')
- Travis.flash(notice: 'Job cancellation has been scheduled.')
- @get('_job').cancel().then ->
- Travis.flash(success: 'Job has been successfully canceled.')
- , (xhr) ->
- if xhr.status == 422
- Travis.flash(error: 'This job can\'t be canceled')
- else if xhr.status == 403
- Travis.flash(error: 'You don\'t have sufficient access to cancel this job')
- else
- Travis.flash(error: 'An error occured when canceling the job')
-
- codeClimatePopup: ->
- @popupCloseAll()
- @popup('code-climate')
- return false
-
- removeLogPopup: ->
- if @get('canRemoveLog')
- @set('active', true)
- @popup('remove-log-popup')
- return false
-
- hasPermission: (->
- if permissions = @get('currentUser.permissions')
- permissions.contains parseInt(@get('repo.id'))
- ).property('currentUser.permissions.length', 'repo.id')
-
- hasPushPermission: (->
- if permissions = @get('currentUser.pushPermissions')
- permissions.contains parseInt(@get('repo.id'))
- ).property('currentUser.pushPermissions.length', 'repo.id')
-
- displayRequeueBuild: (->
- @get('isBuildTab') && @get('build.isFinished')
- ).property('isBuildTab', 'build.isFinished')
-
- canRequeueBuild: (->
- @get('displayRequeueBuild') && @get('hasPermission')
- ).property('displayRequireBuild', 'hasPermission')
-
- displayRequeueJob: (->
- @get('isJobTab') && @get('job.isFinished')
- ).property('isJobTab', 'job.isFinished')
-
- canRequeueJob: (->
- @get('displayRequeueJob') && @get('hasPermission')
- ).property('displayRequeueJob', 'hasPermission')
-
- showDownloadLog: (->
- @get('jobIdForLog') && (@get('isJobTab') || @get('isBuildTab'))
- ).property('jobIdForLog', 'isJobTab', 'isBuildTab')
-
- _job: (->
- if id = @get('jobIdForLog')
- Travis.Job.find(id)
- ).property('jobIdForLog')
-
- jobIdForLog: (->
- job = @get('job.id')
- unless job
- if @get('build.jobs.length') == 1
- job = @get('build.jobs').objectAt?(0).get?('id')
- job
- ).property('job.id', 'build.jobs.firstObject.id', 'build.jobs.length')
-
- plainTextLogUrl: (->
- if id = @get('jobIdForLog')
- url = Travis.Urls.plainTextLog(id)
- if Travis.config.pro
- token = @get('job.log.token') || @get('build.jobs.firstObject.log.token')
- url += "&access_token=#{token}"
- url
- ).property('jobIdForLog', 'job.log.token', 'build.jobs.firstObject.log.token')
-
- canRemoveLog: (->
- @get('displayRemoveLog')
- ).property('displayRemoveLog')
-
- displayRemoveLog: (->
- if job = @get('_job')
- (@get('isJobTab') || (@get('isBuildTab') && @get('build.jobs.length') == 1)) &&
- job.get('canRemoveLog') && @get('hasPermission')
- ).property('isJobTab', 'isBuildTab', 'build.jobs.length', '_job.canRemoveLog', 'jobIdForLog', 'canRemoveLog', 'hasPermission')
-
- canCancelBuild: (->
- @get('displayCancelBuild') && @get('hasPermission')
- ).property('displayCancelBuild', 'hasPermission')
-
- displayCancelBuild: (->
- @get('isBuildTab') && @get('build.canCancel')
- ).property('isBuildTab', 'build.canCancel')
-
- canCancelJob: (->
- @get('displayCancelJob') && @get('hasPermission')
- ).property('displayCancelJob', 'hasPermission')
-
- displayCancelJob: (->
- @get('isJobTab') && @get('job.canCancel')
- ).property('isJobTab', 'job.canCancel')
-
- isJobTab: (->
- @get('tab') == 'job'
- ).property('tab', 'repo.id')
-
- isBuildTab: (->
- ['current', 'build'].indexOf(@get('tab')) > -1
- ).property('tab')
-
- displayCodeClimate: (->
- @get('repo.githubLanguage') == 'Ruby'
- ).property('repo.githubLanguage')
-
- requeueFinished: ->
- @set('requeueing', false)
-
- requeue: (thing) ->
- return if @get('requeueing')
- @set('requeueing', true)
- thing.requeue().then(this.requeueFinished.bind(this), this.requeueFinished.bind(this))
-
diff --git a/assets/scripts/app/views/signin.coffee b/assets/scripts/app/views/signin.coffee
deleted file mode 100644
index 1dc06001..00000000
--- a/assets/scripts/app/views/signin.coffee
+++ /dev/null
@@ -1,3 +0,0 @@
-@Travis.reopen
- SigninView: Travis.View.extend
- templateName: 'auth/signin'
diff --git a/assets/scripts/app/views/stats.coffee b/assets/scripts/app/views/stats.coffee
deleted file mode 100644
index da7e1498..00000000
--- a/assets/scripts/app/views/stats.coffee
+++ /dev/null
@@ -1,73 +0,0 @@
-@Travis.reopen
- StatsView: Travis.View.extend
- templateName: 'stats/show'
- didInsertElement: ->
- # @renderChart(config) for name, config of @CHARTS
-
- renderChart: (config) ->
- chart = new Highcharts.Chart(config)
- @fetch config.source, (data) ->
- stats = (config.map(stats) for stats in data.stats)
- chart.series[0].setData(stats)
-
- fetch: (url, callback) ->
- $.ajax
- type: 'GET'
- url: url
- accepts: { json: 'application/vnd.travis-ci.2+json' }
- success: callback
-
- CHARTS:
- repos:
- source: '/api/stats/repos'
- total: 0
- map: (data) ->
- [Date.parse(data.date), @total += parseInt(data.count)]
- chart:
- renderTo: "repos_stats"
- title:
- text: "Total Projects/Repositories"
- xAxis:
- type: "datetime"
- dateTimeLabelFormats: # don't display the dummy year
- month: "%e. %b"
- year: "%b"
- yAxis:
- title:
- text: "Count"
- min: 0
- tooltip:
- formatter: ->
- Highcharts.dateFormat("%e. %b", @x) + ": " + @y + " repos"
- series: [
- name: "Repository Growth"
- data: []
- ]
-
- builds:
- source: '/api/stats/tests'
- map: (data) ->
- [Date.parse(data.date), parseInt(data.count)]
- chart:
- renderTo: "tests_stats"
- type: "column"
- title:
- text: "Build Count"
- subtitle:
- text: "last month"
- xAxis:
- type: "datetime"
- dateTimeLabelFormats: # don't display the dummy year
- month: "%e. %b"
- year: "%b"
- yAxis:
- title:
- text: "Count"
- min: 0
- tooltip:
- formatter: ->
- Highcharts.dateFormat("%e. %b", @x) + ": " + @y + " builds"
- series: [
- name: "Total Builds"
- data: []
- ]
diff --git a/assets/scripts/app/views/status_image_input.coffee b/assets/scripts/app/views/status_image_input.coffee
deleted file mode 100644
index dd8c4530..00000000
--- a/assets/scripts/app/views/status_image_input.coffee
+++ /dev/null
@@ -1,3 +0,0 @@
-Travis.StatusImageInput = Em.TextArea.extend
- click: ->
- @get('element').select()
diff --git a/assets/scripts/app/views/top.coffee b/assets/scripts/app/views/top.coffee
deleted file mode 100644
index a3bc90aa..00000000
--- a/assets/scripts/app/views/top.coffee
+++ /dev/null
@@ -1,28 +0,0 @@
-@Travis.reopen
- TopView: Travis.View.extend
- templateName: 'layouts/top'
-
- tabBinding: 'controller.tab'
-
- # hrm. how to parametrize bind-attr?
- classHome: (->
- 'active' if @get('tab') == 'home'
- ).property('tab')
-
- classStats: (->
- 'active' if @get('tab') == 'stats'
- ).property('tab')
-
- classProfile: (->
- classes = ['profile menu']
- classes.push('active') if @get('tab') == 'profile'
- classes.push(@get('controller.auth.state') || 'signed-out')
- classes.join(' ')
- ).property('tab', 'controller.auth.state')
-
- showProfile: ->
- $('#top .profile ul').show()
-
- hideProfile: ->
- $('#top .profile ul').hide()
-
diff --git a/assets/scripts/config/emoij.coffee b/assets/scripts/config/emoij.coffee
deleted file mode 100644
index 46d0d5d9..00000000
--- a/assets/scripts/config/emoij.coffee
+++ /dev/null
@@ -1 +0,0 @@
-@EmojiDictionary = ['+1', '-1', '0', '1', '100', '109', '1234', '2', '3', '4', '5', '6', '7', '8', '8ball', '9', 'a', 'ab', 'abc', 'abcd', 'accept', 'aerial_tramway', 'airplane', 'alarm_clock', 'alien', 'ambulance', 'anchor', 'angel', 'anger', 'angry', 'anguished', 'ant', 'apple', 'aquarius', 'aries', 'arrow_backward', 'arrow_double_down', 'arrow_double_up', 'arrow_down', 'arrow_down_small', 'arrow_forward', 'arrow_heading_down', 'arrow_heading_up', 'arrow_left', 'arrow_lower_left', 'arrow_lower_right', 'arrow_right', 'arrow_right_hook', 'arrow_up', 'arrow_up_down', 'arrow_up_small', 'arrow_upper_left', 'arrow_upper_right', 'arrows_clockwise', 'arrows_counterclockwise', 'art', 'articulated_lorry', 'astonished', 'atm', 'b', 'baby', 'baby_bottle', 'baby_chick', 'baby_symbol', 'baggage_claim', 'balloon', 'ballot_box_with_check', 'bamboo', 'banana', 'bangbang', 'bank', 'bar_chart', 'barber', 'baseball', 'basketball', 'bath', 'bathtub', 'battery', 'bear', 'bee', 'beer', 'beers', 'beetle', 'beginner', 'bell', 'bento', 'bicyclist', 'bike', 'bikini', 'bird', 'birthday', 'black_circle', 'black_joker', 'black_nib', 'black_square', 'black_square_button', 'blossom', 'blowfish', 'blue_book', 'blue_car', 'blue_heart', 'blush', 'boar', 'boat', 'bomb', 'book', 'bookmark', 'bookmark_tabs', 'books', 'boom', 'boot', 'bouquet', 'bow', 'bowling', 'bowtie', 'boy', 'bread', 'bride_with_veil', 'bridge_at_night', 'briefcase', 'broken_heart', 'bug', 'bulb', 'bullettrain_front', 'bullettrain_side', 'bus', 'busstop', 'bust_in_silhouette', 'busts_in_silhouette', 'cactus', 'cake', 'calendar', 'calling', 'camel', 'camera', 'cancer', 'candy', 'capital_abcd', 'capricorn', 'car', 'card_index', 'carousel_horse', 'cat', 'cat2', 'cd', 'chart', 'chart_with_downwards_trend', 'chart_with_upwards_trend', 'checkered_flag', 'cherries', 'cherry_blossom', 'chestnut', 'chicken', 'children_crossing', 'chocolate_bar', 'christmas_tree', 'church', 'cinema', 'circus_tent', 'city_sunrise', 'city_sunset', 'cl', 'clap', 'clapper', 'clipboard', 'clock1', 'clock10', 'clock1030', 'clock11', 'clock1130', 'clock12', 'clock1230', 'clock130', 'clock2', 'clock230', 'clock3', 'clock330', 'clock4', 'clock430', 'clock5', 'clock530', 'clock6', 'clock630', 'clock7', 'clock730', 'clock8', 'clock830', 'clock9', 'clock930', 'closed_book', 'closed_lock_with_key', 'closed_umbrella', 'cloud', 'clubs', 'cn', 'cocktail', 'coffee', 'cold_sweat', 'collision', 'computer', 'confetti_ball', 'confounded', 'confused', 'congratulations', 'construction', 'construction_worker', 'convenience_store', 'cookie', 'cool', 'cop', 'copyright', 'corn', 'couple', 'couple_with_heart', 'couplekiss', 'cow', 'cow2', 'credit_card', 'crocodile', 'crossed_flags', 'crown', 'cry', 'crying_cat_face', 'crystal_ball', 'cupid', 'curly_loop', 'currency_exchange', 'curry', 'custard', 'customs', 'cyclone', 'dancer', 'dancers', 'dango', 'dart', 'dash', 'date', 'de', 'deciduous_tree', 'department_store', 'diamond_shape_with_a_dot_inside', 'diamonds', 'disappointed', 'disappointed_relieved', 'dizzy', 'dizzy_face', 'do_not_litter', 'dog', 'dog2', 'dollar', 'dolls', 'dolphin', 'donut', 'door', 'doughnut', 'dragon', 'dragon_face', 'dress', 'dromedary_camel', 'droplet', 'dvd', 'e-mail', 'ear', 'ear_of_rice', 'earth_africa', 'earth_americas', 'earth_asia', 'egg', 'eggplant', 'eight', 'eight_pointed_black_star', 'eight_spoked_asterisk', 'electric_plug', 'elephant', 'email', 'end', 'envelope', 'es', 'euro', 'european_castle', 'european_post_office', 'evergreen_tree', 'exclamation', 'expressionless', 'eyeglasses', 'eyes', 'facepunch', 'factory', 'fallen_leaf', 'family', 'fast_forward', 'fax', 'fearful', 'feelsgood', 'feet', 'ferris_wheel', 'file_folder', 'finnadie', 'fire', 'fire_engine', 'fireworks', 'first_quarter_moon', 'first_quarter_moon_with_face', 'fish', 'fish_cake', 'fishing_pole_and_fish', 'fist', 'five', 'flags', 'flashlight', 'floppy_disk', 'flower_playing_cards', 'flushed', 'foggy', 'football', 'fork_and_knife', 'fountain', 'four', 'four_leaf_clover', 'fr', 'free', 'fried_shrimp', 'fries', 'frog', 'frowning', 'fu', 'fuelpump', 'full_moon', 'full_moon_with_face', 'game_die', 'gb', 'gem', 'gemini', 'ghost', 'gift', 'gift_heart', 'girl', 'globe_with_meridians', 'goat', 'goberserk', 'godmode', 'golf', 'grapes', 'green_apple', 'green_book', 'green_heart', 'grey_exclamation', 'grey_question', 'grimacing', 'grin', 'grinning', 'guardsman', 'guitar', 'gun', 'haircut', 'hamburger', 'hammer', 'hamster', 'hand', 'handbag', 'hankey', 'hash', 'hatched_chick', 'hatching_chick', 'headphones', 'hear_no_evil', 'heart', 'heart_decoration', 'heart_eyes', 'heart_eyes_cat', 'heartbeat', 'heartpulse', 'hearts', 'heavy_check_mark', 'heavy_division_sign', 'heavy_dollar_sign', 'heavy_exclamation_mark', 'heavy_minus_sign', 'heavy_multiplication_x', 'heavy_plus_sign', 'helicopter', 'herb', 'hibiscus', 'high_brightness', 'high_heel', 'hocho', 'honey_pot', 'honeybee', 'horse', 'horse_racing', 'hospital', 'hotel', 'hotsprings', 'hourglass', 'hourglass_flowing_sand', 'house', 'house_with_garden', 'hurtrealbad', 'hushed', 'ice_cream', 'icecream', 'id', 'ideograph_advantage', 'imp', 'inbox_tray', 'incoming_envelope', 'information_desk_person', 'information_source', 'innocent', 'interrobang', 'iphone', 'it', 'izakaya_lantern', 'jack_o_lantern', 'japan', 'japanese_castle', 'japanese_goblin', 'japanese_ogre', 'jeans', 'joy', 'joy_cat', 'jp', 'key', 'keycap_ten', 'kimono', 'kiss', 'kissing', 'kissing_cat', 'kissing_closed_eyes', 'kissing_face', 'kissing_heart', 'kissing_smiling_eyes', 'koala', 'koko', 'kr', 'large_blue_circle', 'large_blue_diamond', 'large_orange_diamond', 'last_quarter_moon', 'last_quarter_moon_with_face', 'laughing', 'leaves', 'ledger', 'left_luggage', 'left_right_arrow', 'leftwards_arrow_with_hook', 'lemon', 'leo', 'leopard', 'libra', 'light_rail', 'link', 'lips', 'lipstick', 'lock', 'lock_with_ink_pen', 'lollipop', 'loop', 'loudspeaker', 'love_hotel', 'love_letter', 'low_brightness', 'm', 'mag', 'mag_right', 'mahjong', 'mailbox', 'mailbox_closed', 'mailbox_with_mail', 'mailbox_with_no_mail', 'man', 'man_with_gua_pi_mao', 'man_with_turban', 'mans_shoe', 'maple_leaf', 'mask', 'massage', 'meat_on_bone', 'mega', 'melon', 'memo', 'mens', 'metal', 'metro', 'microphone', 'microscope', 'milky_way', 'minibus', 'minidisc', 'mobile_phone_off', 'money_with_wings', 'moneybag', 'monkey', 'monkey_face', 'monorail', 'moon', 'mortar_board', 'mount_fuji', 'mountain_bicyclist', 'mountain_cableway', 'mountain_railway', 'mouse', 'mouse2', 'movie_camera', 'moyai', 'muscle', 'mushroom', 'musical_keyboard', 'musical_note', 'musical_score', 'mute', 'nail_care', 'name_badge', 'neckbeard', 'necktie', 'negative_squared_cross_mark', 'neutral_face', 'new', 'new_moon', 'new_moon_with_face', 'newspaper', 'ng', 'nine', 'no_bell', 'no_bicycles', 'no_entry', 'no_entry_sign', 'no_good', 'no_mobile_phones', 'no_mouth', 'no_pedestrians', 'no_smoking', 'non-potable_water', 'nose', 'notebook', 'notebook_with_decorative_cover', 'notes', 'nut_and_bolt', 'o', 'o2', 'ocean', 'octocat', 'octopus', 'oden', 'office', 'ok', 'ok_hand', 'ok_woman', 'older_man', 'older_woman', 'on', 'oncoming_automobile', 'oncoming_bus', 'oncoming_police_car', 'oncoming_taxi', 'one', 'open_file_folder', 'open_hands', 'open_mouth', 'ophiuchus', 'orange_book', 'outbox_tray', 'ox', 'page_facing_up', 'page_with_curl', 'pager', 'palm_tree', 'panda_face', 'paperclip', 'parking', 'part_alternation_mark', 'partly_sunny', 'passport_control', 'paw_prints', 'peach', 'pear', 'pencil', 'pencil2', 'penguin', 'pensive', 'performing_arts', 'persevere', 'person_frowning', 'person_with_blond_hair', 'person_with_pouting_face', 'phone', 'pig', 'pig2', 'pig_nose', 'pill', 'pineapple', 'pisces', 'pizza', 'plus1', 'point_down', 'point_left', 'point_right', 'point_up', 'point_up_2', 'police_car', 'poodle', 'poop', 'post_office', 'postal_horn', 'postbox', 'potable_water', 'pouch', 'poultry_leg', 'pound', 'pouting_cat', 'pray', 'princess', 'punch', 'purple_heart', 'purse', 'pushpin', 'put_litter_in_its_place', 'question', 'rabbit', 'rabbit2', 'racehorse', 'radio', 'radio_button', 'rage', 'rage1', 'rage2', 'rage3', 'rage4', 'railway_car', 'rainbow', 'raised_hand', 'raised_hands', 'raising_hand', 'ram', 'ramen', 'rat', 'recycle', 'red_car', 'red_circle', 'registered', 'relaxed', 'relieved', 'repeat', 'repeat_one', 'restroom', 'revolving_hearts', 'rewind', 'ribbon', 'rice', 'rice_ball', 'rice_cracker', 'rice_scene', 'ring', 'rocket', 'roller_coaster', 'rooster', 'rose', 'rotating_light', 'round_pushpin', 'rowboat', 'ru', 'rugby_football', 'runner', 'running', 'running_shirt_with_sash', 'sa', 'sagittarius', 'sailboat', 'sake', 'sandal', 'santa', 'satellite', 'satisfied', 'saxophone', 'school', 'school_satchel', 'scissors', 'scorpius', 'scream', 'scream_cat', 'scroll', 'seat', 'secret', 'see_no_evil', 'seedling', 'seven', 'shaved_ice', 'sheep', 'shell', 'ship', 'shipit', 'shirt', 'shit', 'shoe', 'shower', 'signal_strength', 'six', 'six_pointed_star', 'ski', 'skull', 'sleeping', 'sleepy', 'slot_machine', 'small_blue_diamond', 'small_orange_diamond', 'small_red_triangle', 'small_red_triangle_down', 'smile', 'smile_cat', 'smiley', 'smiley_cat', 'smiling_imp', 'smirk', 'smirk_cat', 'smoking', 'snail', 'snake', 'snowboarder', 'snowflake', 'snowman', 'sob', 'soccer', 'soon', 'sos', 'sound', 'space_invader', 'spades', 'spaghetti', 'sparkler', 'sparkles', 'sparkling_heart', 'speak_no_evil', 'speaker', 'speech_balloon', 'speedboat', 'squirrel', 'star', 'star2', 'stars', 'station', 'statue_of_liberty', 'steam_locomotive', 'stew', 'straight_ruler', 'strawberry', 'stuck_out_tongue', 'stuck_out_tongue_closed_eyes', 'stuck_out_tongue_winking_eye', 'sun_with_face', 'sunflower', 'sunglasses', 'sunny', 'sunrise', 'sunrise_over_mountains', 'surfer', 'sushi', 'suspect', 'suspension_railway', 'sweat', 'sweat_drops', 'sweat_smile', 'sweet_potato', 'swimmer', 'symbols', 'syringe', 'tada', 'tanabata_tree', 'tangerine', 'taurus', 'taxi', 'tea', 'telephone', 'telephone_receiver', 'telescope', 'tennis', 'tent', 'thought_balloon', 'three', 'thumbsdown', 'thumbsup', 'ticket', 'tiger', 'tiger2', 'tired_face', 'tm', 'toilet', 'tokyo_tower', 'tomato', 'tongue', 'top', 'tophat', 'tractor', 'traffic_light', 'train', 'train2', 'tram', 'triangular_flag_on_post', 'triangular_ruler', 'trident', 'triumph', 'trolleybus', 'trollface', 'trophy', 'tropical_drink', 'tropical_fish', 'truck', 'trumpet', 'tshirt', 'tulip', 'turtle', 'tv', 'twisted_rightwards_arrows', 'two', 'two_hearts', 'two_men_holding_hands', 'two_women_holding_hands', 'u5272', 'u5408', 'u55b6', 'u6307', 'u6708', 'u6709', 'u6e80', 'u7121', 'u7533', 'u7981', 'u7a7a', 'uk', 'umbrella', 'unamused', 'underage', 'unlock', 'up', 'us', 'v', 'vertical_traffic_light', 'vhs', 'vibration_mode', 'video_camera', 'video_game', 'violin', 'virgo', 'volcano', 'vs', 'walking', 'waning_crescent_moon', 'waning_gibbous_moon', 'warning', 'watch', 'water_buffalo', 'watermelon', 'wave', 'wavy_dash', 'waxing_crescent_moon', 'waxing_gibbous_moon', 'wc', 'weary', 'wedding', 'whale', 'whale2', 'wheelchair', 'white_check_mark', 'white_circle', 'white_flower', 'white_square', 'white_square_button', 'wind_chime', 'wine_glass', 'wink', 'wink2', 'wolf', 'woman', 'womans_clothes', 'womans_hat', 'womens', 'worried', 'wrench', 'x', 'yellow_heart', 'yen', 'yum', 'zap', 'zero', 'zzz']
\ No newline at end of file
diff --git a/assets/scripts/lib/ext/ember/namespace.js b/assets/scripts/lib/ext/ember/namespace.js
deleted file mode 100644
index 52f4d0e3..00000000
--- a/assets/scripts/lib/ext/ember/namespace.js
+++ /dev/null
@@ -1,3 +0,0 @@
-Em.Namespace.reopen = Em.Namespace.reopenClass
-
-
diff --git a/assets/scripts/lib/ext/jquery.coffee b/assets/scripts/lib/ext/jquery.coffee
deleted file mode 100644
index 37930a9e..00000000
--- a/assets/scripts/lib/ext/jquery.coffee
+++ /dev/null
@@ -1,172 +0,0 @@
-$.fn.extend
- outerHtml: ->
- $(this).wrap('').parent().html()
-
- outerElement: ->
- $($(this).outerHtml()).empty()
-
- flash: ->
- Utils.flash this
-
- unflash: ->
- Utils.unflash this
-
- filterLog: ->
- @deansi()
- @foldLog()
-
- deansi: ->
- @html Utils.deansi(@html())
-
- foldLog: ->
- @html Utils.foldLog(@html())
-
- unfoldLog: ->
- @html Utils.unfoldLog(@html())
-
- updateTimes: ->
- Utils.updateTimes this
-
- activateTab: (tab) ->
- Utils.activateTab this, tab
-
- timeInWords: ->
- $(this).each ->
- $(this).text Utils.timeInWords(parseInt($(this).attr('title')))
-
- updateGithubStats: (repo) ->
- Utils.updateGithubStats repo, $(this)
-
-$.extend
- isEmpty: (obj) ->
- if $.isArray(obj)
- !obj.length
- else if $.isObject(obj)
- !$.keys(obj).length
- else
- !obj
-
- isObject: (obj) ->
- # does this work as expected?
- Object.prototype.toString.call(obj) == '[object Object]'
-
- keys: (obj) ->
- keys = []
- $.each obj, (key) -> keys.push key
- keys
-
- values: (obj) ->
- values = []
- $.each obj, (key, value) -> values.push value
- values
-
- underscore: (string) ->
- string[0].toLowerCase() + string.substring(1).replace /([A-Z])?/g, (match, chr) ->
- if chr then "_#{chr.toUpperCase()}" else ''
-
- titleize: (string) ->
- $.capitalize(string).replace /_(.)?/g, (match, chr) ->
- if chr then ' ' + chr.toUpperCase() else ''
-
- camelize: (string, uppercase) ->
- string = if uppercase == false then $.underscore(string) else $.capitalize(string)
- string.replace /_(.)?/g, (match, chr) ->
- if chr then chr.toUpperCase() else ''
-
- capitalize: (string) ->
- string[0].toUpperCase() + string.substring(1)
-
- compact: (object) ->
- $.grep(object, (value) -> !!value)
-
- all: (array, callback) ->
- args = Array::slice.apply(arguments)
- callback = args.pop()
- array = args.pop() or this
- i = 0
-
- while i < array.length
- return false if callback(array[i])
- i++
- true
-
- detect: (array, callback) ->
- args = Array::slice.apply(arguments)
- callback = args.pop()
- array = args.pop() or this
- i = 0
-
- while i < array.length
- return array[i] if callback(array[i])
- i++
-
- select: (array, callback) ->
- args = Array::slice.apply(arguments)
- callback = args.pop()
- array = args.pop() or this
- result = []
- i = 0
-
- while i < array.length
- result.push array[i] if callback(array[i])
- i++
- result
-
- slice: (object, key) ->
- keys = Array::slice.apply(arguments)
- object = (if (typeof keys[0] is 'object') then keys.shift() else this)
- result = {}
- for key of object
- result[key] = object[key] if keys.indexOf(key) > -1
- result
-
- only: (object) ->
- keys = Array::slice.apply(arguments)
- object = (if (typeof keys[0] is 'object') then keys.shift() else this)
- result = {}
- for key of object
- result[key] = object[key] unless keys.indexOf(key) is -1
- result
-
- except: (object) ->
- keys = Array::slice.apply(arguments)
- object = (if (typeof keys[0] is 'object') then keys.shift() else this)
- result = {}
- for key of object
- result[key] = object[key] if keys.indexOf(key) is -1
- result
-
- intersect: (array, other) ->
- array.filter (element) ->
- other.indexOf(element) != -1
-
- map: (elems, callback, arg) ->
- value = undefined
- key = undefined
- ret = []
- i = 0
- length = elems.length
- isArray = elems instanceof jQuery || length != undefined && typeof length == 'number' && (length > 0 && elems[0] && elems[length - 1]) || length == 0 || jQuery.isArray(elems)
- if isArray
- while i < length
- value = callback(elems[i], i, arg)
- ret[ret.length] = value if value?
- i++
- else
- for key of elems
- value = callback(elems[key], key, arg)
- ret[ret.length] = value if value?
- ret.concat.apply [], ret
-
- shuffle: (array) ->
- array = array.slice()
- top = array.length
- while top && --top
- current = Math.floor(Math.random() * (top + 1))
- tmp = array[current]
- array[current] = array[top]
- array[top] = tmp
- array
-
- truncate: (string, length) ->
- if string.length > length then string.trim().substring(0, length) + '...' else string
diff --git a/assets/scripts/lib/travis/adapter.coffee b/assets/scripts/lib/travis/adapter.coffee
deleted file mode 100644
index 42ce5eca..00000000
--- a/assets/scripts/lib/travis/adapter.coffee
+++ /dev/null
@@ -1,101 +0,0 @@
-get = Ember.get
-
-Travis.Adapter = Ember.RESTAdapter.extend
- ajax: (url, params, method) ->
- Travis.ajax.ajax(url, method || 'get', data: params)
-
- findMany: (klass, records, ids) ->
- url = @buildURL(klass)
-
- self = this
- @ajax(url, ids: ids).then (data) ->
- self.didFindMany(klass, records, data)
-
- didFindMany: (klass, records, data) ->
- collectionKey = Ember.get(klass, 'collectionKey')
- dataToLoad = if collectionKey then data[collectionKey] else data
-
- @sideload(klass, data)
- records.load(klass, dataToLoad)
- @addToRecordArrays(records.get('content'))
-
- buildURL: (klass, id, record) ->
- @_super.apply(this, arguments).replace(/\.json$/, '')
-
- didFind: (record, id, data) ->
- @sideload(record.constructor, data)
- @_super(record, id, data)
- @addToRecordArrays(record)
-
- didFindAll: (klass, records, data) ->
- @sideload(klass, data)
- @_super(klass, records, data)
- @addToRecordArrays(records.get('content'))
-
- didFindQuery: (klass, records, params, data) ->
- @sideload(klass, data)
- @_super(klass, records, params, data)
- @addToRecordArrays(records.get('content'))
-
- didCreateRecord: (record, data) ->
- @sideload(record.constructor, data)
- @_super(record, data)
- @addToRecordArrays(record)
-
- didSaveRecord: (record, data) ->
- @sideload(record.constructor, data)
- @_super(record, data)
- @addToRecordArrays(record)
-
- didDeleteRecord: (record, data) ->
- @sideload(record.constructor, data)
- @_super(record, data)
- @addToRecordArrays(record)
-
- addToRecordArrays: (records) ->
- records = [records] unless Ember.isArray(records)
- for record in records
- record.constructor.addToRecordArrays(record)
-
- sideload: (klass, data) ->
- for name, records of data
- records = [records] unless Ember.isArray(records)
-
- # we need to skip records of type, which is loaded by adapter already
- if (type = Ember.get(Travis, 'mappings')[name]) && type != klass
- for record in records
- record = type.findFromCacheOrLoad(record)
- @addToRecordArrays(record)
-
- find: (record, id) ->
- url = @buildURL(record.constructor, id, record)
- self = this
- @ajax(url).then (data) ->
- self.didFind record, id, data
- record
-
- createRecord: (record) ->
- url = @buildURL(record.constructor, undefined, record)
- self = this
- @ajax(url, record.toJSON(), "POST").then (data) ->
- self.didCreateRecord record, data
- record
-
- deleteRecord: (record) ->
- primaryKey = get(record.constructor, "primaryKey")
- url = @buildURL(record.constructor, get(record, primaryKey), record)
- self = this
- @ajax(url, record.toJSON(), "DELETE").then (data) -> # TODO: Some APIs may or may not return data
- self.didDeleteRecord record, data
- return
-
- saveRecord: (record) ->
- primaryKey = get(record.constructor, 'primaryKey')
- url = this.buildURL(record.constructor, get(record, primaryKey), record)
- self = this
-
- return this.ajax(url, record.toJSON(), "PUT").then (data) ->
- self.didSaveRecord(record, data)
- return record
-
-
diff --git a/assets/scripts/lib/travis/adapters/env_vars.coffee b/assets/scripts/lib/travis/adapters/env_vars.coffee
deleted file mode 100644
index 36dba2c2..00000000
--- a/assets/scripts/lib/travis/adapters/env_vars.coffee
+++ /dev/null
@@ -1,21 +0,0 @@
-require 'travis/adapter'
-get = Ember.get
-
-Travis.EnvVarsAdapter = Travis.Adapter.extend
- buildURL: (klass, id, record) ->
- url = @_super.apply this, arguments
- if record && (repo_id = get(record, 'repository_id') || get(record, 'repo.id'))
- url = "#{url}?repository_id=#{repo_id}"
-
- url
-
- saveRecord: (record) ->
- primaryKey = get(record.constructor, 'primaryKey')
- url = this.buildURL(record.constructor, get(record, primaryKey), record)
- self = this
-
- return this.ajax(url, record.toJSON(), "PATCH").then (data) ->
- self.didSaveRecord(record, data)
- return record
-
-
diff --git a/assets/scripts/lib/travis/adapters/ssh_key.coffee b/assets/scripts/lib/travis/adapters/ssh_key.coffee
deleted file mode 100644
index 11a683b2..00000000
--- a/assets/scripts/lib/travis/adapters/ssh_key.coffee
+++ /dev/null
@@ -1,10 +0,0 @@
-Travis.SshKeyAdapter = Travis.Adapter.extend
- buildURL: (klass, id, record) ->
- url = @_super.apply this, arguments
-
- createRecord: (record) ->
- url = @buildURL(record.constructor, record.get('id'), record)
- self = this
- @ajax(url, record.toJSON(), "PATCH").then (data) ->
- self.didCreateRecord record, data
- record
diff --git a/assets/scripts/lib/travis/chunk_buffer.coffee b/assets/scripts/lib/travis/chunk_buffer.coffee
deleted file mode 100644
index e49a90f0..00000000
--- a/assets/scripts/lib/travis/chunk_buffer.coffee
+++ /dev/null
@@ -1,96 +0,0 @@
-get = Ember.get
-
-Travis.ChunkBuffer = Em.ArrayProxy.extend
- timeout: 5000
- checkTimeoutFrequency: 5000
- start: 1
- next: 1
-
- init: ->
- @_super.apply this, arguments
-
- @lastInsert = 0
-
- @set('next', @get('start'))
-
- @checkTimeout()
-
- if @get('content.length')
- @get('queue.content').pushObjects @get('content').toArray()
-
- arrangedContent: (->
- []
- ).property('content')
-
- addObject: (obj) ->
- @get('content').pushObject(obj)
-
- removeObject: (obj) ->
- @get('content').removeObject(obj)
-
- replaceContent: (idx, amt, objects) ->
- @get('content').replace(idx, amt, objects)
-
- queue: (->
- Em.ArrayProxy.extend(Em.SortableMixin, {
- content: []
- sortProperties: ['number']
- sortAscending: true
- }).create()
- ).property()
-
- contentArrayDidChange: (array, index, removedCount, addedCount) ->
- @_super.apply this, arguments
-
- if addedCount
- queue = @get('queue')
- addedObjects = array.slice(index, index + addedCount)
- console.log 'Added log parts with numbers:', addedObjects.map( (element) -> get(element, 'number') )+'', 'current', @get('next')
- queue.pushObjects addedObjects
- @check()
-
- check: ->
- queue = @get('queue')
- next = @get('next')
-
- arrangedContent = @get('arrangedContent')
- toPush = []
-
- while queue.get('firstObject.number') <= next
- element = queue.shiftObject()
- if get(element, 'number') == next
- @finalize() if get(element, 'final')
- toPush.pushObject get(element, 'content')
- next += 1
-
- if toPush.length
- arrangedContent.pushObjects toPush
- @inserted()
-
- @set('next', next)
-
- inserted: ->
- now = @now()
- @lastInsert = now
-
- finalize: ->
- clearTimeout @get('runLaterId')
-
- checkTimeout: ->
- now = @now()
- if now - @lastInsert > @get('timeout')
- @giveUpOnMissingParts()
- @set 'runLaterId', setTimeout((=> @checkTimeout()), @get('checkTimeoutFrequency'))
-
- willDestroy: ->
- @finalize()
- @_super.apply this, arguments
-
- now: ->
- (new Date()).getTime()
-
- giveUpOnMissingParts: ->
- if number = @get('queue.firstObject.number')
- console.log 'Giving up on missing parts in the buffer, switching to:', number
- @set('next', number)
- @check()
diff --git a/assets/scripts/lib/travis/instrumentation.coffee b/assets/scripts/lib/travis/instrumentation.coffee
deleted file mode 100644
index 1e9c9b17..00000000
--- a/assets/scripts/lib/travis/instrumentation.coffee
+++ /dev/null
@@ -1,8 +0,0 @@
-Travis.Instrumentation = {
- subscribe: (event) ->
- Em.subscribe event,
- before:(name, timestamp, payload) ->
- timestamp
- after: (name, timestamp, payload, start_timestamp) ->
- console.log(name, payload, timestamp - start_timestamp)
-}
diff --git a/assets/scripts/lib/travis/location.coffee b/assets/scripts/lib/travis/location.coffee
deleted file mode 100644
index 034fd83f..00000000
--- a/assets/scripts/lib/travis/location.coffee
+++ /dev/null
@@ -1,4 +0,0 @@
-Travis.Location = Ember.HistoryLocation.extend
- getURL: ->
- location = @get('location')
- location.pathname + location.hash
diff --git a/assets/scripts/lib/travis/model.coffee b/assets/scripts/lib/travis/model.coffee
deleted file mode 100644
index d5e9ba91..00000000
--- a/assets/scripts/lib/travis/model.coffee
+++ /dev/null
@@ -1,128 +0,0 @@
-get = Ember.get
-set = Ember.set
-
-Array.prototype.diff = (a) ->
- this.filter (i) -> !(a.indexOf(i) > -1)
-
-
-@Travis.Model = Ember.Model.extend
- id: Ember.attr('number')
-
- init: ->
- @_super.apply this, arguments
- this
-
- merge: (hash) ->
- data = @get('_data')
- Ember.merge(data, hash)
- @notifyPropertyChange('_data')
-
- unload: ->
- @constructor.unload(this)
-
- dataKey: (key) ->
- meta = @constructor.metaForProperty(key)
- if meta.isRelationship && !meta.options?.key?
- type = meta.type
- if typeof type == "string"
- type = Ember.get(Ember.lookup, type)
-
- if meta.kind == 'belongsTo'
- return type.singularName() + '_id'
- else
- return type.singularName() + '_ids'
-
- @_super(key)
-
- getBelongsTo: (key, type, meta) ->
- unless key
- key = type.singularName() + '_id'
- @_super(key, type, meta)
-
- getHasMany: (key, type, meta) ->
- unless key
- key = type.singularName() + '_ids'
- @_super(key, type, meta)
-
- select: ->
- @constructor.select(@get('id'))
-
-@Travis.Model.reopenClass
- select: (id) ->
- @find().forEach (record) ->
- record.set('selected', record.get('id') == id)
-
- buildURL: (suffix) ->
- base = @url || @pluralName()
- Ember.assert('Base URL (' + base + ') must not start with slash', !base || base.toString().charAt(0) != '/')
- Ember.assert('URL suffix (' + suffix + ') must not start with slash', !suffix || suffix.toString().charAt(0) != '/')
- url = [base]
- url.push(suffix) if (suffix != undefined)
- url.join('/')
-
- singularName: ->
- parts = @toString().split('.')
- name = parts[parts.length - 1]
- name.replace(/([A-Z])/g, '_$1').toLowerCase().slice(1)
-
- pluralName: ->
- @singularName() + 's'
-
- collectionKey: (->
- @pluralName()
- ).property()
-
- rootKey: (->
- @singularName()
- ).property()
-
- isModel: (->
- true
- ).property()
-
- isRecordLoaded: (id) ->
- reference = @_getReferenceById(id)
- reference && reference.record
-
- camelizeKeys: true
-
- # TODO: the functions below will be added to Ember Model, remove them when that
- # happens
- resetData: ->
- @_referenceCache = {}
- @sideloadedData = {}
- @recordArrays = []
- @_currentBatchIds = []
- @_hasManyArrays = []
- @_findAllRecordArray = null
-
- unload: (record) ->
- @removeFromRecordArrays(record)
- primaryKey = record.get(get(this, 'primaryKey'))
- @removeFromCache(primaryKey)
-
- removeFromCache: (key) ->
- if @sideloadedData && @sideloadedData[key]
- delete this.sideloadedData[key]
- if @recordCache && @recordCache[key]
- delete this.recordCache[key]
-
- loadRecordForReference: (reference) ->
- record = @create({ _reference: reference, id: reference.id })
- @sideloadedData = {} unless @sideloadedData
- reference.record = record
- record.load(reference.id, @sideloadedData[reference.id])
- # TODO: find a nicer way to not add record to record arrays twice
- if @currentRecordsToAdd
- @currentRecordsToAdd.pushObject(record) unless @currentRecordsToAdd.contains(record)
- else
- @currentRecordsToAdd = [record]
-
- Ember.run.scheduleOnce('data', this, @_batchAddToRecordArrays);
-
- _batchAddToRecordArrays: ->
- for record in @currentRecordsToAdd
- if !@_findAllRecordArray || !@_findAllRecordArray.contains(record)
- @addToRecordArrays(record)
-
- @currentRecordsToAdd = null
diff --git a/assets/scripts/lib/travis/ordered_log.coffee b/assets/scripts/lib/travis/ordered_log.coffee
deleted file mode 100644
index f2127204..00000000
--- a/assets/scripts/lib/travis/ordered_log.coffee
+++ /dev/null
@@ -1,153 +0,0 @@
-# TODO: revisit those patterns
-FOLDS = [
- Em.Object.create(name: 'schema', startPattern: /^\$ (?:bundle exec )?rake( db:create)? db:schema:load/, endPattern: /^(<\/span>)?\$/)
- Em.Object.create(name: 'migrate', startPattern: /^\$ (?:bundle exec )?rake( db:create)? db:migrate/, endPattern: /^(<\/span>)?\$/)
- Em.Object.create(name: 'bundle', startPattern: /^\$ bundle install/, endPattern: /^(<\/span>)?\$/)
-]
-
-@Travis.OrderedLog = Em.Object.extend
- linesLimit: 5000
- init: ->
- @set 'folds', []
- @set 'line', 1
- @set 'lineNumber', 1
- @initial = true
-
- for fold in FOLDS
- @addFold fold
-
- append: (lines) ->
- return unless lines
- return if @get('lineNumber') > @get('linesLimit')
-
- log = @join lines
- log = @escape log
- log = @deansi log
- lines = @split log
-
- target = @get 'target'
- index = 0
- currentFold = @currentFold
-
- result = []
-
- for line in lines
- if line == '\r'
- @set 'replace', true
- else if line == '\n'
- @set 'newline', true
- index += 1
- else
- if currentFold && ( @isFoldEnding(currentFold, line) )
- # end of the fold, send fold to target
- if result.length > 0
- result.slice(-1)[0].foldEnd = true
- target.appendLog result
-
- @currentFold = currentFold = null
- @set 'foldContinuation', false
- result = []
-
- if !currentFold && ( currentFold = @foldByStart(line) )
- # beginning new fold, send current lines to target
- if result.length > 0
- target.appendLog result
-
- result = []
- start = index
-
- payload = { content: line }
-
- if currentFold
- payload.fold = currentFold.get('name')
-
- if @get 'foldContinuation'
- payload.foldContinuation = true
-
- payload.number = @get('lineNumber') + index
-
- if @get 'replace'
- @set 'replace', false
- payload.replace = true
- else if @get 'newline'
- @set 'newline', false
- else if !@initial
- payload.append = true
-
- @initial = false
-
- if payload.foldContinuation && payload.content.match(/Done. Build script exited|Your build has been stopped/)
- # script ended, but fold is still closed, which most probably means
- # error, end the fold and open it.
- # TODO: we need log marks to make it easier
- payload.foldContinuation = null
- payload.openFold = payload.fold
- payload.fold = null
-
- result.pushObject payload
-
- if currentFold
- @set 'foldContinuation', true
-
- if @get('lineNumber') + index >= @get('linesLimit')
- result.pushObject logWasCut: true
- break
-
- if result.length > 0
- if currentFold
- @currentFold = currentFold
-
- target.appendLog result
-
- nextLineNumber = @get('lineNumber') + index
- @set 'lineNumber', nextLineNumber
-
- join: (lines) ->
- if typeof lines == 'string'
- lines
- else
- lines.toArray().join ''
-
- split: (log) ->
- log = log.replace /\r\n/g, '\n'
- lines = log.split(/(\n)/)
-
- if lines.slice(-1)[0] == ''
- lines.popObject()
-
- result = []
- for line in lines
- result.pushObjects line.split(/(\r)/)
-
- result
-
- escape: (log) ->
- Handlebars.Utils.escapeExpression log
-
- deansi: (log) ->
- log = log.replace(/\r\r/g, '\r')
- .replace(/\033\[K\r/g, '\r')
- .replace(/\[2K/g, '')
- .replace(/\033\(B/g, '')
- .replace(/\033\[\d+G/g, '')
-
- ansi = ansiparse(log)
-
- text = ''
- ansi.forEach (part) ->
- classes = []
- part.foreground and classes.push(part.foreground)
- part.background and classes.push('bg-' + part.background)
- part.bold and classes.push('bold')
- part.italic and classes.push('italic')
- text += (if classes.length then ('' + part.text + '') else part.text)
- text.replace /\033/g, ''
-
- addFold: (fold) ->
- @get('folds').pushObject fold
-
- foldByStart: (line) ->
- @get('folds').find (fold) -> line.match(fold.get('startPattern'))
-
- isFoldEnding: (fold, line) ->
- line.match(fold.get('endPattern'))
diff --git a/assets/scripts/spec/integration/build_spec.coffee b/assets/scripts/spec/integration/build_spec.coffee
deleted file mode 100644
index 8e9b4f88..00000000
--- a/assets/scripts/spec/integration/build_spec.coffee
+++ /dev/null
@@ -1,99 +0,0 @@
-module "Build page",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "displaying information on build page", ->
- visit('/travis-ci/travis-core/builds')
- visit('/travis-ci/travis-core/builds/1')
- andThen(->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-core'
-
- displaysSummary
- type: 'build'
- id: 1
- repo: 'travis-ci/travis-core'
- commit: '1234567'
- branch: 'master'
- compare: '0123456..1234567'
- finishedAt: '3 minutes ago'
- duration: '30 sec'
- message: 'commit message 1'
-
- displaysSummaryGravatars
- authorEmail: 'author@email.com'
- committerEmail: 'committer@email.com'
-
-
- displaysTabs
- current: { href: '/travis-ci/travis-core' }
- builds: { href: '/travis-ci/travis-core/builds' }
- build: { href: '/travis-ci/travis-core/builds/1', active: true }
- job: { hidden: true }
-
- listsJobs
- table: '#jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { color: 'green', id: 1, number: '1.1', repo: 'travis-ci/travis-core', finishedAt: '3 minutes ago', duration: '30 sec', rvm: 'rbx' }
- { color: 'red', id: 2, number: '1.2', repo: 'travis-ci/travis-core', finishedAt: '2 minutes ago', duration: '40 sec', rvm: '1.9.3' }
- ]
-
- listsJobs
- table: '#allowed_failure_jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { color: '', id: 3, number: '1.3', repo: 'travis-ci/travis-core', finishedAt: '-', duration: '-', rvm: 'jruby' }
- ]
- )
-
-
-test "updating current build", ->
- visit('/travis-ci/travis-core').then ->
- payload =
- build:
- id: 11
- repository_id: 1
- commit_id: 1
- number: '3'
- duration: 55
- started_at: '2012-07-02T00:02:00Z'
- finished_at: '2012-07-02T00:02:55Z'
- event_type: 'push'
- result: 1
- message: 'commit message 3'
- commit: 'foo1234'
- branch: 'master'
- state: 'started'
- config: {}
- pull_request: false
- compare_url: 'https://github.com/compare/0123456..1234567'
- repository:
- id: 1
- last_build_number: '3'
- last_build_id: 11
-
- Em.run ->
- Travis.receive 'build:started', payload
-
- wait().then ->
- displaysSummaryBuildLink '/travis-ci/travis-core/builds/11', '3'
-
- displaysSummary
- type: 'build'
- id: 11
- repo: 'travis-ci/travis-core'
- commit: 'foo1234'
- branch: 'master'
- compare: '0123456..1234567'
- finishedAt: 'less than a minute ago'
- duration: '55 sec'
- message: 'commit message 3'
diff --git a/assets/scripts/spec/integration/builds_spec.coffee b/assets/scripts/spec/integration/builds_spec.coffee
deleted file mode 100644
index 9968f3dc..00000000
--- a/assets/scripts/spec/integration/builds_spec.coffee
+++ /dev/null
@@ -1,28 +0,0 @@
-module "Builds page",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "displaying information on builds page", ->
- visit('/travis-ci/travis-core/builds').then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-core'
-
- displaysTabs
- current: { href: '/travis-ci/travis-core' }
- builds: { href: '/travis-ci/travis-core/builds', active: true }
- build: { hidden: true }
- job: { hidden: true }
-
-
- listsBuilds [
- { id: 2, slug: 'travis-ci/travis-core', number: '2', sha: '2345678', branch: 'feature', message: 'commit message 2', duration: '-', finishedAt: '-', color: '' }
- { id: 1, slug: 'travis-ci/travis-core', number: '1', sha: '1234567', branch: 'master', message: 'commit message 1', duration: '30 sec', finishedAt: '3 minutes ago', color: 'green' }
- ]
diff --git a/assets/scripts/spec/integration/current_spec.coffee b/assets/scripts/spec/integration/current_spec.coffee
deleted file mode 100644
index e602df76..00000000
--- a/assets/scripts/spec/integration/current_spec.coffee
+++ /dev/null
@@ -1,48 +0,0 @@
-module "Repo page",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "displaying information on repo page", ->
- visit('/travis-ci/travis-core').then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-core'
-
- displaysSummary
- type: 'build'
- id: 1
- repo: 'travis-ci/travis-core'
- commit: '1234567'
- branch: 'master'
- compare: '0123456..1234567'
- finishedAt: '3 minutes ago'
- duration: '30 sec'
- message: 'commit message 1'
-
- displaysTabs
- current: { href: '/travis-ci/travis-core', active: true }
- builds: { href: '/travis-ci/travis-core/builds' }
- build: { hidden: true }
- job: { hidden: true }
-
- listsJobs
- table: '#jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { id: 1, color: 'green', number: '1.1', repo: 'travis-ci/travis-core', finishedAt: '3 minutes ago', duration: '30 sec', rvm: 'rbx' }
- { id: 2, color: 'red', number: '1.2', repo: 'travis-ci/travis-core', finishedAt: '2 minutes ago', duration: '40 sec', rvm: '1.9.3' }
- ]
-
- listsJobs
- table: '#allowed_failure_jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { id: 3, color: '', number: '1.3', repo: 'travis-ci/travis-core', finishedAt: '-', duration: '-', rvm: 'jruby' }
- ]
diff --git a/assets/scripts/spec/integration/event_spec.coffee b/assets/scripts/spec/integration/event_spec.coffee
deleted file mode 100644
index 3cd2f835..00000000
--- a/assets/scripts/spec/integration/event_spec.coffee
+++ /dev/null
@@ -1,214 +0,0 @@
-module "Events",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "event containing a repository, adds repository to repos list", ->
- visit('/travis-ci/travis-core').then ->
- payload =
- repository:
- id: 10
- build:
- id: 10
- repository_id: 10
-
- $.mockjax
- url: '/builds/10'
- responseTime: 0
- responseText: payload
-
- Em.run ->
- Travis.receive 'build:started',
- build:
- id: 10
- repository:
- id: 10
- slug: 'travis-ci/travis-support'
- last_build_id: 10
- last_build_number: 10
- last_build_started_at: '2012-07-02T00:01:00Z'
- last_build_finished_at: '2012-07-02T00:02:30Z'
- last_build_state: 'passed'
- last_build_duration: 90
-
- wait().then ->
- listsRepo
- row: 2
- item: { slug: 'travis-ci/travis-support', build: { number: 4, url: '/travis-ci/travis-support/builds/10', duration: '1 min 30 sec', finishedAt: 'less than a minute ago' } }
-
-
-test "an event containing a created job, clears the job's log", ->
- payload =
- job:
- id: 12
- repository_id: 1
- number: '1.4'
- queue: 'build.linux'
-
- visit('/travis-ci/travis-core/').then ->
- Em.run ->
- logRendered()
- Travis.receive 'build:created', payload
-
- wait().then ->
- displaysLog []
-
-test "an event containing a requeued job, clears the job's log", ->
- payload =
- job:
- id: 12
- repository_id: 1
- number: '1.4'
- queue: 'build.linux'
-
- visit('/travis-ci/travis-core').then ->
- Em.run ->
- logRendered()
- Travis.receive 'build:requeued', payload
-
- wait().then ->
- displaysLog []
-
-
-test "an event with a build adds a build to a builds list", ->
- visit('/travis-ci/travis-core/builds').then ->
- payload =
- build:
- id: 11
- repository_id: 1
- commit_id: 1
- number: '3'
- duration: 55
- started_at: '2012-07-02T00:02:00Z'
- finished_at: '2012-07-02T00:02:55Z'
- event_type: 'push'
- message: 'commit message 3'
- commit: '1234567'
- state: 'failed'
- pull_request: false
- pull_request_number: null
- pull_request_title: null
-
- Em.run ->
- Travis.receive 'build:started', payload
-
- wait().then ->
- listsBuild
- row: 1
- item: { id: 11, slug: 'travis-ci/travis-core', number: '3', sha: '1234567', branch: 'master', message: 'commit message 3', finishedAt: 'less than a minute ago', duration: '55 sec', color: 'red' }
-
-
-#test "event containing a job, adds job to jobs list", ->
-# visit('travis-ci/travis-core').then ->
-# payload =
-# job:
-# id: 12
-# repository_id: 1
-# number: '1.4'
-# queue: 'builds.linux'
-#
-# $.mockjax
-# url: '/jobs/12'
-# responseTime: 0
-# responseText: payload
-#
-# Em.run ->
-# Travis.receive 'job:started',
-# job:
-# id: 12
-# repository_id: 1
-# repository_slug: 'travis-ci/travis-core'
-# number: '1.4'
-# queue: 'builds.linux'
-# state: 'created'
-#
-# wait().then ->
-# listsQueuedJob
-# name: 'linux'
-# row: 3
-# item: { number: '1.4', repo: 'travis-ci/travis-core' }
-#
-# it 'updates only keys that are available', ->
-# Em.run ->
-# Travis.receive 'job:started',
-# job:
-# id: 1
-# build_id: 1
-#
-# waits(100)
-# runs ->
-# listsJob
-# table: $('#jobs')
-# row: 1
-# item: { id: 1, number: '1.1', repo: 'travis-ci/travis-core', finishedAt: '3 minutes ago', duration: '30 sec', rvm: 'rbx' }
-#
-# #describe 'an event adding a worker', ->
-# # beforeEach ->
-# # app ''
-# # waitFor sidebarTabsRendered
-# # runs ->
-# # $('#right #tab_workers a').trigger('click')
-# # waitFor workersRendered
-#
-# # it 'adds a worker to the workers list', ->
-# # payload =
-# # worker:
-# # id: 10
-# # host: 'worker.travis-ci.org'
-# # name: 'ruby-3'
-# # state: 'ready'
-#
-# # $.mockjax
-# # url: '/workers/10'
-# # responseTime: 0
-# # responseText: payload
-#
-# # Em.run ->
-# # Travis.receive 'worker:created',
-# # worker:
-# # id: 10
-# # name: 'ruby-3'
-# # host: 'worker.travis-ci.org'
-# # state: 'ready'
-#
-# # waits(100)
-# # runs ->
-# # listsWorker
-# # group: 'worker.travis-ci.org'
-# # row: 3
-# # item: { name: 'ruby-3', state: 'ready' }
-#
-#
-# #describe 'an event updating a worker', ->
-# # beforeEach ->
-# # app '/travis-ci/travis-core'
-# # waitFor sidebarTabsRendered
-# # runs ->
-# # $('#right #tab_workers a').trigger('click')
-# # waitFor workersRendered
-#
-# # it 'does not update repository if it\'s already in the store', ->
-# # payload =
-# # worker:
-# # id: 1
-# # host: 'worker.travis-ci.org'
-# # name: 'ruby-2'
-# # state: 'working'
-# # payload:
-# # repository:
-# # id: 1
-# # last_build_id: 999
-# # last_build_number: '999'
-#
-# # Em.run ->
-# # Travis.receive 'worker:updated', payload
-#
-# # waits(100)
-# # runs ->
-# # listsRepo
-# # row: 2
-# # item: { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
-#
-#
-#
diff --git a/assets/scripts/spec/integration/index_spec.coffee b/assets/scripts/spec/integration/index_spec.coffee
deleted file mode 100644
index 8eb426f9..00000000
--- a/assets/scripts/spec/integration/index_spec.coffee
+++ /dev/null
@@ -1,48 +0,0 @@
-module "Index page",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "displaying information on index page", ->
- visit('/travis-ci/travis-core').then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-core'
-
- displaysSummary
- type: 'build'
- id: 1
- repo: 'travis-ci/travis-core'
- commit: '1234567'
- branch: 'master'
- compare: '0123456..1234567'
- finishedAt: '3 minutes ago'
- duration: '30 sec'
- message: 'commit message 1'
-
- displaysTabs
- current: { href: '/travis-ci/travis-core', active: true }
- builds: { href: '/travis-ci/travis-core/builds' }
- build: { hidden: true }
- job: { hidden: true }
-
- listsJobs
- table: '#jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { color: 'green', id: 1, number: '1.1', repo: 'travis-ci/travis-core', finishedAt: '3 minutes ago', duration: '30 sec', rvm: 'rbx' }
- { color: 'red', id: 2, number: '1.2', repo: 'travis-ci/travis-core', finishedAt: '2 minutes ago', duration: '40 sec', rvm: '1.9.3' }
- ]
-
- listsJobs
- table: '#allowed_failure_jobs'
- headers: ['Job', 'Duration', 'Finished', 'Ruby']
- jobs: [
- { color: '', id: 3, number: '1.3', repo: 'travis-ci/travis-core', finishedAt: '-', duration: '-', rvm: 'jruby' }
- ]
diff --git a/assets/scripts/spec/integration/job_spec.coffee b/assets/scripts/spec/integration/job_spec.coffee
deleted file mode 100644
index ccd07b2f..00000000
--- a/assets/scripts/spec/integration/job_spec.coffee
+++ /dev/null
@@ -1,81 +0,0 @@
-module "Job page",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-
-test 'displaying information on job page', ->
- $.mockjax
- url: '/jobs/1/log?cors_hax=true'
- responseTime: 0
- responseText: "First line\ncontent:travis_fold:start:install\r$ Install something\nInstalling something\ncontent:travis_fold:end:install\r$ End"
-
- visit('/travis-ci/travis-core/jobs/1').then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-core'
-
- displaysSummary
- id: 1
- type: 'job'
- repo: 'travis-ci/travis-core'
- commit: '1234567'
- branch: 'master'
- compare: '0123456..1234567'
- finishedAt: '3 minutes ago'
- duration: '30 sec'
- message: 'commit message 1'
-
- displaysTabs
- current: { href: '/travis-ci/travis-core' }
- builds: { href: '/travis-ci/travis-core/builds' }
- build: { href: '/travis-ci/travis-core/builds/1' }
- job: { href: '/travis-ci/travis-core/jobs/1', active: true }
-
- displaysLog [
- 'First line',
- '$ Install something',
- 'Installing something',
- '$ End'
- ]
-
-# it 'allows to expand folds', ->
-# waits 100
-# runs ->
-# expect($('#fold-start-install').hasClass('open')).toBeFalsy()
-# $('#fold-start-install').click()
-# waits 20
-# runs ->
-# expect($('#fold-start-install').hasClass('open')).toBeTruthy()
-#
-#
-#describe 'too long log', ->
-# beforeEach ->
-# $.mockjax
-# url: '/jobs/2/log?cors_hax=true'
-# responseTime: 0
-# responseText: '1\n2\n3\n4\n5\n6\n7\n8\n9\n10'
-#
-# Log.LIMIT = 5
-#
-# app 'travis-ci/travis-core/jobs/2'
-# waitFor logRendered
-#
-# afterEach ->
-# Log.LIMIT = 10000
-#
-# it 'is cut after given limit', ->
-# displaysLog [
-# '12345'
-# ]
-#
-# expect( $('#log-container .warning').text() ).toMatch /This log is too long to be displayed/
-# expect( $('#log-container .warning a').attr('href') ).toEqual '/jobs/2/log.txt?deansi=true'
-#
-#
diff --git a/assets/scripts/spec/integration/log_spec.coffee b/assets/scripts/spec/integration/log_spec.coffee
deleted file mode 100644
index 45e52032..00000000
--- a/assets/scripts/spec/integration/log_spec.coffee
+++ /dev/null
@@ -1,35 +0,0 @@
-module "Logs",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- @sandbox = sinon.sandbox.create();
- $.mockjax
- url: '/jobs/1/log?cors_hax=true'
- responseTime: 0
- responseText: "First line\ncontent:travis_fold:start:install\r$ Install something\nInstalling something\ncontent:travis_fold:end:install\r$ End"
-
- teardown: ->
- Ember.run -> Travis.reset()
- @sandbox.restore();
-
-test 'displaying the logs initializes the line selector', ->
- selector_stub =
- willDestroy: @sandbox.spy()
- lineSelector = @sandbox.stub(Travis, "LinesSelector").returns(selector_stub)
- visit('/travis-ci/travis-core/jobs/1').then ->
- ok lineSelector.calledWithNew(), 'the lines selector has been initialized'
-
-test 'displaying the log initializes the logger', ->
- log = @sandbox.stub(Log, "create").returns
- set: @sandbox.spy()
- scroll_stub =
- tryScroll: @sandbox.spy()
- scroll = @sandbox.stub(Log, "Scroll").returns(scroll_stub)
-
- visit('/travis-ci/travis-core/jobs/1').then ->
- ok log.calledWith({limit: Log.LIMIT, listeners: [scroll_stub]}), 'the logger has been initialized'
-
-test 'displaying the logs initializes the log folder', ->
- folder_stub = {}
- logFolder = @sandbox.stub(Travis, "LogFolder").returns(folder_stub)
- visit('/travis-ci/travis-core/jobs/1').then ->
- ok logFolder.calledWithNew(), 'the logs folder has been initialized'
diff --git a/assets/scripts/spec/integration/my_repos_spec.coffee b/assets/scripts/spec/integration/my_repos_spec.coffee
deleted file mode 100644
index b43c4a50..00000000
--- a/assets/scripts/spec/integration/my_repos_spec.coffee
+++ /dev/null
@@ -1,44 +0,0 @@
-module "My repos",
- setup: ->
- Ember.run -> Travis.advanceReadiness()
- teardown: ->
- Ember.run -> Travis.reset()
-
-test "my repos is active by default when user is signed in", ->
- Ember.run -> signInUser()
- visit('/').then ->
- wait().then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- ]
-
- displaysRepository
- href: '/travis-ci/travis-hub'
-
- displaysSummary
- type: 'build'
- id: 4
- repo: 'travis-ci/travis-hub'
- commit: '4567890'
- branch: 'master'
- compare: '0123456..4567890'
- finishedAt: '-'
- duration: '-'
- message: 'commit message 4'
-
-test "my repos is activated when user signs in", ->
- visit('/').then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- { slug: 'travis-ci/travis-assets', build: { number: 3, url: '/travis-ci/travis-assets/builds/3', duration: '30 sec', finishedAt: 'a day ago' } }
- ]
-
- Ember.run -> signInUser()
-
- wait().then ->
- listsRepos [
- { slug: 'travis-ci/travis-hub', build: { number: 4, url: '/travis-ci/travis-hub/builds/4', duration: '1 min', finishedAt: '-' } }
- { slug: 'travis-ci/travis-core', build: { number: 1, url: '/travis-ci/travis-core/builds/1', duration: '30 sec', finishedAt: '3 minutes ago' } }
- ]
diff --git a/assets/scripts/spec/integration/routes_spec.coffee b/assets/scripts/spec/integration/routes_spec.coffee
deleted file mode 100644
index 1992cfab..00000000
--- a/assets/scripts/spec/integration/routes_spec.coffee
+++ /dev/null
@@ -1,11 +0,0 @@
-module "Router",
- teardown: ->
- Ember.run -> Travis.reset()
-
-test 'renders notFound template when URL can\t be found', ->
- visit('/somehing/something/something/.../dark/side/..../something/something/something/.../complete').then ->
- equal($('#main').text().trim(), 'The requested page was not found.')
-
-test 'renders repo not found information when repo can\'t be found', ->
- visit('/what-is-this/i-dont-even').then ->
- equal($('#main').text().trim(), 'The repository at what-is-this/i-dont-even was not found.')
diff --git a/assets/scripts/spec/integration/sync.coffee b/assets/scripts/spec/integration/sync.coffee
deleted file mode 100644
index a28b95b1..00000000
--- a/assets/scripts/spec/integration/sync.coffee
+++ /dev/null
@@ -1,30 +0,0 @@
-#module "Sync",
-# setup: ->
-# Ember.run -> Travis.advanceReadiness()
-# teardown: ->
-# Ember.run -> Travis.reset()
-#
-#test "first sync page is show when user just signed up and is syncing", ->
-# Ember.run ->
-# signInUser
-# is_syncing: true
-# synced_at: null
-#
-# $.mockjax
-# url: '/hooks'
-# responseTime: 10
-# responseText:
-# hooks: []
-#
-# Travis.config.syncingPageRedirectionTime = 100
-#
-# wait().then ->
-# ok $('#first_sync').text().match(/Just a few more seconds as we talk to GitHub to find out which repositories belong to you./)
-#
-# stop()
-# Travis.__container__.lookup('controller:currentUser').get('content').set('isSyncing', false)
-# setTimeout ->
-# start()
-# visit('/').then ->
-# ok $('#getting-started').text().match(/Welcome to Travis CI!/)
-# , 120
diff --git a/assets/scripts/spec/spec_helper.coffee b/assets/scripts/spec/spec_helper.coffee
deleted file mode 100644
index 320eeee2..00000000
--- a/assets/scripts/spec/spec_helper.coffee
+++ /dev/null
@@ -1,87 +0,0 @@
-document.write('')
-
-Travis.rootElement = '#ember-testing'
-Travis.setupForTesting()
-Travis.injectTestHelpers()
-
-oldSetup = Travis.setup
-Travis.ready = ->
- oldSetup.apply(this, arguments)
- # TODO: in the future I would like to create a TestAuth class which
- # would have similar interface to Travis.Auth, but with the
- # auth logic stubbed out. It will give use ability to do things
- # like testAuth.shouldSucceedOnSignIn()
- Travis.lookup('auth:main').signOut()
-
-window.exists = (selector) ->
- return !!find(selector).length
-
-Ember.Container.prototype.stub = (fullName, instance) ->
- instance.destroy = instance.destroy || (->)
- this.cache.dict[fullName] = instance
-
-window.signInUser = (data) ->
- data ||= {}
- userData = {
- id: 1
- email: 'tyrion@example.org'
- login: 'tyrion'
- token: 'abcdef'
- created_at: "2011-05-10T15:43:59Z"
- gravatar_id: "582034b63279abeaa8e76acf12f5ee30"
- is_syncing: false
- name: "Tyrion"
- synced_at: "2013-12-09T09:41:47Z"
- }
- userData = Ember.merge(userData, data)
- $.mockjax
- url: '/users/1'
- responseTime: 10
- responseText:
- user: userData
- $.mockjax
- url: '/users'
- responseTime: 10
- responseText:
- user: userData
- $.mockjax
- url: '/users/permissions'
- responseTime: 10
- responseText:
- permissions: []
- admin: []
- push: []
- pull: []
- $.mockjax
- url: '/broadcasts'
- responseTime: 10
- responseText:
- broadcasts: []
- $.mockjax
- url: '/accounts'
- responseTime: 10
- responseText:
- accounts: []
-
- # for now let's just use harcoded data to log in the user,
- # we may extend it in the future to pass specific user data
- Travis.lookup('auth:main').signIn
- user: userData
- token: 'abcdef'
-
- #@app = (url, options = {}) ->
- # # TODO: this should wait till app is initialized, not some
- # # arbitrary amount of time
- # waits(50)
- # runs ->
- # Travis.reset()
- # Travis.auth.signOut()
- #
- # if options.user
- # signInUser()
- # url = "/#{url}" unless url.match /^\//
- # visit(url)
-
-now = -> new Date('2012-07-02T00:03:00Z')
-$.timeago.settings.nowFunction = -> now().getTime()
-Travis.currentDate = now
diff --git a/assets/scripts/spec/support/conditions.coffee b/assets/scripts/spec/support/conditions.coffee
deleted file mode 100644
index 66188ae2..00000000
--- a/assets/scripts/spec/support/conditions.coffee
+++ /dev/null
@@ -1,18 +0,0 @@
-@notEmpty = (selector) ->
- -> $(selector).text().trim() != ''
-
-@hasText = (selector, text) ->
- -> $(selector).text().trim() == text
-
-@reposRendered = notEmpty('#repos li.selected')
-@myReposRendered = -> notEmpty('#repos li.selected')() && $('#left #tab_owned').hasClass('active')
-@buildRendered = notEmpty('#summary .number')
-@buildsRendered = notEmpty('#builds .number')
-@jobRendered = notEmpty('#summary .number')
-@jobsRendered = notEmpty('#jobs .number')
-@queuesRendered = notEmpty('#queue_linux li')
-@workersRendered = notEmpty('.worker')
-@logRendered = notEmpty('#log p')
-@appRendered = -> $('.ember-view.application').length
-
-@sidebarTabsRendered = notEmpty('#right #tab_workers a')
diff --git a/assets/scripts/spec/support/expectations.coffee b/assets/scripts/spec/support/expectations.coffee
deleted file mode 100644
index e6a5335c..00000000
--- a/assets/scripts/spec/support/expectations.coffee
+++ /dev/null
@@ -1,140 +0,0 @@
-@displaysRepository = (repo) ->
- equal($('#repo h3 a').attr('href'), repo.href, 'repository title should link to repo page')
- equal($('#repo .github-icon a').attr('href'), "https://github.com#{repo.href}", 'github icon should link to repo on github')
-
-@displaysTabs = (tabs) ->
- for name, tab of tabs
- equal($("#tab_#{name} a").attr('href'), tab.href, "#{name} tab should link to #{tab.href}") unless tab.hidden
- equal($("#tab_#{name}").hasClass('active'), !!tab.active, "#{name} tab should #{'not' unless tab.active} be active")
- equal($("#tab_#{name}").hasClass('display-inline'), !tab.hidden, "#{name} tab should have class display-inline") if name in ['build', 'job']
-
-@displaysSummaryBuildLink = (link, number) ->
- element = $('#new-summary .build-status a')
- equal( element.attr('href') , link)
- equal( element.text().trim() , "##{number} started")
-
-@displaysSummary = (data) ->
- element = $('#new-summary .build-status a')
- equal(element.attr('href'), "/#{data.repo}/#{data.type}s/#{data.id}")
-
- element = $('#new-summary .finished')
- equal(element.text().trim(), data.finishedAt)
-
- element = $('#new-summary .runtime')
- duration_regexp = new RegExp("(ran|running) for #{data.duration}")
- ok(duration_regexp.test(element.text().trim()))
-
- element = $('#new-summary .commit-changes a.commit')
- equal(element.attr('href'), "https://github.com/#{data.repo}/commit/#{data.commit}")
-
- element = $('#new-summary .commit-changes a.commit')
- equal(element.text(), "Commit #{data.commit}")
-
- element = $('#new-summary .branch')
- equal(element.text().trim(), data.branch)
-
- element = $('#new-summary .commit-changes a.compare')
- equal(element.attr('href'), "https://github.com/compare/#{data.compare}")
-
- element = $('#new-summary .commit-changes a.compare')
- equal(element.text(), "Compare #{data.compare}")
-
- element = $('#new-summary .subject')
- equal(element.text().trim(), "- #{data.message}")
-
-@displaysSummaryGravatars = (data) ->
- element = $('#new-summary .author .committed img')
- equal(element.attr('src'), Travis.Urls.gravatarImage(data.committerEmail, 40))
-
- element = $('#new-summary .author .authored img')
- equal(element.attr('src'), Travis.Urls.gravatarImage(data.authorEmail, 40))
-
-@displaysLog = (lines) ->
- log = lines.join('')
- equal($('#log p').text().trim(), log)
-
-@listsRepos = (items) ->
- listsItems('repo', items)
-
-@listsRepo = (data) ->
- row = $('#repos li')[data.row - 1]
- repo = data.item
-
- equal($('a.slug', row).attr('href'), "/#{repo.slug}")
- equal($('a.last_build', row).attr('href'), repo.build.url)
- equal($('.duration', row).text().trim(), repo.build.duration)
- equal($('.finished_at', row).text().trim(), repo.build.finishedAt)
-
-@listsBuilds = (builds) ->
- listsItems('build', builds)
-
-@listsBuild = (data) ->
- row = $('#builds tbody tr')[data.row - 1]
- build = data.item
-
- equal($('.number a', row).attr('href'), "/#{build.slug}/builds/#{build.id}")
- equal($('.number a', row).text().trim(), build.number)
- equal($('.message', row).text().trim(), build.message)
- equal($('.duration', row).text().trim(), build.duration)
- equal($('.finished_at', row).text().trim(), build.finishedAt)
- ok($(row).attr('class').match(build.color))
-
-@listsJobs = (data) ->
- table = $(data.table)
- headers = ($(element).text() for element in $("thead th", table))
- deepEqual(headers, data.headers)
-
- $.each data.jobs, (row, job) -> listsJob(table: data.table, row: row + 1, item: job)
-
-@listsJob = (data) ->
- row = $('tbody tr', data.table)[data.row - 1]
- job = data.item
-
- element = $(row)
- ok(element.attr('class').match(job.color))
-
- element = $("td.number", row)
- equal(element.text().trim(), job.number)
-
- element = $("td.number a", row)
- equal(element.attr('href'), "/#{job.repo}/jobs/#{job.id}")
-
- element = $("td.duration", row)
- equal(element.text().trim(), job.duration)
-
- element = $("td.finished_at", row)
- equal(element.text().trim(), job.finishedAt)
-
- element = $("td:nth-child(4)", row)
- equal(element.text().trim(), job.rvm)
-
-@listsQueuedJobs = (jobs) ->
- listsItems('queuedJob', jobs)
-
-@listsQueuedJob = (data) ->
- job = data.item
- text = $($("#queue_#{data.name} li")[data.row - 1]).text()
- ok(text.match(job.repo), "#{text} should contain #{job.repo}")
- ok(text.match(job.repo), "#{text} should contain #{job.number}")
-
-@listsQueue = (data) ->
- name = data.item.name
- job = data.item.item
- text = $($("#queue_#{name} li")[data.row - 1]).text()
- ok(text.match(job.repo), "#{text} should contain #{job.repo}")
- ok(text.match(job.repo), "#{text} should contain #{job.number}")
-
-@listsItems = (type, items) ->
- $.each items, (row, item) =>
- window["lists#{$.camelize(type)}"](item: item, row: row + 1)
-
-@listsQueues = (queues) ->
- listsItems('queue', queues)
-
-@listsWorker = (data) ->
- group = $("#workers li:contains('#{data.group}')")
- element = $($('ul li', group)[data.row - 1])
- worker = data.item
-
- ok(element.text().match(worker.name))
- ok(element.text().match(worker.state))
diff --git a/assets/scripts/spec/support/mocks.coffee b/assets/scripts/spec/support/mocks.coffee
deleted file mode 100644
index d4e7b377..00000000
--- a/assets/scripts/spec/support/mocks.coffee
+++ /dev/null
@@ -1,177 +0,0 @@
-minispade.require 'ext/jquery'
-
-responseTime = 10
-
-repos = [
- { id: '1', owner: 'travis-ci', name: 'travis-core', slug: 'travis-ci/travis-core', build_ids: [1, 2], last_build_id: 1, last_build_number: 1, last_build_state: 'passed', last_build_duration: 30, last_build_started_at: '2012-07-02T00:00:00Z', last_build_finished_at: '2012-07-02T00:00:30Z', description: 'Description of travis-core', github_language: 'ruby' },
- { id: '2', owner: 'travis-ci', name: 'travis-assets', slug: 'travis-ci/travis-assets', build_ids: [3], last_build_id: 3, last_build_number: 3, last_build_state: 'failed', last_build_duration: 30, last_build_started_at: '2012-07-02T00:01:00Z', last_build_finished_at: '2012-07-01T00:01:30Z', description: 'Description of travis-assets', github_language: 'ruby'},
- { id: '3', owner: 'travis-ci', name: 'travis-hub', slug: 'travis-ci/travis-hub', build_ids: [4], last_build_id: 4, last_build_number: 4, last_build_state: null, last_build_duration: null, last_build_started_at: '2012-07-02T00:02:00Z', last_build_finished_at: null, description: 'Description of travis-hub', github_language: 'ruby' },
-]
-
-reposByName = (name) ->
- # this is hardcoded as well as user is hardcoded in app() helper,
- # please make it more flexible if needed
- if name == 'tyrion'
- [repos[0], repos[2]]
- else
- []
-
-builds = [
- { id: '1', repository_id: '1', commit_id: 1, job_ids: [1, 2, 3], number: 1, pull_request: false, config: { rvm: ['rbx', '1.9.3', 'jruby'] }, duration: 30, started_at: '2012-07-02T00:00:00Z', finished_at: '2012-07-02T00:00:30Z', state: 'passed' },
- { id: '2', repository_id: '1', commit_id: 2, job_ids: [4], number: 2, pull_request: false, config: { rvm: ['rbx'] }, duration: null, state: 'created', finished_at: null },
- { id: '3', repository_id: '2', commit_id: 3, job_ids: [5], number: 3, pull_request: false, config: { rvm: ['rbx'] }, duration: 30, started_at: '2012-07-02T00:01:00Z', finished_at: '2012-07-01T00:01:30Z', state: 'failed' },
- { id: '4', repository_id: '3', commit_id: 4, job_ids: [6], number: 4, pull_request: false, config: { rvm: ['rbx'] }, duration: null, started_at: '2012-07-02T00:02:00Z', state: 'queued', finished_at: null },
-]
-
-commits = [
- { id: '1', sha: '1234567', branch: 'master', message: 'commit message 1', author_name: 'author name', author_email: 'author@email.com', committer_name: 'committer name', committer_email: 'committer@email.com', compare_url: 'https://github.com/compare/0123456..1234567' },
- { id: '2', sha: '2345678', branch: 'feature', message: 'commit message 2', author_name: 'author name', author_email: 'author@email.com', committer_name: 'committer name', committer_email: 'committer@email.com', compare_url: 'https://github.com/compare/0123456..2345678' },
- { id: '3', sha: '3456789', branch: 'master', message: 'commit message 3', author_name: 'author name', author_email: 'author@email.com', committer_name: 'committer name', committer_email: 'committer@email.com', compare_url: 'https://github.com/compare/0123456..3456789' },
- { id: '4', sha: '4567890', branch: 'master', message: 'commit message 4', author_name: 'author name', author_email: 'author@email.com', committer_name: 'committer name', committer_email: 'committer@email.com', compare_url: 'https://github.com/compare/0123456..4567890' },
-]
-
-jobs = [
- { id: '1', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 1, commit_id: 1, log_id: 1, number: '1.1', config: { rvm: 'rbx' }, duration: 30, started_at: '2012-07-02T00:00:00Z', finished_at: '2012-07-02T00:00:30Z', state: 'passed', allow_failure: false }
- { id: '2', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 1, commit_id: 1, log_id: 2, number: '1.2', config: { rvm: '1.9.3' }, duration: 40, started_at: '2012-07-02T00:00:00Z', finished_at: '2012-07-02T00:00:40Z', state: 'failed', allow_failure: false }
- { id: '3', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 1, commit_id: 1, log_id: 3, number: '1.3', config: { rvm: 'jruby' }, duration: null, started_at: null, finished_at: null, allow_failure: true, state: null }
- { id: '4', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 2, commit_id: 2, log_id: 4, number: '2.1', config: { rvm: 'rbx' }, duration: null, started_at: null, finished_at: null, allow_failure: false, state: null }
- { id: '5', repository_id: 2, repository_slug: 'travis-ci/travis-assets', build_id: 3, commit_id: 3, log_id: 5, number: '3.1', config: { rvm: 'rbx' }, duration: 30, started_at: '2012-07-02T00:01:00Z', finished_at: '2012-07-02T00:01:30Z', state: 'failed', allow_failure: false }
- { id: '6', repository_id: 3, repository_slug: 'travis-ci/travis-hub', build_id: 4, commit_id: 4, log_id: 6, number: '4.1', config: { rvm: 'rbx' }, started_at: '2012-07-02T00:02:00Z', allow_failure: false, state: null }
- { id: '7', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 5, commit_id: 5, log_id: 7, number: '5.1', config: { rvm: 'rbx' }, duration: null, started_at: null, finished_at: null, state: 'created', queue: 'builds.linux', allow_failure: false }
- { id: '8', repository_id: 1, repository_slug: 'travis-ci/travis-core', build_id: 5, commit_id: 5, log_id: 8, number: '5.2', config: { rvm: 'rbx' }, duration: null, started_at: null, finished_at: null, state: 'created', queue: 'builds.linux', allow_failure: false }
-]
-
-artifacts = [
- { id: '1', body: 'log 1' }
- { id: '2', body: 'log 2' }
- { id: '3', body: 'log 3' }
- { id: '4', body: 'log 4' }
- { id: '5', body: 'log 5' }
- { id: '6', body: 'log 6' }
- { id: '7', body: 'log 7' }
- { id: '8', body: 'log 8' }
-]
-
-branches = [
- { branches: [builds[0], builds[1]], commits: [commits[0], commits[1]] },
- { branches: [builds[2]], commits: [commits[2]] },
- { branches: [builds[3]], commits: [commits[3]] },
-]
-
-workers = [
- { id: '1', name: 'ruby-1', host: 'worker.travis-ci.org', state: 'ready' }
- { id: '2', name: 'ruby-2', host: 'worker.travis-ci.org', state: 'ready' }
-]
-
-hooks = [
- { slug: 'travis-ci/travis-core', description: 'description of travis-core', active: true, private: false }
- { slug: 'travis-ci/travis-assets', description: 'description of travis-assets', active: false, private: false }
- { slug: 'svenfuchs/minimal', description: 'description of minimal', active: true, private: false }
-]
-
-
-$.mockjax
- url: '/repos'
- responseTime: responseTime
- response: (settings) ->
- if !settings.data
- this.responseText = { repos: repos }
- else if slug = settings.data.slug
- reposForResponse = $.select(repos, (repository) -> repository.slug == slug)
- this.responseText = { repos: reposForResponse }
- else if search = settings.data.search
- this.responseText = { repos: $.select(repos, (repository) -> repository.slug.indexOf(search) > -1).toArray() }
- else if settings.data.member
- this.responseText = { repos: reposByName(settings.data.member) }
- else
- console.log settings.data
- throw 'unknown params for repos'
-
-for repository in repos
- $.mockjax
- url: '/' + repository.slug
- responseTime: responseTime
- responseText: { repository: repository }
-
- $.mockjax
- url: '/repos'
- data: { slug: repository.slug }
- responseTime: responseTime
- responseText: { repos: [repository] }
-
- $.mockjax
- url: '/builds'
- data: { ids: repository.build_ids }
- responseTime: responseTime
- responseText: { builds: $.select(builds, (build) -> repository.build_ids.indexOf(build.id) != -1) }
-
- $.mockjax
- url: '/builds'
- data: { repository_id: repository.id, event_type: 'push' }
- responseTime: responseTime
- responseText:
- builds: (builds[id - 1] for id in repository.build_ids)
- commits: (commits[builds[id - 1].commit_id - 1] for id in repository.build_ids)
-
-for build in builds
- $.mockjax
- url: '/builds/' + build.id
- responseTime: responseTime
- responseText:
- build: build,
- commit: commits[build.commit_id - 1]
- jobs: (jobs[id - 1] for id in build.job_ids)
-
- # $.mockjax
- # url: '/jobs'
- # data: { ids: build.job_ids.join(',') }
- # responseTime: responseTime
- # responseText: { jobs: $.select(jobs, (job) -> build.job_ids.indexOf(job.id) != -1) }
-
-for job in jobs
- $.mockjax
- url: '/jobs/' + job.id
- responseTime: responseTime
- responseText:
- job: job,
- commit: commits[job.commit_id - 1]
-
-$.mockjax
- url: '/jobs'
- responseTime: responseTime
- responseText:
- jobs: $.select(jobs, (job) -> job.state == 'created')
-
-$.mockjax
- url: '/builds*'
- responseTime: responseTime
- response: (settings) ->
- if match = settings.url.match('/builds\\?(ids.*)')
- ids = match[1].split(new RegExp('&?ids\\[\\]=')).filter (str) -> str != ''
- this.responseText = { builds: $.select(builds, (build) -> ids.contains(build.id) ) }
- else
- throw "can't handle mocked request"
-
-for data in branches
- $.mockjax
- url: '/branches'
- data: { repository_id: data.branches[0].repository_id }
- responseTime: responseTime
- responseText: data
-
-for artifact in artifacts
- $.mockjax
- url: '/artifacts/' + artifact.id
- responseTime: responseTime
- responseText:
- artifact: artifact
-
-$.mockjax
- url: '/workers'
- responseTime: responseTime
- responseText: { workers: workers }
-
-$.mockjax
- url: '/profile/hooks'
- responseTime: responseTime
- responseText: { hooks: hooks }
diff --git a/assets/scripts/spec/unit/build_spec.coffee b/assets/scripts/spec/unit/build_spec.coffee
deleted file mode 100644
index c6d3c3fd..00000000
--- a/assets/scripts/spec/unit/build_spec.coffee
+++ /dev/null
@@ -1,26 +0,0 @@
-record = null
-
-module "Travis.Build",
- setup: ->
- teardown: ->
- Travis.Build.resetData()
- Travis.Job.resetData()
-
-test 'it takes into account all the jobs when getting config keys', ->
- buildConfig = { rvm: ['1.9.3', '2.0.0'] }
- Travis.Build.load [{ id: '1', job_ids: ['1', '2', '3'], config: buildConfig }]
-
- Travis.Job.load [{ id: '1', config: { rvm: '1.9.3', env: 'FOO=foo' } }]
- Travis.Job.load [{ id: '2', config: { rvm: '2.0.0', gemfile: 'Gemfile.1' } }]
- Travis.Job.load [{ id: '3', config: { rvm: '1.9.3', jdk: 'OpenJDK' } }]
-
- build = null
- rawConfigKeys = null
- configKeys = null
- Ember.run ->
- build = Travis.Build.find '1'
- rawConfigKeys = build.get('rawConfigKeys')
- configKeys = build.get('configKeys')
-
- deepEqual(rawConfigKeys, ['rvm', 'env', 'gemfile', 'jdk' ])
- deepEqual(configKeys, [ 'Job', 'Duration', 'Finished', 'Ruby', 'ENV', 'Gemfile', 'JDK' ])
diff --git a/assets/scripts/spec/unit/commit_spec.coffee b/assets/scripts/spec/unit/commit_spec.coffee
deleted file mode 100644
index 799b6ca7..00000000
--- a/assets/scripts/spec/unit/commit_spec.coffee
+++ /dev/null
@@ -1,39 +0,0 @@
-record = null
-
-module "Travis.Commit",
- setup: ->
- teardown: ->
- Travis.Commit.resetData()
-
-test 'it recognizes when author is committer', ->
- Travis.Commit.load [
- {
- id: 1,
- committer_name: 'Jimmy',
- committer_email: 'jimmy@example.com',
- author_name: 'Jimmy',
- author_email: 'jimmy@example.com'
- }
- ]
-
- Ember.run ->
- record = Travis.Commit.find 1
-
- console.log(record.get('authorName'))
- equal(true, record.get('authorIsCommitter'))
-
-test 'it recognizes when author is not committer', ->
- Travis.Commit.load [
- {
- id: 1,
- committer_name: 'Jimmy',
- committer_email: 'jimmy@example.com',
- author_name: 'John',
- author_email: 'john@example.com'
- }
- ]
-
- Ember.run ->
- record = Travis.Commit.find 1
- console.log(record.get('authorName'))
- equal(false, record.get('authorIsCommitter'))
diff --git a/assets/scripts/spec/unit/helpers_spec.coffee b/assets/scripts/spec/unit/helpers_spec.coffee
deleted file mode 100644
index 45781f20..00000000
--- a/assets/scripts/spec/unit/helpers_spec.coffee
+++ /dev/null
@@ -1,74 +0,0 @@
-module "Travis.Helpers.githubify"
-
-test 'replaces #Num with github issues link', ->
- message = 'Solved #11hey'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Solved #11hey'
-
- equal(result, expected, "#num should be converted to a link")
-
-test 'replaces User#Num with github issues link to forked repo', ->
- message = 'Solved test#11hey'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Solved test#11hey'
-
- equal(result, expected, "user#num should be converted to a link")
-
-test 'replaces User/Project#Num with github issues link to another repo', ->
- message = 'Solved test_1-a2/test-a_11#11hey'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Solved test_1-a2/test-a_11#11hey'
-
- equal(result, expected, "owner/repo#num should be converted to a link")
-
-test 'replaces gh-Num with github issues link', ->
- message = 'Solved gh-22hey'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Solved gh-22hey'
-
- equal(result, expected, "gh-Num should be converted to a link")
-
-test 'replaces multiple references with github issues links', ->
- message = 'Try #1 and test#2 and test/testing#3'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Try #1 and '
- expected += 'test#2 and '
- expected += 'test/testing#3'
-
- equal(result, expected, "references should be converted to links")
-
-test 'replaces multiple references with github issues links', ->
- message = 'Try #1 and test#2 and test/testing#3'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'Try #1 and '
- expected += 'test#2 and '
- expected += 'test/testing#3'
-
- equal(result, expected, "references should be converted to links")
-
-test 'replaces @user with github user link', ->
- message = 'It is for you @tender_love1'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'It is for you @tender_love1'
-
- equal(result, expected, "@user should be converted to a link")
-
-test 'does not replace @user if it is a sign-off', ->
- message = 'Signed-off-by: GitHub User '
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
-
- equal(result, message, "@user should not be converted to a link if it matches an email")
-
-test 'replaces one commit reference with github commit link', ->
- message = 'See travis-ci/travis-core@732fe00'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'See travis-ci/travis-core@732fe00'
-
- equal(result, expected, "Commit reference should be converted to a link")
-
-test 'replaces multiple commit references with github commit links', ->
- message = 'See travis-ci/travis-core@732fe00 and travis-ci/travis-web@3b6aa17'
- result = Travis.Helpers.githubify(message, 'travis-ci', 'travis-web')
- expected = 'See travis-ci/travis-core@732fe00 and travis-ci/travis-web@3b6aa17'
-
- equal(result, expected, "Commit references should be converted to links")
diff --git a/assets/scripts/spec/unit/job_spec.coffee b/assets/scripts/spec/unit/job_spec.coffee
deleted file mode 100644
index a42409b6..00000000
--- a/assets/scripts/spec/unit/job_spec.coffee
+++ /dev/null
@@ -1,82 +0,0 @@
-record = null
-
-module "Travis.Job",
- setup: ->
- teardown: ->
- Travis.Job.resetData()
- Travis.Build.resetData()
-
-test 'configKeys takes into account the keys of other jobs', ->
- buildConfig = { rvm: ['1.9.3', '2.0.0'] }
- Travis.Build.load [{ id: '1', job_ids: ['1', '2', '3'], config: buildConfig }]
-
- Travis.Job.load [{ id: '1', config: { rvm: '1.9.3', env: 'FOO=foo' }, build_id: '1' }]
- Travis.Job.load [{ id: '2', config: { rvm: '2.0.0', gemfile: 'Gemfile.1' }, build_id: '1' }]
- Travis.Job.load [{ id: '3', config: { rvm: '1.9.3', jdk: 'OpenJDK' }, build_id: '1' }]
-
- configValues1 = null
- configValues2 = null
- configValues3 = null
- job1 = null
- job2 = null
- job3 = null
-
- Ember.run ->
- job1 = Travis.Job.find('1')
- job2 = Travis.Job.find('2')
- job3 = Travis.Job.find('3')
-
- wait().then ->
- Ember.run ->
- configValues1 = job1.get('configValues')
- configValues2 = job2.get('configValues')
- configValues3 = job3.get('configValues')
-
- deepEqual( configValues1, [ '1.9.3', 'FOO=foo', undefined, undefined ] )
- deepEqual( configValues2, [ '2.0.0', undefined, 'Gemfile.1', undefined ] )
- deepEqual( configValues3, [ '1.9.3', undefined, undefined, 'OpenJDK' ] )
-
-test 'returns config values for all keys available on build with different number of config keys in sibling jobs', ->
- buildAttrs =
- id: 1
- job_ids: [1, 2]
- config:
- jdk: ['oraclejdk7']
- rvm: ['jruby-head']
-
- Travis.Build.load [buildAttrs]
-
- jobAttrs =
- id: 1
- build_id: 1
- config:
- jdk: 'oraclejdk7'
- rvm: 'jruby-head'
-
- Travis.Job.load [jobAttrs]
-
- jobAttrs =
- id: 2
- build_id: 1
- config:
- jdk: null
- rvm: 'jruby-head'
-
- Travis.Job.load [jobAttrs]
-
- configValues1 = null
- configValues2 = null
- job1 = null
- job2 = null
-
- Ember.run ->
- job1 = Travis.Job.find(1)
- job2 = Travis.Job.find(2)
-
- wait().then ->
- Ember.run ->
- configValues1 = job1.get('configValues')
- configValues2 = job2.get('configValues')
-
- deepEqual( configValues1, ['oraclejdk7', 'jruby-head'] )
- deepEqual( configValues2, [undefined, 'jruby-head'] )
diff --git a/assets/scripts/spec/unit/limited_array_spec.coffee b/assets/scripts/spec/unit/limited_array_spec.coffee
deleted file mode 100644
index 8c482234..00000000
--- a/assets/scripts/spec/unit/limited_array_spec.coffee
+++ /dev/null
@@ -1,48 +0,0 @@
-module 'Travis.LimitedArray'
-
-test 'limits given content', ->
- content = [1, 2, 3]
- array = Travis.LimitedArray.create content: content, limit: 2
- equal( array.get('length'), 2 )
- deepEqual( array.toArray(), [1, 2] )
-
-test 'inserts content at the right place when unshifting', ->
- content = [1, 2, 3]
- array = Travis.LimitedArray.create content: content, limit: 2
- content.unshiftObject 0
- equal( array.get('length'), 2 )
- deepEqual( array.toArray(), [0, 1] )
-
-test 'does not insert content when it\'s inserted not in the limited range', ->
- content = [1, 2, 3]
- array = Travis.LimitedArray.create content: content, limit: 2
- content.pushObject 0
- equal( array.get('length'), 2 )
- deepEqual( array.toArray(), [1, 2] )
-
-test 'properly removes items', ->
- content = [1, 2, 3]
- array = Travis.LimitedArray.create content: content, limit: 2
- content.shiftObject()
-
- equal( array.get('length'), 2 )
- deepEqual( array.toArray(), [2, 3] )
-
- content.shiftObject()
-
- equal( array.get('length'), 1 )
- deepEqual( array.toArray(), [3] )
-
- content.shiftObject()
-
- equal( array.get('length'), 0)
-
-test 'allows to expand array to show all items', ->
- content = [1, 2, 3]
- array = Travis.LimitedArray.create content: content, limit: 2
-
- Ember.run ->
- array.showAll()
-
- equal( array.get('length'), 3)
- deepEqual( array.toArray(), [1, 2, 3])
diff --git a/assets/scripts/spec/unit/line_selector_spec.coffee b/assets/scripts/spec/unit/line_selector_spec.coffee
deleted file mode 100644
index 93a5a7c3..00000000
--- a/assets/scripts/spec/unit/line_selector_spec.coffee
+++ /dev/null
@@ -1,108 +0,0 @@
-fakeLocation = {
- getHash: ->
- @hash || ''
- setHash: (hash) ->
- @hash = hash
-}
-
-fakeScroll =
- tryScroll: sinon.spy()
-fakeFolder = {}
-
-element = jQuery('')
-
-module "Travis.LinesSelector",
- setup: ->
- fakeFolder.unfold = sinon.spy()
- fakeLocation.hash = ''
- jQuery('body').append(element)
-
- teardown: ->
- element.remove()
-
-test "defaults to no line selected", ->
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- equal($('#fakeLog p.highlight').length, 0)
-
-test "defaults to a single line selected", ->
- fakeLocation.hash = '#L2'
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- equal($('#fakeLog p.highlight').length, 1)
- equal($('#fakeLog p:nth-child(2)').hasClass('highlight'), true)
-
-test "defaults to multiple lines selected", ->
- fakeLocation.hash = '#L2-L3'
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- equal($('#fakeLog p.highlight').length, 2)
- equal($('#fakeLog p:nth-child(2)').hasClass('highlight'), true)
- equal($('#fakeLog p:nth-child(3)').hasClass('highlight'), true)
-
-test "selects a single line", ->
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- equal($('#fakeLog p.highlight').length, 0)
- $('#fakeLog p:first a').click()
- equal($('#fakeLog p.highlight').length, 1)
- equal($('#fakeLog p:nth-child(1)').hasClass('highlight'), true)
- equal('#L1', fakeLocation.hash)
-
-test "selects multiple lines", ->
- fakeLocation.hash = '#L2'
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- equal($('#fakeLog p.highlight').length, 1)
-
- event = jQuery.Event('click')
- event.shiftKey = true
- $('#fakeLog p:first a').trigger(event)
-
- equal($('#fakeLog p.highlight').length, 2)
- equal($('#fakeLog p:nth-child(1)').hasClass('highlight'), true)
- equal($('#fakeLog p:nth-child(2)').hasClass('highlight'), true)
- equal('#L1-L2', fakeLocation.hash)
-
-test "uses the last selected line as second selection line", ->
- selector = null
- Ember.run ->
- selector = new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- $('#fakeLog p:last a').click()
- equal($('#fakeLog p.highlight').length, 1)
- equal(3, selector.last_selected_line)
-
- event = jQuery.Event('click')
- event.shiftKey = true
- $('#fakeLog p:first a').trigger(event)
-
- equal($('#fakeLog p.highlight').length, 3)
- equal($('#fakeLog p:nth-child(1)').hasClass('highlight'), true)
- equal($('#fakeLog p:nth-child(2)').hasClass('highlight'), true)
- equal($('#fakeLog p:nth-child(3)').hasClass('highlight'), true)
- equal('#L1-L3', fakeLocation.hash)
- equal(1, selector.last_selected_line)
-
-test "unfolds the first and last selected lines", ->
- fakeLocation.hash = '#L1-L3'
- Ember.run ->
- new Travis.LinesSelector(element, fakeScroll, fakeFolder, fakeLocation)
-
- wait().then ->
- ok(fakeFolder.unfold.calledTwice, 'the first and last lines have been unfolded')
diff --git a/assets/scripts/spec/unit/log_chunks_spec.coffee b/assets/scripts/spec/unit/log_chunks_spec.coffee
deleted file mode 100644
index c643cd69..00000000
--- a/assets/scripts/spec/unit/log_chunks_spec.coffee
+++ /dev/null
@@ -1,75 +0,0 @@
-module "Travis.LogChunks"
-
-test "it doesn't trigger downloading missing parts if they come in timely fashion", ->
- expect(2)
- stop()
-
- callback = -> ok false, 'callback should not be called'
-
- chunks = Travis.LogChunks.create(timeout: 20, missingPartsCallback: callback, content: [])
-
- Ember.run.later (-> chunks.pushObject(number: 1, final: false)), 10
- Ember.run.later (-> chunks.pushObject(number: 2, final: false)), 20
- setTimeout ->
- ok true
- Ember.run ->
- chunks.pushObject(number: 3, final: true)
- start()
-
- equal(chunks.get('finalized'), true, 'log should be finalized')
- , 30
-
-test "it triggers downloading missing parts if there is a missing part, even though final part arrived", ->
- expect(3)
- stop()
-
- callback = (missingNumbers) ->
- deepEqual(missingNumbers, [2, 3], 'callback should be called with missing numbers')
-
- chunks = Travis.LogChunks.create(timeout: 20, missingPartsCallback: callback, content: [])
-
- Ember.run -> chunks.pushObject(number: 1, final: false)
- setTimeout ->
- Ember.run -> chunks.pushObject(number: 4, final: true)
-
- ok(!chunks.get('finalized'), "log shouldn't be finalized")
- , 10
-
- setTimeout ->
- Ember.run -> chunks.destroy() # destroy object to not fire more callbacks
- start()
- , 60
-
-test "it triggers downloading next parts if there is no final part", ->
- expect(4)
- stop()
-
- callback = (missingNumbers, after) ->
- deepEqual(missingNumbers, [2], 'callback should be called with missing numbers')
- equal(after, 3, 'callback should be called with "after" argument')
-
- chunks = Travis.LogChunks.create(timeout: 15, missingPartsCallback: callback, content: [])
-
- Ember.run ->
- chunks.pushObject(number: 1, final: false)
- chunks.pushObject(number: 3, final: false)
-
- setTimeout ->
- Ember.run -> chunks.destroy() # destroy object to not fire more callbacks
- start()
- , 35
-
-test "it triggers downloading all available parts if there is no parts yet", ->
- expect(2)
- stop()
-
- callback = (missingNumbers, after) ->
- ok(!missingNumbers, 'there should be no missing parts')
- ok(!after, 'after should not be specified')
-
- chunks = Travis.LogChunks.create(timeout: 15, missingPartsCallback: callback, content: [])
-
- setTimeout ->
- Ember.run -> chunks.destroy() # destroy object to not fire more callbacks
- start()
- , 25
diff --git a/assets/scripts/spec/unit/log_folder_spec.coffee b/assets/scripts/spec/unit/log_folder_spec.coffee
deleted file mode 100644
index d683c45b..00000000
--- a/assets/scripts/spec/unit/log_folder_spec.coffee
+++ /dev/null
@@ -1,54 +0,0 @@
-element = jQuery('
- first line
-
- second line
- third line
-
- fourth line
-')
-logFolder = null
-
-module "Travis.LogFolder",
- setup: ->
- jQuery('body').append(element)
- logFolder = new Travis.LogFolder jQuery('#fakeLog')
-
- teardown: ->
- element.remove()
-
-test "displays the fold", ->
- equal($('#fakeLog .fold.open').length, 0)
- $('#fakeLog .fold p:first').click()
- equal($('#fakeLog .fold.open').length, 1)
-
-test "hides the fold", ->
- $('#fakeLog .fold').addClass('open')
- $('#fakeLog .fold p:first').click()
- equal($('#fakeLog .fold.open').length, 0)
-
-test "binds new elements", ->
- new_element = jQuery('
- fifth line
- ')
- jQuery('#fakeLog').append new_element
-
- equal($('#fakeLog .fold.open').length, 0)
- $('#fakeLog .fold p:first-child').click()
- equal($('#fakeLog .fold.open').length, 2)
-
-test "fold", ->
- fold = jQuery('#fakeLog .fold')
- line = fold.find('p:first')
- fold.addClass('open')
-
- equal(fold.hasClass('open'), true)
- logFolder.fold(line)
- equal(fold.hasClass('open'), false)
-
-test "unfold", ->
- fold = jQuery('#fakeLog .fold')
- line = fold.find('p:first')
-
- equal(fold.hasClass('open'), false)
- logFolder.unfold(line)
- equal(fold.hasClass('open'), true)
diff --git a/assets/scripts/spec/unit/model_spec.coffee b/assets/scripts/spec/unit/model_spec.coffee
deleted file mode 100644
index b14b42aa..00000000
--- a/assets/scripts/spec/unit/model_spec.coffee
+++ /dev/null
@@ -1,122 +0,0 @@
-fullPostHash = null
-Post = null
-Author = null
-Comment = null
-
-module "Travis.Model",
- setup: ->
- fullPostHash = {
- id: '1',
- title: 'foo',
- published_at: 'today',
-
- author_id: '1',
- comment_ids: ['1', '2']
- }
-
- Author = Travis.Model.extend(
- name: Ember.attr('string')
- )
- Author.toString = -> return 'Author'
-
- Comment = Travis.Model.extend(
- body: Ember.attr('string')
- )
- Comment.toString = -> return 'Comment'
-
- Post = Travis.Model.extend(
- title: Ember.attr('string'),
- publishedAt: Ember.attr('string'),
-
- author: Ember.belongsTo(Author, { key: 'author_id' }),
- comments: Ember.hasMany(Comment, { key: 'comment_ids' })
- )
- Post.toString = -> return 'Post'
-
- Comment.adapter = Ember.FixtureAdapter.create()
- Author.adapter = Ember.FixtureAdapter.create()
- Post.adapter = Ember.FixtureAdapter.create()
-
- Author.load([
- { id: '1', name: 'drogus' }
- ])
- Comment.load([
- { id: '1', body: 'comment 1' },
- { id: '2', body: 'comment 2' }
- ])
-test "new data can be merged into the record", ->
- delete fullPostHash.title
- delete fullPostHash.author_id
- delete fullPostHash.comment_ids
- post = Post.findFromCacheOrLoad(fullPostHash)
-
- post.loadTheRest = (->)
-
- equal(post.get('title'), null, 'title should be null')
- equal(post.get('comments.length'), 0, 'comments should be empty')
- equal(post.get('author'), null, 'author should be null')
-
- Ember.run -> post.merge(title: 'teh title', comment_ids: ['1', '2'], author_id: '1')
-
- author = null
- Ember.run -> author = Author.find('1').get('name')
- title = null
- Ember.run -> title = post.get('title')
- console.log('title', title)
-
- equal(post.get('title'), 'teh title', 'title should be updated')
- equal(post.get('comments.length'), 2, 'comments should be updated and have length of 2')
- equal(post.get('comments.firstObject.body'), 'comment 1', 'comment should be loaded')
- equal(author, 'drogus', 'author should be loaded')
- equal(post.get('publishedAt'), 'today', 'existing attributes are not overwritten')
-
-module "Travis.Model.loadOrMerge",
- setup: ->
- Post = Travis.Model.extend(
- title: Ember.attr('string')
- )
- Post.toString = -> return 'Post'
-
-test "it doesn't update record if skipIfExists is passed and record is already in store", ->
- Post.load([{id: '1', title: 'foo'}])
-
- post = Post.find('1')
- equal(post.get('title'), 'foo', 'precondition - title of the post should be set')
-
- Ember.run ->
- Travis.loadOrMerge(Post, { id: '1', title: 'bar' }, { skipIfExists: true })
-
- equal(post.get('title'), 'foo', 'title should stay unchanged')
-
-test "it updates record if record is already in the store", ->
- Post.load([{id: '1', title: 'foo'}])
-
- post = Post.find('1')
- equal(post.get('title'), 'foo', 'precondition - title of the post should be set')
-
- Ember.run ->
- Travis.loadOrMerge(Post, { id: '1', title: 'bar' })
-
- equal(post.get('title'), 'bar', 'title should be updated')
-
-test "record is not instantiated by default", ->
- reference = null
- Ember.run ->
- reference = Travis.loadOrMerge(Post, { id: '1', title: 'bar' })
-
- equal(reference.id, '1', 'reference should be created')
- ok(Ember.isNone(reference.record), 'record should not be created')
-
- post = null
- Ember.run -> post = Post.find('1')
- equal(post.get('title'), 'bar', 'record should be loaded from cached data')
- equal(reference.record, post, 'record should be created')
-
-test "data is merged to the existing data cache", ->
- Post.load([{id: '1', title: 'foo'}])
-
- Ember.run ->
- Travis.loadOrMerge(Post, { id: '1', title: 'bar' })
-
- post = Post.find('1')
- equal(post.get('title'), 'bar', 'title should be updated')
diff --git a/assets/scripts/spec/unit/tailing_spec.coffee b/assets/scripts/spec/unit/tailing_spec.coffee
deleted file mode 100644
index 3ccb613f..00000000
--- a/assets/scripts/spec/unit/tailing_spec.coffee
+++ /dev/null
@@ -1,89 +0,0 @@
-fakeWindow =
- scroll: sinon.spy()
- scrollTop: sinon.stub().returns(0)
- height: sinon.stub().returns(40)
-element = jQuery('')
-log = jQuery('')
-tail = new Travis.Tailing(fakeWindow, '#specTail', '#specLog')
-tail.tail = -> element
-tail.log = -> log
-
-module "Travis.Tailing",
- setup: ->
- jQuery('body').append(element)
- jQuery('body').append(log)
-
- teardown: ->
- element.remove()
- log.remove()
- tail.stop()
-
-#test "toggle", ->
-# equal(element.hasClass('active'), false)
-# tail.toggle()
-# equal(element.hasClass('active'), true)
-# tail.toggle()
-# stop()
-#
-# Ember.run.later ->
-# start()
-# equal(element.hasClass('active'), false)
-# , 300
-#
-#test "active", ->
-# equal(tail.active(), false)
-# element.addClass('active')
-# equal(tail.active(), true)
-#
-#test "autoscroll when inactive", ->
-# tail.scrollTo = sinon.spy()
-#
-# equal(tail.active(), false)
-# equal(tail.autoScroll(), false)
-# equal(tail.scrollTo.called, false)
-#
-#test "autoscroll", ->
-# element.addClass('active')
-# log.offset = -> {top: 1}
-# log.outerHeight = -> 1
-#
-# equal(tail.active(), true)
-# equal(tail.autoScroll(), true)
-# equal(fakeWindow.scrollTop.calledWith(2), true)
-#
-#test "autoscroll when we're at the bottom", ->
-# element.addClass('active')
-# log.offset = -> {top: 0}
-# log.outerHeight = -> 0
-#
-# equal(tail.active(), true)
-# equal(tail.autoScroll(), false)
-# equal(fakeWindow.scrollTop.calledWith(0), false)
-#
-#test 'should stop scrolling if the position changed', ->
-# element.addClass('active')
-# tail.position = 100
-# tail.onScroll()
-# equal(element.hasClass('active'), false)
-#
-#test 'positionButton adds the scrolling class', ->
-# log.offset = -> {top: -1}
-#
-# tail.positionButton()
-# equal(element.hasClass('scrolling'), true)
-# equal(element.hasClass('bottom'), false)
-#
-#test 'positionButton removes the scrolling class', ->
-# log.offset = -> {top: 1}
-# tail.positionButton()
-# equal(element.hasClass('scrolling'), false)
-# equal(element.hasClass('bottom'), false)
-#
-#test 'positionButton sets the button as bottom', ->
-# log.offset = -> {top: -100}
-# log.height = -> 50
-# tail.height = -> 1
-#
-# tail.positionButton()
-# equal(element.hasClass('scrolling'), false)
-# equal(element.hasClass('bottom'), true)
diff --git a/assets/scripts/spec/unit/user_spec.coffee b/assets/scripts/spec/unit/user_spec.coffee
deleted file mode 100644
index 81df96dc..00000000
--- a/assets/scripts/spec/unit/user_spec.coffee
+++ /dev/null
@@ -1,46 +0,0 @@
-record = null
-
-module "Travis.User",
- setup: ->
- teardown: ->
- Travis.User.resetData()
-
-test '', ->
- # TODO: we should not need to mock entire user response
- # just for user creation. It happens, because whenever
- # a user is created we try to get fresh data
- userData = {
- id: 1
- email: 'tyrion@example.org'
- login: 'tyrion'
- token: 'abcdef'
- created_at: "2011-05-10T15:43:59Z"
- gravatar_id: "582034b63279abeaa8e76acf12f5ee30"
- is_syncing: false
- name: "Tyrion"
- synced_at: "2013-12-09T09:41:47Z"
- }
- $.mockjax
- url: '/users/1'
- responseTime: 10
- responseText:
- user: userData
-
-
- Travis.User.load [{ id: '1', login: 'test@travis-ci.org' }]
- user = null
- pushPermissions = null
- adminPermissions = null
-
- Ember.run ->
- user = Travis.User.find(1)
- user.set '_rawPermissions',
- then: (func) ->
- func(permissions: [1], admin: [1], pull: [2], push: [3])
-
- pushPermissions = user.get('pushPermissions')
- adminPermissions = user.get('adminPermissions')
-
- wait().then ->
- deepEqual(adminPermissions.toArray(), [1])
- deepEqual(pushPermissions.toArray(), [3])
diff --git a/assets/scripts/spec/vendor/jquery.mockjax.js b/assets/scripts/spec/vendor/jquery.mockjax.js
deleted file mode 100644
index e487b2db..00000000
--- a/assets/scripts/spec/vendor/jquery.mockjax.js
+++ /dev/null
@@ -1,523 +0,0 @@
-/*!
- * MockJax - jQuery Plugin to Mock Ajax requests
- *
- * Version: 1.5.1
- * Released:
- * Home: http://github.com/appendto/jquery-mockjax
- * Author: Jonathan Sharp (http://jdsharp.com)
- * License: MIT,GPL
- *
- * Copyright (c) 2011 appendTo LLC.
- * Dual licensed under the MIT or GPL licenses.
- * http://appendto.com/open-source-licenses
- */
-(function($) {
- var _ajax = $.ajax,
- mockHandlers = [],
- CALLBACK_REGEX = /=\?(&|$)/,
- jsc = (new Date()).getTime();
-
-
- // Parse the given XML string.
- function parseXML(xml) {
- if ( window['DOMParser'] == undefined && window.ActiveXObject ) {
- DOMParser = function() { };
- DOMParser.prototype.parseFromString = function( xmlString ) {
- var doc = new ActiveXObject('Microsoft.XMLDOM');
- doc.async = 'false';
- doc.loadXML( xmlString );
- return doc;
- };
- }
-
- try {
- var xmlDoc = ( new DOMParser() ).parseFromString( xml, 'text/xml' );
- if ( $.isXMLDoc( xmlDoc ) ) {
- var err = $('parsererror', xmlDoc);
- if ( err.length == 1 ) {
- throw('Error: ' + $(xmlDoc).text() );
- }
- } else {
- throw('Unable to parse XML');
- }
- } catch( e ) {
- var msg = ( e.name == undefined ? e : e.name + ': ' + e.message );
- $(document).trigger('xmlParseError', [ msg ]);
- return undefined;
- }
- return xmlDoc;
- }
-
- // Trigger a jQuery event
- function trigger(s, type, args) {
- (s.context ? $(s.context) : $.event).trigger(type, args);
- }
-
- // Check if the data field on the mock handler and the request match. This
- // can be used to restrict a mock handler to being used only when a certain
- // set of data is passed to it.
- function isMockDataEqual( mock, live ) {
- var identical = false;
- // Test for situations where the data is a querystring (not an object)
- if (typeof live === 'string') {
- // Querystring may be a regex
- return $.isFunction( mock.test ) ? mock.test(live) : mock == live;
- }
- $.each(mock, function(k, v) {
- if ( live[k] === undefined ) {
- identical = false;
- return identical;
- } else {
- identical = true;
- if ( typeof live[k] == 'object' ) {
- return isMockDataEqual(mock[k], live[k]);
- } else {
- if ( $.isFunction( mock[k].test ) ) {
- identical = mock[k].test(live[k]);
- } else {
- identical = ( mock[k] == live[k] );
- }
- return identical;
- }
- }
- });
-
- return identical;
- }
-
- // Check the given handler should mock the given request
- function getMockForRequest( handler, requestSettings ) {
- // If the mock was registered with a function, let the function decide if we
- // want to mock this request
- if ( $.isFunction(handler) ) {
- return handler( requestSettings );
- }
-
- // Inspect the URL of the request and check if the mock handler's url
- // matches the url for this ajax request
- if ( $.isFunction(handler.url.test) ) {
- // The user provided a regex for the url, test it
- if ( !handler.url.test( requestSettings.url ) ) {
- return null;
- }
- } else {
- // Look for a simple wildcard '*' or a direct URL match
- var star = handler.url.indexOf('*');
- if (handler.url !== requestSettings.url && star === -1 ||
- !new RegExp(handler.url.replace(/[-[\]{}()+?.,\\^$|#\s]/g, "\\$&").replace('*', '.+')).test(requestSettings.url)) {
- return null;
- }
- }
-
- // Inspect the data submitted in the request (either POST body or GET query string)
- if ( handler.data && requestSettings.data ) {
- if ( !isMockDataEqual(handler.data, requestSettings.data) ) {
- // They're not identical, do not mock this request
- return null;
- }
- }
- // Inspect the request type
- if ( handler && handler.type &&
- handler.type.toLowerCase() != requestSettings.type.toLowerCase() ) {
- // The request type doesn't match (GET vs. POST)
- return null;
- }
-
- return handler;
- }
-
- // If logging is enabled, log the mock to the console
- function logMock( mockHandler, requestSettings ) {
- var c = $.extend({}, $.mockjaxSettings, mockHandler);
- if ( c.log && $.isFunction(c.log) ) {
- c.log('MOCK ' + requestSettings.type.toUpperCase() + ': ' + requestSettings.url, $.extend({}, requestSettings));
- }
- }
-
- // Process the xhr objects send operation
- function _xhrSend(mockHandler, requestSettings, origSettings) {
-
- // This is a substitute for < 1.4 which lacks $.proxy
- var process = (function(that) {
- return function() {
- return (function() {
- // The request has returned
- this.status = mockHandler.status;
- this.statusText = mockHandler.statusText;
- this.readyState = 4;
-
- // We have an executable function, call it to give
- // the mock handler a chance to update it's data
- if ( $.isFunction(mockHandler.response) ) {
- mockHandler.response(origSettings);
- }
- // Copy over our mock to our xhr object before passing control back to
- // jQuery's onreadystatechange callback
- if ( requestSettings.dataType == 'json' && ( typeof mockHandler.responseText == 'object' ) ) {
- this.responseText = JSON.stringify(mockHandler.responseText);
- } else if ( requestSettings.dataType == 'xml' ) {
- if ( typeof mockHandler.responseXML == 'string' ) {
- this.responseXML = parseXML(mockHandler.responseXML);
- } else {
- this.responseXML = mockHandler.responseXML;
- }
- } else {
- this.responseText = mockHandler.responseText;
- }
- if( typeof mockHandler.status == 'number' || typeof mockHandler.status == 'string' ) {
- this.status = mockHandler.status;
- }
- if( typeof mockHandler.statusText === "string") {
- this.statusText = mockHandler.statusText;
- }
- // jQuery < 1.4 doesn't have onreadystate change for xhr
- if ( $.isFunction(this.onreadystatechange) ) {
- if( mockHandler.isTimeout) {
- this.status = -1;
- }
- this.onreadystatechange( mockHandler.isTimeout ? 'timeout' : undefined );
- } else if ( mockHandler.isTimeout ) {
- // Fix for 1.3.2 timeout to keep success from firing.
- this.status = -1;
- }
- }).apply(that);
- };
- })(this);
-
- if ( mockHandler.proxy ) {
- // We're proxying this request and loading in an external file instead
- _ajax({
- global: false,
- url: mockHandler.proxy,
- type: mockHandler.proxyType,
- data: mockHandler.data,
- dataType: requestSettings.dataType === "script" ? "text/plain" : requestSettings.dataType,
- complete: function(xhr, txt) {
- mockHandler.responseXML = xhr.responseXML;
- mockHandler.responseText = xhr.responseText;
- mockHandler.status = xhr.status;
- mockHandler.statusText = xhr.statusText;
- this.responseTimer = setTimeout(process, mockHandler.responseTime || 0);
- }
- });
- } else {
- // type == 'POST' || 'GET' || 'DELETE'
- if ( requestSettings.async === false ) {
- // TODO: Blocking delay
- process();
- } else {
- this.responseTimer = setTimeout(process, mockHandler.responseTime || 50);
- }
- }
- }
-
- // Construct a mocked XHR Object
- function xhr(mockHandler, requestSettings, origSettings, origHandler) {
- // Extend with our default mockjax settings
- mockHandler = $.extend({}, $.mockjaxSettings, mockHandler);
-
- if (typeof mockHandler.headers === 'undefined') {
- mockHandler.headers = {};
- }
- if ( mockHandler.contentType ) {
- mockHandler.headers['content-type'] = mockHandler.contentType;
- }
-
- return {
- status: mockHandler.status,
- statusText: mockHandler.statusText,
- readyState: 1,
- open: function() { },
- send: function() {
- origHandler.fired = true;
- _xhrSend.call(this, mockHandler, requestSettings, origSettings);
- },
- abort: function() {
- clearTimeout(this.responseTimer);
- },
- setRequestHeader: function(header, value) {
- mockHandler.headers[header] = value;
- },
- getResponseHeader: function(header) {
- // 'Last-modified', 'Etag', 'content-type' are all checked by jQuery
- if ( mockHandler.headers && mockHandler.headers[header] ) {
- // Return arbitrary headers
- return mockHandler.headers[header];
- } else if ( header.toLowerCase() == 'last-modified' ) {
- return mockHandler.lastModified || (new Date()).toString();
- } else if ( header.toLowerCase() == 'etag' ) {
- return mockHandler.etag || '';
- } else if ( header.toLowerCase() == 'content-type' ) {
- return mockHandler.contentType || 'text/plain';
- }
- },
- getAllResponseHeaders: function() {
- var headers = '';
- $.each(mockHandler.headers, function(k, v) {
- headers += k + ': ' + v + "\n";
- });
- return headers;
- }
- };
- }
-
- // Process a JSONP mock request.
- function processJsonpMock( requestSettings, mockHandler, origSettings ) {
- // Handle JSONP Parameter Callbacks, we need to replicate some of the jQuery core here
- // because there isn't an easy hook for the cross domain script tag of jsonp
-
- processJsonpUrl( requestSettings );
-
- requestSettings.dataType = "json";
- if(requestSettings.data && CALLBACK_REGEX.test(requestSettings.data) || CALLBACK_REGEX.test(requestSettings.url)) {
- createJsonpCallback(requestSettings, mockHandler);
-
- // We need to make sure
- // that a JSONP style response is executed properly
-
- var rurl = /^(\w+:)?\/\/([^\/?#]+)/,
- parts = rurl.exec( requestSettings.url ),
- remote = parts && (parts[1] && parts[1] !== location.protocol || parts[2] !== location.host);
-
- requestSettings.dataType = "script";
- if(requestSettings.type.toUpperCase() === "GET" && remote ) {
- var newMockReturn = processJsonpRequest( requestSettings, mockHandler, origSettings );
-
- // Check if we are supposed to return a Deferred back to the mock call, or just
- // signal success
- if(newMockReturn) {
- return newMockReturn;
- } else {
- return true;
- }
- }
- }
- return null;
- }
-
- // Append the required callback parameter to the end of the request URL, for a JSONP request
- function processJsonpUrl( requestSettings ) {
- if ( requestSettings.type.toUpperCase() === "GET" ) {
- if ( !CALLBACK_REGEX.test( requestSettings.url ) ) {
- requestSettings.url += (/\?/.test( requestSettings.url ) ? "&" : "?") +
- (requestSettings.jsonp || "callback") + "=?";
- }
- } else if ( !requestSettings.data || !CALLBACK_REGEX.test(requestSettings.data) ) {
- requestSettings.data = (requestSettings.data ? requestSettings.data + "&" : "") + (requestSettings.jsonp || "callback") + "=?";
- }
- }
-
- // Process a JSONP request by evaluating the mocked response text
- function processJsonpRequest( requestSettings, mockHandler, origSettings ) {
- // Synthesize the mock request for adding a script tag
- var callbackContext = origSettings && origSettings.context || requestSettings,
- newMock = null;
-
-
- // If the response handler on the moock is a function, call it
- if ( mockHandler.response && $.isFunction(mockHandler.response) ) {
- mockHandler.response(origSettings);
- } else {
-
- // Evaluate the responseText javascript in a global context
- if( typeof mockHandler.responseText === 'object' ) {
- $.globalEval( '(' + JSON.stringify( mockHandler.responseText ) + ')');
- } else {
- $.globalEval( '(' + mockHandler.responseText + ')');
- }
- }
-
- // Successful response
- jsonpSuccess( requestSettings, mockHandler );
- jsonpComplete( requestSettings, mockHandler );
-
- // If we are running under jQuery 1.5+, return a deferred object
- if($.Deferred){
- newMock = new $.Deferred();
- if(typeof mockHandler.responseText == "object"){
- newMock.resolveWith( callbackContext, [mockHandler.responseText] );
- }
- else{
- newMock.resolveWith( callbackContext, [$.parseJSON( mockHandler.responseText )] );
- }
- }
- return newMock;
- }
-
-
- // Create the required JSONP callback function for the request
- function createJsonpCallback( requestSettings, mockHandler ) {
- jsonp = requestSettings.jsonpCallback || ("jsonp" + jsc++);
-
- // Replace the =? sequence both in the query string and the data
- if ( requestSettings.data ) {
- requestSettings.data = (requestSettings.data + "").replace(CALLBACK_REGEX, "=" + jsonp + "$1");
- }
-
- requestSettings.url = requestSettings.url.replace(CALLBACK_REGEX, "=" + jsonp + "$1");
-
-
- // Handle JSONP-style loading
- window[ jsonp ] = window[ jsonp ] || function( tmp ) {
- data = tmp;
- jsonpSuccess( requestSettings, mockHandler );
- jsonpComplete( requestSettings, mockHandler );
- // Garbage collect
- window[ jsonp ] = undefined;
-
- try {
- delete window[ jsonp ];
- } catch(e) {}
-
- if ( head ) {
- head.removeChild( script );
- }
- };
- }
-
- // The JSONP request was successful
- function jsonpSuccess(requestSettings, mockHandler) {
- // If a local callback was specified, fire it and pass it the data
- if ( requestSettings.success ) {
- requestSettings.success.call( callbackContext, ( mockHandler.response ? mockHandler.response.toString() : mockHandler.responseText || ''), status, {} );
- }
-
- // Fire the global callback
- if ( requestSettings.global ) {
- trigger(requestSettings, "ajaxSuccess", [{}, requestSettings] );
- }
- }
-
- // The JSONP request was completed
- function jsonpComplete(requestSettings, mockHandler) {
- // Process result
- if ( requestSettings.complete ) {
- requestSettings.complete.call( callbackContext, {} , status );
- }
-
- // The request was completed
- if ( requestSettings.global ) {
- trigger( "ajaxComplete", [{}, requestSettings] );
- }
-
- // Handle the global AJAX counter
- if ( requestSettings.global && ! --$.active ) {
- $.event.trigger( "ajaxStop" );
- }
- }
-
-
- // The core $.ajax replacement.
- function handleAjax( url, origSettings ) {
- var mockRequest, requestSettings, mockHandler;
-
- // If url is an object, simulate pre-1.5 signature
- if ( typeof url === "object" ) {
- origSettings = url;
- url = undefined;
- } else {
- // work around to support 1.5 signature
- origSettings.url = url;
- }
-
- // Extend the original settings for the request
- requestSettings = $.extend(true, {}, $.ajaxSettings, origSettings);
-
- // Iterate over our mock handlers (in registration order) until we find
- // one that is willing to intercept the request
- for(var k = 0; k < mockHandlers.length; k++) {
- if ( !mockHandlers[k] ) {
- continue;
- }
-
- mockHandler = getMockForRequest( mockHandlers[k], requestSettings );
- if(!mockHandler) {
- // No valid mock found for this request
- continue;
- }
-
- // Handle console logging
- logMock( mockHandler, requestSettings );
-
-
- if ( requestSettings.dataType === "jsonp" ) {
- if ((mockRequest = processJsonpMock( requestSettings, mockHandler, origSettings ))) {
- // This mock will handle the JSONP request
- return mockRequest;
- }
- }
-
-
- // Removed to fix #54 - keep the mocking data object intact
- //mockHandler.data = requestSettings.data;
-
- mockHandler.cache = requestSettings.cache;
- mockHandler.timeout = requestSettings.timeout;
- mockHandler.global = requestSettings.global;
-
- (function(mockHandler, requestSettings, origSettings, origHandler) {
- mockRequest = _ajax.call($, $.extend(true, {}, origSettings, {
- // Mock the XHR object
- xhr: function() { return xhr( mockHandler, requestSettings, origSettings, origHandler ) }
- }));
- })(mockHandler, requestSettings, origSettings, mockHandlers[k]);
-
- return mockRequest;
- }
-
- // We don't have a mock request, trigger a normal request
- return _ajax.apply($, [origSettings]);
- }
-
-
- // Public
-
- $.extend({
- ajax: handleAjax
- });
-
- $.mockjaxSettings = {
- //url: null,
- //type: 'GET',
- log: function( msg ) {
- if ( window[ 'console' ] && window.console.log ) {
- window.console.log.apply( console, arguments );
- }
- },
- status: 200,
- statusText: "OK",
- responseTime: 500,
- isTimeout: false,
- contentType: 'text/plain',
- response: '',
- responseText: '',
- responseXML: '',
- proxy: '',
- proxyType: 'GET',
-
- lastModified: null,
- etag: '',
- headers: {
- etag: 'IJF@H#@923uf8023hFO@I#H#',
- 'content-type' : 'text/plain'
- }
- };
-
- $.mockjax = function(settings) {
- var i = mockHandlers.length;
- mockHandlers[i] = settings;
- return i;
- };
- $.mockjaxClear = function(i) {
- if ( arguments.length == 1 ) {
- mockHandlers[i] = null;
- } else {
- mockHandlers = [];
- }
- };
- $.mockjax.handler = function(i) {
- if ( arguments.length == 1 ) {
- return mockHandlers[i];
- }
- };
-})(jQuery);
diff --git a/assets/scripts/spec/vendor/qunit.js b/assets/scripts/spec/vendor/qunit.js
deleted file mode 100644
index e0eddc24..00000000
--- a/assets/scripts/spec/vendor/qunit.js
+++ /dev/null
@@ -1,2212 +0,0 @@
-/**
- * QUnit v1.12.0 - A JavaScript Unit Testing Framework
- *
- * http://qunitjs.com
- *
- * Copyright 2013 jQuery Foundation and other contributors
- * Released under the MIT license.
- * https://jquery.org/license/
- */
-
-(function( window ) {
-
-var QUnit,
- assert,
- config,
- onErrorFnPrev,
- testId = 0,
- fileName = (sourceFromStacktrace( 0 ) || "" ).replace(/(:\d+)+\)?/, "").replace(/.+\//, ""),
- toString = Object.prototype.toString,
- hasOwn = Object.prototype.hasOwnProperty,
- // Keep a local reference to Date (GH-283)
- Date = window.Date,
- setTimeout = window.setTimeout,
- defined = {
- setTimeout: typeof window.setTimeout !== "undefined",
- sessionStorage: (function() {
- var x = "qunit-test-string";
- try {
- sessionStorage.setItem( x, x );
- sessionStorage.removeItem( x );
- return true;
- } catch( e ) {
- return false;
- }
- }())
- },
- /**
- * Provides a normalized error string, correcting an issue
- * with IE 7 (and prior) where Error.prototype.toString is
- * not properly implemented
- *
- * Based on http://es5.github.com/#x15.11.4.4
- *
- * @param {String|Error} error
- * @return {String} error message
- */
- errorString = function( error ) {
- var name, message,
- errorString = error.toString();
- if ( errorString.substring( 0, 7 ) === "[object" ) {
- name = error.name ? error.name.toString() : "Error";
- message = error.message ? error.message.toString() : "";
- if ( name && message ) {
- return name + ": " + message;
- } else if ( name ) {
- return name;
- } else if ( message ) {
- return message;
- } else {
- return "Error";
- }
- } else {
- return errorString;
- }
- },
- /**
- * Makes a clone of an object using only Array or Object as base,
- * and copies over the own enumerable properties.
- *
- * @param {Object} obj
- * @return {Object} New object with only the own properties (recursively).
- */
- objectValues = function( obj ) {
- // Grunt 0.3.x uses an older version of jshint that still has jshint/jshint#392.
- /*jshint newcap: false */
- var key, val,
- vals = QUnit.is( "array", obj ) ? [] : {};
- for ( key in obj ) {
- if ( hasOwn.call( obj, key ) ) {
- val = obj[key];
- vals[key] = val === Object(val) ? objectValues(val) : val;
- }
- }
- return vals;
- };
-
-function Test( settings ) {
- extend( this, settings );
- this.assertions = [];
- this.testNumber = ++Test.count;
-}
-
-Test.count = 0;
-
-Test.prototype = {
- init: function() {
- var a, b, li,
- tests = id( "qunit-tests" );
-
- if ( tests ) {
- b = document.createElement( "strong" );
- b.innerHTML = this.nameHtml;
-
- // `a` initialized at top of scope
- a = document.createElement( "a" );
- a.innerHTML = "Rerun";
- a.href = QUnit.url({ testNumber: this.testNumber });
-
- li = document.createElement( "li" );
- li.appendChild( b );
- li.appendChild( a );
- li.className = "running";
- li.id = this.id = "qunit-test-output" + testId++;
-
- tests.appendChild( li );
- }
- },
- setup: function() {
- if (
- // Emit moduleStart when we're switching from one module to another
- this.module !== config.previousModule ||
- // They could be equal (both undefined) but if the previousModule property doesn't
- // yet exist it means this is the first test in a suite that isn't wrapped in a
- // module, in which case we'll just emit a moduleStart event for 'undefined'.
- // Without this, reporters can get testStart before moduleStart which is a problem.
- !hasOwn.call( config, "previousModule" )
- ) {
- if ( hasOwn.call( config, "previousModule" ) ) {
- runLoggingCallbacks( "moduleDone", QUnit, {
- name: config.previousModule,
- failed: config.moduleStats.bad,
- passed: config.moduleStats.all - config.moduleStats.bad,
- total: config.moduleStats.all
- });
- }
- config.previousModule = this.module;
- config.moduleStats = { all: 0, bad: 0 };
- runLoggingCallbacks( "moduleStart", QUnit, {
- name: this.module
- });
- }
-
- config.current = this;
-
- this.testEnvironment = extend({
- setup: function() {},
- teardown: function() {}
- }, this.moduleTestEnvironment );
-
- this.started = +new Date();
- runLoggingCallbacks( "testStart", QUnit, {
- name: this.testName,
- module: this.module
- });
-
- /*jshint camelcase:false */
-
-
- /**
- * Expose the current test environment.
- *
- * @deprecated since 1.12.0: Use QUnit.config.current.testEnvironment instead.
- */
- QUnit.current_testEnvironment = this.testEnvironment;
-
- /*jshint camelcase:true */
-
- if ( !config.pollution ) {
- saveGlobal();
- }
- if ( config.notrycatch ) {
- this.testEnvironment.setup.call( this.testEnvironment, QUnit.assert );
- return;
- }
- try {
- this.testEnvironment.setup.call( this.testEnvironment, QUnit.assert );
- } catch( e ) {
- QUnit.pushFailure( "Setup failed on " + this.testName + ": " + ( e.message || e ), extractStacktrace( e, 1 ) );
- }
- },
- run: function() {
- config.current = this;
-
- var running = id( "qunit-testresult" );
-
- if ( running ) {
- running.innerHTML = "Running:
" + this.nameHtml;
- }
-
- if ( this.async ) {
- QUnit.stop();
- }
-
- this.callbackStarted = +new Date();
-
- if ( config.notrycatch ) {
- this.callback.call( this.testEnvironment, QUnit.assert );
- this.callbackRuntime = +new Date() - this.callbackStarted;
- return;
- }
-
- try {
- this.callback.call( this.testEnvironment, QUnit.assert );
- this.callbackRuntime = +new Date() - this.callbackStarted;
- } catch( e ) {
- this.callbackRuntime = +new Date() - this.callbackStarted;
-
- QUnit.pushFailure( "Died on test #" + (this.assertions.length + 1) + " " + this.stack + ": " + ( e.message || e ), extractStacktrace( e, 0 ) );
- // else next test will carry the responsibility
- saveGlobal();
-
- // Restart the tests if they're blocking
- if ( config.blocking ) {
- QUnit.start();
- }
- }
- },
- teardown: function() {
- config.current = this;
- if ( config.notrycatch ) {
- if ( typeof this.callbackRuntime === "undefined" ) {
- this.callbackRuntime = +new Date() - this.callbackStarted;
- }
- this.testEnvironment.teardown.call( this.testEnvironment, QUnit.assert );
- return;
- } else {
- try {
- this.testEnvironment.teardown.call( this.testEnvironment, QUnit.assert );
- } catch( e ) {
- QUnit.pushFailure( "Teardown failed on " + this.testName + ": " + ( e.message || e ), extractStacktrace( e, 1 ) );
- }
- }
- checkPollution();
- },
- finish: function() {
- config.current = this;
- if ( config.requireExpects && this.expected === null ) {
- QUnit.pushFailure( "Expected number of assertions to be defined, but expect() was not called.", this.stack );
- } else if ( this.expected !== null && this.expected !== this.assertions.length ) {
- QUnit.pushFailure( "Expected " + this.expected + " assertions, but " + this.assertions.length + " were run", this.stack );
- } else if ( this.expected === null && !this.assertions.length ) {
- QUnit.pushFailure( "Expected at least one assertion, but none were run - call expect(0) to accept zero assertions.", this.stack );
- }
-
- var i, assertion, a, b, time, li, ol,
- test = this,
- good = 0,
- bad = 0,
- tests = id( "qunit-tests" );
-
- this.runtime = +new Date() - this.started;
- config.stats.all += this.assertions.length;
- config.moduleStats.all += this.assertions.length;
-
- if ( tests ) {
- ol = document.createElement( "ol" );
- ol.className = "qunit-assert-list";
-
- for ( i = 0; i < this.assertions.length; i++ ) {
- assertion = this.assertions[i];
-
- li = document.createElement( "li" );
- li.className = assertion.result ? "pass" : "fail";
- li.innerHTML = assertion.message || ( assertion.result ? "okay" : "failed" );
- ol.appendChild( li );
-
- if ( assertion.result ) {
- good++;
- } else {
- bad++;
- config.stats.bad++;
- config.moduleStats.bad++;
- }
- }
-
- // store result when possible
- if ( QUnit.config.reorder && defined.sessionStorage ) {
- if ( bad ) {
- sessionStorage.setItem( "qunit-test-" + this.module + "-" + this.testName, bad );
- } else {
- sessionStorage.removeItem( "qunit-test-" + this.module + "-" + this.testName );
- }
- }
-
- if ( bad === 0 ) {
- addClass( ol, "qunit-collapsed" );
- }
-
- // `b` initialized at top of scope
- b = document.createElement( "strong" );
- b.innerHTML = this.nameHtml + " (" + bad + ", " + good + ", " + this.assertions.length + ")";
-
- addEvent(b, "click", function() {
- var next = b.parentNode.lastChild,
- collapsed = hasClass( next, "qunit-collapsed" );
- ( collapsed ? removeClass : addClass )( next, "qunit-collapsed" );
- });
-
- addEvent(b, "dblclick", function( e ) {
- var target = e && e.target ? e.target : window.event.srcElement;
- if ( target.nodeName.toLowerCase() === "span" || target.nodeName.toLowerCase() === "b" ) {
- target = target.parentNode;
- }
- if ( window.location && target.nodeName.toLowerCase() === "strong" ) {
- window.location = QUnit.url({ testNumber: test.testNumber });
- }
- });
-
- // `time` initialized at top of scope
- time = document.createElement( "span" );
- time.className = "runtime";
- time.innerHTML = this.runtime + " ms";
-
- // `li` initialized at top of scope
- li = id( this.id );
- li.className = bad ? "fail" : "pass";
- li.removeChild( li.firstChild );
- a = li.firstChild;
- li.appendChild( b );
- li.appendChild( a );
- li.appendChild( time );
- li.appendChild( ol );
-
- } else {
- for ( i = 0; i < this.assertions.length; i++ ) {
- if ( !this.assertions[i].result ) {
- bad++;
- config.stats.bad++;
- config.moduleStats.bad++;
- }
- }
- }
-
- runLoggingCallbacks( "testDone", QUnit, {
- name: this.testName,
- module: this.module,
- failed: bad,
- passed: this.assertions.length - bad,
- total: this.assertions.length,
- duration: this.runtime
- });
-
- QUnit.reset();
-
- config.current = undefined;
- },
-
- queue: function() {
- var bad,
- test = this;
-
- synchronize(function() {
- test.init();
- });
- function run() {
- // each of these can by async
- synchronize(function() {
- test.setup();
- });
- synchronize(function() {
- test.run();
- });
- synchronize(function() {
- test.teardown();
- });
- synchronize(function() {
- test.finish();
- });
- }
-
- // `bad` initialized at top of scope
- // defer when previous test run passed, if storage is available
- bad = QUnit.config.reorder && defined.sessionStorage &&
- +sessionStorage.getItem( "qunit-test-" + this.module + "-" + this.testName );
-
- if ( bad ) {
- run();
- } else {
- synchronize( run, true );
- }
- }
-};
-
-// Root QUnit object.
-// `QUnit` initialized at top of scope
-QUnit = {
-
- // call on start of module test to prepend name to all tests
- module: function( name, testEnvironment ) {
- config.currentModule = name;
- config.currentModuleTestEnvironment = testEnvironment;
- config.modules[name] = true;
- },
-
- asyncTest: function( testName, expected, callback ) {
- if ( arguments.length === 2 ) {
- callback = expected;
- expected = null;
- }
-
- QUnit.test( testName, expected, callback, true );
- },
-
- test: function( testName, expected, callback, async ) {
- var test,
- nameHtml = "" + escapeText( testName ) + "";
-
- if ( arguments.length === 2 ) {
- callback = expected;
- expected = null;
- }
-
- if ( config.currentModule ) {
- nameHtml = "" + escapeText( config.currentModule ) + ": " + nameHtml;
- }
-
- test = new Test({
- nameHtml: nameHtml,
- testName: testName,
- expected: expected,
- async: async,
- callback: callback,
- module: config.currentModule,
- moduleTestEnvironment: config.currentModuleTestEnvironment,
- stack: sourceFromStacktrace( 2 )
- });
-
- if ( !validTest( test ) ) {
- return;
- }
-
- test.queue();
- },
-
- // Specify the number of expected assertions to guarantee that failed test (no assertions are run at all) don't slip through.
- expect: function( asserts ) {
- if (arguments.length === 1) {
- config.current.expected = asserts;
- } else {
- return config.current.expected;
- }
- },
-
- start: function( count ) {
- // QUnit hasn't been initialized yet.
- // Note: RequireJS (et al) may delay onLoad
- if ( config.semaphore === undefined ) {
- QUnit.begin(function() {
- // This is triggered at the top of QUnit.load, push start() to the event loop, to allow QUnit.load to finish first
- setTimeout(function() {
- QUnit.start( count );
- });
- });
- return;
- }
-
- config.semaphore -= count || 1;
- // don't start until equal number of stop-calls
- if ( config.semaphore > 0 ) {
- return;
- }
- // ignore if start is called more often then stop
- if ( config.semaphore < 0 ) {
- config.semaphore = 0;
- QUnit.pushFailure( "Called start() while already started (QUnit.config.semaphore was 0 already)", null, sourceFromStacktrace(2) );
- return;
- }
- // A slight delay, to avoid any current callbacks
- if ( defined.setTimeout ) {
- setTimeout(function() {
- if ( config.semaphore > 0 ) {
- return;
- }
- if ( config.timeout ) {
- clearTimeout( config.timeout );
- }
-
- config.blocking = false;
- process( true );
- }, 13);
- } else {
- config.blocking = false;
- process( true );
- }
- },
-
- stop: function( count ) {
- config.semaphore += count || 1;
- config.blocking = true;
-
- if ( config.testTimeout && defined.setTimeout ) {
- clearTimeout( config.timeout );
- config.timeout = setTimeout(function() {
- QUnit.ok( false, "Test timed out" );
- config.semaphore = 1;
- QUnit.start();
- }, config.testTimeout );
- }
- }
-};
-
-// `assert` initialized at top of scope
-// Assert helpers
-// All of these must either call QUnit.push() or manually do:
-// - runLoggingCallbacks( "log", .. );
-// - config.current.assertions.push({ .. });
-// We attach it to the QUnit object *after* we expose the public API,
-// otherwise `assert` will become a global variable in browsers (#341).
-assert = {
- /**
- * Asserts rough true-ish result.
- * @name ok
- * @function
- * @example ok( "asdfasdf".length > 5, "There must be at least 5 chars" );
- */
- ok: function( result, msg ) {
- if ( !config.current ) {
- throw new Error( "ok() assertion outside test context, was " + sourceFromStacktrace(2) );
- }
- result = !!result;
- msg = msg || (result ? "okay" : "failed" );
-
- var source,
- details = {
- module: config.current.module,
- name: config.current.testName,
- result: result,
- message: msg
- };
-
- msg = "" + escapeText( msg ) + "";
-
- if ( !result ) {
- source = sourceFromStacktrace( 2 );
- if ( source ) {
- details.source = source;
- msg += "Source: " + escapeText( source ) + "
";
- }
- }
- runLoggingCallbacks( "log", QUnit, details );
- config.current.assertions.push({
- result: result,
- message: msg
- });
- },
-
- /**
- * Assert that the first two arguments are equal, with an optional message.
- * Prints out both actual and expected values.
- * @name equal
- * @function
- * @example equal( format( "Received {0} bytes.", 2), "Received 2 bytes.", "format() replaces {0} with next argument" );
- */
- equal: function( actual, expected, message ) {
- /*jshint eqeqeq:false */
- QUnit.push( expected == actual, actual, expected, message );
- },
-
- /**
- * @name notEqual
- * @function
- */
- notEqual: function( actual, expected, message ) {
- /*jshint eqeqeq:false */
- QUnit.push( expected != actual, actual, expected, message );
- },
-
- /**
- * @name propEqual
- * @function
- */
- propEqual: function( actual, expected, message ) {
- actual = objectValues(actual);
- expected = objectValues(expected);
- QUnit.push( QUnit.equiv(actual, expected), actual, expected, message );
- },
-
- /**
- * @name notPropEqual
- * @function
- */
- notPropEqual: function( actual, expected, message ) {
- actual = objectValues(actual);
- expected = objectValues(expected);
- QUnit.push( !QUnit.equiv(actual, expected), actual, expected, message );
- },
-
- /**
- * @name deepEqual
- * @function
- */
- deepEqual: function( actual, expected, message ) {
- QUnit.push( QUnit.equiv(actual, expected), actual, expected, message );
- },
-
- /**
- * @name notDeepEqual
- * @function
- */
- notDeepEqual: function( actual, expected, message ) {
- QUnit.push( !QUnit.equiv(actual, expected), actual, expected, message );
- },
-
- /**
- * @name strictEqual
- * @function
- */
- strictEqual: function( actual, expected, message ) {
- QUnit.push( expected === actual, actual, expected, message );
- },
-
- /**
- * @name notStrictEqual
- * @function
- */
- notStrictEqual: function( actual, expected, message ) {
- QUnit.push( expected !== actual, actual, expected, message );
- },
-
- "throws": function( block, expected, message ) {
- var actual,
- expectedOutput = expected,
- ok = false;
-
- // 'expected' is optional
- if ( typeof expected === "string" ) {
- message = expected;
- expected = null;
- }
-
- config.current.ignoreGlobalErrors = true;
- try {
- block.call( config.current.testEnvironment );
- } catch (e) {
- actual = e;
- }
- config.current.ignoreGlobalErrors = false;
-
- if ( actual ) {
- // we don't want to validate thrown error
- if ( !expected ) {
- ok = true;
- expectedOutput = null;
- // expected is a regexp
- } else if ( QUnit.objectType( expected ) === "regexp" ) {
- ok = expected.test( errorString( actual ) );
- // expected is a constructor
- } else if ( actual instanceof expected ) {
- ok = true;
- // expected is a validation function which returns true is validation passed
- } else if ( expected.call( {}, actual ) === true ) {
- expectedOutput = null;
- ok = true;
- }
-
- QUnit.push( ok, actual, expectedOutput, message );
- } else {
- QUnit.pushFailure( message, null, "No exception was thrown." );
- }
- }
-};
-
-/**
- * @deprecated since 1.8.0
- * Kept assertion helpers in root for backwards compatibility.
- */
-extend( QUnit, assert );
-
-/**
- * @deprecated since 1.9.0
- * Kept root "raises()" for backwards compatibility.
- * (Note that we don't introduce assert.raises).
- */
-QUnit.raises = assert[ "throws" ];
-
-/**
- * @deprecated since 1.0.0, replaced with error pushes since 1.3.0
- * Kept to avoid TypeErrors for undefined methods.
- */
-QUnit.equals = function() {
- QUnit.push( false, false, false, "QUnit.equals has been deprecated since 2009 (e88049a0), use QUnit.equal instead" );
-};
-QUnit.same = function() {
- QUnit.push( false, false, false, "QUnit.same has been deprecated since 2009 (e88049a0), use QUnit.deepEqual instead" );
-};
-
-// We want access to the constructor's prototype
-(function() {
- function F() {}
- F.prototype = QUnit;
- QUnit = new F();
- // Make F QUnit's constructor so that we can add to the prototype later
- QUnit.constructor = F;
-}());
-
-/**
- * Config object: Maintain internal state
- * Later exposed as QUnit.config
- * `config` initialized at top of scope
- */
-config = {
- // The queue of tests to run
- queue: [],
-
- // block until document ready
- blocking: true,
-
- // when enabled, show only failing tests
- // gets persisted through sessionStorage and can be changed in UI via checkbox
- hidepassed: false,
-
- // by default, run previously failed tests first
- // very useful in combination with "Hide passed tests" checked
- reorder: true,
-
- // by default, modify document.title when suite is done
- altertitle: true,
-
- // when enabled, all tests must call expect()
- requireExpects: false,
-
- // add checkboxes that are persisted in the query-string
- // when enabled, the id is set to `true` as a `QUnit.config` property
- urlConfig: [
- {
- id: "noglobals",
- label: "Check for Globals",
- tooltip: "Enabling this will test if any test introduces new properties on the `window` object. Stored as query-strings."
- },
- {
- id: "notrycatch",
- label: "No try-catch",
- tooltip: "Enabling this will run tests outside of a try-catch block. Makes debugging exceptions in IE reasonable. Stored as query-strings."
- }
- ],
-
- // Set of all modules.
- modules: {},
-
- // logging callback queues
- begin: [],
- done: [],
- log: [],
- testStart: [],
- testDone: [],
- moduleStart: [],
- moduleDone: []
-};
-
-// Export global variables, unless an 'exports' object exists,
-// in that case we assume we're in CommonJS (dealt with on the bottom of the script)
-if ( typeof exports === "undefined" ) {
- extend( window, QUnit.constructor.prototype );
-
- // Expose QUnit object
- window.QUnit = QUnit;
-}
-
-// Initialize more QUnit.config and QUnit.urlParams
-(function() {
- var i,
- location = window.location || { search: "", protocol: "file:" },
- params = location.search.slice( 1 ).split( "&" ),
- length = params.length,
- urlParams = {},
- current;
-
- if ( params[ 0 ] ) {
- for ( i = 0; i < length; i++ ) {
- current = params[ i ].split( "=" );
- current[ 0 ] = decodeURIComponent( current[ 0 ] );
- // allow just a key to turn on a flag, e.g., test.html?noglobals
- current[ 1 ] = current[ 1 ] ? decodeURIComponent( current[ 1 ] ) : true;
- urlParams[ current[ 0 ] ] = current[ 1 ];
- }
- }
-
- QUnit.urlParams = urlParams;
-
- // String search anywhere in moduleName+testName
- config.filter = urlParams.filter;
-
- // Exact match of the module name
- config.module = urlParams.module;
-
- config.testNumber = parseInt( urlParams.testNumber, 10 ) || null;
-
- // Figure out if we're running the tests from a server or not
- QUnit.isLocal = location.protocol === "file:";
-}());
-
-// Extend QUnit object,
-// these after set here because they should not be exposed as global functions
-extend( QUnit, {
- assert: assert,
-
- config: config,
-
- // Initialize the configuration options
- init: function() {
- extend( config, {
- stats: { all: 0, bad: 0 },
- moduleStats: { all: 0, bad: 0 },
- started: +new Date(),
- updateRate: 1000,
- blocking: false,
- autostart: true,
- autorun: false,
- filter: "",
- queue: [],
- semaphore: 1
- });
-
- var tests, banner, result,
- qunit = id( "qunit" );
-
- if ( qunit ) {
- qunit.innerHTML =
- "" + escapeText( document.title ) + "
" +
- "" +
- "" +
- "" +
- "
";
- }
-
- tests = id( "qunit-tests" );
- banner = id( "qunit-banner" );
- result = id( "qunit-testresult" );
-
- if ( tests ) {
- tests.innerHTML = "";
- }
-
- if ( banner ) {
- banner.className = "";
- }
-
- if ( result ) {
- result.parentNode.removeChild( result );
- }
-
- if ( tests ) {
- result = document.createElement( "p" );
- result.id = "qunit-testresult";
- result.className = "result";
- tests.parentNode.insertBefore( result, tests );
- result.innerHTML = "Running...
";
- }
- },
-
- // Resets the test setup. Useful for tests that modify the DOM.
- /*
- DEPRECATED: Use multiple tests instead of resetting inside a test.
- Use testStart or testDone for custom cleanup.
- This method will throw an error in 2.0, and will be removed in 2.1
- */
- reset: function() {
- var fixture = id( "qunit-fixture" );
- if ( fixture ) {
- fixture.innerHTML = config.fixture;
- }
- },
-
- // Trigger an event on an element.
- // @example triggerEvent( document.body, "click" );
- triggerEvent: function( elem, type, event ) {
- if ( document.createEvent ) {
- event = document.createEvent( "MouseEvents" );
- event.initMouseEvent(type, true, true, elem.ownerDocument.defaultView,
- 0, 0, 0, 0, 0, false, false, false, false, 0, null);
-
- elem.dispatchEvent( event );
- } else if ( elem.fireEvent ) {
- elem.fireEvent( "on" + type );
- }
- },
-
- // Safe object type checking
- is: function( type, obj ) {
- return QUnit.objectType( obj ) === type;
- },
-
- objectType: function( obj ) {
- if ( typeof obj === "undefined" ) {
- return "undefined";
- // consider: typeof null === object
- }
- if ( obj === null ) {
- return "null";
- }
-
- var match = toString.call( obj ).match(/^\[object\s(.*)\]$/),
- type = match && match[1] || "";
-
- switch ( type ) {
- case "Number":
- if ( isNaN(obj) ) {
- return "nan";
- }
- return "number";
- case "String":
- case "Boolean":
- case "Array":
- case "Date":
- case "RegExp":
- case "Function":
- return type.toLowerCase();
- }
- if ( typeof obj === "object" ) {
- return "object";
- }
- return undefined;
- },
-
- push: function( result, actual, expected, message ) {
- if ( !config.current ) {
- throw new Error( "assertion outside test context, was " + sourceFromStacktrace() );
- }
-
- var output, source,
- details = {
- module: config.current.module,
- name: config.current.testName,
- result: result,
- message: message,
- actual: actual,
- expected: expected
- };
-
- message = escapeText( message ) || ( result ? "okay" : "failed" );
- message = "" + message + "";
- output = message;
-
- if ( !result ) {
- expected = escapeText( QUnit.jsDump.parse(expected) );
- actual = escapeText( QUnit.jsDump.parse(actual) );
- output += "Expected: " + expected + "
";
-
- if ( actual !== expected ) {
- output += "Result: " + actual + "
";
- output += "Diff: " + QUnit.diff( expected, actual ) + "
";
- }
-
- source = sourceFromStacktrace();
-
- if ( source ) {
- details.source = source;
- output += "Source: " + escapeText( source ) + "
";
- }
-
- output += "
";
- }
-
- runLoggingCallbacks( "log", QUnit, details );
-
- config.current.assertions.push({
- result: !!result,
- message: output
- });
- },
-
- pushFailure: function( message, source, actual ) {
- if ( !config.current ) {
- throw new Error( "pushFailure() assertion outside test context, was " + sourceFromStacktrace(2) );
- }
-
- var output,
- details = {
- module: config.current.module,
- name: config.current.testName,
- result: false,
- message: message
- };
-
- message = escapeText( message ) || "error";
- message = "" + message + "";
- output = message;
-
- output += "";
-
- if ( actual ) {
- output += "Result: " + escapeText( actual ) + "
";
- }
-
- if ( source ) {
- details.source = source;
- output += "Source: " + escapeText( source ) + "
";
- }
-
- output += "
";
-
- runLoggingCallbacks( "log", QUnit, details );
-
- config.current.assertions.push({
- result: false,
- message: output
- });
- },
-
- url: function( params ) {
- params = extend( extend( {}, QUnit.urlParams ), params );
- var key,
- querystring = "?";
-
- for ( key in params ) {
- if ( hasOwn.call( params, key ) ) {
- querystring += encodeURIComponent( key ) + "=" +
- encodeURIComponent( params[ key ] ) + "&";
- }
- }
- return window.location.protocol + "//" + window.location.host +
- window.location.pathname + querystring.slice( 0, -1 );
- },
-
- extend: extend,
- id: id,
- addEvent: addEvent,
- addClass: addClass,
- hasClass: hasClass,
- removeClass: removeClass
- // load, equiv, jsDump, diff: Attached later
-});
-
-/**
- * @deprecated: Created for backwards compatibility with test runner that set the hook function
- * into QUnit.{hook}, instead of invoking it and passing the hook function.
- * QUnit.constructor is set to the empty F() above so that we can add to it's prototype here.
- * Doing this allows us to tell if the following methods have been overwritten on the actual
- * QUnit object.
- */
-extend( QUnit.constructor.prototype, {
-
- // Logging callbacks; all receive a single argument with the listed properties
- // run test/logs.html for any related changes
- begin: registerLoggingCallback( "begin" ),
-
- // done: { failed, passed, total, runtime }
- done: registerLoggingCallback( "done" ),
-
- // log: { result, actual, expected, message }
- log: registerLoggingCallback( "log" ),
-
- // testStart: { name }
- testStart: registerLoggingCallback( "testStart" ),
-
- // testDone: { name, failed, passed, total, duration }
- testDone: registerLoggingCallback( "testDone" ),
-
- // moduleStart: { name }
- moduleStart: registerLoggingCallback( "moduleStart" ),
-
- // moduleDone: { name, failed, passed, total }
- moduleDone: registerLoggingCallback( "moduleDone" )
-});
-
-if ( typeof document === "undefined" || document.readyState === "complete" ) {
- config.autorun = true;
-}
-
-QUnit.load = function() {
- runLoggingCallbacks( "begin", QUnit, {} );
-
- // Initialize the config, saving the execution queue
- var banner, filter, i, label, len, main, ol, toolbar, userAgent, val,
- urlConfigCheckboxesContainer, urlConfigCheckboxes, moduleFilter,
- numModules = 0,
- moduleNames = [],
- moduleFilterHtml = "",
- urlConfigHtml = "",
- oldconfig = extend( {}, config );
-
- QUnit.init();
- extend(config, oldconfig);
-
- config.blocking = false;
-
- len = config.urlConfig.length;
-
- for ( i = 0; i < len; i++ ) {
- val = config.urlConfig[i];
- if ( typeof val === "string" ) {
- val = {
- id: val,
- label: val,
- tooltip: "[no tooltip available]"
- };
- }
- config[ val.id ] = QUnit.urlParams[ val.id ];
- urlConfigHtml += "";
- }
- for ( i in config.modules ) {
- if ( config.modules.hasOwnProperty( i ) ) {
- moduleNames.push(i);
- }
- }
- numModules = moduleNames.length;
- moduleNames.sort( function( a, b ) {
- return a.localeCompare( b );
- });
- moduleFilterHtml += "";
-
- // `userAgent` initialized at top of scope
- userAgent = id( "qunit-userAgent" );
- if ( userAgent ) {
- userAgent.innerHTML = navigator.userAgent;
- }
-
- // `banner` initialized at top of scope
- banner = id( "qunit-header" );
- if ( banner ) {
- banner.innerHTML = "" + banner.innerHTML + " ";
- }
-
- // `toolbar` initialized at top of scope
- toolbar = id( "qunit-testrunner-toolbar" );
- if ( toolbar ) {
- // `filter` initialized at top of scope
- filter = document.createElement( "input" );
- filter.type = "checkbox";
- filter.id = "qunit-filter-pass";
-
- addEvent( filter, "click", function() {
- var tmp,
- ol = document.getElementById( "qunit-tests" );
-
- if ( filter.checked ) {
- ol.className = ol.className + " hidepass";
- } else {
- tmp = " " + ol.className.replace( /[\n\t\r]/g, " " ) + " ";
- ol.className = tmp.replace( / hidepass /, " " );
- }
- if ( defined.sessionStorage ) {
- if (filter.checked) {
- sessionStorage.setItem( "qunit-filter-passed-tests", "true" );
- } else {
- sessionStorage.removeItem( "qunit-filter-passed-tests" );
- }
- }
- });
-
- if ( config.hidepassed || defined.sessionStorage && sessionStorage.getItem( "qunit-filter-passed-tests" ) ) {
- filter.checked = true;
- // `ol` initialized at top of scope
- ol = document.getElementById( "qunit-tests" );
- ol.className = ol.className + " hidepass";
- }
- toolbar.appendChild( filter );
-
- // `label` initialized at top of scope
- label = document.createElement( "label" );
- label.setAttribute( "for", "qunit-filter-pass" );
- label.setAttribute( "title", "Only show tests and assertions that fail. Stored in sessionStorage." );
- label.innerHTML = "Hide passed tests";
- toolbar.appendChild( label );
-
- urlConfigCheckboxesContainer = document.createElement("span");
- urlConfigCheckboxesContainer.innerHTML = urlConfigHtml;
- urlConfigCheckboxes = urlConfigCheckboxesContainer.getElementsByTagName("input");
- // For oldIE support:
- // * Add handlers to the individual elements instead of the container
- // * Use "click" instead of "change"
- // * Fallback from event.target to event.srcElement
- addEvents( urlConfigCheckboxes, "click", function( event ) {
- var params = {},
- target = event.target || event.srcElement;
- params[ target.name ] = target.checked ? true : undefined;
- window.location = QUnit.url( params );
- });
- toolbar.appendChild( urlConfigCheckboxesContainer );
-
- if (numModules > 1) {
- moduleFilter = document.createElement( "span" );
- moduleFilter.setAttribute( "id", "qunit-modulefilter-container" );
- moduleFilter.innerHTML = moduleFilterHtml;
- addEvent( moduleFilter.lastChild, "change", function() {
- var selectBox = moduleFilter.getElementsByTagName("select")[0],
- selectedModule = decodeURIComponent(selectBox.options[selectBox.selectedIndex].value);
-
- window.location = QUnit.url({
- module: ( selectedModule === "" ) ? undefined : selectedModule,
- // Remove any existing filters
- filter: undefined,
- testNumber: undefined
- });
- });
- toolbar.appendChild(moduleFilter);
- }
- }
-
- // `main` initialized at top of scope
- main = id( "qunit-fixture" );
- if ( main ) {
- config.fixture = main.innerHTML;
- }
-
- if ( config.autostart ) {
- QUnit.start();
- }
-};
-
-addEvent( window, "load", QUnit.load );
-
-// `onErrorFnPrev` initialized at top of scope
-// Preserve other handlers
-onErrorFnPrev = window.onerror;
-
-// Cover uncaught exceptions
-// Returning true will suppress the default browser handler,
-// returning false will let it run.
-window.onerror = function ( error, filePath, linerNr ) {
- var ret = false;
- if ( onErrorFnPrev ) {
- ret = onErrorFnPrev( error, filePath, linerNr );
- }
-
- // Treat return value as window.onerror itself does,
- // Only do our handling if not suppressed.
- if ( ret !== true ) {
- if ( QUnit.config.current ) {
- if ( QUnit.config.current.ignoreGlobalErrors ) {
- return true;
- }
- QUnit.pushFailure( error, filePath + ":" + linerNr );
- } else {
- QUnit.test( "global failure", extend( function() {
- QUnit.pushFailure( error, filePath + ":" + linerNr );
- }, { validTest: validTest } ) );
- }
- return false;
- }
-
- return ret;
-};
-
-function done() {
- config.autorun = true;
-
- // Log the last module results
- if ( config.currentModule ) {
- runLoggingCallbacks( "moduleDone", QUnit, {
- name: config.currentModule,
- failed: config.moduleStats.bad,
- passed: config.moduleStats.all - config.moduleStats.bad,
- total: config.moduleStats.all
- });
- }
- delete config.previousModule;
-
- var i, key,
- banner = id( "qunit-banner" ),
- tests = id( "qunit-tests" ),
- runtime = +new Date() - config.started,
- passed = config.stats.all - config.stats.bad,
- html = [
- "Tests completed in ",
- runtime,
- " milliseconds.
",
- "",
- passed,
- " assertions of ",
- config.stats.all,
- " passed, ",
- config.stats.bad,
- " failed."
- ].join( "" );
-
- if ( banner ) {
- banner.className = ( config.stats.bad ? "qunit-fail" : "qunit-pass" );
- }
-
- if ( tests ) {
- id( "qunit-testresult" ).innerHTML = html;
- }
-
- if ( config.altertitle && typeof document !== "undefined" && document.title ) {
- // show ✖ for good, ✔ for bad suite result in title
- // use escape sequences in case file gets loaded with non-utf-8-charset
- document.title = [
- ( config.stats.bad ? "\u2716" : "\u2714" ),
- document.title.replace( /^[\u2714\u2716] /i, "" )
- ].join( " " );
- }
-
- // clear own sessionStorage items if all tests passed
- if ( config.reorder && defined.sessionStorage && config.stats.bad === 0 ) {
- // `key` & `i` initialized at top of scope
- for ( i = 0; i < sessionStorage.length; i++ ) {
- key = sessionStorage.key( i++ );
- if ( key.indexOf( "qunit-test-" ) === 0 ) {
- sessionStorage.removeItem( key );
- }
- }
- }
-
- // scroll back to top to show results
- if ( window.scrollTo ) {
- window.scrollTo(0, 0);
- }
-
- runLoggingCallbacks( "done", QUnit, {
- failed: config.stats.bad,
- passed: passed,
- total: config.stats.all,
- runtime: runtime
- });
-}
-
-/** @return Boolean: true if this test should be ran */
-function validTest( test ) {
- var include,
- filter = config.filter && config.filter.toLowerCase(),
- module = config.module && config.module.toLowerCase(),
- fullName = (test.module + ": " + test.testName).toLowerCase();
-
- // Internally-generated tests are always valid
- if ( test.callback && test.callback.validTest === validTest ) {
- delete test.callback.validTest;
- return true;
- }
-
- if ( config.testNumber ) {
- return test.testNumber === config.testNumber;
- }
-
- if ( module && ( !test.module || test.module.toLowerCase() !== module ) ) {
- return false;
- }
-
- if ( !filter ) {
- return true;
- }
-
- include = filter.charAt( 0 ) !== "!";
- if ( !include ) {
- filter = filter.slice( 1 );
- }
-
- // If the filter matches, we need to honour include
- if ( fullName.indexOf( filter ) !== -1 ) {
- return include;
- }
-
- // Otherwise, do the opposite
- return !include;
-}
-
-// so far supports only Firefox, Chrome and Opera (buggy), Safari (for real exceptions)
-// Later Safari and IE10 are supposed to support error.stack as well
-// See also https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error/Stack
-function extractStacktrace( e, offset ) {
- offset = offset === undefined ? 3 : offset;
-
- var stack, include, i;
-
- if ( e.stacktrace ) {
- // Opera
- return e.stacktrace.split( "\n" )[ offset + 3 ];
- } else if ( e.stack ) {
- // Firefox, Chrome
- stack = e.stack.split( "\n" );
- if (/^error$/i.test( stack[0] ) ) {
- stack.shift();
- }
- if ( fileName ) {
- include = [];
- for ( i = offset; i < stack.length; i++ ) {
- if ( stack[ i ].indexOf( fileName ) !== -1 ) {
- break;
- }
- include.push( stack[ i ] );
- }
- if ( include.length ) {
- return include.join( "\n" );
- }
- }
- return stack[ offset ];
- } else if ( e.sourceURL ) {
- // Safari, PhantomJS
- // hopefully one day Safari provides actual stacktraces
- // exclude useless self-reference for generated Error objects
- if ( /qunit.js$/.test( e.sourceURL ) ) {
- return;
- }
- // for actual exceptions, this is useful
- return e.sourceURL + ":" + e.line;
- }
-}
-function sourceFromStacktrace( offset ) {
- try {
- throw new Error();
- } catch ( e ) {
- return extractStacktrace( e, offset );
- }
-}
-
-/**
- * Escape text for attribute or text content.
- */
-function escapeText( s ) {
- if ( !s ) {
- return "";
- }
- s = s + "";
- // Both single quotes and double quotes (for attributes)
- return s.replace( /['"<>&]/g, function( s ) {
- switch( s ) {
- case "'":
- return "'";
- case "\"":
- return """;
- case "<":
- return "<";
- case ">":
- return ">";
- case "&":
- return "&";
- }
- });
-}
-
-function synchronize( callback, last ) {
- config.queue.push( callback );
-
- if ( config.autorun && !config.blocking ) {
- process( last );
- }
-}
-
-function process( last ) {
- function next() {
- process( last );
- }
- var start = new Date().getTime();
- config.depth = config.depth ? config.depth + 1 : 1;
-
- while ( config.queue.length && !config.blocking ) {
- if ( !defined.setTimeout || config.updateRate <= 0 || ( ( new Date().getTime() - start ) < config.updateRate ) ) {
- config.queue.shift()();
- } else {
- setTimeout( next, 13 );
- break;
- }
- }
- config.depth--;
- if ( last && !config.blocking && !config.queue.length && config.depth === 0 ) {
- done();
- }
-}
-
-function saveGlobal() {
- config.pollution = [];
-
- if ( config.noglobals ) {
- for ( var key in window ) {
- if ( hasOwn.call( window, key ) ) {
- // in Opera sometimes DOM element ids show up here, ignore them
- if ( /^qunit-test-output/.test( key ) ) {
- continue;
- }
- config.pollution.push( key );
- }
- }
- }
-}
-
-function checkPollution() {
- var newGlobals,
- deletedGlobals,
- old = config.pollution;
-
- saveGlobal();
-
- newGlobals = diff( config.pollution, old );
- if ( newGlobals.length > 0 ) {
- QUnit.pushFailure( "Introduced global variable(s): " + newGlobals.join(", ") );
- }
-
- deletedGlobals = diff( old, config.pollution );
- if ( deletedGlobals.length > 0 ) {
- QUnit.pushFailure( "Deleted global variable(s): " + deletedGlobals.join(", ") );
- }
-}
-
-// returns a new Array with the elements that are in a but not in b
-function diff( a, b ) {
- var i, j,
- result = a.slice();
-
- for ( i = 0; i < result.length; i++ ) {
- for ( j = 0; j < b.length; j++ ) {
- if ( result[i] === b[j] ) {
- result.splice( i, 1 );
- i--;
- break;
- }
- }
- }
- return result;
-}
-
-function extend( a, b ) {
- for ( var prop in b ) {
- if ( hasOwn.call( b, prop ) ) {
- // Avoid "Member not found" error in IE8 caused by messing with window.constructor
- if ( !( prop === "constructor" && a === window ) ) {
- if ( b[ prop ] === undefined ) {
- delete a[ prop ];
- } else {
- a[ prop ] = b[ prop ];
- }
- }
- }
- }
-
- return a;
-}
-
-/**
- * @param {HTMLElement} elem
- * @param {string} type
- * @param {Function} fn
- */
-function addEvent( elem, type, fn ) {
- // Standards-based browsers
- if ( elem.addEventListener ) {
- elem.addEventListener( type, fn, false );
- // IE
- } else {
- elem.attachEvent( "on" + type, fn );
- }
-}
-
-/**
- * @param {Array|NodeList} elems
- * @param {string} type
- * @param {Function} fn
- */
-function addEvents( elems, type, fn ) {
- var i = elems.length;
- while ( i-- ) {
- addEvent( elems[i], type, fn );
- }
-}
-
-function hasClass( elem, name ) {
- return (" " + elem.className + " ").indexOf(" " + name + " ") > -1;
-}
-
-function addClass( elem, name ) {
- if ( !hasClass( elem, name ) ) {
- elem.className += (elem.className ? " " : "") + name;
- }
-}
-
-function removeClass( elem, name ) {
- var set = " " + elem.className + " ";
- // Class name may appear multiple times
- while ( set.indexOf(" " + name + " ") > -1 ) {
- set = set.replace(" " + name + " " , " ");
- }
- // If possible, trim it for prettiness, but not necessarily
- elem.className = typeof set.trim === "function" ? set.trim() : set.replace(/^\s+|\s+$/g, "");
-}
-
-function id( name ) {
- return !!( typeof document !== "undefined" && document && document.getElementById ) &&
- document.getElementById( name );
-}
-
-function registerLoggingCallback( key ) {
- return function( callback ) {
- config[key].push( callback );
- };
-}
-
-// Supports deprecated method of completely overwriting logging callbacks
-function runLoggingCallbacks( key, scope, args ) {
- var i, callbacks;
- if ( QUnit.hasOwnProperty( key ) ) {
- QUnit[ key ].call(scope, args );
- } else {
- callbacks = config[ key ];
- for ( i = 0; i < callbacks.length; i++ ) {
- callbacks[ i ].call( scope, args );
- }
- }
-}
-
-// Test for equality any JavaScript type.
-// Author: Philippe Rathé
-QUnit.equiv = (function() {
-
- // Call the o related callback with the given arguments.
- function bindCallbacks( o, callbacks, args ) {
- var prop = QUnit.objectType( o );
- if ( prop ) {
- if ( QUnit.objectType( callbacks[ prop ] ) === "function" ) {
- return callbacks[ prop ].apply( callbacks, args );
- } else {
- return callbacks[ prop ]; // or undefined
- }
- }
- }
-
- // the real equiv function
- var innerEquiv,
- // stack to decide between skip/abort functions
- callers = [],
- // stack to avoiding loops from circular referencing
- parents = [],
- parentsB = [],
-
- getProto = Object.getPrototypeOf || function ( obj ) {
- /*jshint camelcase:false */
- return obj.__proto__;
- },
- callbacks = (function () {
-
- // for string, boolean, number and null
- function useStrictEquality( b, a ) {
- /*jshint eqeqeq:false */
- if ( b instanceof a.constructor || a instanceof b.constructor ) {
- // to catch short annotation VS 'new' annotation of a
- // declaration
- // e.g. var i = 1;
- // var j = new Number(1);
- return a == b;
- } else {
- return a === b;
- }
- }
-
- return {
- "string": useStrictEquality,
- "boolean": useStrictEquality,
- "number": useStrictEquality,
- "null": useStrictEquality,
- "undefined": useStrictEquality,
-
- "nan": function( b ) {
- return isNaN( b );
- },
-
- "date": function( b, a ) {
- return QUnit.objectType( b ) === "date" && a.valueOf() === b.valueOf();
- },
-
- "regexp": function( b, a ) {
- return QUnit.objectType( b ) === "regexp" &&
- // the regex itself
- a.source === b.source &&
- // and its modifiers
- a.global === b.global &&
- // (gmi) ...
- a.ignoreCase === b.ignoreCase &&
- a.multiline === b.multiline &&
- a.sticky === b.sticky;
- },
-
- // - skip when the property is a method of an instance (OOP)
- // - abort otherwise,
- // initial === would have catch identical references anyway
- "function": function() {
- var caller = callers[callers.length - 1];
- return caller !== Object && typeof caller !== "undefined";
- },
-
- "array": function( b, a ) {
- var i, j, len, loop, aCircular, bCircular;
-
- // b could be an object literal here
- if ( QUnit.objectType( b ) !== "array" ) {
- return false;
- }
-
- len = a.length;
- if ( len !== b.length ) {
- // safe and faster
- return false;
- }
-
- // track reference to avoid circular references
- parents.push( a );
- parentsB.push( b );
- for ( i = 0; i < len; i++ ) {
- loop = false;
- for ( j = 0; j < parents.length; j++ ) {
- aCircular = parents[j] === a[i];
- bCircular = parentsB[j] === b[i];
- if ( aCircular || bCircular ) {
- if ( a[i] === b[i] || aCircular && bCircular ) {
- loop = true;
- } else {
- parents.pop();
- parentsB.pop();
- return false;
- }
- }
- }
- if ( !loop && !innerEquiv(a[i], b[i]) ) {
- parents.pop();
- parentsB.pop();
- return false;
- }
- }
- parents.pop();
- parentsB.pop();
- return true;
- },
-
- "object": function( b, a ) {
- /*jshint forin:false */
- var i, j, loop, aCircular, bCircular,
- // Default to true
- eq = true,
- aProperties = [],
- bProperties = [];
-
- // comparing constructors is more strict than using
- // instanceof
- if ( a.constructor !== b.constructor ) {
- // Allow objects with no prototype to be equivalent to
- // objects with Object as their constructor.
- if ( !(( getProto(a) === null && getProto(b) === Object.prototype ) ||
- ( getProto(b) === null && getProto(a) === Object.prototype ) ) ) {
- return false;
- }
- }
-
- // stack constructor before traversing properties
- callers.push( a.constructor );
-
- // track reference to avoid circular references
- parents.push( a );
- parentsB.push( b );
-
- // be strict: don't ensure hasOwnProperty and go deep
- for ( i in a ) {
- loop = false;
- for ( j = 0; j < parents.length; j++ ) {
- aCircular = parents[j] === a[i];
- bCircular = parentsB[j] === b[i];
- if ( aCircular || bCircular ) {
- if ( a[i] === b[i] || aCircular && bCircular ) {
- loop = true;
- } else {
- eq = false;
- break;
- }
- }
- }
- aProperties.push(i);
- if ( !loop && !innerEquiv(a[i], b[i]) ) {
- eq = false;
- break;
- }
- }
-
- parents.pop();
- parentsB.pop();
- callers.pop(); // unstack, we are done
-
- for ( i in b ) {
- bProperties.push( i ); // collect b's properties
- }
-
- // Ensures identical properties name
- return eq && innerEquiv( aProperties.sort(), bProperties.sort() );
- }
- };
- }());
-
- innerEquiv = function() { // can take multiple arguments
- var args = [].slice.apply( arguments );
- if ( args.length < 2 ) {
- return true; // end transition
- }
-
- return (function( a, b ) {
- if ( a === b ) {
- return true; // catch the most you can
- } else if ( a === null || b === null || typeof a === "undefined" ||
- typeof b === "undefined" ||
- QUnit.objectType(a) !== QUnit.objectType(b) ) {
- return false; // don't lose time with error prone cases
- } else {
- return bindCallbacks(a, callbacks, [ b, a ]);
- }
-
- // apply transition with (1..n) arguments
- }( args[0], args[1] ) && innerEquiv.apply( this, args.splice(1, args.length - 1 )) );
- };
-
- return innerEquiv;
-}());
-
-/**
- * jsDump Copyright (c) 2008 Ariel Flesler - aflesler(at)gmail(dot)com |
- * http://flesler.blogspot.com Licensed under BSD
- * (http://www.opensource.org/licenses/bsd-license.php) Date: 5/15/2008
- *
- * @projectDescription Advanced and extensible data dumping for Javascript.
- * @version 1.0.0
- * @author Ariel Flesler
- * @link {http://flesler.blogspot.com/2008/05/jsdump-pretty-dump-of-any-javascript.html}
- */
-QUnit.jsDump = (function() {
- function quote( str ) {
- return "\"" + str.toString().replace( /"/g, "\\\"" ) + "\"";
- }
- function literal( o ) {
- return o + "";
- }
- function join( pre, arr, post ) {
- var s = jsDump.separator(),
- base = jsDump.indent(),
- inner = jsDump.indent(1);
- if ( arr.join ) {
- arr = arr.join( "," + s + inner );
- }
- if ( !arr ) {
- return pre + post;
- }
- return [ pre, inner + arr, base + post ].join(s);
- }
- function array( arr, stack ) {
- var i = arr.length, ret = new Array(i);
- this.up();
- while ( i-- ) {
- ret[i] = this.parse( arr[i] , undefined , stack);
- }
- this.down();
- return join( "[", ret, "]" );
- }
-
- var reName = /^function (\w+)/,
- jsDump = {
- // type is used mostly internally, you can fix a (custom)type in advance
- parse: function( obj, type, stack ) {
- stack = stack || [ ];
- var inStack, res,
- parser = this.parsers[ type || this.typeOf(obj) ];
-
- type = typeof parser;
- inStack = inArray( obj, stack );
-
- if ( inStack !== -1 ) {
- return "recursion(" + (inStack - stack.length) + ")";
- }
- if ( type === "function" ) {
- stack.push( obj );
- res = parser.call( this, obj, stack );
- stack.pop();
- return res;
- }
- return ( type === "string" ) ? parser : this.parsers.error;
- },
- typeOf: function( obj ) {
- var type;
- if ( obj === null ) {
- type = "null";
- } else if ( typeof obj === "undefined" ) {
- type = "undefined";
- } else if ( QUnit.is( "regexp", obj) ) {
- type = "regexp";
- } else if ( QUnit.is( "date", obj) ) {
- type = "date";
- } else if ( QUnit.is( "function", obj) ) {
- type = "function";
- } else if ( typeof obj.setInterval !== undefined && typeof obj.document !== "undefined" && typeof obj.nodeType === "undefined" ) {
- type = "window";
- } else if ( obj.nodeType === 9 ) {
- type = "document";
- } else if ( obj.nodeType ) {
- type = "node";
- } else if (
- // native arrays
- toString.call( obj ) === "[object Array]" ||
- // NodeList objects
- ( typeof obj.length === "number" && typeof obj.item !== "undefined" && ( obj.length ? obj.item(0) === obj[0] : ( obj.item( 0 ) === null && typeof obj[0] === "undefined" ) ) )
- ) {
- type = "array";
- } else if ( obj.constructor === Error.prototype.constructor ) {
- type = "error";
- } else {
- type = typeof obj;
- }
- return type;
- },
- separator: function() {
- return this.multiline ? this.HTML ? "
" : "\n" : this.HTML ? " " : " ";
- },
- // extra can be a number, shortcut for increasing-calling-decreasing
- indent: function( extra ) {
- if ( !this.multiline ) {
- return "";
- }
- var chr = this.indentChar;
- if ( this.HTML ) {
- chr = chr.replace( /\t/g, " " ).replace( / /g, " " );
- }
- return new Array( this.depth + ( extra || 0 ) ).join(chr);
- },
- up: function( a ) {
- this.depth += a || 1;
- },
- down: function( a ) {
- this.depth -= a || 1;
- },
- setParser: function( name, parser ) {
- this.parsers[name] = parser;
- },
- // The next 3 are exposed so you can use them
- quote: quote,
- literal: literal,
- join: join,
- //
- depth: 1,
- // This is the list of parsers, to modify them, use jsDump.setParser
- parsers: {
- window: "[Window]",
- document: "[Document]",
- error: function(error) {
- return "Error(\"" + error.message + "\")";
- },
- unknown: "[Unknown]",
- "null": "null",
- "undefined": "undefined",
- "function": function( fn ) {
- var ret = "function",
- // functions never have name in IE
- name = "name" in fn ? fn.name : (reName.exec(fn) || [])[1];
-
- if ( name ) {
- ret += " " + name;
- }
- ret += "( ";
-
- ret = [ ret, QUnit.jsDump.parse( fn, "functionArgs" ), "){" ].join( "" );
- return join( ret, QUnit.jsDump.parse(fn,"functionCode" ), "}" );
- },
- array: array,
- nodelist: array,
- "arguments": array,
- object: function( map, stack ) {
- /*jshint forin:false */
- var ret = [ ], keys, key, val, i;
- QUnit.jsDump.up();
- keys = [];
- for ( key in map ) {
- keys.push( key );
- }
- keys.sort();
- for ( i = 0; i < keys.length; i++ ) {
- key = keys[ i ];
- val = map[ key ];
- ret.push( QUnit.jsDump.parse( key, "key" ) + ": " + QUnit.jsDump.parse( val, undefined, stack ) );
- }
- QUnit.jsDump.down();
- return join( "{", ret, "}" );
- },
- node: function( node ) {
- var len, i, val,
- open = QUnit.jsDump.HTML ? "<" : "<",
- close = QUnit.jsDump.HTML ? ">" : ">",
- tag = node.nodeName.toLowerCase(),
- ret = open + tag,
- attrs = node.attributes;
-
- if ( attrs ) {
- for ( i = 0, len = attrs.length; i < len; i++ ) {
- val = attrs[i].nodeValue;
- // IE6 includes all attributes in .attributes, even ones not explicitly set.
- // Those have values like undefined, null, 0, false, "" or "inherit".
- if ( val && val !== "inherit" ) {
- ret += " " + attrs[i].nodeName + "=" + QUnit.jsDump.parse( val, "attribute" );
- }
- }
- }
- ret += close;
-
- // Show content of TextNode or CDATASection
- if ( node.nodeType === 3 || node.nodeType === 4 ) {
- ret += node.nodeValue;
- }
-
- return ret + open + "/" + tag + close;
- },
- // function calls it internally, it's the arguments part of the function
- functionArgs: function( fn ) {
- var args,
- l = fn.length;
-
- if ( !l ) {
- return "";
- }
-
- args = new Array(l);
- while ( l-- ) {
- // 97 is 'a'
- args[l] = String.fromCharCode(97+l);
- }
- return " " + args.join( ", " ) + " ";
- },
- // object calls it internally, the key part of an item in a map
- key: quote,
- // function calls it internally, it's the content of the function
- functionCode: "[code]",
- // node calls it internally, it's an html attribute value
- attribute: quote,
- string: quote,
- date: quote,
- regexp: literal,
- number: literal,
- "boolean": literal
- },
- // if true, entities are escaped ( <, >, \t, space and \n )
- HTML: false,
- // indentation unit
- indentChar: " ",
- // if true, items in a collection, are separated by a \n, else just a space.
- multiline: true
- };
-
- return jsDump;
-}());
-
-// from jquery.js
-function inArray( elem, array ) {
- if ( array.indexOf ) {
- return array.indexOf( elem );
- }
-
- for ( var i = 0, length = array.length; i < length; i++ ) {
- if ( array[ i ] === elem ) {
- return i;
- }
- }
-
- return -1;
-}
-
-/*
- * Javascript Diff Algorithm
- * By John Resig (http://ejohn.org/)
- * Modified by Chu Alan "sprite"
- *
- * Released under the MIT license.
- *
- * More Info:
- * http://ejohn.org/projects/javascript-diff-algorithm/
- *
- * Usage: QUnit.diff(expected, actual)
- *
- * QUnit.diff( "the quick brown fox jumped over", "the quick fox jumps over" ) == "the quick brown fox jumped jumps over"
- */
-QUnit.diff = (function() {
- /*jshint eqeqeq:false, eqnull:true */
- function diff( o, n ) {
- var i,
- ns = {},
- os = {};
-
- for ( i = 0; i < n.length; i++ ) {
- if ( !hasOwn.call( ns, n[i] ) ) {
- ns[ n[i] ] = {
- rows: [],
- o: null
- };
- }
- ns[ n[i] ].rows.push( i );
- }
-
- for ( i = 0; i < o.length; i++ ) {
- if ( !hasOwn.call( os, o[i] ) ) {
- os[ o[i] ] = {
- rows: [],
- n: null
- };
- }
- os[ o[i] ].rows.push( i );
- }
-
- for ( i in ns ) {
- if ( hasOwn.call( ns, i ) ) {
- if ( ns[i].rows.length === 1 && hasOwn.call( os, i ) && os[i].rows.length === 1 ) {
- n[ ns[i].rows[0] ] = {
- text: n[ ns[i].rows[0] ],
- row: os[i].rows[0]
- };
- o[ os[i].rows[0] ] = {
- text: o[ os[i].rows[0] ],
- row: ns[i].rows[0]
- };
- }
- }
- }
-
- for ( i = 0; i < n.length - 1; i++ ) {
- if ( n[i].text != null && n[ i + 1 ].text == null && n[i].row + 1 < o.length && o[ n[i].row + 1 ].text == null &&
- n[ i + 1 ] == o[ n[i].row + 1 ] ) {
-
- n[ i + 1 ] = {
- text: n[ i + 1 ],
- row: n[i].row + 1
- };
- o[ n[i].row + 1 ] = {
- text: o[ n[i].row + 1 ],
- row: i + 1
- };
- }
- }
-
- for ( i = n.length - 1; i > 0; i-- ) {
- if ( n[i].text != null && n[ i - 1 ].text == null && n[i].row > 0 && o[ n[i].row - 1 ].text == null &&
- n[ i - 1 ] == o[ n[i].row - 1 ]) {
-
- n[ i - 1 ] = {
- text: n[ i - 1 ],
- row: n[i].row - 1
- };
- o[ n[i].row - 1 ] = {
- text: o[ n[i].row - 1 ],
- row: i - 1
- };
- }
- }
-
- return {
- o: o,
- n: n
- };
- }
-
- return function( o, n ) {
- o = o.replace( /\s+$/, "" );
- n = n.replace( /\s+$/, "" );
-
- var i, pre,
- str = "",
- out = diff( o === "" ? [] : o.split(/\s+/), n === "" ? [] : n.split(/\s+/) ),
- oSpace = o.match(/\s+/g),
- nSpace = n.match(/\s+/g);
-
- if ( oSpace == null ) {
- oSpace = [ " " ];
- }
- else {
- oSpace.push( " " );
- }
-
- if ( nSpace == null ) {
- nSpace = [ " " ];
- }
- else {
- nSpace.push( " " );
- }
-
- if ( out.n.length === 0 ) {
- for ( i = 0; i < out.o.length; i++ ) {
- str += "" + out.o[i] + oSpace[i] + "";
- }
- }
- else {
- if ( out.n[0].text == null ) {
- for ( n = 0; n < out.o.length && out.o[n].text == null; n++ ) {
- str += "" + out.o[n] + oSpace[n] + "";
- }
- }
-
- for ( i = 0; i < out.n.length; i++ ) {
- if (out.n[i].text == null) {
- str += "" + out.n[i] + nSpace[i] + "";
- }
- else {
- // `pre` initialized at top of scope
- pre = "";
-
- for ( n = out.n[i].row + 1; n < out.o.length && out.o[n].text == null; n++ ) {
- pre += "" + out.o[n] + oSpace[n] + "";
- }
- str += " " + out.n[i].text + nSpace[i] + pre;
- }
- }
- }
-
- return str;
- };
-}());
-
-// for CommonJS environments, export everything
-if ( typeof exports !== "undefined" ) {
- extend( exports, QUnit.constructor.prototype );
-}
-
-// get at whatever the global object is, like window in browsers
-}( window ));
diff --git a/assets/scripts/spec/vendor/sinon.js b/assets/scripts/spec/vendor/sinon.js
deleted file mode 100644
index d50830c4..00000000
--- a/assets/scripts/spec/vendor/sinon.js
+++ /dev/null
@@ -1,3555 +0,0 @@
-/**
- * Sinon.JS 1.3.4, 2012/04/16
- *
- * @author Christian Johansen (christian@cjohansen.no)
- *
- * (The BSD License)
- *
- * Copyright (c) 2010-2011, Christian Johansen, christian@cjohansen.no
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- *
- * * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * * Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * * Neither the name of Christian Johansen nor the names of his contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-"use strict";
-var sinon = (function () {
-var buster = (function (buster, setTimeout) {
- function extend(target) {
- if (!target) {
- return;
- }
-
- for (var i = 1, l = arguments.length, prop; i < l; ++i) {
- for (prop in arguments[i]) {
- target[prop] = arguments[i][prop];
- }
- }
-
- return target;
- }
-
- var div = typeof document != "undefined" && document.createElement("div");
-
- return extend(buster, {
- bind: function (obj, methOrProp) {
- var method = typeof methOrProp == "string" ? obj[methOrProp] : methOrProp;
- var args = Array.prototype.slice.call(arguments, 2);
-
- return function () {
- var allArgs = args.concat(Array.prototype.slice.call(arguments));
- return method.apply(obj, allArgs);
- };
- },
-
- create: (function () {
- function F() {}
-
- return function create(object) {
- F.prototype = object;
- return new F();
- }
- }()),
-
- extend: extend,
-
- nextTick: function (callback) {
- if (typeof process != "undefined" && process.nextTick) {
- return process.nextTick(callback);
- }
-
- setTimeout(callback, 0);
- },
-
- functionName: function (func) {
- if (!func) return "";
- if (func.displayName) return func.displayName;
- if (func.name) return func.name;
-
- var matches = func.toString().match(/function\s+([^\(]+)/m);
- return matches && matches[1] || "";
- },
-
- isNode: function (obj) {
- if (!div) return false;
-
- try {
- obj.appendChild(div);
- obj.removeChild(div);
- } catch (e) {
- return false;
- }
-
- return true;
- },
-
- isElement: function (obj) {
- return obj && buster.isNode(obj) && obj.nodeType === 1;
- }
- });
-}(buster || {}, setTimeout));
-
-if (typeof module == "object" && typeof require == "function") {
- module.exports = buster;
- buster.eventEmitter = require("./buster-event-emitter");
-
- Object.defineProperty(buster, "defineVersionGetter", {
- get: function () {
- return require("./define-version-getter");
- }
- });
-}
-if (typeof buster === "undefined") {
- var buster = {};
-}
-
-if (typeof module === "object" && typeof require === "function") {
- buster = require("buster-core");
-}
-
-buster.format = buster.format || {};
-buster.format.excludeConstructors = ["Object", /^.$/];
-buster.format.quoteStrings = true;
-
-buster.format.ascii = (function () {
-
- function keys(object) {
- var k = Object.keys && Object.keys(object) || [];
-
- if (k.length == 0) {
- for (var prop in object) {
- if (object.hasOwnProperty(prop)) {
- k.push(prop);
- }
- }
- }
-
- return k.sort();
- }
-
- function isCircular(object, objects) {
- if (typeof object != "object") {
- return false;
- }
-
- for (var i = 0, l = objects.length; i < l; ++i) {
- if (objects[i] === object) {
- return true;
- }
- }
-
- return false;
- }
-
- function ascii(object, processed, indent) {
- if (typeof object == "string") {
- var quote = typeof this.quoteStrings != "boolean" || this.quoteStrings;
- return processed || quote ? '"' + object + '"' : object;
- }
-
- if (typeof object == "function" && !(object instanceof RegExp)) {
- return ascii.func(object);
- }
-
- processed = processed || [];
-
- if (isCircular(object, processed)) {
- return "[Circular]";
- }
-
- if (Object.prototype.toString.call(object) == "[object Array]") {
- return ascii.array.call(this, object);
- }
-
- if (!object) {
- return "" + object;
- }
-
- if (buster.isElement(object)) {
- return ascii.element(object);
- }
-
- if (typeof object.toString == "function" &&
- object.toString !== Object.prototype.toString) {
- return object.toString();
- }
-
- return ascii.object.call(this, object, processed, indent);
- }
-
- ascii.func = function (func) {
- return "function " + buster.functionName(func) + "() {}";
- };
-
- ascii.array = function (array, processed) {
- processed = processed || [];
- processed.push(array);
- var pieces = [];
-
- for (var i = 0, l = array.length; i < l; ++i) {
- pieces.push(ascii.call(this, array[i], processed));
- }
-
- return "[" + pieces.join(", ") + "]";
- };
-
- ascii.object = function (object, processed, indent) {
- processed = processed || [];
- processed.push(object);
- indent = indent || 0;
- var pieces = [], properties = keys(object), prop, str, obj;
- var is = "";
- var length = 3;
-
- for (var i = 0, l = indent; i < l; ++i) {
- is += " ";
- }
-
- for (i = 0, l = properties.length; i < l; ++i) {
- prop = properties[i];
- obj = object[prop];
-
- if (isCircular(obj, processed)) {
- str = "[Circular]";
- } else {
- str = ascii.call(this, obj, processed, indent + 2);
- }
-
- str = (/\s/.test(prop) ? '"' + prop + '"' : prop) + ": " + str;
- length += str.length;
- pieces.push(str);
- }
-
- var cons = ascii.constructorName.call(this, object);
- var prefix = cons ? "[" + cons + "] " : ""
-
- return (length + indent) > 80 ?
- prefix + "{\n " + is + pieces.join(",\n " + is) + "\n" + is + "}" :
- prefix + "{ " + pieces.join(", ") + " }";
- };
-
- ascii.element = function (element) {
- var tagName = element.tagName.toLowerCase();
- var attrs = element.attributes, attribute, pairs = [], attrName;
-
- for (var i = 0, l = attrs.length; i < l; ++i) {
- attribute = attrs.item(i);
- attrName = attribute.nodeName.toLowerCase().replace("html:", "");
-
- if (attrName == "contenteditable" && attribute.nodeValue == "inherit") {
- continue;
- }
-
- if (!!attribute.nodeValue) {
- pairs.push(attrName + "=\"" + attribute.nodeValue + "\"");
- }
- }
-
- var formatted = "<" + tagName + (pairs.length > 0 ? " " : "");
- var content = element.innerHTML;
-
- if (content.length > 20) {
- content = content.substr(0, 20) + "[...]";
- }
-
- var res = formatted + pairs.join(" ") + ">" + content + "" + tagName + ">";
-
- return res.replace(/ contentEditable="inherit"/, "");
- };
-
- ascii.constructorName = function (object) {
- var name = buster.functionName(object && object.constructor);
- var excludes = this.excludeConstructors || buster.format.excludeConstructors || [];
-
- for (var i = 0, l = excludes.length; i < l; ++i) {
- if (typeof excludes[i] == "string" && excludes[i] == name) {
- return "";
- } else if (excludes[i].test && excludes[i].test(name)) {
- return "";
- }
- }
-
- return name;
- };
-
- return ascii;
-}());
-
-if (typeof module != "undefined") {
- module.exports = buster.format;
-}
-/*jslint eqeqeq: false, onevar: false, forin: true, nomen: false, regexp: false, plusplus: false*/
-/*global module, require, __dirname, document*/
-/**
- * Sinon core utilities. For internal use only.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-var sinon = (function (buster) {
- var div = typeof document != "undefined" && document.createElement("div");
- var hasOwn = Object.prototype.hasOwnProperty;
-
- function isDOMNode(obj) {
- var success = false;
-
- try {
- obj.appendChild(div);
- success = div.parentNode == obj;
- } catch (e) {
- return false;
- } finally {
- try {
- obj.removeChild(div);
- } catch (e) {
- // Remove failed, not much we can do about that
- }
- }
-
- return success;
- }
-
- function isElement(obj) {
- return div && obj && obj.nodeType === 1 && isDOMNode(obj);
- }
-
- function isFunction(obj) {
- return !!(obj && obj.constructor && obj.call && obj.apply);
- }
-
- function mirrorProperties(target, source) {
- for (var prop in source) {
- if (!hasOwn.call(target, prop)) {
- target[prop] = source[prop];
- }
- }
- }
-
- var sinon = {
- wrapMethod: function wrapMethod(object, property, method) {
- if (!object) {
- throw new TypeError("Should wrap property of object");
- }
-
- if (typeof method != "function") {
- throw new TypeError("Method wrapper should be function");
- }
-
- var wrappedMethod = object[property];
-
- if (!isFunction(wrappedMethod)) {
- throw new TypeError("Attempted to wrap " + (typeof wrappedMethod) + " property " +
- property + " as function");
- }
-
- if (wrappedMethod.restore && wrappedMethod.restore.sinon) {
- throw new TypeError("Attempted to wrap " + property + " which is already wrapped");
- }
-
- if (wrappedMethod.calledBefore) {
- var verb = !!wrappedMethod.returns ? "stubbed" : "spied on";
- throw new TypeError("Attempted to wrap " + property + " which is already " + verb);
- }
-
- // IE 8 does not support hasOwnProperty on the window object.
- var owned = hasOwn.call(object, property);
- object[property] = method;
- method.displayName = property;
-
- method.restore = function () {
- if(owned) {
- object[property] = wrappedMethod;
- } else {
- delete object[property];
- }
- };
-
- method.restore.sinon = true;
- mirrorProperties(method, wrappedMethod);
-
- return method;
- },
-
- extend: function extend(target) {
- for (var i = 1, l = arguments.length; i < l; i += 1) {
- for (var prop in arguments[i]) {
- if (arguments[i].hasOwnProperty(prop)) {
- target[prop] = arguments[i][prop];
- }
-
- // DONT ENUM bug, only care about toString
- if (arguments[i].hasOwnProperty("toString") &&
- arguments[i].toString != target.toString) {
- target.toString = arguments[i].toString;
- }
- }
- }
-
- return target;
- },
-
- create: function create(proto) {
- var F = function () {};
- F.prototype = proto;
- return new F();
- },
-
- deepEqual: function deepEqual(a, b) {
- if (typeof a != "object" || typeof b != "object") {
- return a === b;
- }
-
- if (isElement(a) || isElement(b)) {
- return a === b;
- }
-
- if (a === b) {
- return true;
- }
-
- var aString = Object.prototype.toString.call(a);
- if (aString != Object.prototype.toString.call(b)) {
- return false;
- }
-
- if (aString == "[object Array]") {
- if (a.length !== b.length) {
- return false;
- }
-
- for (var i = 0, l = a.length; i < l; i += 1) {
- if (!deepEqual(a[i], b[i])) {
- return false;
- }
- }
-
- return true;
- }
-
- var prop, aLength = 0, bLength = 0;
-
- for (prop in a) {
- aLength += 1;
-
- if (!deepEqual(a[prop], b[prop])) {
- return false;
- }
- }
-
- for (prop in b) {
- bLength += 1;
- }
-
- if (aLength != bLength) {
- return false;
- }
-
- return true;
- },
-
- functionName: function functionName(func) {
- var name = func.displayName || func.name;
-
- // Use function decomposition as a last resort to get function
- // name. Does not rely on function decomposition to work - if it
- // doesn't debugging will be slightly less informative
- // (i.e. toString will say 'spy' rather than 'myFunc').
- if (!name) {
- var matches = func.toString().match(/function ([^\s\(]+)/);
- name = matches && matches[1];
- }
-
- return name;
- },
-
- functionToString: function toString() {
- if (this.getCall && this.callCount) {
- var thisValue, prop, i = this.callCount;
-
- while (i--) {
- thisValue = this.getCall(i).thisValue;
-
- for (prop in thisValue) {
- if (thisValue[prop] === this) {
- return prop;
- }
- }
- }
- }
-
- return this.displayName || "sinon fake";
- },
-
- getConfig: function (custom) {
- var config = {};
- custom = custom || {};
- var defaults = sinon.defaultConfig;
-
- for (var prop in defaults) {
- if (defaults.hasOwnProperty(prop)) {
- config[prop] = custom.hasOwnProperty(prop) ? custom[prop] : defaults[prop];
- }
- }
-
- return config;
- },
-
- format: function (val) {
- return "" + val;
- },
-
- defaultConfig: {
- injectIntoThis: true,
- injectInto: null,
- properties: ["spy", "stub", "mock", "clock", "server", "requests"],
- useFakeTimers: true,
- useFakeServer: true
- },
-
- timesInWords: function timesInWords(count) {
- return count == 1 && "once" ||
- count == 2 && "twice" ||
- count == 3 && "thrice" ||
- (count || 0) + " times";
- },
-
- calledInOrder: function (spies) {
- for (var i = 1, l = spies.length; i < l; i++) {
- if (!spies[i - 1].calledBefore(spies[i])) {
- return false;
- }
- }
-
- return true;
- },
-
- orderByFirstCall: function (spies) {
- return spies.sort(function (a, b) {
- // uuid, won't ever be equal
- var aCall = a.getCall(0);
- var bCall = b.getCall(0);
- var aId = aCall && aCall.callId || -1;
- var bId = bCall && bCall.callId || -1;
-
- return aId < bId ? -1 : 1;
- });
- },
-
- log: function () {},
-
- logError: function (label, err) {
- var msg = label + " threw exception: "
- sinon.log(msg + "[" + err.name + "] " + err.message);
- if (err.stack) { sinon.log(err.stack); }
-
- setTimeout(function () {
- err.message = msg + err.message;
- throw err;
- }, 0);
- }
- };
-
- var isNode = typeof module == "object" && typeof require == "function";
-
- if (isNode) {
- try {
- buster = { format: require("buster-format") };
- } catch (e) {}
- module.exports = sinon;
- module.exports.spy = require("./sinon/spy");
- module.exports.stub = require("./sinon/stub");
- module.exports.mock = require("./sinon/mock");
- module.exports.collection = require("./sinon/collection");
- module.exports.assert = require("./sinon/assert");
- module.exports.sandbox = require("./sinon/sandbox");
- module.exports.test = require("./sinon/test");
- module.exports.testCase = require("./sinon/test_case");
- module.exports.assert = require("./sinon/assert");
- }
-
- if (buster) {
- var formatter = sinon.create(buster.format);
- formatter.quoteStrings = false;
- sinon.format = function () {
- return formatter.ascii.apply(formatter, arguments);
- };
- } else if (isNode) {
- try {
- var util = require("util");
- sinon.format = function (value) {
- return typeof value == "object" ? util.inspect(value) : value;
- };
- } catch (e) {
- /* Node, but no util module - would be very old, but better safe than
- sorry */
- }
- }
-
- return sinon;
-}(typeof buster == "object" && buster));
-
-/* @depend ../sinon.js */
-/*jslint eqeqeq: false, onevar: false, plusplus: false*/
-/*global module, require, sinon*/
-/**
- * Spy functions
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
- var spyCall;
- var callId = 0;
- var push = [].push;
- var slice = Array.prototype.slice;
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function spy(object, property) {
- if (!property && typeof object == "function") {
- return spy.create(object);
- }
-
- if (!object || !property) {
- return spy.create(function () {});
- }
-
- var method = object[property];
- return sinon.wrapMethod(object, property, spy.create(method));
- }
-
- sinon.extend(spy, (function () {
-
- function delegateToCalls(api, method, matchAny, actual, notCalled) {
- api[method] = function () {
- if (!this.called) {
- if (notCalled) {
- return notCalled.apply(this, arguments);
- }
- return false;
- }
-
- var currentCall;
- var matches = 0;
-
- for (var i = 0, l = this.callCount; i < l; i += 1) {
- currentCall = this.getCall(i);
-
- if (currentCall[actual || method].apply(currentCall, arguments)) {
- matches += 1;
-
- if (matchAny) {
- return true;
- }
- }
- }
-
- return matches === this.callCount;
- };
- }
-
- function matchingFake(fakes, args, strict) {
- if (!fakes) {
- return;
- }
-
- var alen = args.length;
-
- for (var i = 0, l = fakes.length; i < l; i++) {
- if (fakes[i].matches(args, strict)) {
- return fakes[i];
- }
- }
- }
-
- function incrementCallCount() {
- this.called = true;
- this.callCount += 1;
- this.calledOnce = this.callCount == 1;
- this.calledTwice = this.callCount == 2;
- this.calledThrice = this.callCount == 3;
- }
-
- function createCallProperties() {
- this.firstCall = this.getCall(0);
- this.secondCall = this.getCall(1);
- this.thirdCall = this.getCall(2);
- this.lastCall = this.getCall(this.callCount - 1);
- }
-
- var uuid = 0;
-
- // Public API
- var spyApi = {
- reset: function () {
- this.called = false;
- this.calledOnce = false;
- this.calledTwice = false;
- this.calledThrice = false;
- this.callCount = 0;
- this.firstCall = null;
- this.secondCall = null;
- this.thirdCall = null;
- this.lastCall = null;
- this.args = [];
- this.returnValues = [];
- this.thisValues = [];
- this.exceptions = [];
- this.callIds = [];
- },
-
- create: function create(func) {
- var name;
-
- if (typeof func != "function") {
- func = function () {};
- } else {
- name = sinon.functionName(func);
- }
-
- function proxy() {
- return proxy.invoke(func, this, slice.call(arguments));
- }
-
- sinon.extend(proxy, spy);
- delete proxy.create;
- sinon.extend(proxy, func);
-
- proxy.reset();
- proxy.prototype = func.prototype;
- proxy.displayName = name || "spy";
- proxy.toString = sinon.functionToString;
- proxy._create = sinon.spy.create;
- proxy.id = "spy#" + uuid++;
-
- return proxy;
- },
-
- invoke: function invoke(func, thisValue, args) {
- var matching = matchingFake(this.fakes, args);
- var exception, returnValue;
-
- incrementCallCount.call(this);
- push.call(this.thisValues, thisValue);
- push.call(this.args, args);
- push.call(this.callIds, callId++);
-
- try {
- if (matching) {
- returnValue = matching.invoke(func, thisValue, args);
- } else {
- returnValue = (this.func || func).apply(thisValue, args);
- }
- } catch (e) {
- push.call(this.returnValues, undefined);
- exception = e;
- throw e;
- } finally {
- push.call(this.exceptions, exception);
- }
-
- push.call(this.returnValues, returnValue);
-
- createCallProperties.call(this);
-
- return returnValue;
- },
-
- getCall: function getCall(i) {
- if (i < 0 || i >= this.callCount) {
- return null;
- }
-
- return spyCall.create(this, this.thisValues[i], this.args[i],
- this.returnValues[i], this.exceptions[i],
- this.callIds[i]);
- },
-
- calledBefore: function calledBefore(spyFn) {
- if (!this.called) {
- return false;
- }
-
- if (!spyFn.called) {
- return true;
- }
-
- return this.callIds[0] < spyFn.callIds[spyFn.callIds.length - 1];
- },
-
- calledAfter: function calledAfter(spyFn) {
- if (!this.called || !spyFn.called) {
- return false;
- }
-
- return this.callIds[this.callCount - 1] > spyFn.callIds[spyFn.callCount - 1];
- },
-
- withArgs: function () {
- var args = slice.call(arguments);
-
- if (this.fakes) {
- var match = matchingFake(this.fakes, args, true);
-
- if (match) {
- return match;
- }
- } else {
- this.fakes = [];
- }
-
- var original = this;
- var fake = this._create();
- fake.matchingAguments = args;
- push.call(this.fakes, fake);
-
- fake.withArgs = function () {
- return original.withArgs.apply(original, arguments);
- };
-
- for (var i = 0; i < this.args.length; i++) {
- if (fake.matches(this.args[i])) {
- incrementCallCount.call(fake);
- push.call(fake.thisValues, this.thisValues[i]);
- push.call(fake.args, this.args[i]);
- push.call(fake.returnValues, this.returnValues[i]);
- push.call(fake.exceptions, this.exceptions[i]);
- push.call(fake.callIds, this.callIds[i]);
- }
- }
- createCallProperties.call(fake);
-
- return fake;
- },
-
- matches: function (args, strict) {
- var margs = this.matchingAguments;
-
- if (margs.length <= args.length &&
- sinon.deepEqual(margs, args.slice(0, margs.length))) {
- return !strict || margs.length == args.length;
- }
- },
-
- printf: function (format) {
- var spy = this;
- var args = slice.call(arguments, 1);
- var formatter;
-
- return (format || "").replace(/%(.)/g, function (match, specifyer) {
- formatter = spyApi.formatters[specifyer];
-
- if (typeof formatter == "function") {
- return formatter.call(null, spy, args);
- } else if (!isNaN(parseInt(specifyer), 10)) {
- return sinon.format(args[specifyer - 1]);
- }
-
- return "%" + specifyer;
- });
- }
- };
-
- delegateToCalls(spyApi, "calledOn", true);
- delegateToCalls(spyApi, "alwaysCalledOn", false, "calledOn");
- delegateToCalls(spyApi, "calledWith", true);
- delegateToCalls(spyApi, "alwaysCalledWith", false, "calledWith");
- delegateToCalls(spyApi, "calledWithExactly", true);
- delegateToCalls(spyApi, "alwaysCalledWithExactly", false, "calledWithExactly");
- delegateToCalls(spyApi, "neverCalledWith", false, "notCalledWith",
- function () { return true; });
- delegateToCalls(spyApi, "threw", true);
- delegateToCalls(spyApi, "alwaysThrew", false, "threw");
- delegateToCalls(spyApi, "returned", true);
- delegateToCalls(spyApi, "alwaysReturned", false, "returned");
- delegateToCalls(spyApi, "calledWithNew", true);
- delegateToCalls(spyApi, "alwaysCalledWithNew", false, "calledWithNew");
- delegateToCalls(spyApi, "callArg", false, "callArgWith", function () {
- throw new Error(this.toString() + " cannot call arg since it was not yet invoked.");
- });
- spyApi.callArgWith = spyApi.callArg;
- delegateToCalls(spyApi, "yield", false, "yield", function () {
- throw new Error(this.toString() + " cannot yield since it was not yet invoked.");
- });
- // "invokeCallback" is an alias for "yield" since "yield" is invalid in strict mode.
- spyApi.invokeCallback = spyApi.yield;
- delegateToCalls(spyApi, "yieldTo", false, "yieldTo", function (property) {
- throw new Error(this.toString() + " cannot yield to '" + property +
- "' since it was not yet invoked.");
- });
-
- spyApi.formatters = {
- "c": function (spy) {
- return sinon.timesInWords(spy.callCount);
- },
-
- "n": function (spy) {
- return spy.toString();
- },
-
- "C": function (spy) {
- var calls = [];
-
- for (var i = 0, l = spy.callCount; i < l; ++i) {
- push.call(calls, " " + spy.getCall(i).toString());
- }
-
- return calls.length > 0 ? "\n" + calls.join("\n") : "";
- },
-
- "t": function (spy) {
- var objects = [];
-
- for (var i = 0, l = spy.callCount; i < l; ++i) {
- push.call(objects, sinon.format(spy.thisValues[i]));
- }
-
- return objects.join(", ");
- },
-
- "*": function (spy, args) {
- return args.join(", ");
- }
- };
-
- return spyApi;
- }()));
-
- spyCall = (function () {
-
- function throwYieldError(proxy, text, args) {
- var msg = sinon.functionName(proxy) + text;
- if (args.length) {
- msg += " Received [" + slice.call(args).join(", ") + "]";
- }
- throw new Error(msg);
- }
-
- return {
- create: function create(spy, thisValue, args, returnValue, exception, id) {
- var proxyCall = sinon.create(spyCall);
- delete proxyCall.create;
- proxyCall.proxy = spy;
- proxyCall.thisValue = thisValue;
- proxyCall.args = args;
- proxyCall.returnValue = returnValue;
- proxyCall.exception = exception;
- proxyCall.callId = typeof id == "number" && id || callId++;
-
- return proxyCall;
- },
-
- calledOn: function calledOn(thisValue) {
- return this.thisValue === thisValue;
- },
-
- calledWith: function calledWith() {
- for (var i = 0, l = arguments.length; i < l; i += 1) {
- if (!sinon.deepEqual(arguments[i], this.args[i])) {
- return false;
- }
- }
-
- return true;
- },
-
- calledWithExactly: function calledWithExactly() {
- return arguments.length == this.args.length &&
- this.calledWith.apply(this, arguments);
- },
-
- notCalledWith: function notCalledWith() {
- for (var i = 0, l = arguments.length; i < l; i += 1) {
- if (!sinon.deepEqual(arguments[i], this.args[i])) {
- return true;
- }
- }
- return false;
- },
-
- returned: function returned(value) {
- return this.returnValue === value;
- },
-
- threw: function threw(error) {
- if (typeof error == "undefined" || !this.exception) {
- return !!this.exception;
- }
-
- if (typeof error == "string") {
- return this.exception.name == error;
- }
-
- return this.exception === error;
- },
-
- calledWithNew: function calledWithNew(thisValue) {
- return this.thisValue instanceof this.proxy;
- },
-
- calledBefore: function (other) {
- return this.callId < other.callId;
- },
-
- calledAfter: function (other) {
- return this.callId > other.callId;
- },
-
- callArg: function (pos) {
- this.args[pos]();
- },
-
- callArgWith: function (pos) {
- var args = slice.call(arguments, 1);
- this.args[pos].apply(null, args);
- },
-
- "yield": function () {
- var args = this.args;
- for (var i = 0, l = args.length; i < l; ++i) {
- if (typeof args[i] === "function") {
- args[i].apply(null, slice.call(arguments));
- return;
- }
- }
- throwYieldError(this.proxy, " cannot yield since no callback was passed.", args);
- },
-
- yieldTo: function (prop) {
- var args = this.args;
- for (var i = 0, l = args.length; i < l; ++i) {
- if (args[i] && typeof args[i][prop] === "function") {
- args[i][prop].apply(null, slice.call(arguments, 1));
- return;
- }
- }
- throwYieldError(this.proxy, " cannot yield to '" + prop +
- "' since no callback was passed.", args);
- },
-
- toString: function () {
- var callStr = this.proxy.toString() + "(";
- var args = [];
-
- for (var i = 0, l = this.args.length; i < l; ++i) {
- push.call(args, sinon.format(this.args[i]));
- }
-
- callStr = callStr + args.join(", ") + ")";
-
- if (typeof this.returnValue != "undefined") {
- callStr += " => " + sinon.format(this.returnValue);
- }
-
- if (this.exception) {
- callStr += " !" + this.exception.name;
-
- if (this.exception.message) {
- callStr += "(" + this.exception.message + ")";
- }
- }
-
- return callStr;
- }
- };
- }());
-
- spy.spyCall = spyCall;
-
- // This steps outside the module sandbox and will be removed
- sinon.spyCall = spyCall;
-
- if (commonJSModule) {
- module.exports = spy;
- } else {
- sinon.spy = spy;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/**
- * @depend ../sinon.js
- * @depend spy.js
- */
-/*jslint eqeqeq: false, onevar: false*/
-/*global module, require, sinon*/
-/**
- * Stub functions
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function stub(object, property, func) {
- if (!!func && typeof func != "function") {
- throw new TypeError("Custom stub should be function");
- }
-
- var wrapper;
-
- if (func) {
- wrapper = sinon.spy && sinon.spy.create ? sinon.spy.create(func) : func;
- } else {
- wrapper = stub.create();
- }
-
- if (!object && !property) {
- return sinon.stub.create();
- }
-
- if (!property && !!object && typeof object == "object") {
- for (var prop in object) {
- if (typeof object[prop] === "function") {
- stub(object, prop);
- }
- }
-
- return object;
- }
-
- return sinon.wrapMethod(object, property, wrapper);
- }
-
- function getCallback(stub, args) {
- if (stub.callArgAt < 0) {
- for (var i = 0, l = args.length; i < l; ++i) {
- if (!stub.callArgProp && typeof args[i] == "function") {
- return args[i];
- }
-
- if (stub.callArgProp && args[i] &&
- typeof args[i][stub.callArgProp] == "function") {
- return args[i][stub.callArgProp];
- }
- }
-
- return null;
- }
-
- return args[stub.callArgAt];
- }
-
- var join = Array.prototype.join;
-
- function getCallbackError(stub, func, args) {
- if (stub.callArgAt < 0) {
- var msg;
-
- if (stub.callArgProp) {
- msg = sinon.functionName(stub) +
- " expected to yield to '" + stub.callArgProp +
- "', but no object with such a property was passed."
- } else {
- msg = sinon.functionName(stub) +
- " expected to yield, but no callback was passed."
- }
-
- if (args.length > 0) {
- msg += " Received [" + join.call(args, ", ") + "]";
- }
-
- return msg;
- }
-
- return "argument at index " + stub.callArgAt + " is not a function: " + func;
- }
-
- function callCallback(stub, args) {
- if (typeof stub.callArgAt == "number") {
- var func = getCallback(stub, args);
-
- if (typeof func != "function") {
- throw new TypeError(getCallbackError(stub, func, args));
- }
-
- func.apply(stub.callbackContext, stub.callbackArguments);
- }
- }
-
- var uuid = 0;
-
- sinon.extend(stub, (function () {
- var slice = Array.prototype.slice;
-
- function throwsException(error, message) {
- if (typeof error == "string") {
- this.exception = new Error(message || "");
- this.exception.name = error;
- } else if (!error) {
- this.exception = new Error("Error");
- } else {
- this.exception = error;
- }
-
- return this;
- }
-
- return {
- create: function create() {
- var functionStub = function () {
- if (functionStub.exception) {
- throw functionStub.exception;
- } else if (typeof functionStub.returnArgAt == 'number') {
- return arguments[functionStub.returnArgAt];
- }
-
- callCallback(functionStub, arguments);
-
- return functionStub.returnValue;
- };
-
- functionStub.id = "stub#" + uuid++;
- var orig = functionStub;
- functionStub = sinon.spy.create(functionStub);
- functionStub.func = orig;
-
- sinon.extend(functionStub, stub);
- functionStub._create = sinon.stub.create;
- functionStub.displayName = "stub";
- functionStub.toString = sinon.functionToString;
-
- return functionStub;
- },
-
- returns: function returns(value) {
- this.returnValue = value;
-
- return this;
- },
-
- returnsArg: function returnsArg(pos) {
- if (typeof pos != "number") {
- throw new TypeError("argument index is not number");
- }
-
- this.returnArgAt = pos;
-
- return this;
- },
-
- "throws": throwsException,
- throwsException: throwsException,
-
- callsArg: function callsArg(pos) {
- if (typeof pos != "number") {
- throw new TypeError("argument index is not number");
- }
-
- this.callArgAt = pos;
- this.callbackArguments = [];
-
- return this;
- },
-
- callsArgOn: function callsArgOn(pos, context) {
- if (typeof pos != "number") {
- throw new TypeError("argument index is not number");
- }
- if (typeof context != "object") {
- throw new TypeError("argument context is not an object");
- }
-
- this.callArgAt = pos;
- this.callbackArguments = [];
- this.callbackContext = context;
-
- return this;
- },
-
- callsArgWith: function callsArgWith(pos) {
- if (typeof pos != "number") {
- throw new TypeError("argument index is not number");
- }
-
- this.callArgAt = pos;
- this.callbackArguments = slice.call(arguments, 1);
-
- return this;
- },
-
- callsArgOnWith: function callsArgWith(pos, context) {
- if (typeof pos != "number") {
- throw new TypeError("argument index is not number");
- }
- if (typeof context != "object") {
- throw new TypeError("argument context is not an object");
- }
-
- this.callArgAt = pos;
- this.callbackArguments = slice.call(arguments, 2);
- this.callbackContext = context;
-
- return this;
- },
-
- yields: function () {
- this.callArgAt = -1;
- this.callbackArguments = slice.call(arguments, 0);
-
- return this;
- },
-
- yieldsOn: function (context) {
- if (typeof context != "object") {
- throw new TypeError("argument context is not an object");
- }
-
- this.callArgAt = -1;
- this.callbackArguments = slice.call(arguments, 1);
- this.callbackContext = context;
-
- return this;
- },
-
- yieldsTo: function (prop) {
- this.callArgAt = -1;
- this.callArgProp = prop;
- this.callbackArguments = slice.call(arguments, 1);
-
- return this;
- },
-
- yieldsToOn: function (prop, context) {
- if (typeof context != "object") {
- throw new TypeError("argument context is not an object");
- }
-
- this.callArgAt = -1;
- this.callArgProp = prop;
- this.callbackArguments = slice.call(arguments, 2);
- this.callbackContext = context;
-
- return this;
- }
- };
- }()));
-
- if (commonJSModule) {
- module.exports = stub;
- } else {
- sinon.stub = stub;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/**
- * @depend ../sinon.js
- * @depend stub.js
- */
-/*jslint eqeqeq: false, onevar: false, nomen: false*/
-/*global module, require, sinon*/
-/**
- * Mock functions.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
- var push = [].push;
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function mock(object) {
- if (!object) {
- return sinon.expectation.create("Anonymous mock");
- }
-
- return mock.create(object);
- }
-
- sinon.mock = mock;
-
- sinon.extend(mock, (function () {
- function each(collection, callback) {
- if (!collection) {
- return;
- }
-
- for (var i = 0, l = collection.length; i < l; i += 1) {
- callback(collection[i]);
- }
- }
-
- return {
- create: function create(object) {
- if (!object) {
- throw new TypeError("object is null");
- }
-
- var mockObject = sinon.extend({}, mock);
- mockObject.object = object;
- delete mockObject.create;
-
- return mockObject;
- },
-
- expects: function expects(method) {
- if (!method) {
- throw new TypeError("method is falsy");
- }
-
- if (!this.expectations) {
- this.expectations = {};
- this.proxies = [];
- }
-
- if (!this.expectations[method]) {
- this.expectations[method] = [];
- var mockObject = this;
-
- sinon.wrapMethod(this.object, method, function () {
- return mockObject.invokeMethod(method, this, arguments);
- });
-
- push.call(this.proxies, method);
- }
-
- var expectation = sinon.expectation.create(method);
- push.call(this.expectations[method], expectation);
-
- return expectation;
- },
-
- restore: function restore() {
- var object = this.object;
-
- each(this.proxies, function (proxy) {
- if (typeof object[proxy].restore == "function") {
- object[proxy].restore();
- }
- });
- },
-
- verify: function verify() {
- var expectations = this.expectations || {};
- var messages = [], met = [];
-
- each(this.proxies, function (proxy) {
- each(expectations[proxy], function (expectation) {
- if (!expectation.met()) {
- push.call(messages, expectation.toString());
- } else {
- push.call(met, expectation.toString());
- }
- });
- });
-
- this.restore();
-
- if (messages.length > 0) {
- sinon.expectation.fail(messages.concat(met).join("\n"));
- }
-
- return true;
- },
-
- invokeMethod: function invokeMethod(method, thisValue, args) {
- var expectations = this.expectations && this.expectations[method];
- var length = expectations && expectations.length || 0;
-
- for (var i = 0; i < length; i += 1) {
- if (!expectations[i].met() &&
- expectations[i].allowsCall(thisValue, args)) {
- return expectations[i].apply(thisValue, args);
- }
- }
-
- var messages = [];
-
- for (i = 0; i < length; i += 1) {
- push.call(messages, " " + expectations[i].toString());
- }
-
- messages.unshift("Unexpected call: " + sinon.spyCall.toString.call({
- proxy: method,
- args: args
- }));
-
- sinon.expectation.fail(messages.join("\n"));
- }
- };
- }()));
-
- var times = sinon.timesInWords;
-
- sinon.expectation = (function () {
- var slice = Array.prototype.slice;
- var _invoke = sinon.spy.invoke;
-
- function callCountInWords(callCount) {
- if (callCount == 0) {
- return "never called";
- } else {
- return "called " + times(callCount);
- }
- }
-
- function expectedCallCountInWords(expectation) {
- var min = expectation.minCalls;
- var max = expectation.maxCalls;
-
- if (typeof min == "number" && typeof max == "number") {
- var str = times(min);
-
- if (min != max) {
- str = "at least " + str + " and at most " + times(max);
- }
-
- return str;
- }
-
- if (typeof min == "number") {
- return "at least " + times(min);
- }
-
- return "at most " + times(max);
- }
-
- function receivedMinCalls(expectation) {
- var hasMinLimit = typeof expectation.minCalls == "number";
- return !hasMinLimit || expectation.callCount >= expectation.minCalls;
- }
-
- function receivedMaxCalls(expectation) {
- if (typeof expectation.maxCalls != "number") {
- return false;
- }
-
- return expectation.callCount == expectation.maxCalls;
- }
-
- return {
- minCalls: 1,
- maxCalls: 1,
-
- create: function create(methodName) {
- var expectation = sinon.extend(sinon.stub.create(), sinon.expectation);
- delete expectation.create;
- expectation.method = methodName;
-
- return expectation;
- },
-
- invoke: function invoke(func, thisValue, args) {
- this.verifyCallAllowed(thisValue, args);
-
- return _invoke.apply(this, arguments);
- },
-
- atLeast: function atLeast(num) {
- if (typeof num != "number") {
- throw new TypeError("'" + num + "' is not number");
- }
-
- if (!this.limitsSet) {
- this.maxCalls = null;
- this.limitsSet = true;
- }
-
- this.minCalls = num;
-
- return this;
- },
-
- atMost: function atMost(num) {
- if (typeof num != "number") {
- throw new TypeError("'" + num + "' is not number");
- }
-
- if (!this.limitsSet) {
- this.minCalls = null;
- this.limitsSet = true;
- }
-
- this.maxCalls = num;
-
- return this;
- },
-
- never: function never() {
- return this.exactly(0);
- },
-
- once: function once() {
- return this.exactly(1);
- },
-
- twice: function twice() {
- return this.exactly(2);
- },
-
- thrice: function thrice() {
- return this.exactly(3);
- },
-
- exactly: function exactly(num) {
- if (typeof num != "number") {
- throw new TypeError("'" + num + "' is not a number");
- }
-
- this.atLeast(num);
- return this.atMost(num);
- },
-
- met: function met() {
- return !this.failed && receivedMinCalls(this);
- },
-
- verifyCallAllowed: function verifyCallAllowed(thisValue, args) {
- if (receivedMaxCalls(this)) {
- this.failed = true;
- sinon.expectation.fail(this.method + " already called " + times(this.maxCalls));
- }
-
- if ("expectedThis" in this && this.expectedThis !== thisValue) {
- sinon.expectation.fail(this.method + " called with " + thisValue + " as thisValue, expected " +
- this.expectedThis);
- }
-
- if (!("expectedArguments" in this)) {
- return;
- }
-
- if (!args || args.length === 0) {
- sinon.expectation.fail(this.method + " received no arguments, expected " +
- this.expectedArguments.join());
- }
-
- if (args.length < this.expectedArguments.length) {
- sinon.expectation.fail(this.method + " received too few arguments (" + args.join() +
- "), expected " + this.expectedArguments.join());
- }
-
- if (this.expectsExactArgCount &&
- args.length != this.expectedArguments.length) {
- sinon.expectation.fail(this.method + " received too many arguments (" + args.join() +
- "), expected " + this.expectedArguments.join());
- }
-
- for (var i = 0, l = this.expectedArguments.length; i < l; i += 1) {
- if (!sinon.deepEqual(this.expectedArguments[i], args[i])) {
- sinon.expectation.fail(this.method + " received wrong arguments (" + args.join() +
- "), expected " + this.expectedArguments.join());
- }
- }
- },
-
- allowsCall: function allowsCall(thisValue, args) {
- if (this.met()) {
- return false;
- }
-
- if ("expectedThis" in this && this.expectedThis !== thisValue) {
- return false;
- }
-
- if (!("expectedArguments" in this)) {
- return true;
- }
-
- args = args || [];
-
- if (args.length < this.expectedArguments.length) {
- return false;
- }
-
- if (this.expectsExactArgCount &&
- args.length != this.expectedArguments.length) {
- return false;
- }
-
- for (var i = 0, l = this.expectedArguments.length; i < l; i += 1) {
- if (!sinon.deepEqual(this.expectedArguments[i], args[i])) {
- return false;
- }
- }
-
- return true;
- },
-
- withArgs: function withArgs() {
- this.expectedArguments = slice.call(arguments);
- return this;
- },
-
- withExactArgs: function withExactArgs() {
- this.withArgs.apply(this, arguments);
- this.expectsExactArgCount = true;
- return this;
- },
-
- on: function on(thisValue) {
- this.expectedThis = thisValue;
- return this;
- },
-
- toString: function () {
- var args = (this.expectedArguments || []).slice();
-
- if (!this.expectsExactArgCount) {
- push.call(args, "[...]");
- }
-
- var callStr = sinon.spyCall.toString.call({
- proxy: this.method, args: args
- });
-
- var message = callStr.replace(", [...", "[, ...") + " " +
- expectedCallCountInWords(this);
-
- if (this.met()) {
- return "Expectation met: " + message;
- }
-
- return "Expected " + message + " (" +
- callCountInWords(this.callCount) + ")";
- },
-
- verify: function verify() {
- if (!this.met()) {
- sinon.expectation.fail(this.toString());
- }
-
- return true;
- },
-
- fail: function (message) {
- var exception = new Error(message);
- exception.name = "ExpectationError";
-
- throw exception;
- }
- };
- }());
-
- if (commonJSModule) {
- module.exports = mock;
- } else {
- sinon.mock = mock;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/**
- * @depend ../sinon.js
- * @depend stub.js
- * @depend mock.js
- */
-/*jslint eqeqeq: false, onevar: false, forin: true*/
-/*global module, require, sinon*/
-/**
- * Collections of stubs, spies and mocks.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
- var push = [].push;
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function getFakes(fakeCollection) {
- if (!fakeCollection.fakes) {
- fakeCollection.fakes = [];
- }
-
- return fakeCollection.fakes;
- }
-
- function each(fakeCollection, method) {
- var fakes = getFakes(fakeCollection);
-
- for (var i = 0, l = fakes.length; i < l; i += 1) {
- if (typeof fakes[i][method] == "function") {
- fakes[i][method]();
- }
- }
- }
-
- function compact(fakeCollection) {
- var fakes = getFakes(fakeCollection);
- var i = 0;
- while (i < fakes.length) {
- fakes.splice(i, 1);
- }
- }
-
- var collection = {
- verify: function resolve() {
- each(this, "verify");
- },
-
- restore: function restore() {
- each(this, "restore");
- compact(this);
- },
-
- verifyAndRestore: function verifyAndRestore() {
- var exception;
-
- try {
- this.verify();
- } catch (e) {
- exception = e;
- }
-
- this.restore();
-
- if (exception) {
- throw exception;
- }
- },
-
- add: function add(fake) {
- push.call(getFakes(this), fake);
- return fake;
- },
-
- spy: function spy() {
- return this.add(sinon.spy.apply(sinon, arguments));
- },
-
- stub: function stub(object, property, value) {
- if (property) {
- var original = object[property];
-
- if (typeof original != "function") {
- if (!object.hasOwnProperty(property)) {
- throw new TypeError("Cannot stub non-existent own property " + property);
- }
-
- object[property] = value;
-
- return this.add({
- restore: function () {
- object[property] = original;
- }
- });
- }
- }
-
- return this.add(sinon.stub.apply(sinon, arguments));
- },
-
- mock: function mock() {
- return this.add(sinon.mock.apply(sinon, arguments));
- },
-
- inject: function inject(obj) {
- var col = this;
-
- obj.spy = function () {
- return col.spy.apply(col, arguments);
- };
-
- obj.stub = function () {
- return col.stub.apply(col, arguments);
- };
-
- obj.mock = function () {
- return col.mock.apply(col, arguments);
- };
-
- return obj;
- }
- };
-
- if (commonJSModule) {
- module.exports = collection;
- } else {
- sinon.collection = collection;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/*jslint eqeqeq: false, plusplus: false, evil: true, onevar: false, browser: true, forin: false*/
-/*global module, require, window*/
-/**
- * Fake timer API
- * setTimeout
- * setInterval
- * clearTimeout
- * clearInterval
- * tick
- * reset
- * Date
- *
- * Inspired by jsUnitMockTimeOut from JsUnit
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-if (typeof sinon == "undefined") {
- var sinon = {};
-}
-
-(function (global) {
- var id = 1;
-
- function addTimer(args, recurring) {
- if (args.length === 0) {
- throw new Error("Function requires at least 1 parameter");
- }
-
- var toId = id++;
- var delay = args[1] || 0;
-
- if (!this.timeouts) {
- this.timeouts = {};
- }
-
- this.timeouts[toId] = {
- id: toId,
- func: args[0],
- callAt: this.now + delay
- };
-
- if (recurring === true) {
- this.timeouts[toId].interval = delay;
- }
-
- return toId;
- }
-
- function parseTime(str) {
- if (!str) {
- return 0;
- }
-
- var strings = str.split(":");
- var l = strings.length, i = l;
- var ms = 0, parsed;
-
- if (l > 3 || !/^(\d\d:){0,2}\d\d?$/.test(str)) {
- throw new Error("tick only understands numbers and 'h:m:s'");
- }
-
- while (i--) {
- parsed = parseInt(strings[i], 10);
-
- if (parsed >= 60) {
- throw new Error("Invalid time " + str);
- }
-
- ms += parsed * Math.pow(60, (l - i - 1));
- }
-
- return ms * 1000;
- }
-
- function createObject(object) {
- var newObject;
-
- if (Object.create) {
- newObject = Object.create(object);
- } else {
- var F = function () {};
- F.prototype = object;
- newObject = new F();
- }
-
- newObject.Date.clock = newObject;
- return newObject;
- }
-
- sinon.clock = {
- now: 0,
-
- create: function create(now) {
- var clock = createObject(this);
-
- if (typeof now == "number") {
- clock.now = now;
- }
-
- if (!!now && typeof now == "object") {
- throw new TypeError("now should be milliseconds since UNIX epoch");
- }
-
- return clock;
- },
-
- setTimeout: function setTimeout(callback, timeout) {
- return addTimer.call(this, arguments, false);
- },
-
- clearTimeout: function clearTimeout(timerId) {
- if (!this.timeouts) {
- this.timeouts = [];
- }
-
- if (timerId in this.timeouts) {
- delete this.timeouts[timerId];
- }
- },
-
- setInterval: function setInterval(callback, timeout) {
- return addTimer.call(this, arguments, true);
- },
-
- clearInterval: function clearInterval(timerId) {
- this.clearTimeout(timerId);
- },
-
- tick: function tick(ms) {
- ms = typeof ms == "number" ? ms : parseTime(ms);
- var tickFrom = this.now, tickTo = this.now + ms, previous = this.now;
- var timer = this.firstTimerInRange(tickFrom, tickTo);
-
- var firstException;
- while (timer && tickFrom <= tickTo) {
- if (this.timeouts[timer.id]) {
- tickFrom = this.now = timer.callAt;
- try {
- this.callTimer(timer);
- } catch (e) {
- firstException = firstException || e;
- }
- }
-
- timer = this.firstTimerInRange(previous, tickTo);
- previous = tickFrom;
- }
-
- this.now = tickTo;
-
- if (firstException) {
- throw firstException;
- }
- },
-
- firstTimerInRange: function (from, to) {
- var timer, smallest, originalTimer;
-
- for (var id in this.timeouts) {
- if (this.timeouts.hasOwnProperty(id)) {
- if (this.timeouts[id].callAt < from || this.timeouts[id].callAt > to) {
- continue;
- }
-
- if (!smallest || this.timeouts[id].callAt < smallest) {
- originalTimer = this.timeouts[id];
- smallest = this.timeouts[id].callAt;
-
- timer = {
- func: this.timeouts[id].func,
- callAt: this.timeouts[id].callAt,
- interval: this.timeouts[id].interval,
- id: this.timeouts[id].id
- };
- }
- }
- }
-
- return timer || null;
- },
-
- callTimer: function (timer) {
- try {
- if (typeof timer.func == "function") {
- timer.func.call(null);
- } else {
- eval(timer.func);
- }
- } catch (e) {
- var exception = e;
- }
-
- if (!this.timeouts[timer.id]) {
- if (exception) {
- throw exception;
- }
- return;
- }
-
- if (typeof timer.interval == "number") {
- this.timeouts[timer.id].callAt += timer.interval;
- } else {
- delete this.timeouts[timer.id];
- }
-
- if (exception) {
- throw exception;
- }
- },
-
- reset: function reset() {
- this.timeouts = {};
- },
-
- Date: (function () {
- var NativeDate = Date;
-
- function ClockDate(year, month, date, hour, minute, second, ms) {
- // Defensive and verbose to avoid potential harm in passing
- // explicit undefined when user does not pass argument
- switch (arguments.length) {
- case 0:
- return new NativeDate(ClockDate.clock.now);
- case 1:
- return new NativeDate(year);
- case 2:
- return new NativeDate(year, month);
- case 3:
- return new NativeDate(year, month, date);
- case 4:
- return new NativeDate(year, month, date, hour);
- case 5:
- return new NativeDate(year, month, date, hour, minute);
- case 6:
- return new NativeDate(year, month, date, hour, minute, second);
- default:
- return new NativeDate(year, month, date, hour, minute, second, ms);
- }
- }
-
- return mirrorDateProperties(ClockDate, NativeDate);
- }())
- };
-
- function mirrorDateProperties(target, source) {
- if (source.now) {
- target.now = function now() {
- return target.clock.now;
- };
- } else {
- delete target.now;
- }
-
- if (source.toSource) {
- target.toSource = function toSource() {
- return source.toSource();
- };
- } else {
- delete target.toSource;
- }
-
- target.toString = function toString() {
- return source.toString();
- };
-
- target.prototype = source.prototype;
- target.parse = source.parse;
- target.UTC = source.UTC;
- target.prototype.toUTCString = source.prototype.toUTCString;
- return target;
- }
-
- var methods = ["Date", "setTimeout", "setInterval",
- "clearTimeout", "clearInterval"];
-
- function restore() {
- var method;
-
- for (var i = 0, l = this.methods.length; i < l; i++) {
- method = this.methods[i];
- global[method] = this["_" + method];
- }
- }
-
- function stubGlobal(method, clock) {
- clock["_" + method] = global[method];
-
- if (method == "Date") {
- var date = mirrorDateProperties(clock[method], global[method]);
- global[method] = date;
- } else {
- global[method] = function () {
- return clock[method].apply(clock, arguments);
- };
-
- for (var prop in clock[method]) {
- if (clock[method].hasOwnProperty(prop)) {
- global[method][prop] = clock[method][prop];
- }
- }
- }
-
- global[method].clock = clock;
- }
-
- sinon.useFakeTimers = function useFakeTimers(now) {
- var clock = sinon.clock.create(now);
- clock.restore = restore;
- clock.methods = Array.prototype.slice.call(arguments,
- typeof now == "number" ? 1 : 0);
-
- if (clock.methods.length === 0) {
- clock.methods = methods;
- }
-
- for (var i = 0, l = clock.methods.length; i < l; i++) {
- stubGlobal(clock.methods[i], clock);
- }
-
- return clock;
- };
-}(typeof global != "undefined" && typeof global !== "function" ? global : this));
-
-sinon.timers = {
- setTimeout: setTimeout,
- clearTimeout: clearTimeout,
- setInterval: setInterval,
- clearInterval: clearInterval,
- Date: Date
-};
-
-if (typeof module == "object" && typeof require == "function") {
- module.exports = sinon;
-}
-
-/*jslint eqeqeq: false, onevar: false*/
-/*global sinon, module, require, ActiveXObject, XMLHttpRequest, DOMParser*/
-/**
- * Minimal Event interface implementation
- *
- * Original implementation by Sven Fuchs: https://gist.github.com/995028
- * Modifications and tests by Christian Johansen.
- *
- * @author Sven Fuchs (svenfuchs@artweb-design.de)
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2011 Sven Fuchs, Christian Johansen
- */
-
-if (typeof sinon == "undefined") {
- this.sinon = {};
-}
-
-(function () {
- var push = [].push;
-
- sinon.Event = function Event(type, bubbles, cancelable) {
- this.initEvent(type, bubbles, cancelable);
- };
-
- sinon.Event.prototype = {
- initEvent: function(type, bubbles, cancelable) {
- this.type = type;
- this.bubbles = bubbles;
- this.cancelable = cancelable;
- },
-
- stopPropagation: function () {},
-
- preventDefault: function () {
- this.defaultPrevented = true;
- }
- };
-
- sinon.EventTarget = {
- addEventListener: function addEventListener(event, listener, useCapture) {
- this.eventListeners = this.eventListeners || {};
- this.eventListeners[event] = this.eventListeners[event] || [];
- push.call(this.eventListeners[event], listener);
- },
-
- removeEventListener: function removeEventListener(event, listener, useCapture) {
- var listeners = this.eventListeners && this.eventListeners[event] || [];
-
- for (var i = 0, l = listeners.length; i < l; ++i) {
- if (listeners[i] == listener) {
- return listeners.splice(i, 1);
- }
- }
- },
-
- dispatchEvent: function dispatchEvent(event) {
- var type = event.type;
- var listeners = this.eventListeners && this.eventListeners[type] || [];
-
- for (var i = 0; i < listeners.length; i++) {
- if (typeof listeners[i] == "function") {
- listeners[i].call(this, event);
- } else {
- listeners[i].handleEvent(event);
- }
- }
-
- return !!event.defaultPrevented;
- }
- };
-}());
-
-/**
- * @depend event.js
- */
-/*jslint eqeqeq: false, onevar: false*/
-/*global sinon, module, require, ActiveXObject, XMLHttpRequest, DOMParser*/
-/**
- * Fake XMLHttpRequest object
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-if (typeof sinon == "undefined") {
- this.sinon = {};
-}
-sinon.xhr = { XMLHttpRequest: this.XMLHttpRequest };
-
-// wrapper for global
-(function(global) {
- var xhr = sinon.xhr;
- xhr.GlobalXMLHttpRequest = global.XMLHttpRequest;
- xhr.GlobalActiveXObject = global.ActiveXObject;
- xhr.supportsActiveX = typeof xhr.GlobalActiveXObject != "undefined";
- xhr.supportsXHR = typeof xhr.GlobalXMLHttpRequest != "undefined";
- xhr.workingXHR = xhr.supportsXHR ? xhr.GlobalXMLHttpRequest : xhr.supportsActiveX
- ? function() { return new xhr.GlobalActiveXObject("MSXML2.XMLHTTP.3.0") } : false;
-
- /*jsl:ignore*/
- var unsafeHeaders = {
- "Accept-Charset": true,
- "Accept-Encoding": true,
- "Connection": true,
- "Content-Length": true,
- "Cookie": true,
- "Cookie2": true,
- "Content-Transfer-Encoding": true,
- "Date": true,
- "Expect": true,
- "Host": true,
- "Keep-Alive": true,
- "Referer": true,
- "TE": true,
- "Trailer": true,
- "Transfer-Encoding": true,
- "Upgrade": true,
- "User-Agent": true,
- "Via": true
- };
- /*jsl:end*/
-
- function FakeXMLHttpRequest() {
- this.readyState = FakeXMLHttpRequest.UNSENT;
- this.requestHeaders = {};
- this.requestBody = null;
- this.status = 0;
- this.statusText = "";
-
- if (typeof FakeXMLHttpRequest.onCreate == "function") {
- FakeXMLHttpRequest.onCreate(this);
- }
- }
-
- function verifyState(xhr) {
- if (xhr.readyState !== FakeXMLHttpRequest.OPENED) {
- throw new Error("INVALID_STATE_ERR");
- }
-
- if (xhr.sendFlag) {
- throw new Error("INVALID_STATE_ERR");
- }
- }
-
- // filtering to enable a white-list version of Sinon FakeXhr,
- // where whitelisted requests are passed through to real XHR
- function each(collection, callback) {
- if (!collection) return;
- for (var i = 0, l = collection.length; i < l; i += 1) {
- callback(collection[i]);
- }
- }
- function some(collection, callback) {
- for (var index = 0; index < collection.length; index++) {
- if(callback(collection[index]) === true) return true;
- };
- return false;
- }
- // largest arity in XHR is 5 - XHR#open
- var apply = function(obj,method,args) {
- switch(args.length) {
- case 0: return obj[method]();
- case 1: return obj[method](args[0]);
- case 2: return obj[method](args[0],args[1]);
- case 3: return obj[method](args[0],args[1],args[2]);
- case 4: return obj[method](args[0],args[1],args[2],args[3]);
- case 5: return obj[method](args[0],args[1],args[2],args[3],args[4]);
- };
- };
-
- FakeXMLHttpRequest.filters = [];
- FakeXMLHttpRequest.addFilter = function(fn) {
- this.filters.push(fn)
- };
- var IE6Re = /MSIE 6/;
- FakeXMLHttpRequest.defake = function(fakeXhr,xhrArgs) {
- var xhr = new sinon.xhr.workingXHR();
- each(["open","setRequestHeader","send","abort","getResponseHeader",
- "getAllResponseHeaders","addEventListener","overrideMimeType","removeEventListener"],
- function(method) {
- fakeXhr[method] = function() {
- return apply(xhr,method,arguments);
- };
- });
-
- var copyAttrs = function(args) {
- each(args, function(attr) {
- try {
- fakeXhr[attr] = xhr[attr]
- } catch(e) {
- if(!IE6Re.test(navigator.userAgent)) throw e;
- }
- });
- };
-
- var stateChange = function() {
- fakeXhr.readyState = xhr.readyState;
- if(xhr.readyState >= FakeXMLHttpRequest.HEADERS_RECEIVED) {
- copyAttrs(["status","statusText"]);
- }
- if(xhr.readyState >= FakeXMLHttpRequest.LOADING) {
- copyAttrs(["responseText"]);
- }
- if(xhr.readyState === FakeXMLHttpRequest.DONE) {
- copyAttrs(["responseXML"]);
- }
- if(fakeXhr.onreadystatechange) fakeXhr.onreadystatechange.call(fakeXhr);
- };
- if(xhr.addEventListener) {
- for(var event in fakeXhr.eventListeners) {
- if(fakeXhr.eventListeners.hasOwnProperty(event)) {
- each(fakeXhr.eventListeners[event],function(handler) {
- xhr.addEventListener(event, handler);
- });
- }
- }
- xhr.addEventListener("readystatechange",stateChange);
- } else {
- xhr.onreadystatechange = stateChange;
- }
- apply(xhr,"open",xhrArgs);
- };
- FakeXMLHttpRequest.useFilters = false;
-
- function verifyRequestSent(xhr) {
- if (xhr.readyState == FakeXMLHttpRequest.DONE) {
- throw new Error("Request done");
- }
- }
-
- function verifyHeadersReceived(xhr) {
- if (xhr.async && xhr.readyState != FakeXMLHttpRequest.HEADERS_RECEIVED) {
- throw new Error("No headers received");
- }
- }
-
- function verifyResponseBodyType(body) {
- if (typeof body != "string") {
- var error = new Error("Attempted to respond to fake XMLHttpRequest with " +
- body + ", which is not a string.");
- error.name = "InvalidBodyException";
- throw error;
- }
- }
-
- sinon.extend(FakeXMLHttpRequest.prototype, sinon.EventTarget, {
- async: true,
-
- open: function open(method, url, async, username, password) {
- this.method = method;
- this.url = url;
- this.async = typeof async == "boolean" ? async : true;
- this.username = username;
- this.password = password;
- this.responseText = null;
- this.responseXML = null;
- this.requestHeaders = {};
- this.sendFlag = false;
- if(sinon.FakeXMLHttpRequest.useFilters === true) {
- var xhrArgs = arguments;
- var defake = some(FakeXMLHttpRequest.filters,function(filter) {
- return filter.apply(this,xhrArgs)
- });
- if (defake) {
- return sinon.FakeXMLHttpRequest.defake(this,arguments);
- }
- }
- this.readyStateChange(FakeXMLHttpRequest.OPENED);
- },
-
- readyStateChange: function readyStateChange(state) {
- this.readyState = state;
-
- if (typeof this.onreadystatechange == "function") {
- try {
- this.onreadystatechange();
- } catch (e) {
- sinon.logError("Fake XHR onreadystatechange handler", e);
- }
- }
-
- this.dispatchEvent(new sinon.Event("readystatechange"));
- },
-
- setRequestHeader: function setRequestHeader(header, value) {
- verifyState(this);
-
- if (unsafeHeaders[header] || /^(Sec-|Proxy-)/.test(header)) {
- throw new Error("Refused to set unsafe header \"" + header + "\"");
- }
-
- if (this.requestHeaders[header]) {
- this.requestHeaders[header] += "," + value;
- } else {
- this.requestHeaders[header] = value;
- }
- },
-
- // Helps testing
- setResponseHeaders: function setResponseHeaders(headers) {
- this.responseHeaders = {};
-
- for (var header in headers) {
- if (headers.hasOwnProperty(header)) {
- this.responseHeaders[header] = headers[header];
- }
- }
-
- if (this.async) {
- this.readyStateChange(FakeXMLHttpRequest.HEADERS_RECEIVED);
- }
- },
-
- // Currently treats ALL data as a DOMString (i.e. no Document)
- send: function send(data) {
- verifyState(this);
-
- if (!/^(get|head)$/i.test(this.method)) {
- if (this.requestHeaders["Content-Type"]) {
- var value = this.requestHeaders["Content-Type"].split(";");
- this.requestHeaders["Content-Type"] = value[0] + ";charset=utf-8";
- } else {
- this.requestHeaders["Content-Type"] = "text/plain;charset=utf-8";
- }
-
- this.requestBody = data;
- }
-
- this.errorFlag = false;
- this.sendFlag = this.async;
- this.readyStateChange(FakeXMLHttpRequest.OPENED);
-
- if (typeof this.onSend == "function") {
- this.onSend(this);
- }
- },
-
- abort: function abort() {
- this.aborted = true;
- this.responseText = null;
- this.errorFlag = true;
- this.requestHeaders = {};
-
- if (this.readyState > sinon.FakeXMLHttpRequest.UNSENT && this.sendFlag) {
- this.readyStateChange(sinon.FakeXMLHttpRequest.DONE);
- this.sendFlag = false;
- }
-
- this.readyState = sinon.FakeXMLHttpRequest.UNSENT;
- },
-
- getResponseHeader: function getResponseHeader(header) {
- if (this.readyState < FakeXMLHttpRequest.HEADERS_RECEIVED) {
- return null;
- }
-
- if (/^Set-Cookie2?$/i.test(header)) {
- return null;
- }
-
- header = header.toLowerCase();
-
- for (var h in this.responseHeaders) {
- if (h.toLowerCase() == header) {
- return this.responseHeaders[h];
- }
- }
-
- return null;
- },
-
- getAllResponseHeaders: function getAllResponseHeaders() {
- if (this.readyState < FakeXMLHttpRequest.HEADERS_RECEIVED) {
- return "";
- }
-
- var headers = "";
-
- for (var header in this.responseHeaders) {
- if (this.responseHeaders.hasOwnProperty(header) &&
- !/^Set-Cookie2?$/i.test(header)) {
- headers += header + ": " + this.responseHeaders[header] + "\r\n";
- }
- }
-
- return headers;
- },
-
- setResponseBody: function setResponseBody(body) {
- verifyRequestSent(this);
- verifyHeadersReceived(this);
- verifyResponseBodyType(body);
-
- var chunkSize = this.chunkSize || 10;
- var index = 0;
- this.responseText = "";
-
- do {
- if (this.async) {
- this.readyStateChange(FakeXMLHttpRequest.LOADING);
- }
-
- this.responseText += body.substring(index, index + chunkSize);
- index += chunkSize;
- } while (index < body.length);
-
- var type = this.getResponseHeader("Content-Type");
-
- if (this.responseText &&
- (!type || /(text\/xml)|(application\/xml)|(\+xml)/.test(type))) {
- try {
- this.responseXML = FakeXMLHttpRequest.parseXML(this.responseText);
- } catch (e) {
- // Unable to parse XML - no biggie
- }
- }
-
- if (this.async) {
- this.readyStateChange(FakeXMLHttpRequest.DONE);
- } else {
- this.readyState = FakeXMLHttpRequest.DONE;
- }
- },
-
- respond: function respond(status, headers, body) {
- this.setResponseHeaders(headers || {});
- this.status = typeof status == "number" ? status : 200;
- this.statusText = FakeXMLHttpRequest.statusCodes[this.status];
- this.setResponseBody(body || "");
- }
- });
-
- sinon.extend(FakeXMLHttpRequest, {
- UNSENT: 0,
- OPENED: 1,
- HEADERS_RECEIVED: 2,
- LOADING: 3,
- DONE: 4
- });
-
- // Borrowed from JSpec
- FakeXMLHttpRequest.parseXML = function parseXML(text) {
- var xmlDoc;
-
- if (typeof DOMParser != "undefined") {
- var parser = new DOMParser();
- xmlDoc = parser.parseFromString(text, "text/xml");
- } else {
- xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
- xmlDoc.async = "false";
- xmlDoc.loadXML(text);
- }
-
- return xmlDoc;
- };
-
- FakeXMLHttpRequest.statusCodes = {
- 100: "Continue",
- 101: "Switching Protocols",
- 200: "OK",
- 201: "Created",
- 202: "Accepted",
- 203: "Non-Authoritative Information",
- 204: "No Content",
- 205: "Reset Content",
- 206: "Partial Content",
- 300: "Multiple Choice",
- 301: "Moved Permanently",
- 302: "Found",
- 303: "See Other",
- 304: "Not Modified",
- 305: "Use Proxy",
- 307: "Temporary Redirect",
- 400: "Bad Request",
- 401: "Unauthorized",
- 402: "Payment Required",
- 403: "Forbidden",
- 404: "Not Found",
- 405: "Method Not Allowed",
- 406: "Not Acceptable",
- 407: "Proxy Authentication Required",
- 408: "Request Timeout",
- 409: "Conflict",
- 410: "Gone",
- 411: "Length Required",
- 412: "Precondition Failed",
- 413: "Request Entity Too Large",
- 414: "Request-URI Too Long",
- 415: "Unsupported Media Type",
- 416: "Requested Range Not Satisfiable",
- 417: "Expectation Failed",
- 422: "Unprocessable Entity",
- 500: "Internal Server Error",
- 501: "Not Implemented",
- 502: "Bad Gateway",
- 503: "Service Unavailable",
- 504: "Gateway Timeout",
- 505: "HTTP Version Not Supported"
- };
-
- sinon.useFakeXMLHttpRequest = function () {
- sinon.FakeXMLHttpRequest.restore = function restore(keepOnCreate) {
- if (xhr.supportsXHR) {
- global.XMLHttpRequest = xhr.GlobalXMLHttpRequest;
- }
-
- if (xhr.supportsActiveX) {
- global.ActiveXObject = xhr.GlobalActiveXObject;
- }
-
- delete sinon.FakeXMLHttpRequest.restore;
-
- if (keepOnCreate !== true) {
- delete sinon.FakeXMLHttpRequest.onCreate;
- }
- };
- if (xhr.supportsXHR) {
- global.XMLHttpRequest = sinon.FakeXMLHttpRequest;
- }
-
- if (xhr.supportsActiveX) {
- global.ActiveXObject = function ActiveXObject(objId) {
- if (objId == "Microsoft.XMLHTTP" || /^Msxml2\.XMLHTTP/i.test(objId)) {
-
- return new sinon.FakeXMLHttpRequest();
- }
-
- return new xhr.GlobalActiveXObject(objId);
- };
- }
-
- return sinon.FakeXMLHttpRequest;
- };
-
- sinon.FakeXMLHttpRequest = FakeXMLHttpRequest;
-})(this);
-
-if (typeof module == "object" && typeof require == "function") {
- module.exports = sinon;
-}
-
-/**
- * @depend fake_xml_http_request.js
- */
-/*jslint eqeqeq: false, onevar: false, regexp: false, plusplus: false*/
-/*global module, require, window*/
-/**
- * The Sinon "server" mimics a web server that receives requests from
- * sinon.FakeXMLHttpRequest and provides an API to respond to those requests,
- * both synchronously and asynchronously. To respond synchronuously, canned
- * answers have to be provided upfront.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-if (typeof sinon == "undefined") {
- var sinon = {};
-}
-
-sinon.fakeServer = (function () {
- var push = [].push;
- function F() {}
-
- function create(proto) {
- F.prototype = proto;
- return new F();
- }
-
- function responseArray(handler) {
- var response = handler;
-
- if (Object.prototype.toString.call(handler) != "[object Array]") {
- response = [200, {}, handler];
- }
-
- if (typeof response[2] != "string") {
- throw new TypeError("Fake server response body should be string, but was " +
- typeof response[2]);
- }
-
- return response;
- }
-
- var wloc = window.location;
- var rCurrLoc = new RegExp("^" + wloc.protocol + "//" + wloc.host);
-
- function matchOne(response, reqMethod, reqUrl) {
- var rmeth = response.method;
- var matchMethod = !rmeth || rmeth.toLowerCase() == reqMethod.toLowerCase();
- var url = response.url;
- var matchUrl = !url || url == reqUrl || (typeof url.test == "function" && url.test(reqUrl));
-
- return matchMethod && matchUrl;
- }
-
- function match(response, request) {
- var requestMethod = this.getHTTPMethod(request);
- var requestUrl = request.url;
-
- if (!/^https?:\/\//.test(requestUrl) || rCurrLoc.test(requestUrl)) {
- requestUrl = requestUrl.replace(rCurrLoc, "");
- }
-
- if (matchOne(response, this.getHTTPMethod(request), requestUrl)) {
- if (typeof response.response == "function") {
- var ru = response.url;
- var args = [request].concat(!ru ? [] : requestUrl.match(ru).slice(1));
- return response.response.apply(response, args);
- }
-
- return true;
- }
-
- return false;
- }
-
- return {
- create: function () {
- var server = create(this);
- this.xhr = sinon.useFakeXMLHttpRequest();
- server.requests = [];
-
- this.xhr.onCreate = function (xhrObj) {
- server.addRequest(xhrObj);
- };
-
- return server;
- },
-
- addRequest: function addRequest(xhrObj) {
- var server = this;
- push.call(this.requests, xhrObj);
-
- xhrObj.onSend = function () {
- server.handleRequest(this);
- };
-
- if (this.autoRespond && !this.responding) {
- setTimeout(function () {
- server.responding = false;
- server.respond();
- }, this.autoRespondAfter || 10);
-
- this.responding = true;
- }
- },
-
- getHTTPMethod: function getHTTPMethod(request) {
- if (this.fakeHTTPMethods && /post/i.test(request.method)) {
- var matches = (request.requestBody || "").match(/_method=([^\b;]+)/);
- return !!matches ? matches[1] : request.method;
- }
-
- return request.method;
- },
-
- handleRequest: function handleRequest(xhr) {
- if (xhr.async) {
- if (!this.queue) {
- this.queue = [];
- }
-
- push.call(this.queue, xhr);
- } else {
- this.processRequest(xhr);
- }
- },
-
- respondWith: function respondWith(method, url, body) {
- if (arguments.length == 1 && typeof method != "function") {
- this.response = responseArray(method);
- return;
- }
-
- if (!this.responses) { this.responses = []; }
-
- if (arguments.length == 1) {
- body = method;
- url = method = null;
- }
-
- if (arguments.length == 2) {
- body = url;
- url = method;
- method = null;
- }
-
- push.call(this.responses, {
- method: method,
- url: url,
- response: typeof body == "function" ? body : responseArray(body)
- });
- },
-
- respond: function respond() {
- if (arguments.length > 0) this.respondWith.apply(this, arguments);
- var queue = this.queue || [];
- var request;
-
- while(request = queue.shift()) {
- this.processRequest(request);
- }
- },
-
- processRequest: function processRequest(request) {
- try {
- if (request.aborted) {
- return;
- }
-
- var response = this.response || [404, {}, ""];
-
- if (this.responses) {
- for (var i = 0, l = this.responses.length; i < l; i++) {
- if (match.call(this, this.responses[i], request)) {
- response = this.responses[i].response;
- break;
- }
- }
- }
-
- if (request.readyState != 4) {
- request.respond(response[0], response[1], response[2]);
- }
- } catch (e) {
- sinon.logError("Fake server request processing", e);
- }
- },
-
- restore: function restore() {
- return this.xhr.restore && this.xhr.restore.apply(this.xhr, arguments);
- }
- };
-}());
-
-if (typeof module == "object" && typeof require == "function") {
- module.exports = sinon;
-}
-
-/**
- * @depend fake_server.js
- * @depend fake_timers.js
- */
-/*jslint browser: true, eqeqeq: false, onevar: false*/
-/*global sinon*/
-/**
- * Add-on for sinon.fakeServer that automatically handles a fake timer along with
- * the FakeXMLHttpRequest. The direct inspiration for this add-on is jQuery
- * 1.3.x, which does not use xhr object's onreadystatehandler at all - instead,
- * it polls the object for completion with setInterval. Dispite the direct
- * motivation, there is nothing jQuery-specific in this file, so it can be used
- * in any environment where the ajax implementation depends on setInterval or
- * setTimeout.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function () {
- function Server() {}
- Server.prototype = sinon.fakeServer;
-
- sinon.fakeServerWithClock = new Server();
-
- sinon.fakeServerWithClock.addRequest = function addRequest(xhr) {
- if (xhr.async) {
- if (typeof setTimeout.clock == "object") {
- this.clock = setTimeout.clock;
- } else {
- this.clock = sinon.useFakeTimers();
- this.resetClock = true;
- }
-
- if (!this.longestTimeout) {
- var clockSetTimeout = this.clock.setTimeout;
- var clockSetInterval = this.clock.setInterval;
- var server = this;
-
- this.clock.setTimeout = function (fn, timeout) {
- server.longestTimeout = Math.max(timeout, server.longestTimeout || 0);
-
- return clockSetTimeout.apply(this, arguments);
- };
-
- this.clock.setInterval = function (fn, timeout) {
- server.longestTimeout = Math.max(timeout, server.longestTimeout || 0);
-
- return clockSetInterval.apply(this, arguments);
- };
- }
- }
-
- return sinon.fakeServer.addRequest.call(this, xhr);
- };
-
- sinon.fakeServerWithClock.respond = function respond() {
- var returnVal = sinon.fakeServer.respond.apply(this, arguments);
-
- if (this.clock) {
- this.clock.tick(this.longestTimeout || 0);
- this.longestTimeout = 0;
-
- if (this.resetClock) {
- this.clock.restore();
- this.resetClock = false;
- }
- }
-
- return returnVal;
- };
-
- sinon.fakeServerWithClock.restore = function restore() {
- if (this.clock) {
- this.clock.restore();
- }
-
- return sinon.fakeServer.restore.apply(this, arguments);
- };
-}());
-
-/**
- * @depend ../sinon.js
- * @depend collection.js
- * @depend util/fake_timers.js
- * @depend util/fake_server_with_clock.js
- */
-/*jslint eqeqeq: false, onevar: false, plusplus: false*/
-/*global require, module*/
-/**
- * Manages fake collections as well as fake utilities such as Sinon's
- * timers and fake XHR implementation in one convenient object.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-if (typeof module == "object" && typeof require == "function") {
- var sinon = require("../sinon");
- sinon.extend(sinon, require("./util/fake_timers"));
-}
-
-(function () {
- var push = [].push;
-
- function exposeValue(sandbox, config, key, value) {
- if (!value) {
- return;
- }
-
- if (config.injectInto) {
- config.injectInto[key] = value;
- } else {
- push.call(sandbox.args, value);
- }
- }
-
- function prepareSandboxFromConfig(config) {
- var sandbox = sinon.create(sinon.sandbox);
-
- if (config.useFakeServer) {
- if (typeof config.useFakeServer == "object") {
- sandbox.serverPrototype = config.useFakeServer;
- }
-
- sandbox.useFakeServer();
- }
-
- if (config.useFakeTimers) {
- if (typeof config.useFakeTimers == "object") {
- sandbox.useFakeTimers.apply(sandbox, config.useFakeTimers);
- } else {
- sandbox.useFakeTimers();
- }
- }
-
- return sandbox;
- }
-
- sinon.sandbox = sinon.extend(sinon.create(sinon.collection), {
- useFakeTimers: function useFakeTimers() {
- this.clock = sinon.useFakeTimers.apply(sinon, arguments);
-
- return this.add(this.clock);
- },
-
- serverPrototype: sinon.fakeServer,
-
- useFakeServer: function useFakeServer() {
- var proto = this.serverPrototype || sinon.fakeServer;
-
- if (!proto || !proto.create) {
- return null;
- }
-
- this.server = proto.create();
- return this.add(this.server);
- },
-
- inject: function (obj) {
- sinon.collection.inject.call(this, obj);
-
- if (this.clock) {
- obj.clock = this.clock;
- }
-
- if (this.server) {
- obj.server = this.server;
- obj.requests = this.server.requests;
- }
-
- return obj;
- },
-
- create: function (config) {
- if (!config) {
- return sinon.create(sinon.sandbox);
- }
-
- var sandbox = prepareSandboxFromConfig(config);
- sandbox.args = sandbox.args || [];
- var prop, value, exposed = sandbox.inject({});
-
- if (config.properties) {
- for (var i = 0, l = config.properties.length; i < l; i++) {
- prop = config.properties[i];
- value = exposed[prop] || prop == "sandbox" && sandbox;
- exposeValue(sandbox, config, prop, value);
- }
- } else {
- exposeValue(sandbox, config, "sandbox", value);
- }
-
- return sandbox;
- }
- });
-
- sinon.sandbox.useFakeXMLHttpRequest = sinon.sandbox.useFakeServer;
-
- if (typeof module == "object" && typeof require == "function") {
- module.exports = sinon.sandbox;
- }
-}());
-
-/**
- * @depend ../sinon.js
- * @depend stub.js
- * @depend mock.js
- * @depend sandbox.js
- */
-/*jslint eqeqeq: false, onevar: false, forin: true, plusplus: false*/
-/*global module, require, sinon*/
-/**
- * Test function, sandboxes fakes
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function test(callback) {
- var type = typeof callback;
-
- if (type != "function") {
- throw new TypeError("sinon.test needs to wrap a test function, got " + type);
- }
-
- return function () {
- var config = sinon.getConfig(sinon.config);
- config.injectInto = config.injectIntoThis && this || config.injectInto;
- var sandbox = sinon.sandbox.create(config);
- var exception, result;
- var args = Array.prototype.slice.call(arguments).concat(sandbox.args);
-
- try {
- result = callback.apply(this, args);
- } finally {
- sandbox.verifyAndRestore();
- }
-
- return result;
- };
- }
-
- test.config = {
- injectIntoThis: true,
- injectInto: null,
- properties: ["spy", "stub", "mock", "clock", "server", "requests"],
- useFakeTimers: true,
- useFakeServer: true
- };
-
- if (commonJSModule) {
- module.exports = test;
- } else {
- sinon.test = test;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/**
- * @depend ../sinon.js
- * @depend test.js
- */
-/*jslint eqeqeq: false, onevar: false, eqeqeq: false*/
-/*global module, require, sinon*/
-/**
- * Test case, sandboxes all test functions
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon || !Object.prototype.hasOwnProperty) {
- return;
- }
-
- function createTest(property, setUp, tearDown) {
- return function () {
- if (setUp) {
- setUp.apply(this, arguments);
- }
-
- var exception, result;
-
- try {
- result = property.apply(this, arguments);
- } catch (e) {
- exception = e;
- }
-
- if (tearDown) {
- tearDown.apply(this, arguments);
- }
-
- if (exception) {
- throw exception;
- }
-
- return result;
- };
- }
-
- function testCase(tests, prefix) {
- /*jsl:ignore*/
- if (!tests || typeof tests != "object") {
- throw new TypeError("sinon.testCase needs an object with test functions");
- }
- /*jsl:end*/
-
- prefix = prefix || "test";
- var rPrefix = new RegExp("^" + prefix);
- var methods = {}, testName, property, method;
- var setUp = tests.setUp;
- var tearDown = tests.tearDown;
-
- for (testName in tests) {
- if (tests.hasOwnProperty(testName)) {
- property = tests[testName];
-
- if (/^(setUp|tearDown)$/.test(testName)) {
- continue;
- }
-
- if (typeof property == "function" && rPrefix.test(testName)) {
- method = property;
-
- if (setUp || tearDown) {
- method = createTest(property, setUp, tearDown);
- }
-
- methods[testName] = sinon.test(method);
- } else {
- methods[testName] = tests[testName];
- }
- }
- }
-
- return methods;
- }
-
- if (commonJSModule) {
- module.exports = testCase;
- } else {
- sinon.testCase = testCase;
- }
-}(typeof sinon == "object" && sinon || null));
-
-/**
- * @depend ../sinon.js
- * @depend stub.js
- */
-/*jslint eqeqeq: false, onevar: false, nomen: false, plusplus: false*/
-/*global module, require, sinon*/
-/**
- * Assertions matching the test spy retrieval interface.
- *
- * @author Christian Johansen (christian@cjohansen.no)
- * @license BSD
- *
- * Copyright (c) 2010-2011 Christian Johansen
- */
-
-(function (sinon, global) {
- var commonJSModule = typeof module == "object" && typeof require == "function";
- var slice = Array.prototype.slice;
- var assert;
-
- if (!sinon && commonJSModule) {
- sinon = require("../sinon");
- }
-
- if (!sinon) {
- return;
- }
-
- function verifyIsStub() {
- var method;
-
- for (var i = 0, l = arguments.length; i < l; ++i) {
- method = arguments[i];
-
- if (!method) {
- assert.fail("fake is not a spy");
- }
-
- if (typeof method != "function") {
- assert.fail(method + " is not a function");
- }
-
- if (typeof method.getCall != "function") {
- assert.fail(method + " is not stubbed");
- }
- }
- }
-
- function failAssertion(object, msg) {
- object = object || global;
- var failMethod = object.fail || assert.fail;
- failMethod.call(object, msg);
- }
-
- function mirrorPropAsAssertion(name, method, message) {
- if (arguments.length == 2) {
- message = method;
- method = name;
- }
-
- assert[name] = function (fake) {
- verifyIsStub(fake);
-
- var args = slice.call(arguments, 1);
- var failed = false;
-
- if (typeof method == "function") {
- failed = !method(fake);
- } else {
- failed = typeof fake[method] == "function" ?
- !fake[method].apply(fake, args) : !fake[method];
- }
-
- if (failed) {
- failAssertion(this, fake.printf.apply(fake, [message].concat(args)));
- } else {
- assert.pass(name);
- }
- };
- }
-
- function exposedName(prefix, prop) {
- return !prefix || /^fail/.test(prop) ? prop :
- prefix + prop.slice(0, 1).toUpperCase() + prop.slice(1);
- };
-
- assert = {
- failException: "AssertError",
-
- fail: function fail(message) {
- var error = new Error(message);
- error.name = this.failException || assert.failException;
-
- throw error;
- },
-
- pass: function pass(assertion) {},
-
- callOrder: function assertCallOrder() {
- verifyIsStub.apply(null, arguments);
- var expected = "", actual = "";
-
- if (!sinon.calledInOrder(arguments)) {
- try {
- expected = [].join.call(arguments, ", ");
- actual = sinon.orderByFirstCall(slice.call(arguments)).join(", ");
- } catch (e) {
- // If this fails, we'll just fall back to the blank string
- }
-
- failAssertion(this, "expected " + expected + " to be " +
- "called in order but were called as " + actual);
- } else {
- assert.pass("callOrder");
- }
- },
-
- callCount: function assertCallCount(method, count) {
- verifyIsStub(method);
-
- if (method.callCount != count) {
- var msg = "expected %n to be called " + sinon.timesInWords(count) +
- " but was called %c%C";
- failAssertion(this, method.printf(msg));
- } else {
- assert.pass("callCount");
- }
- },
-
- expose: function expose(target, options) {
- if (!target) {
- throw new TypeError("target is null or undefined");
- }
-
- var o = options || {};
- var prefix = typeof o.prefix == "undefined" && "assert" || o.prefix;
- var includeFail = typeof o.includeFail == "undefined" || !!o.includeFail;
-
- for (var method in this) {
- if (method != "export" && (includeFail || !/^(fail)/.test(method))) {
- target[exposedName(prefix, method)] = this[method];
- }
- }
-
- return target;
- }
- };
-
- mirrorPropAsAssertion("called", "expected %n to have been called at least once but was never called");
- mirrorPropAsAssertion("notCalled", function (spy) { return !spy.called; },
- "expected %n to not have been called but was called %c%C");
- mirrorPropAsAssertion("calledOnce", "expected %n to be called once but was called %c%C");
- mirrorPropAsAssertion("calledTwice", "expected %n to be called twice but was called %c%C");
- mirrorPropAsAssertion("calledThrice", "expected %n to be called thrice but was called %c%C");
- mirrorPropAsAssertion("calledOn", "expected %n to be called with %1 as this but was called with %t");
- mirrorPropAsAssertion("alwaysCalledOn", "expected %n to always be called with %1 as this but was called with %t");
- mirrorPropAsAssertion("calledWith", "expected %n to be called with arguments %*%C");
- mirrorPropAsAssertion("alwaysCalledWith", "expected %n to always be called with arguments %*%C");
- mirrorPropAsAssertion("calledWithExactly", "expected %n to be called with exact arguments %*%C");
- mirrorPropAsAssertion("alwaysCalledWithExactly", "expected %n to always be called with exact arguments %*%C");
- mirrorPropAsAssertion("neverCalledWith", "expected %n to never be called with arguments %*%C");
- mirrorPropAsAssertion("threw", "%n did not throw exception%C");
- mirrorPropAsAssertion("alwaysThrew", "%n did not always throw exception%C");
-
- if (commonJSModule) {
- module.exports = assert;
- } else {
- sinon.assert = assert;
- }
-}(typeof sinon == "object" && sinon || null, typeof window != "undefined" ? window : global));
-
-return sinon;}.call(typeof window != 'undefined' && window || {}));
diff --git a/assets/scripts/travis.coffee b/assets/scripts/travis.coffee
deleted file mode 100644
index 8bca5201..00000000
--- a/assets/scripts/travis.coffee
+++ /dev/null
@@ -1,233 +0,0 @@
-require 'ext/jquery'
-require 'ext/ember/namespace'
-require 'ext/ember/computed'
-require 'app'
-
-window.ENV ||= {}
-window.ENV.RAISE_ON_DEPRECATION = true
-
-if window.history.state == undefined
- window.history.state = {}
- oldPushState = window.history.pushState
- window.history.pushState = (state, title, href) ->
- window.history.state = state
- oldPushState.apply this, arguments
-
- oldReplaceState = window.history.replaceState
- window.history.replaceState = (state, title, href) ->
- window.history.state = state
- oldReplaceState.apply this, arguments
-
-# TODO: how can I put it in Travis namespace and use immediately?
-Storage = Em.Object.extend
- init: ->
- @set('storage', {})
- key: (key) ->
- "__#{key.replace('.', '__')}"
- getItem: (k) ->
- return @get("storage.#{@key(k)}")
- setItem: (k,v) ->
- @set("storage.#{@key(k)}", v)
- removeItem: (k) ->
- @setItem(k, null)
- clear: ->
- @set('storage', {})
-
-Ember.RecordArray.reopen
- # TODO: ember.js changed a way ArrayProxies behave, so that check for content is done
- # in _replace method. I should not be overriding it, because it's private, but
- # there is no easy other way to do it at this point
- _replace: (index, removedCount, records) ->
- # in Travis it's sometimes the case that we add new records to RecordArrays
- # from pusher before its content has loaded from an ajax query. In order to handle
- # this case nicer I'm extending record array to buffer those records and push them
- # to content when it's available
- @bufferedRecords = [] unless @bufferedRecords
-
- if !@get('content')
- for record in records
- @bufferedRecords.pushObject(record) unless @bufferedRecords.contains(record)
-
- records = []
-
- # call super only if there's anything more to add
- if removedCount || records.length
- @_super(index, removedCount, records)
-
- contentDidChange: (->
- if (content = @get('content')) && @bufferedRecords && @bufferedRecords.length
- for record in @bufferedRecords
- content.pushObject(record) unless content.contains(record)
- @bufferedRecords = []
- ).observes('content')
-
-window.Travis = TravisApplication.create(
- LOG_ACTIVE_GENERATION: true,
- LOG_MODULE_RESOLVER: true,
- LOG_TRANSITIONS: true,
- LOG_TRANSITIONS_INTERNAL: true,
- LOG_VIEW_LOOKUPS: true
-)
-
-Travis.deferReadiness()
-
-pages_endpoint = $('meta[rel="travis.pages_endpoint"]').attr('href')
-billing_endpoint = $('meta[rel="travis.billing_endpoint"]').attr('href')
-customer_io_site_id = $('meta[name="travis.customer_io_site_id"]').attr('value')
-setupCustomerio(customer_io_site_id) if customer_io_site_id
-
-enterprise = $('meta[name="travis.enterprise"]').attr('value') == 'true'
-
-# for now I set pro to true also for enterprise, but it should be changed
-# to allow more granular config later
-pro = $('meta[name="travis.pro"]').attr('value') == 'true' || enterprise
-
-$.extend Travis,
- run: ->
- Travis.advanceReadiness() # bc, remove once merged to master
-
- config:
- syncingPageRedirectionTime: 5000
- api_endpoint: $('meta[rel="travis.api_endpoint"]').attr('href')
- source_endpoint: $('meta[rel="travis.source_endpoint"]').attr('href')
- pusher_key: $('meta[name="travis.pusher_key"]').attr('value')
- pusher_host: $('meta[name="travis.pusher_host"]').attr('value')
- ga_code: $('meta[name="travis.ga_code"]').attr('value')
- code_climate: $('meta[name="travis.code_climate"]').attr('value')
- ssh_key_enabled: $('meta[name="travis.ssh_key_enabled"]').attr('value') == 'true'
- code_climate_url: $('meta[name="travis.code_climate_url"]').attr('value')
- caches_enabled: $('meta[name="travis.caches_enabled"]').attr('value') == 'true'
- show_repos_hint: 'private'
- avatar_default_url: 'https://travis-ci.org/images/ui/default-avatar.png'
- pusher_log_fallback: $('meta[name="travis.pusher_log_fallback"]').attr('value') == 'true'
- pro: pro
- enterprise: enterprise
- sidebar_support_box: pro && !enterprise
-
- pages_endpoint: pages_endpoint || billing_endpoint
- billing_endpoint: billing_endpoint
-
- url_legal: "#{billing_endpoint}/pages/legal"
- url_imprint: "#{billing_endpoint}/pages/imprint"
- url_security: "#{billing_endpoint}/pages/security"
- url_terms: "#{billing_endpoint}/pages/terms"
- customer_io_site_id: customer_io_site_id
-
- CONFIG_KEYS_MAP: {
- go: 'Go'
- rvm: 'Ruby'
- gemfile: 'Gemfile'
- env: 'ENV'
- jdk: 'JDK'
- otp_release: 'OTP Release'
- php: 'PHP'
- node_js: 'Node.js'
- perl: 'Perl'
- python: 'Python'
- scala: 'Scala'
- compiler: 'Compiler'
- ghc: 'GHC'
- os: 'OS'
- ruby: 'Ruby'
- xcode_sdk: 'Xcode SDK'
- xcode_scheme:'Xcode Scheme'
- d: 'D'
- julia: 'Julia'
- csharp: 'C#'
- dart: 'Dart'
- elixir: 'Elixir'
- }
-
- QUEUES: [
- { name: 'linux', display: 'Linux' }
- { name: 'mac_osx', display: 'Mac and OSX' }
- ]
-
- INTERVALS: { times: -1, updateTimes: 1000 }
-
- storage: (->
- storage = null
- try
- storage = window.localStorage || throw('no storage')
- catch err
- storage = Storage.create()
-
- storage
- )()
-
- sessionStorage: (->
- storage = null
- try
- # firefox will not throw error on access for sessionStorage var,
- # you need to actually get something from session
- sessionStorage.getItem('foo')
- storage = sessionStorage
- catch err
- storage = Storage.create()
-
- storage
- )()
-
-Travis.initializer
- name: 'googleAnalytics'
-
- initialize: (container) ->
- if Travis.config.ga_code
- window._gaq = []
- _gaq.push(['_setAccount', Travis.config.ga_code])
-
- ga = document.createElement('script')
- ga.type = 'text/javascript'
- ga.async = true
- ga.src = 'https://ssl.google-analytics.com/ga.js'
- s = document.getElementsByTagName('script')[0]
- s.parentNode.insertBefore(ga, s)
-
-Travis.initializer
- name: 'inject-config'
-
- initialize: (container, application) ->
- application.register 'config:main', Travis.config, { instantiate: false }
-
- application.inject('controller', 'config', 'config:main')
-
-
-Travis.Router.reopen
- didTransition: ->
- @_super.apply @, arguments
-
- if Travis.config.ga_code
- _gaq.push ['_trackPageview', location.pathname]
-
-Ember.LinkView.reopen
- loadingClass: 'loading_link'
-
-if charm_key = $('meta[name="travis.charm_key"]').attr('value')
- @__CHARM =
- key: $('meta[name="travis.charm_key"]').attr('value')
- url: "https://charmscout.herokuapp.com/feedback"
-
- $('head').append $('')
-
-require 'travis/ajax'
-
-Travis.ajax.pro = Travis.config.pro
-
-require 'travis/adapter'
-require 'travis/adapters/env_vars'
-require 'travis/adapters/ssh_key'
-require 'routes'
-require 'auth'
-require 'controllers'
-require 'helpers'
-require 'models'
-require 'pusher'
-require 'slider'
-require 'tailing'
-require 'templates'
-require 'views'
-require 'components'
-
-require 'travis/instrumentation'
-
-Travis.setup()
diff --git a/assets/scripts/vendor/ember-model.js b/assets/scripts/vendor/ember-model.js
deleted file mode 100644
index b075f8a0..00000000
--- a/assets/scripts/vendor/ember-model.js
+++ /dev/null
@@ -1,1704 +0,0 @@
-(function() {
-
-var VERSION = '0.0.10';
-
-if (Ember.libraries) {
- Ember.libraries.register('Ember Model', VERSION);
-}
-
-
-})();
-
-(function() {
-
-function mustImplement(message) {
- var fn = function() {
- var className = this.constructor.toString();
-
- throw new Error(message.replace('{{className}}', className));
- };
- fn.isUnimplemented = true;
- return fn;
-}
-
-Ember.Adapter = Ember.Object.extend({
- find: mustImplement('{{className}} must implement find'),
- findQuery: mustImplement('{{className}} must implement findQuery'),
- findMany: mustImplement('{{className}} must implement findMany'),
- findAll: mustImplement('{{className}} must implement findAll'),
- createRecord: mustImplement('{{className}} must implement createRecord'),
- saveRecord: mustImplement('{{className}} must implement saveRecord'),
- deleteRecord: mustImplement('{{className}} must implement deleteRecord'),
-
- load: function(record, id, data) {
- record.load(id, data);
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get;
-
-Ember.FixtureAdapter = Ember.Adapter.extend({
- _findData: function(klass, id) {
- var fixtures = klass.FIXTURES,
- idAsString = id.toString(),
- primaryKey = get(klass, 'primaryKey'),
- data = Ember.A(fixtures).find(function(el) { return (el[primaryKey]).toString() === idAsString; });
-
- return data;
- },
-
- find: function(record, id) {
- var data = this._findData(record.constructor, id);
-
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- Ember.run(record, record.load, id, data);
- resolve(record);
- }, 0);
- });
- },
-
- findMany: function(klass, records, ids) {
- var fixtures = klass.FIXTURES,
- requestedData = [];
-
- for (var i = 0, l = ids.length; i < l; i++) {
- requestedData.push(this._findData(klass, ids[i]));
- }
-
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- Ember.run(records, records.load, klass, requestedData);
- resolve(records);
- }, 0);
- });
- },
-
- findAll: function(klass, records) {
- var fixtures = klass.FIXTURES;
-
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- Ember.run(records, records.load, klass, fixtures);
- resolve(records);
- }, 0);
- });
- },
-
- createRecord: function(record) {
- var klass = record.constructor,
- fixtures = klass.FIXTURES;
-
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- fixtures.push(klass.findFromCacheOrLoad(record.toJSON()));
- record.didCreateRecord();
- resolve(record);
- }, 0);
- });
- },
-
- saveRecord: function(record) {
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- record.didSaveRecord();
- resolve(record);
- }, 0);
- });
- },
-
- deleteRecord: function(record) {
- return new Ember.RSVP.Promise(function(resolve, reject) {
- Ember.run.later(this, function() {
- record.didDeleteRecord();
- resolve(record);
- }, 0);
- });
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get,
- set = Ember.set;
-
-Ember.RecordArray = Ember.ArrayProxy.extend(Ember.Evented, {
- isLoaded: false,
- isLoading: Ember.computed.not('isLoaded'),
-
- load: function(klass, data) {
- set(this, 'content', this.materializeData(klass, data));
- this.notifyLoaded();
- },
-
- loadForFindMany: function(klass) {
- var content = get(this, '_ids').map(function(id) { return klass.cachedRecordForId(id); });
- set(this, 'content', Ember.A(content));
- this.notifyLoaded();
- },
-
- notifyLoaded: function() {
- set(this, 'isLoaded', true);
- this.trigger('didLoad');
- },
-
- materializeData: function(klass, data) {
- return Ember.A(data.map(function(el) {
- return klass.findFromCacheOrLoad(el); // FIXME
- }));
- },
-
- reload: function() {
- var modelClass = this.get('modelClass'),
- self = this,
- promises;
-
- set(this, 'isLoaded', false);
- if (modelClass._findAllRecordArray === this) {
- return modelClass.adapter.findAll(modelClass, this);
- } else if (this._query) {
- return modelClass.adapter.findQuery(modelClass, this, this._query);
- } else {
- promises = this.map(function(record) {
- return record.reload();
- });
- return Ember.RSVP.all(promises).then(function(data) {
- self.notifyLoaded();
- });
- }
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get;
-
-Ember.FilteredRecordArray = Ember.RecordArray.extend({
- init: function() {
- if (!get(this, 'modelClass')) {
- throw new Error('FilteredRecordArrays must be created with a modelClass');
- }
- if (!get(this, 'filterFunction')) {
- throw new Error('FilteredRecordArrays must be created with a filterFunction');
- }
- if (!get(this, 'filterProperties')) {
- throw new Error('FilteredRecordArrays must be created with filterProperties');
- }
-
- this._recordsCache = Ember.A([]);
-
- var modelClass = get(this, 'modelClass');
- modelClass.registerRecordArray(this);
-
- this.registerObservers();
- this.updateFilter();
-
- this._super();
- },
-
- updateFilter: function() {
- var self = this,
- results = [];
- get(this, 'modelClass').forEachCachedRecord(function(record) {
- if (self.filterFunction(record)) {
- results.push(record);
- }
- });
- this.set('content', Ember.A(results));
- },
-
- updateFilterForRecord: function(record) {
- var results = get(this, 'content'),
- filterMatches = this.filterFunction(record);
- if (filterMatches && !results.contains(record)) {
- results.pushObject(record);
- } else if(!filterMatches) {
- results.removeObject(record);
- }
- },
-
- registerObservers: function() {
- var self = this;
- get(this, 'modelClass').forEachCachedRecord(function(record) {
- self.registerObserversOnRecord(record);
- });
- },
-
- recordIsObserved: function(record) {
- return this._recordsCache.contains(record);
- },
-
- registerObserversOnRecord: function(record) {
- var self = this,
- filterProperties = get(this, 'filterProperties');
-
- this._recordsCache.pushObject(record);
-
- for (var i = 0, l = get(filterProperties, 'length'); i < l; i++) {
- record.addObserver(filterProperties[i], self, 'updateFilterForRecord');
- }
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get, set = Ember.set;
-
-Ember.ManyArray = Ember.RecordArray.extend({
- _records: null,
- originalContent: [],
-
- isDirty: function() {
- var originalContent = get(this, 'originalContent'),
- originalContentLength = get(originalContent, 'length'),
- content = get(this, 'content'),
- contentLength = get(content, 'length');
-
- if (originalContentLength !== contentLength) { return true; }
-
- var isDirty = false;
-
- for (var i = 0, l = contentLength; i < l; i++) {
- if (!originalContent.contains(content[i])) {
- isDirty = true;
- break;
- }
- }
-
- return isDirty;
- }.property('content.[]', 'originalContent'),
-
- objectAtContent: function(idx) {
- var content = get(this, 'content');
-
- if (!content.length) { return; }
-
- return this.materializeRecord(idx);
- },
-
- save: function() {
- // TODO: loop over dirty records only
- return Ember.RSVP.all(this.map(function(record) {
- return record.save();
- }));
- },
-
- replaceContent: function(index, removed, added) {
- added = Ember.EnumerableUtils.map(added, function(record) {
- return record._reference;
- }, this);
-
- this._super(index, removed, added);
- },
-
- _contentWillChange: function() {
- var content = get(this, 'content');
- if (content) {
- content.removeArrayObserver(this);
- this._setupOriginalContent(content);
- }
- }.observesBefore('content'),
-
- _contentDidChange: function() {
- var content = get(this, 'content');
- if (content) {
- content.addArrayObserver(this);
- this.arrayDidChange(content, 0, 0, get(content, 'length'));
- }
- }.observes('content'),
-
- arrayWillChange: function(item, idx, removedCnt, addedCnt) {},
-
- arrayDidChange: function(item, idx, removedCnt, addedCnt) {
- var parent = get(this, 'parent'), relationshipKey = get(this, 'relationshipKey'),
- isDirty = get(this, 'isDirty');
-
- if (isDirty) {
- parent._relationshipBecameDirty(relationshipKey);
- } else {
- parent._relationshipBecameClean(relationshipKey);
- }
- },
-
- _setupOriginalContent: function(content) {
- content = content || get(this, 'content');
- if (content) {
- set(this, 'originalContent', content.slice());
- }
- },
-
- init: function() {
- this._super();
- this._setupOriginalContent();
- this._contentDidChange();
- }
-});
-
-Ember.HasManyArray = Ember.ManyArray.extend({
- materializeRecord: function(idx) {
- var klass = get(this, 'modelClass'),
- content = get(this, 'content'),
- reference = content.objectAt(idx),
- record;
-
- if (reference.record) {
- record = reference.record;
- } else {
- record = klass.find(reference.id);
- }
-
- return record;
- },
-
- toJSON: function() {
- var ids = [], content = this.get('content');
-
- content.forEach(function(reference) {
- if (reference.id) {
- ids.push(reference.id);
- }
- });
-
- return ids;
- }
-});
-
-Ember.EmbeddedHasManyArray = Ember.ManyArray.extend({
- create: function(attrs) {
- var klass = get(this, 'modelClass'),
- record = klass.create(attrs);
-
- this.pushObject(record);
-
- return record; // FIXME: inject parent's id
- },
-
- materializeRecord: function(idx) {
- var klass = get(this, 'modelClass'),
- primaryKey = get(klass, 'primaryKey'),
- content = get(this, 'content'),
- reference = content.objectAt(idx),
- attrs = reference.data;
-
- if (reference.record) {
- return reference.record;
- } else {
- var record = klass.create({ _reference: reference });
- reference.record = record;
- if (attrs) {
- record.load(attrs[primaryKey], attrs);
- }
- return record;
- }
- },
-
- toJSON: function() {
- return this.map(function(record) {
- return record.toJSON();
- });
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get,
- set = Ember.set,
- setProperties = Ember.setProperties,
- meta = Ember.meta,
- underscore = Ember.String.underscore;
-
-function contains(array, element) {
- for (var i = 0, l = array.length; i < l; i++) {
- if (array[i] === element) { return true; }
- }
- return false;
-}
-
-function concatUnique(toArray, fromArray) {
- var e;
- for (var i = 0, l = fromArray.length; i < l; i++) {
- e = fromArray[i];
- if (!contains(toArray, e)) { toArray.push(e); }
- }
- return toArray;
-}
-
-function hasCachedValue(object, key) {
- var objectMeta = meta(object, false);
- if (objectMeta) {
- return key in objectMeta.cache;
- }
-}
-
-Ember.run.queues.push('data');
-
-Ember.Model = Ember.Object.extend(Ember.Evented, {
- isLoaded: true,
- isLoading: Ember.computed.not('isLoaded'),
- isNew: true,
- isDeleted: false,
- _dirtyAttributes: null,
-
- /**
- Called when attribute is accessed.
-
- @method getAttr
- @param key {String} key which is being accessed
- @param value {Object} value, which will be returned from getter by default
- */
- getAttr: function(key, value) {
- return value;
- },
-
- isDirty: function() {
- var dirtyAttributes = get(this, '_dirtyAttributes');
- return dirtyAttributes && dirtyAttributes.length !== 0 || false;
- }.property('_dirtyAttributes.length'),
-
- _relationshipBecameDirty: function(name) {
- var dirtyAttributes = get(this, '_dirtyAttributes');
- if (!dirtyAttributes.contains(name)) { dirtyAttributes.pushObject(name); }
- },
-
- _relationshipBecameClean: function(name) {
- var dirtyAttributes = get(this, '_dirtyAttributes');
- dirtyAttributes.removeObject(name);
- },
-
- dataKey: function(key) {
- var camelizeKeys = get(this.constructor, 'camelizeKeys');
- var meta = this.constructor.metaForProperty(key);
- if (meta.options && meta.options.key) {
- return camelizeKeys ? underscore(meta.options.key) : meta.options.key;
- }
- return camelizeKeys ? underscore(key) : key;
- },
-
- init: function() {
- this._createReference();
- if (!this._dirtyAttributes) {
- set(this, '_dirtyAttributes', []);
- }
- this._super();
- },
-
- _createReference: function() {
- var reference = this._reference,
- id = this.getPrimaryKey();
-
- if (!reference) {
- reference = this.constructor._getOrCreateReferenceForId(id);
- reference.record = this;
- this._reference = reference;
- } else if (reference.id !== id) {
- reference.id = id;
- this.constructor._cacheReference(reference);
- }
-
- if (!reference.id) {
- reference.id = id;
- }
-
- return reference;
- },
-
- getPrimaryKey: function() {
- return get(this, get(this.constructor, 'primaryKey'));
- },
-
- load: function(id, hash) {
- var data = {};
- data[get(this.constructor, 'primaryKey')] = id;
- set(this, '_data', Ember.merge(data, hash));
-
- // eagerly load embedded data
- var relationships = this.constructor._relationships || [], meta = Ember.meta(this), relationshipKey, relationship, relationshipMeta, relationshipData, relationshipType;
- for (var i = 0, l = relationships.length; i < l; i++) {
- relationshipKey = relationships[i];
- relationship = meta.descs[relationshipKey];
- relationshipMeta = relationship.meta();
-
- if (relationshipMeta.options.embedded) {
- relationshipType = relationshipMeta.type;
- if (typeof relationshipType === "string") {
- relationshipType = Ember.get(Ember.lookup, relationshipType);
- }
-
- relationshipData = data[relationshipKey];
- if (relationshipData) {
- relationshipType.load(relationshipData);
- }
- }
- }
-
- set(this, 'isLoaded', true);
- set(this, 'isNew', false);
- this._createReference();
- this.trigger('didLoad');
- },
-
- didDefineProperty: function(proto, key, value) {
- if (value instanceof Ember.Descriptor) {
- var meta = value.meta();
- var klass = proto.constructor;
-
- if (meta.isAttribute) {
- if (!klass._attributes) { klass._attributes = []; }
- klass._attributes.push(key);
- } else if (meta.isRelationship) {
- if (!klass._relationships) { klass._relationships = []; }
- klass._relationships.push(key);
- meta.relationshipKey = key;
- }
- }
- },
-
- serializeHasMany: function(key, meta) {
- return this.get(key).toJSON();
- },
-
- serializeBelongsTo: function(key, meta) {
- if (meta.options.embedded) {
- var record = this.get(key);
- return record ? record.toJSON() : null;
- } else {
- var primaryKey = get(meta.getType(), 'primaryKey');
- return this.get(key + '.' + primaryKey);
- }
- },
-
- toJSON: function() {
- var key, meta,
- json = {},
- attributes = this.constructor.getAttributes(),
- relationships = this.constructor.getRelationships(),
- properties = attributes ? this.getProperties(attributes) : {},
- rootKey = get(this.constructor, 'rootKey');
-
- for (key in properties) {
- meta = this.constructor.metaForProperty(key);
- if (meta.type && meta.type.serialize) {
- json[this.dataKey(key)] = meta.type.serialize(properties[key]);
- } else if (meta.type && Ember.Model.dataTypes[meta.type]) {
- json[this.dataKey(key)] = Ember.Model.dataTypes[meta.type].serialize(properties[key]);
- } else {
- json[this.dataKey(key)] = properties[key];
- }
- }
-
- if (relationships) {
- var data, relationshipKey;
-
- for(var i = 0; i < relationships.length; i++) {
- key = relationships[i];
- meta = this.constructor.metaForProperty(key);
- relationshipKey = meta.options.key || key;
-
- if (meta.kind === 'belongsTo') {
- data = this.serializeBelongsTo(key, meta);
- } else {
- data = this.serializeHasMany(key, meta);
- }
-
- json[relationshipKey] = data;
-
- }
- }
-
- if (rootKey) {
- var jsonRoot = {};
- jsonRoot[rootKey] = json;
- return jsonRoot;
- } else {
- return json;
- }
- },
-
- save: function() {
- var adapter = this.constructor.adapter;
- set(this, 'isSaving', true);
- if (get(this, 'isNew')) {
- return adapter.createRecord(this);
- } else if (get(this, 'isDirty')) {
- return adapter.saveRecord(this);
- } else { // noop, return a resolved promise
- var self = this,
- promise = new Ember.RSVP.Promise(function(resolve, reject) {
- resolve(self);
- });
- set(this, 'isSaving', false);
- return promise;
- }
- },
-
- reload: function() {
- this.getWithDefault('_dirtyAttributes', []).clear();
- return this.constructor.reload(this.get(get(this.constructor, 'primaryKey')));
- },
-
- revert: function() {
- this.getWithDefault('_dirtyAttributes', []).clear();
- this.notifyPropertyChange('_data');
- },
-
- didCreateRecord: function() {
- var primaryKey = get(this.constructor, 'primaryKey'),
- id = get(this, primaryKey);
-
- set(this, 'isNew', false);
-
- set(this, '_dirtyAttributes', []);
- this.constructor.addToRecordArrays(this);
- this.trigger('didCreateRecord');
- this.didSaveRecord();
- },
-
- didSaveRecord: function() {
- set(this, 'isSaving', false);
- this.trigger('didSaveRecord');
- if (this.get('isDirty')) { this._copyDirtyAttributesToData(); }
- },
-
- deleteRecord: function() {
- return this.constructor.adapter.deleteRecord(this);
- },
-
- didDeleteRecord: function() {
- this.constructor.removeFromRecordArrays(this);
- set(this, 'isDeleted', true);
- this.trigger('didDeleteRecord');
- },
-
- _copyDirtyAttributesToData: function() {
- if (!this._dirtyAttributes) { return; }
- var dirtyAttributes = this._dirtyAttributes,
- data = get(this, '_data'),
- key;
-
- if (!data) {
- data = {};
- set(this, '_data', data);
- }
- for (var i = 0, l = dirtyAttributes.length; i < l; i++) {
- // TODO: merge Object.create'd object into prototype
- key = dirtyAttributes[i];
- data[this.dataKey(key)] = this.cacheFor(key);
- }
- set(this, '_dirtyAttributes', []);
- },
-
- dataDidChange: Ember.observer(function() {
- this._reloadHasManys();
- }, '_data'),
-
- _registerHasManyArray: function(array) {
- if (!this._hasManyArrays) { this._hasManyArrays = Ember.A([]); }
-
- this._hasManyArrays.pushObject(array);
- },
-
- _reloadHasManys: function() {
- if (!this._hasManyArrays) { return; }
- var i, j;
- for (i = 0; i < this._hasManyArrays.length; i++) {
- var array = this._hasManyArrays[i],
- hasManyContent = this._getHasManyContent(get(array, 'key'), get(array, 'modelClass'), get(array, 'embedded'));
- for (j = 0; j < array.get('length'); j++) {
- if (array.objectAt(j).get('isNew')) {
- hasManyContent.addObject(array.objectAt(j)._reference);
- }
- }
- set(array, 'content', hasManyContent);
- }
- },
-
- _getHasManyContent: function(key, type, embedded) {
- var content = get(this, '_data.' + key);
-
- if (content) {
- var mapFunction, primaryKey, reference;
- if (embedded) {
- primaryKey = get(type, 'primaryKey');
- mapFunction = function(attrs) {
- reference = type._getOrCreateReferenceForId(attrs[primaryKey]);
- reference.data = attrs;
- return reference;
- };
- } else {
- mapFunction = function(id) { return type._getOrCreateReferenceForId(id); };
- }
- content = Ember.EnumerableUtils.map(content, mapFunction);
- }
-
- return Ember.A(content || []);
- }
-});
-
-Ember.Model.reopenClass({
- primaryKey: 'id',
-
- adapter: Ember.Adapter.create(),
-
- _clientIdCounter: 1,
-
- getAttributes: function() {
- this.proto(); // force class "compilation" if it hasn't been done.
- var attributes = this._attributes || [];
- if (typeof this.superclass.getAttributes === 'function') {
- attributes = this.superclass.getAttributes().concat(attributes);
- }
- return attributes;
- },
-
- getRelationships: function() {
- this.proto(); // force class "compilation" if it hasn't been done.
- var relationships = this._relationships || [];
- if (typeof this.superclass.getRelationships === 'function') {
- relationships = this.superclass.getRelationships().concat(relationships);
- }
- return relationships;
- },
-
- fetch: function(id) {
- if (!arguments.length) {
- return this._findFetchAll(true);
- } else if (Ember.isArray(id)) {
- return this._findFetchMany(id, true);
- } else if (typeof id === 'object') {
- return this._findFetchQuery(id, true);
- } else {
- return this._findFetchById(id, true);
- }
- },
-
- find: function(id) {
- if (!arguments.length) {
- return this._findFetchAll(false);
- } else if (Ember.isArray(id)) {
- return this._findFetchMany(id, false);
- } else if (typeof id === 'object') {
- return this._findFetchQuery(id, false);
- } else {
- return this._findFetchById(id, false);
- }
- },
-
- findQuery: function(params) {
- return this._findFetchQuery(params, false);
- },
-
- fetchQuery: function(params) {
- return this._findFetchQuery(params, true);
- },
-
- _findFetchQuery: function(params, isFetch) {
- var records = Ember.RecordArray.create({modelClass: this, _query: params});
-
- var promise = this.adapter.findQuery(this, records, params);
-
- return isFetch ? promise : records;
- },
-
- findMany: function(ids) {
- return this._findFetchMany(ids, false);
- },
-
- fetchMany: function(ids) {
- return this._findFetchMany(ids, true);
- },
-
- _findFetchMany: function(ids, isFetch) {
- Ember.assert("findFetchMany requires an array", Ember.isArray(ids));
-
- var records = Ember.RecordArray.create({_ids: ids, modelClass: this}),
- deferred;
-
- if (!this.recordArrays) { this.recordArrays = []; }
- this.recordArrays.push(records);
-
- if (this._currentBatchIds) {
- concatUnique(this._currentBatchIds, ids);
- this._currentBatchRecordArrays.push(records);
- } else {
- this._currentBatchIds = concatUnique([], ids);
- this._currentBatchRecordArrays = [records];
- }
-
- if (isFetch) {
- deferred = Ember.Deferred.create();
- Ember.set(deferred, 'resolveWith', records);
-
- if (!this._currentBatchDeferreds) { this._currentBatchDeferreds = []; }
- this._currentBatchDeferreds.push(deferred);
- }
-
- Ember.run.scheduleOnce('data', this, this._executeBatch);
-
- return isFetch ? deferred : records;
- },
-
- findAll: function() {
- return this._findFetchAll(false);
- },
-
- fetchAll: function() {
- return this._findFetchAll(true);
- },
-
- _findFetchAll: function(isFetch) {
- var self = this;
-
- if (this._findAllRecordArray) {
- if (isFetch) {
- return new Ember.RSVP.Promise(function(resolve) {
- resolve(self._findAllRecordArray);
- });
- } else {
- return this._findAllRecordArray;
- }
- }
-
- var records = this._findAllRecordArray = Ember.RecordArray.create({modelClass: this});
-
- var promise = this.adapter.findAll(this, records);
-
- // Remove the cached record array if the promise is rejected
- if (promise.then) {
- promise.then(null, function() {
- self._findAllRecordArray = null;
- return Ember.RSVP.reject.apply(null, arguments);
- });
- }
-
- return isFetch ? promise : records;
- },
-
- findById: function(id) {
- return this._findFetchById(id, false);
- },
-
- fetchById: function(id) {
- return this._findFetchById(id, true);
- },
-
- _findFetchById: function(id, isFetch) {
- var record = this.cachedRecordForId(id),
- isLoaded = get(record, 'isLoaded'),
- adapter = get(this, 'adapter'),
- deferredOrPromise;
-
- if (isLoaded) {
- if (isFetch) {
- return new Ember.RSVP.Promise(function(resolve, reject) {
- resolve(record);
- });
- } else {
- return record;
- }
- }
-
- deferredOrPromise = this._fetchById(record, id);
-
- return isFetch ? deferredOrPromise : record;
- },
-
- _currentBatchIds: null,
- _currentBatchRecordArrays: null,
- _currentBatchDeferreds: null,
-
- reload: function(id) {
- var record = this.cachedRecordForId(id);
- record.set('isLoaded', false);
- return this._fetchById(record, id);
- },
-
- _fetchById: function(record, id) {
- var adapter = get(this, 'adapter'),
- deferred;
-
- if (adapter.findMany && !adapter.findMany.isUnimplemented) {
- if (this._currentBatchIds) {
- if (!contains(this._currentBatchIds, id)) { this._currentBatchIds.push(id); }
- } else {
- this._currentBatchIds = [id];
- this._currentBatchRecordArrays = [];
- }
-
- deferred = Ember.Deferred.create();
-
- //Attached the record to the deferred so we can resolove it later.
- Ember.set(deferred, 'resolveWith', record);
-
- if (!this._currentBatchDeferreds) { this._currentBatchDeferreds = []; }
- this._currentBatchDeferreds.push(deferred);
-
- Ember.run.scheduleOnce('data', this, this._executeBatch);
-
- return deferred;
- } else {
- return adapter.find(record, id);
- }
- },
-
- _executeBatch: function() {
- var batchIds = this._currentBatchIds,
- batchRecordArrays = this._currentBatchRecordArrays || [],
- batchDeferreds = this._currentBatchDeferreds,
- self = this,
- requestIds = [],
- promise,
- i;
-
- this._currentBatchIds = null;
- this._currentBatchRecordArrays = null;
- this._currentBatchDeferreds = null;
-
- for (i = 0; i < batchIds.length; i++) {
- if (!this.cachedRecordForId(batchIds[i]).get('isLoaded')) {
- requestIds.push(batchIds[i]);
- }
- }
-
- if (batchIds.length === 1) {
- promise = get(this, 'adapter').find(this.cachedRecordForId(batchIds[0]), batchIds[0]);
- } else {
- var recordArray = Ember.RecordArray.create({_ids: batchIds});
- if (requestIds.length === 0) {
- promise = new Ember.RSVP.Promise(function(resolve, reject) { resolve(recordArray); });
- recordArray.notifyLoaded();
- } else {
- promise = get(this, 'adapter').findMany(this, recordArray, requestIds);
- }
- }
-
- promise.then(function() {
- for (var i = 0, l = batchRecordArrays.length; i < l; i++) {
- batchRecordArrays[i].loadForFindMany(self);
- }
-
- if (batchDeferreds) {
- for (i = 0, l = batchDeferreds.length; i < l; i++) {
- var resolveWith = Ember.get(batchDeferreds[i], 'resolveWith');
- batchDeferreds[i].resolve(resolveWith);
- }
- }
- }).then(null, function(errorXHR) {
- if (batchDeferreds) {
- for (var i = 0, l = batchDeferreds.length; i < l; i++) {
- batchDeferreds[i].reject(errorXHR);
- }
- }
- });
- },
-
- getCachedReferenceRecord: function(id){
- var ref = this._getReferenceById(id);
- if(ref) return ref.record;
- return undefined;
- },
-
- cachedRecordForId: function(id) {
- var record = this.getCachedReferenceRecord(id);
-
- if (!record) {
- var primaryKey = get(this, 'primaryKey'),
- attrs = {isLoaded: false};
- attrs[primaryKey] = id;
- record = this.create(attrs);
- var sideloadedData = this.sideloadedData && this.sideloadedData[id];
- if (sideloadedData) {
- record.load(id, sideloadedData);
- }
- }
-
- return record;
- },
-
- addToRecordArrays: function(record) {
- if (this._findAllRecordArray && !this._findAllRecordArray.contains(record)) {
- this._findAllRecordArray.pushObject(record);
- }
- if (this.recordArrays) {
- this.recordArrays.forEach(function(recordArray) {
- if (recordArray instanceof Ember.FilteredRecordArray) {
- if(!recordArray.recordIsObserved(record)) {
- recordArray.registerObserversOnRecord(record);
- recordArray.updateFilterForRecord(record);
- }
- } else if(!recordArray.contains(record)) {
- recordArray.pushObject(record);
- }
- });
- }
- },
-
- unload: function (record) {
- this.removeFromRecordArrays(record);
- var primaryKey = record.get(get(this, 'primaryKey'));
- this.removeFromCache(primaryKey);
- },
-
- clearCache: function () {
- this.sideloadedData = undefined;
- this._referenceCache = undefined;
- },
-
- removeFromCache: function (key) {
- if (this.sideloadedData && this.sideloadedData[key]) {
- delete this.sideloadedData[key];
- }
- if(this._referenceCache && this._referenceCache[key]) {
- delete this._referenceCache[key];
- }
- },
-
- removeFromRecordArrays: function(record) {
- if (this._findAllRecordArray) {
- this._findAllRecordArray.removeObject(record);
- }
- if (this.recordArrays) {
- this.recordArrays.forEach(function(recordArray) {
- recordArray.removeObject(record);
- });
- }
- },
-
- // FIXME
- findFromCacheOrLoad: function(data) {
- var record;
- if (!data[get(this, 'primaryKey')]) {
- record = this.create({isLoaded: false});
- } else {
- record = this.cachedRecordForId(data[get(this, 'primaryKey')]);
- }
- // set(record, 'data', data);
- record.load(data[get(this, 'primaryKey')], data);
- return record;
- },
-
- registerRecordArray: function(recordArray) {
- if (!this.recordArrays) { this.recordArrays = []; }
- this.recordArrays.push(recordArray);
- },
-
- unregisterRecordArray: function(recordArray) {
- if (!this.recordArrays) { return; }
- Ember.A(this.recordArrays).removeObject(recordArray);
- },
-
- forEachCachedRecord: function(callback) {
- if (!this._referenceCache) { this._referenceCache = {}; }
- var ids = Object.keys(this._referenceCache);
- ids.map(function(id) {
- return this._getReferenceById(id).record;
- }, this).forEach(callback);
- },
-
- load: function(hashes) {
- if (Ember.typeOf(hashes) !== 'array') { hashes = [hashes]; }
-
- if (!this.sideloadedData) { this.sideloadedData = {}; }
-
- for (var i = 0, l = hashes.length; i < l; i++) {
- var hash = hashes[i],
- primaryKey = hash[get(this, 'primaryKey')],
- record = this.getCachedReferenceRecord(primaryKey);
-
- if (record) {
- record.load(primaryKey, hash);
- } else {
- this.sideloadedData[primaryKey] = hash;
- }
- }
- },
-
- _getReferenceById: function(id) {
- if (!this._referenceCache) { this._referenceCache = {}; }
- return this._referenceCache[id];
- },
-
- _getOrCreateReferenceForId: function(id) {
- var reference = this._getReferenceById(id);
-
- if (!reference) {
- reference = this._createReference(id);
- }
-
- return reference;
- },
-
- _createReference: function(id) {
- if (!this._referenceCache) { this._referenceCache = {}; }
-
- Ember.assert('The id ' + id + ' has alread been used with another record of type ' + this.toString() + '.', !id || !this._referenceCache[id]);
-
- var reference = {
- id: id,
- clientId: this._clientIdCounter++
- };
-
- this._cacheReference(reference);
-
- return reference;
- },
-
- _cacheReference: function(reference) {
- // if we're creating an item, this process will be done
- // later, once the object has been persisted.
- if (reference.id) {
- this._referenceCache[reference.id] = reference;
- }
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get;
-
-Ember.hasMany = function(type, options) {
- options = options || {};
-
- var meta = { type: type, isRelationship: true, options: options, kind: 'hasMany' },
- key = options.key;
-
- return Ember.computed(function() {
- if (typeof type === "string") {
- type = Ember.get(Ember.lookup, type);
- }
-
- return this.getHasMany(key, type, meta);
- }).property().meta(meta);
-};
-
-Ember.Model.reopen({
- getHasMany: function(key, type, meta) {
- var embedded = meta.options.embedded,
- collectionClass = embedded ? Ember.EmbeddedHasManyArray : Ember.HasManyArray;
-
- var collection = collectionClass.create({
- parent: this,
- modelClass: type,
- content: this._getHasManyContent(key, type, embedded),
- embedded: embedded,
- key: key,
- relationshipKey: meta.relationshipKey
- });
-
- this._registerHasManyArray(collection);
-
- return collection;
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get,
- set = Ember.set;
-
-function getType() {
- if (typeof this.type === "string") {
- this.type = Ember.get(Ember.lookup, this.type);
- }
- return this.type;
-}
-
-Ember.belongsTo = function(type, options) {
- options = options || {};
-
- var meta = { type: type, isRelationship: true, options: options, kind: 'belongsTo', getType: getType },
- relationshipKey = options.key;
-
- return Ember.computed(function(key, value, oldValue) {
- type = meta.getType();
-
- var dirtyAttributes = get(this, '_dirtyAttributes'),
- createdDirtyAttributes = false;
-
- if (!dirtyAttributes) {
- dirtyAttributes = [];
- createdDirtyAttributes = true;
- }
-
- if (arguments.length > 1) {
- if (value) {
- Ember.assert(Ember.String.fmt('Attempted to set property of type: %@ with a value of type: %@',
- [value.constructor, type]),
- value instanceof type);
-
- if (oldValue !== value) {
- dirtyAttributes.pushObject(key);
- } else {
- dirtyAttributes.removeObject(key);
- }
-
- if (createdDirtyAttributes) {
- set(this, '_dirtyAttributes', dirtyAttributes);
- }
- }
- return value === undefined ? null : value;
- } else {
- return this.getBelongsTo(relationshipKey, type, meta);
- }
- }).property('_data').meta(meta);
-};
-
-Ember.Model.reopen({
- getBelongsTo: function(key, type, meta) {
- var idOrAttrs = get(this, '_data.' + key),
- record;
-
- if (Ember.isNone(idOrAttrs)) {
- return null;
- }
-
- if (meta.options.embedded) {
- var primaryKey = get(type, 'primaryKey'),
- id = idOrAttrs[primaryKey];
- record = type.create({ isLoaded: false, id: id });
- record.load(id, idOrAttrs);
- } else {
- record = type.find(idOrAttrs);
- }
-
- return record;
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get,
- set = Ember.set,
- meta = Ember.meta;
-
-Ember.Model.dataTypes = {};
-
-Ember.Model.dataTypes[Date] = {
- deserialize: function(string) {
- if (!string) { return null; }
- return new Date(string);
- },
- serialize: function (date) {
- if (!date) { return null; }
- return date.toISOString();
- },
- isEqual: function(obj1, obj2) {
- if (obj1 instanceof Date) { obj1 = this.serialize(obj1); }
- if (obj2 instanceof Date) { obj2 = this.serialize(obj2); }
- return obj1 === obj2;
- }
-};
-
-Ember.Model.dataTypes[Number] = {
- deserialize: function(string) {
- if (!string && string !== 0) { return null; }
- return Number(string);
- },
- serialize: function (number) {
- if (!number && number !== 0) { return null; }
- return Number(number);
- }
-};
-
-function deserialize(value, type) {
- if (type && type.deserialize) {
- return type.deserialize(value);
- } else if (type && Ember.Model.dataTypes[type]) {
- return Ember.Model.dataTypes[type].deserialize(value);
- } else {
- return value;
- }
-}
-
-function serialize(value, type) {
- if (type && type.serialize) {
- return type.serialize(value);
- } else if (type && Ember.Model.dataTypes[type]) {
- return Ember.Model.dataTypes[type].serialize(value);
- } else {
- return value;
- }
-}
-
-Ember.attr = function(type, options) {
- return Ember.computed(function(key, value) {
- var data = get(this, '_data'),
- dataKey = this.dataKey(key),
- dataValue = data && get(data, dataKey),
- beingCreated = meta(this).proto === this,
- dirtyAttributes = get(this, '_dirtyAttributes'),
- createdDirtyAttributes = false;
-
- if (!dirtyAttributes) {
- dirtyAttributes = [];
- createdDirtyAttributes = true;
- }
-
- if (arguments.length === 2) {
- if (beingCreated) {
- if (!data) {
- data = {};
- set(this, '_data', data);
- }
- dataValue = data[dataKey] = value;
- }
-
- if (dataValue !== serialize(value, type)) {
- dirtyAttributes.pushObject(key);
- } else {
- dirtyAttributes.removeObject(key);
- }
-
- if (createdDirtyAttributes) {
- set(this, '_dirtyAttributes', dirtyAttributes);
- }
-
- return value;
- }
-
- return this.getAttr(key, deserialize(dataValue, type));
- }).property('_data').meta({isAttribute: true, type: type, options: options});
-};
-
-
-})();
-
-(function() {
-
-var get = Ember.get;
-
-Ember.RESTAdapter = Ember.Adapter.extend({
- find: function(record, id) {
- var url = this.buildURL(record.constructor, id),
- self = this;
-
- return this.ajax(url).then(function(data) {
- self.didFind(record, id, data);
- return record;
- });
- },
-
- didFind: function(record, id, data) {
- var rootKey = get(record.constructor, 'rootKey'),
- dataToLoad = rootKey ? data[rootKey] : data;
-
- record.load(id, dataToLoad);
- },
-
- findAll: function(klass, records) {
- var url = this.buildURL(klass),
- self = this;
-
- return this.ajax(url).then(function(data) {
- self.didFindAll(klass, records, data);
- return records;
- });
- },
-
- didFindAll: function(klass, records, data) {
- var collectionKey = get(klass, 'collectionKey'),
- dataToLoad = collectionKey ? data[collectionKey] : data;
-
- records.load(klass, dataToLoad);
- },
-
- findQuery: function(klass, records, params) {
- var url = this.buildURL(klass),
- self = this;
-
- return this.ajax(url, params).then(function(data) {
- self.didFindQuery(klass, records, params, data);
- return records;
- });
- },
-
- didFindQuery: function(klass, records, params, data) {
- var collectionKey = get(klass, 'collectionKey'),
- dataToLoad = collectionKey ? data[collectionKey] : data;
-
- records.load(klass, dataToLoad);
- },
-
- createRecord: function(record) {
- var url = this.buildURL(record.constructor),
- self = this;
-
- return this.ajax(url, record.toJSON(), "POST").then(function(data) {
- self.didCreateRecord(record, data);
- return record;
- });
- },
-
- didCreateRecord: function(record, data) {
- var rootKey = get(record.constructor, 'rootKey'),
- primaryKey = get(record.constructor, 'primaryKey'),
- dataToLoad = rootKey ? data[rootKey] : data;
- record.load(dataToLoad[primaryKey], dataToLoad);
- record.didCreateRecord();
- },
-
- saveRecord: function(record) {
- var primaryKey = get(record.constructor, 'primaryKey'),
- url = this.buildURL(record.constructor, get(record, primaryKey)),
- self = this;
-
- return this.ajax(url, record.toJSON(), "PUT").then(function(data) { // TODO: Some APIs may or may not return data
- self.didSaveRecord(record, data);
- return record;
- });
- },
-
- didSaveRecord: function(record, data) {
- record.didSaveRecord();
- },
-
- deleteRecord: function(record) {
- var primaryKey = get(record.constructor, 'primaryKey'),
- url = this.buildURL(record.constructor, get(record, primaryKey)),
- self = this;
-
- return this.ajax(url, record.toJSON(), "DELETE").then(function(data) { // TODO: Some APIs may or may not return data
- self.didDeleteRecord(record, data);
- });
- },
-
- didDeleteRecord: function(record, data) {
- record.didDeleteRecord();
- },
-
- ajax: function(url, params, method, settings) {
- return this._ajax(url, params, (method || "GET"), settings);
- },
-
- buildURL: function(klass, id) {
- var urlRoot = get(klass, 'url');
- if (!urlRoot) { throw new Error('Ember.RESTAdapter requires a `url` property to be specified'); }
-
- if (!Ember.isEmpty(id)) {
- return urlRoot + "/" + id + ".json";
- } else {
- return urlRoot + ".json";
- }
- },
-
- ajaxSettings: function(url, method) {
- return {
- url: url,
- type: method,
- dataType: "json"
- };
- },
-
- _ajax: function(url, params, method, settings) {
- if (!settings) {
- settings = this.ajaxSettings(url, method);
- }
-
- return new Ember.RSVP.Promise(function(resolve, reject) {
- if (params) {
- if (method === "GET") {
- settings.data = params;
- } else {
- settings.contentType = "application/json; charset=utf-8";
- settings.data = JSON.stringify(params);
- }
- }
-
- settings.success = function(json) {
- Ember.run(null, resolve, json);
- };
-
- settings.error = function(jqXHR, textStatus, errorThrown) {
- // https://github.com/ebryn/ember-model/issues/202
- if (jqXHR) {
- jqXHR.then = null;
- }
-
- Ember.run(null, reject, jqXHR);
- };
-
-
- Ember.$.ajax(settings);
- });
- }
-});
-
-
-})();
-
-(function() {
-
-var get = Ember.get;
-
-Ember.LoadPromise = Ember.Object.extend(Ember.DeferredMixin, {
- init: function() {
- this._super.apply(this, arguments);
-
- var target = get(this, 'target');
-
- if (get(target, 'isLoaded') && !get(target, 'isNew')) {
- this.resolve(target);
- } else {
- target.one('didLoad', this, function() {
- this.resolve(target);
- });
- }
- }
-});
-
-Ember.loadPromise = function(target) {
- if (Ember.isNone(target)) {
- return null;
- } else if (target.then) {
- return target;
- } else {
- return Ember.LoadPromise.create({target: target});
- }
-};
-
-
-})();
-
-(function() {
-
-// This is a debug adapter for the Ember Extension, don't let the fact this is called an "adapter" confuse you.
-// Most copied from: https://github.com/emberjs/data/blob/master/packages/ember-data/lib/system/debug/debug_adapter.js
-
-if (!Ember.DataAdapter) { return; }
-
-var get = Ember.get, capitalize = Ember.String.capitalize, underscore = Ember.String.underscore;
-
-var DebugAdapter = Ember.DataAdapter.extend({
- getFilters: function() {
- return [
- { name: 'isNew', desc: 'New' },
- { name: 'isModified', desc: 'Modified' },
- { name: 'isClean', desc: 'Clean' }
- ];
- },
-
- detect: function(klass) {
- return klass !== Ember.Model && Ember.Model.detect(klass);
- },
-
- columnsForType: function(type) {
- var columns = [], count = 0, self = this;
- Ember.A(get(type.proto(), 'attributes')).forEach(function(name, meta) {
- if (count++ > self.attributeLimit) { return false; }
- var desc = capitalize(underscore(name).replace('_', ' '));
- columns.push({ name: name, desc: desc });
- });
- return columns;
- },
-
- getRecords: function(type) {
- var records = [];
- type.forEachCachedRecord(function(record) { records.push(record); });
- return records;
- },
-
- getRecordColumnValues: function(record) {
- var self = this, count = 0,
- columnValues = { id: get(record, 'id') };
-
- record.get('attributes').forEach(function(key) {
- if (count++ > self.attributeLimit) {
- return false;
- }
- var value = get(record, key);
- columnValues[key] = value;
- });
- return columnValues;
- },
-
- getRecordKeywords: function(record) {
- var keywords = [], keys = Ember.A(['id']);
- record.get('attributes').forEach(function(key) {
- keys.push(key);
- });
- keys.forEach(function(key) {
- keywords.push(get(record, key));
- });
- return keywords;
- },
-
- getRecordFilterValues: function(record) {
- return {
- isNew: record.get('isNew'),
- isModified: record.get('isDirty') && !record.get('isNew'),
- isClean: !record.get('isDirty')
- };
- },
-
- getRecordColor: function(record) {
- var color = 'black';
- if (record.get('isNew')) {
- color = 'green';
- } else if (record.get('isDirty')) {
- color = 'blue';
- }
- return color;
- },
-
- observeRecord: function(record, recordUpdated) {
- var releaseMethods = Ember.A(), self = this,
- keysToObserve = Ember.A(['id', 'isNew', 'isDirty']);
-
- record.get('attributes').forEach(function(key) {
- keysToObserve.push(key);
- });
-
- keysToObserve.forEach(function(key) {
- var handler = function() {
- recordUpdated(self.wrapRecord(record));
- };
- Ember.addObserver(record, key, handler);
- releaseMethods.push(function() {
- Ember.removeObserver(record, key, handler);
- });
- });
-
- var release = function() {
- releaseMethods.forEach(function(fn) { fn(); } );
- };
-
- return release;
- }
-});
-
-Ember.onLoad('Ember.Application', function(Application) {
- Application.initializer({
- name: "dataAdapter",
-
- initialize: function(container, application) {
- application.register('dataAdapter:main', DebugAdapter);
- }
- });
-});
-
-})();
diff --git a/assets/scripts/vendor/ember.js b/assets/scripts/vendor/ember.js
deleted file mode 100644
index e57aab16..00000000
--- a/assets/scripts/vendor/ember.js
+++ /dev/null
@@ -1,50415 +0,0 @@
-/*!
- * @overview Ember - JavaScript Application Framework
- * @copyright Copyright 2011-2014 Tilde Inc. and contributors
- * Portions Copyright 2006-2011 Strobe Inc.
- * Portions Copyright 2008-2011 Apple Inc. All rights reserved.
- * @license Licensed under MIT license
- * See https://raw.github.com/emberjs/ember.js/master/LICENSE
- * @version 1.9.1
- */
-
-(function() {
-var enifed, requireModule, eriuqer, requirejs, Ember;
-
-(function() {
- Ember = this.Ember = this.Ember || {};
- if (typeof Ember === 'undefined') { Ember = {}; };
- function UNDEFINED() { }
-
- if (typeof Ember.__loader === 'undefined') {
- var registry = {}, seen = {};
-
- enifed = function(name, deps, callback) {
- registry[name] = { deps: deps, callback: callback };
- };
-
- requirejs = eriuqer = requireModule = function(name) {
- var s = seen[name];
-
- if (s !== undefined) { return seen[name]; }
- if (s === UNDEFINED) { return undefined; }
-
- seen[name] = {};
-
- if (!registry[name]) {
- throw new Error("Could not find module " + name);
- }
-
- var mod = registry[name];
- var deps = mod.deps;
- var callback = mod.callback;
- var reified = [];
- var exports;
- var length = deps.length;
-
- for (var i=0; i 3) {
- args = new Array(length - 3);
- for (var i = 3; i < length; i++) {
- args[i-3] = arguments[i];
- }
- } else {
- args = undefined;
- }
-
- if (!this.currentInstance) { createAutorun(this); }
- return this.currentInstance.schedule(queueName, target, method, args, false, stack);
- },
-
- deferOnce: function(queueName, target, method /* , args */) {
- if (!method) {
- method = target;
- target = null;
- }
-
- if (isString(method)) {
- method = target[method];
- }
-
- var stack = this.DEBUG ? new Error() : undefined;
- var length = arguments.length;
- var args;
-
- if (length > 3) {
- args = new Array(length - 3);
- for (var i = 3; i < length; i++) {
- args[i-3] = arguments[i];
- }
- } else {
- args = undefined;
- }
-
- if (!this.currentInstance) {
- createAutorun(this);
- }
- return this.currentInstance.schedule(queueName, target, method, args, true, stack);
- },
-
- setTimeout: function() {
- var l = arguments.length;
- var args = new Array(l);
-
- for (var x = 0; x < l; x++) {
- args[x] = arguments[x];
- }
-
- var length = args.length,
- method, wait, target,
- methodOrTarget, methodOrWait, methodOrArgs;
-
- if (length === 0) {
- return;
- } else if (length === 1) {
- method = args.shift();
- wait = 0;
- } else if (length === 2) {
- methodOrTarget = args[0];
- methodOrWait = args[1];
-
- if (isFunction(methodOrWait) || isFunction(methodOrTarget[methodOrWait])) {
- target = args.shift();
- method = args.shift();
- wait = 0;
- } else if (isCoercableNumber(methodOrWait)) {
- method = args.shift();
- wait = args.shift();
- } else {
- method = args.shift();
- wait = 0;
- }
- } else {
- var last = args[args.length - 1];
-
- if (isCoercableNumber(last)) {
- wait = args.pop();
- } else {
- wait = 0;
- }
-
- methodOrTarget = args[0];
- methodOrArgs = args[1];
-
- if (isFunction(methodOrArgs) || (isString(methodOrArgs) &&
- methodOrTarget !== null &&
- methodOrArgs in methodOrTarget)) {
- target = args.shift();
- method = args.shift();
- } else {
- method = args.shift();
- }
- }
-
- var executeAt = now() + parseInt(wait, 10);
-
- if (isString(method)) {
- method = target[method];
- }
-
- var onError = getOnError(this.options);
-
- function fn() {
- if (onError) {
- try {
- method.apply(target, args);
- } catch (e) {
- onError(e);
- }
- } else {
- method.apply(target, args);
- }
- }
-
- // find position to insert
- var i = searchTimer(executeAt, this._timers);
-
- this._timers.splice(i, 0, executeAt, fn);
-
- updateLaterTimer(this, executeAt, wait);
-
- return fn;
- },
-
- throttle: function(target, method /* , args, wait, [immediate] */) {
- var backburner = this;
- var args = arguments;
- var immediate = pop.call(args);
- var wait, throttler, index, timer;
-
- if (isNumber(immediate) || isString(immediate)) {
- wait = immediate;
- immediate = true;
- } else {
- wait = pop.call(args);
- }
-
- wait = parseInt(wait, 10);
-
- index = findThrottler(target, method, this._throttlers);
- if (index > -1) { return this._throttlers[index]; } // throttled
-
- timer = global.setTimeout(function() {
- if (!immediate) {
- backburner.run.apply(backburner, args);
- }
- var index = findThrottler(target, method, backburner._throttlers);
- if (index > -1) {
- backburner._throttlers.splice(index, 1);
- }
- }, wait);
-
- if (immediate) {
- this.run.apply(this, args);
- }
-
- throttler = [target, method, timer];
-
- this._throttlers.push(throttler);
-
- return throttler;
- },
-
- debounce: function(target, method /* , args, wait, [immediate] */) {
- var backburner = this;
- var args = arguments;
- var immediate = pop.call(args);
- var wait, index, debouncee, timer;
-
- if (isNumber(immediate) || isString(immediate)) {
- wait = immediate;
- immediate = false;
- } else {
- wait = pop.call(args);
- }
-
- wait = parseInt(wait, 10);
- // Remove debouncee
- index = findDebouncee(target, method, this._debouncees);
-
- if (index > -1) {
- debouncee = this._debouncees[index];
- this._debouncees.splice(index, 1);
- clearTimeout(debouncee[2]);
- }
-
- timer = global.setTimeout(function() {
- if (!immediate) {
- backburner.run.apply(backburner, args);
- }
- var index = findDebouncee(target, method, backburner._debouncees);
- if (index > -1) {
- backburner._debouncees.splice(index, 1);
- }
- }, wait);
-
- if (immediate && index === -1) {
- backburner.run.apply(backburner, args);
- }
-
- debouncee = [
- target,
- method,
- timer
- ];
-
- backburner._debouncees.push(debouncee);
-
- return debouncee;
- },
-
- cancelTimers: function() {
- var clearItems = function(item) {
- clearTimeout(item[2]);
- };
-
- each(this._throttlers, clearItems);
- this._throttlers = [];
-
- each(this._debouncees, clearItems);
- this._debouncees = [];
-
- if (this._laterTimer) {
- clearTimeout(this._laterTimer);
- this._laterTimer = null;
- }
- this._timers = [];
-
- if (this._autorun) {
- clearTimeout(this._autorun);
- this._autorun = null;
- }
- },
-
- hasTimers: function() {
- return !!this._timers.length || !!this._debouncees.length || !!this._throttlers.length || this._autorun;
- },
-
- cancel: function(timer) {
- var timerType = typeof timer;
-
- if (timer && timerType === 'object' && timer.queue && timer.method) { // we're cancelling a deferOnce
- return timer.queue.cancel(timer);
- } else if (timerType === 'function') { // we're cancelling a setTimeout
- for (var i = 0, l = this._timers.length; i < l; i += 2) {
- if (this._timers[i + 1] === timer) {
- this._timers.splice(i, 2); // remove the two elements
- if (i === 0) {
- if (this._laterTimer) { // Active timer? Then clear timer and reset for future timer
- clearTimeout(this._laterTimer);
- this._laterTimer = null;
- }
- if (this._timers.length > 0) { // Update to next available timer when available
- updateLaterTimer(this, this._timers[0], this._timers[0] - now());
- }
- }
- return true;
- }
- }
- } else if (Object.prototype.toString.call(timer) === "[object Array]"){ // we're cancelling a throttle or debounce
- return this._cancelItem(findThrottler, this._throttlers, timer) ||
- this._cancelItem(findDebouncee, this._debouncees, timer);
- } else {
- return; // timer was null or not a timer
- }
- },
-
- _cancelItem: function(findMethod, array, timer){
- var item, index;
-
- if (timer.length < 3) { return false; }
-
- index = findMethod(timer[0], timer[1], array);
-
- if (index > -1) {
-
- item = array[index];
-
- if (item[2] === timer[2]) {
- array.splice(index, 1);
- clearTimeout(timer[2]);
- return true;
- }
- }
-
- return false;
- }
- };
-
- Backburner.prototype.schedule = Backburner.prototype.defer;
- Backburner.prototype.scheduleOnce = Backburner.prototype.deferOnce;
- Backburner.prototype.later = Backburner.prototype.setTimeout;
-
- if (needsIETryCatchFix) {
- var originalRun = Backburner.prototype.run;
- Backburner.prototype.run = wrapInTryCatch(originalRun);
-
- var originalEnd = Backburner.prototype.end;
- Backburner.prototype.end = wrapInTryCatch(originalEnd);
- }
-
- function getOnError(options) {
- return options.onError || (options.onErrorTarget && options.onErrorTarget[options.onErrorMethod]);
- }
-
- function createAutorun(backburner) {
- backburner.begin();
- backburner._autorun = global.setTimeout(function() {
- backburner._autorun = null;
- backburner.end();
- });
- }
-
- function updateLaterTimer(backburner, executeAt, wait) {
- var n = now();
- if (!backburner._laterTimer || executeAt < backburner._laterTimerExpiresAt || backburner._laterTimerExpiresAt < n) {
-
- if (backburner._laterTimer) {
- // Clear when:
- // - Already expired
- // - New timer is earlier
- clearTimeout(backburner._laterTimer);
-
- if (backburner._laterTimerExpiresAt < n) { // If timer was never triggered
- // Calculate the left-over wait-time
- wait = Math.max(0, executeAt - n);
- }
- }
-
- backburner._laterTimer = global.setTimeout(function() {
- backburner._laterTimer = null;
- backburner._laterTimerExpiresAt = null;
- executeTimers(backburner);
- }, wait);
-
- backburner._laterTimerExpiresAt = n + wait;
- }
- }
-
- function executeTimers(backburner) {
- var n = now();
- var fns, i, l;
-
- backburner.run(function() {
- i = searchTimer(n, backburner._timers);
-
- fns = backburner._timers.splice(0, i);
-
- for (i = 1, l = fns.length; i < l; i += 2) {
- backburner.schedule(backburner.options.defaultQueue, null, fns[i]);
- }
- });
-
- if (backburner._timers.length) {
- updateLaterTimer(backburner, backburner._timers[0], backburner._timers[0] - n);
- }
- }
-
- function findDebouncee(target, method, debouncees) {
- return findItem(target, method, debouncees);
- }
-
- function findThrottler(target, method, throttlers) {
- return findItem(target, method, throttlers);
- }
-
- function findItem(target, method, collection) {
- var item;
- var index = -1;
-
- for (var i = 0, l = collection.length; i < l; i++) {
- item = collection[i];
- if (item[0] === target && item[1] === method) {
- index = i;
- break;
- }
- }
-
- return index;
- }
-
- __exports__["default"] = Backburner;
- });
-enifed("backburner.umd",
- ["./backburner"],
- function(__dependency1__) {
- "use strict";
- var Backburner = __dependency1__["default"];
-
- /* global define:true module:true window: true */
- if (typeof enifed === 'function' && enifed.amd) {
- enifed(function() { return Backburner; });
- } else if (typeof module !== 'undefined' && module.exports) {
- module.exports = Backburner;
- } else if (typeof this !== 'undefined') {
- this['Backburner'] = Backburner;
- }
- });
-enifed("backburner/binary-search",
- ["exports"],
- function(__exports__) {
- "use strict";
- __exports__["default"] = function binarySearch(time, timers) {
- var start = 0;
- var end = timers.length - 2;
- var middle, l;
-
- while (start < end) {
- // since timers is an array of pairs 'l' will always
- // be an integer
- l = (end - start) / 2;
-
- // compensate for the index in case even number
- // of pairs inside timers
- middle = start + l - (l % 2);
-
- if (time >= timers[middle]) {
- start = middle + 2;
- } else {
- end = middle;
- }
- }
-
- return (time >= timers[start]) ? start + 2 : start;
- }
- });
-enifed("backburner/deferred-action-queues",
- ["./utils","./queue","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var each = __dependency1__.each;
- var Queue = __dependency2__["default"];
-
- function DeferredActionQueues(queueNames, options) {
- var queues = this.queues = Object.create(null);
- this.queueNames = queueNames = queueNames || [];
-
- this.options = options;
-
- each(queueNames, function(queueName) {
- queues[queueName] = new Queue(queueName, options[queueName], options);
- });
- }
-
- function noSuchQueue(name) {
- throw new Error("You attempted to schedule an action in a queue (" + name + ") that doesn't exist");
- }
-
- DeferredActionQueues.prototype = {
- schedule: function(name, target, method, args, onceFlag, stack) {
- var queues = this.queues;
- var queue = queues[name];
-
- if (!queue) {
- noSuchQueue(name);
- }
-
- if (onceFlag) {
- return queue.pushUnique(target, method, args, stack);
- } else {
- return queue.push(target, method, args, stack);
- }
- },
-
- flush: function() {
- var queues = this.queues;
- var queueNames = this.queueNames;
- var queueName, queue, queueItems, priorQueueNameIndex;
- var queueNameIndex = 0;
- var numberOfQueues = queueNames.length;
- var options = this.options;
-
- while (queueNameIndex < numberOfQueues) {
- queueName = queueNames[queueNameIndex];
- queue = queues[queueName];
-
- var numberOfQueueItems = queue._queue.length;
-
- if (numberOfQueueItems === 0) {
- queueNameIndex++;
- } else {
- queue.flush(false /* async */);
- queueNameIndex = 0;
- }
- }
- }
- };
-
- __exports__["default"] = DeferredActionQueues;
- });
-enifed("backburner/platform",
- ["exports"],
- function(__exports__) {
- "use strict";
- // In IE 6-8, try/finally doesn't work without a catch.
- // Unfortunately, this is impossible to test for since wrapping it in a parent try/catch doesn't trigger the bug.
- // This tests for another broken try/catch behavior that only exhibits in the same versions of IE.
- var needsIETryCatchFix = (function(e,x){
- try{ x(); }
- catch(e) { } // jshint ignore:line
- return !!e;
- })();
- __exports__.needsIETryCatchFix = needsIETryCatchFix;
- });
-enifed("backburner/queue",
- ["./utils","exports"],
- function(__dependency1__, __exports__) {
- "use strict";
- var isString = __dependency1__.isString;
-
- function Queue(name, options, globalOptions) {
- this.name = name;
- this.globalOptions = globalOptions || {};
- this.options = options;
- this._queue = [];
- this.targetQueues = Object.create(null);
- this._queueBeingFlushed = undefined;
- }
-
- Queue.prototype = {
- push: function(target, method, args, stack) {
- var queue = this._queue;
- queue.push(target, method, args, stack);
-
- return {
- queue: this,
- target: target,
- method: method
- };
- },
-
- pushUniqueWithoutGuid: function(target, method, args, stack) {
- var queue = this._queue;
-
- for (var i = 0, l = queue.length; i < l; i += 4) {
- var currentTarget = queue[i];
- var currentMethod = queue[i+1];
-
- if (currentTarget === target && currentMethod === method) {
- queue[i+2] = args; // replace args
- queue[i+3] = stack; // replace stack
- return;
- }
- }
-
- queue.push(target, method, args, stack);
- },
-
- targetQueue: function(targetQueue, target, method, args, stack) {
- var queue = this._queue;
-
- for (var i = 0, l = targetQueue.length; i < l; i += 4) {
- var currentMethod = targetQueue[i];
- var currentIndex = targetQueue[i + 1];
-
- if (currentMethod === method) {
- queue[currentIndex + 2] = args; // replace args
- queue[currentIndex + 3] = stack; // replace stack
- return;
- }
- }
-
- targetQueue.push(
- method,
- queue.push(target, method, args, stack) - 4
- );
- },
-
- pushUniqueWithGuid: function(guid, target, method, args, stack) {
- var hasLocalQueue = this.targetQueues[guid];
-
- if (hasLocalQueue) {
- this.targetQueue(hasLocalQueue, target, method, args, stack);
- } else {
- this.targetQueues[guid] = [
- method,
- this._queue.push(target, method, args, stack) - 4
- ];
- }
-
- return {
- queue: this,
- target: target,
- method: method
- };
- },
-
- pushUnique: function(target, method, args, stack) {
- var queue = this._queue, currentTarget, currentMethod, i, l;
- var KEY = this.globalOptions.GUID_KEY;
-
- if (target && KEY) {
- var guid = target[KEY];
- if (guid) {
- return this.pushUniqueWithGuid(guid, target, method, args, stack);
- }
- }
-
- this.pushUniqueWithoutGuid(target, method, args, stack);
-
- return {
- queue: this,
- target: target,
- method: method
- };
- },
-
- invoke: function(target, method, args, _, _errorRecordedForStack) {
- if (args && args.length > 0) {
- method.apply(target, args);
- } else {
- method.call(target);
- }
- },
-
- invokeWithOnError: function(target, method, args, onError, errorRecordedForStack) {
- try {
- if (args && args.length > 0) {
- method.apply(target, args);
- } else {
- method.call(target);
- }
- } catch(error) {
- onError(error, errorRecordedForStack);
- }
- },
-
- flush: function(sync) {
- var queue = this._queue;
- var length = queue.length;
-
- if (length === 0) {
- return;
- }
-
- var globalOptions = this.globalOptions;
- var options = this.options;
- var before = options && options.before;
- var after = options && options.after;
- var onError = globalOptions.onError || (globalOptions.onErrorTarget &&
- globalOptions.onErrorTarget[globalOptions.onErrorMethod]);
- var target, method, args, errorRecordedForStack;
- var invoke = onError ? this.invokeWithOnError : this.invoke;
-
- this.targetQueues = Object.create(null);
- var queueItems = this._queueBeingFlushed = this._queue.slice();
- this._queue = [];
-
- if (before) {
- before();
- }
-
- for (var i = 0; i < length; i += 4) {
- target = queueItems[i];
- method = queueItems[i+1];
- args = queueItems[i+2];
- errorRecordedForStack = queueItems[i+3]; // Debugging assistance
-
- if (isString(method)) {
- method = target[method];
- }
-
- // method could have been nullified / canceled during flush
- if (method) {
- //
- // ** Attention intrepid developer **
- //
- // To find out the stack of this task when it was scheduled onto
- // the run loop, add the following to your app.js:
- //
- // Ember.run.backburner.DEBUG = true; // NOTE: This slows your app, don't leave it on in production.
- //
- // Once that is in place, when you are at a breakpoint and navigate
- // here in the stack explorer, you can look at `errorRecordedForStack.stack`,
- // which will be the captured stack when this job was scheduled.
- //
- invoke(target, method, args, onError, errorRecordedForStack);
- }
- }
-
- if (after) {
- after();
- }
-
- this._queueBeingFlushed = undefined;
-
- if (sync !== false &&
- this._queue.length > 0) {
- // check if new items have been added
- this.flush(true);
- }
- },
-
- cancel: function(actionToCancel) {
- var queue = this._queue, currentTarget, currentMethod, i, l;
- var target = actionToCancel.target;
- var method = actionToCancel.method;
- var GUID_KEY = this.globalOptions.GUID_KEY;
-
- if (GUID_KEY && this.targetQueues && target) {
- var targetQueue = this.targetQueues[target[GUID_KEY]];
-
- if (targetQueue) {
- for (i = 0, l = targetQueue.length; i < l; i++) {
- if (targetQueue[i] === method) {
- targetQueue.splice(i, 1);
- }
- }
- }
- }
-
- for (i = 0, l = queue.length; i < l; i += 4) {
- currentTarget = queue[i];
- currentMethod = queue[i+1];
-
- if (currentTarget === target &&
- currentMethod === method) {
- queue.splice(i, 4);
- return true;
- }
- }
-
- // if not found in current queue
- // could be in the queue that is being flushed
- queue = this._queueBeingFlushed;
-
- if (!queue) {
- return;
- }
-
- for (i = 0, l = queue.length; i < l; i += 4) {
- currentTarget = queue[i];
- currentMethod = queue[i+1];
-
- if (currentTarget === target &&
- currentMethod === method) {
- // don't mess with array during flush
- // just nullify the method
- queue[i+1] = null;
- return true;
- }
- }
- }
- };
-
- __exports__["default"] = Queue;
- });
-enifed("backburner/utils",
- ["exports"],
- function(__exports__) {
- "use strict";
- var NUMBER = /\d+/;
-
- function each(collection, callback) {
- for (var i = 0; i < collection.length; i++) {
- callback(collection[i]);
- }
- }
-
- __exports__.each = each;// Date.now is not available in browsers < IE9
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/now#Compatibility
- var now = Date.now || function() { return new Date().getTime(); };
- __exports__.now = now;
- function isString(suspect) {
- return typeof suspect === 'string';
- }
-
- __exports__.isString = isString;function isFunction(suspect) {
- return typeof suspect === 'function';
- }
-
- __exports__.isFunction = isFunction;function isNumber(suspect) {
- return typeof suspect === 'number';
- }
-
- __exports__.isNumber = isNumber;function isCoercableNumber(number) {
- return isNumber(number) || NUMBER.test(number);
- }
-
- __exports__.isCoercableNumber = isCoercableNumber;function wrapInTryCatch(func) {
- return function () {
- try {
- return func.apply(this, arguments);
- } catch (e) {
- throw e;
- }
- };
- }
-
- __exports__.wrapInTryCatch = wrapInTryCatch;
- });
-enifed("calculateVersion",
- [],
- function() {
- "use strict";
- 'use strict';
-
- var fs = eriuqer('fs');
- var path = eriuqer('path');
-
- module.exports = function () {
- var packageVersion = eriuqer('../package.json').version;
- var output = [packageVersion];
- var gitPath = path.join(__dirname,'..','.git');
- var headFilePath = path.join(gitPath, 'HEAD');
-
- if (packageVersion.indexOf('+') > -1) {
- try {
- if (fs.existsSync(headFilePath)) {
- var headFile = fs.readFileSync(headFilePath, {encoding: 'utf8'});
- var branchName = headFile.split('/').slice(-1)[0].trim();
- var refPath = headFile.split(' ')[1];
- var branchSHA;
-
- if (refPath) {
- var branchPath = path.join(gitPath, refPath.trim());
- branchSHA = fs.readFileSync(branchPath);
- } else {
- branchSHA = branchName;
- }
-
- output.push(branchSHA.slice(0,10));
- }
- } catch (err) {
- console.error(err.stack);
- }
- return output.join('.');
- } else {
- return packageVersion;
- }
- };
- });
-enifed("container",
- ["container/container","exports"],
- function(__dependency1__, __exports__) {
- "use strict";
- /*
- Public api for the container is still in flux.
- The public api, specified on the application namespace should be considered the stable api.
- // @module container
- @private
- */
-
- /*
- Flag to enable/disable model factory injections (disabled by default)
- If model factory injections are enabled, models should not be
- accessed globally (only through `container.lookupFactory('model:modelName'))`);
- */
- Ember.MODEL_FACTORY_INJECTIONS = false;
-
- if (Ember.ENV && typeof Ember.ENV.MODEL_FACTORY_INJECTIONS !== 'undefined') {
- Ember.MODEL_FACTORY_INJECTIONS = !!Ember.ENV.MODEL_FACTORY_INJECTIONS;
- }
-
-
- var Container = __dependency1__["default"];
-
- __exports__["default"] = Container;
- });
-enifed("container/container",
- ["ember-metal/core","ember-metal/keys","ember-metal/dictionary","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.assert
- var emberKeys = __dependency2__["default"];
- var dictionary = __dependency3__["default"];
-
- // A lightweight container that helps to assemble and decouple components.
- // Public api for the container is still in flux.
- // The public api, specified on the application namespace should be considered the stable api.
- function Container(parent) {
- this.parent = parent;
- this.children = [];
-
- this.resolver = parent && parent.resolver || function() {};
-
- this.registry = dictionary(parent ? parent.registry : null);
- this.cache = dictionary(parent ? parent.cache : null);
- this.factoryCache = dictionary(parent ? parent.factoryCache : null);
- this.resolveCache = dictionary(parent ? parent.resolveCache : null);
- this.typeInjections = dictionary(parent ? parent.typeInjections : null);
- this.injections = dictionary(null);
- this.normalizeCache = dictionary(null);
-
- this.factoryTypeInjections = dictionary(parent ? parent.factoryTypeInjections : null);
- this.factoryInjections = dictionary(null);
-
- this._options = dictionary(parent ? parent._options : null);
- this._typeOptions = dictionary(parent ? parent._typeOptions : null);
- }
-
- Container.prototype = {
-
- /**
- @property parent
- @type Container
- @default null
- */
- parent: null,
-
- /**
- @property children
- @type Array
- @default []
- */
- children: null,
-
- /**
- @property resolver
- @type function
- */
- resolver: null,
-
- /**
- @property registry
- @type InheritingDict
- */
- registry: null,
-
- /**
- @property cache
- @type InheritingDict
- */
- cache: null,
-
- /**
- @property typeInjections
- @type InheritingDict
- */
- typeInjections: null,
-
- /**
- @property injections
- @type Object
- @default {}
- */
- injections: null,
-
- /**
- @private
-
- @property _options
- @type InheritingDict
- @default null
- */
- _options: null,
-
- /**
- @private
-
- @property _typeOptions
- @type InheritingDict
- */
- _typeOptions: null,
-
- /**
- Returns a new child of the current container. These children are configured
- to correctly inherit from the current container.
-
- @method child
- @return {Container}
- */
- child: function() {
- var container = new Container(this);
- this.children.push(container);
- return container;
- },
-
- /**
- Registers a factory for later injection.
-
- Example:
-
- ```javascript
- var container = new Container();
-
- container.register('model:user', Person, {singleton: false });
- container.register('fruit:favorite', Orange);
- container.register('communication:main', Email, {singleton: false});
- ```
-
- @method register
- @param {String} fullName
- @param {Function} factory
- @param {Object} options
- */
- register: function(fullName, factory, options) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
-
- if (factory === undefined) {
- throw new TypeError('Attempting to register an unknown factory: `' + fullName + '`');
- }
-
- var normalizedName = this.normalize(fullName);
-
- if (normalizedName in this.cache) {
- throw new Error('Cannot re-register: `' + fullName +'`, as it has already been looked up.');
- }
-
- this.registry[normalizedName] = factory;
- this._options[normalizedName] = (options || {});
- },
-
- /**
- Unregister a fullName
-
- ```javascript
- var container = new Container();
- container.register('model:user', User);
-
- container.lookup('model:user') instanceof User //=> true
-
- container.unregister('model:user')
- container.lookup('model:user') === undefined //=> true
- ```
-
- @method unregister
- @param {String} fullName
- */
- unregister: function(fullName) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
-
- var normalizedName = this.normalize(fullName);
-
- delete this.registry[normalizedName];
- delete this.cache[normalizedName];
- delete this.factoryCache[normalizedName];
- delete this.resolveCache[normalizedName];
- delete this._options[normalizedName];
- },
-
- /**
- Given a fullName return the corresponding factory.
-
- By default `resolve` will retrieve the factory from
- its container's registry.
-
- ```javascript
- var container = new Container();
- container.register('api:twitter', Twitter);
-
- container.resolve('api:twitter') // => Twitter
- ```
-
- Optionally the container can be provided with a custom resolver.
- If provided, `resolve` will first provide the custom resolver
- the opportunity to resolve the fullName, otherwise it will fallback
- to the registry.
-
- ```javascript
- var container = new Container();
- container.resolver = function(fullName) {
- // lookup via the module system of choice
- };
-
- // the twitter factory is added to the module system
- container.resolve('api:twitter') // => Twitter
- ```
-
- @method resolve
- @param {String} fullName
- @return {Function} fullName's factory
- */
- resolve: function(fullName) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
- return resolve(this, this.normalize(fullName));
- },
-
- /**
- A hook that can be used to describe how the resolver will
- attempt to find the factory.
-
- For example, the default Ember `.describe` returns the full
- class name (including namespace) where Ember's resolver expects
- to find the `fullName`.
-
- @method describe
- @param {String} fullName
- @return {string} described fullName
- */
- describe: function(fullName) {
- return fullName;
- },
-
- /**
- A hook to enable custom fullName normalization behaviour
-
- @method normalizeFullName
- @param {String} fullName
- @return {string} normalized fullName
- */
- normalizeFullName: function(fullName) {
- return fullName;
- },
-
- /**
- normalize a fullName based on the applications conventions
-
- @method normalize
- @param {String} fullName
- @return {string} normalized fullName
- */
- normalize: function(fullName) {
- return this.normalizeCache[fullName] || (
- this.normalizeCache[fullName] = this.normalizeFullName(fullName)
- );
- },
-
- /**
- @method makeToString
-
- @param {any} factory
- @param {string} fullName
- @return {function} toString function
- */
- makeToString: function(factory, fullName) {
- return factory.toString();
- },
-
- /**
- Given a fullName return a corresponding instance.
-
- The default behaviour is for lookup to return a singleton instance.
- The singleton is scoped to the container, allowing multiple containers
- to all have their own locally scoped singletons.
-
- ```javascript
- var container = new Container();
- container.register('api:twitter', Twitter);
-
- var twitter = container.lookup('api:twitter');
-
- twitter instanceof Twitter; // => true
-
- // by default the container will return singletons
- var twitter2 = container.lookup('api:twitter');
- twitter2 instanceof Twitter; // => true
-
- twitter === twitter2; //=> true
- ```
-
- If singletons are not wanted an optional flag can be provided at lookup.
-
- ```javascript
- var container = new Container();
- container.register('api:twitter', Twitter);
-
- var twitter = container.lookup('api:twitter', { singleton: false });
- var twitter2 = container.lookup('api:twitter', { singleton: false });
-
- twitter === twitter2; //=> false
- ```
-
- @method lookup
- @param {String} fullName
- @param {Object} options
- @return {any}
- */
- lookup: function(fullName, options) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
- return lookup(this, this.normalize(fullName), options);
- },
-
- /**
- Given a fullName return the corresponding factory.
-
- @method lookupFactory
- @param {String} fullName
- @return {any}
- */
- lookupFactory: function(fullName) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
- return factoryFor(this, this.normalize(fullName));
- },
-
- /**
- Given a fullName check if the container is aware of its factory
- or singleton instance.
-
- @method has
- @param {String} fullName
- @return {Boolean}
- */
- has: function(fullName) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
- return has(this, this.normalize(fullName));
- },
-
- /**
- Allow registering options for all factories of a type.
-
- ```javascript
- var container = new Container();
-
- // if all of type `connection` must not be singletons
- container.optionsForType('connection', { singleton: false });
-
- container.register('connection:twitter', TwitterConnection);
- container.register('connection:facebook', FacebookConnection);
-
- var twitter = container.lookup('connection:twitter');
- var twitter2 = container.lookup('connection:twitter');
-
- twitter === twitter2; // => false
-
- var facebook = container.lookup('connection:facebook');
- var facebook2 = container.lookup('connection:facebook');
-
- facebook === facebook2; // => false
- ```
-
- @method optionsForType
- @param {String} type
- @param {Object} options
- */
- optionsForType: function(type, options) {
- if (this.parent) { illegalChildOperation('optionsForType'); }
-
- this._typeOptions[type] = options;
- },
-
- /**
- @method options
- @param {String} fullName
- @param {Object} options
- */
- options: function(fullName, options) {
- options = options || {};
- var normalizedName = this.normalize(fullName);
- this._options[normalizedName] = options;
- },
-
- /**
- Used only via `injection`.
-
- Provides a specialized form of injection, specifically enabling
- all objects of one type to be injected with a reference to another
- object.
-
- For example, provided each object of type `controller` needed a `router`.
- one would do the following:
-
- ```javascript
- var container = new Container();
-
- container.register('router:main', Router);
- container.register('controller:user', UserController);
- container.register('controller:post', PostController);
-
- container.typeInjection('controller', 'router', 'router:main');
-
- var user = container.lookup('controller:user');
- var post = container.lookup('controller:post');
-
- user.router instanceof Router; //=> true
- post.router instanceof Router; //=> true
-
- // both controllers share the same router
- user.router === post.router; //=> true
- ```
-
- @private
- @method typeInjection
- @param {String} type
- @param {String} property
- @param {String} fullName
- */
- typeInjection: function(type, property, fullName) {
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
-
- if (this.parent) { illegalChildOperation('typeInjection'); }
-
- var fullNameType = fullName.split(':')[0];
- if (fullNameType === type) {
- throw new Error('Cannot inject a `' + fullName +
- '` on other ' + type +
- '(s). Register the `' + fullName +
- '` as a different type and perform the typeInjection.');
- }
-
- addTypeInjection(this.typeInjections, type, property, fullName);
- },
-
- /**
- Defines injection rules.
-
- These rules are used to inject dependencies onto objects when they
- are instantiated.
-
- Two forms of injections are possible:
-
- * Injecting one fullName on another fullName
- * Injecting one fullName on a type
-
- Example:
-
- ```javascript
- var container = new Container();
-
- container.register('source:main', Source);
- container.register('model:user', User);
- container.register('model:post', Post);
-
- // injecting one fullName on another fullName
- // eg. each user model gets a post model
- container.injection('model:user', 'post', 'model:post');
-
- // injecting one fullName on another type
- container.injection('model', 'source', 'source:main');
-
- var user = container.lookup('model:user');
- var post = container.lookup('model:post');
-
- user.source instanceof Source; //=> true
- post.source instanceof Source; //=> true
-
- user.post instanceof Post; //=> true
-
- // and both models share the same source
- user.source === post.source; //=> true
- ```
-
- @method injection
- @param {String} factoryName
- @param {String} property
- @param {String} injectionName
- */
- injection: function(fullName, property, injectionName) {
- if (this.parent) { illegalChildOperation('injection'); }
-
- validateFullName(injectionName);
- var normalizedInjectionName = this.normalize(injectionName);
-
- if (fullName.indexOf(':') === -1) {
- return this.typeInjection(fullName, property, normalizedInjectionName);
- }
-
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
- var normalizedName = this.normalize(fullName);
-
- if (this.cache[normalizedName]) {
- throw new Error("Attempted to register an injection for a type that has already been looked up. ('" +
- normalizedName + "', '" +
- property + "', '" +
- injectionName + "')");
- }
-
- addInjection(initRules(this.injections, normalizedName), property, normalizedInjectionName);
- },
-
-
- /**
- Used only via `factoryInjection`.
-
- Provides a specialized form of injection, specifically enabling
- all factory of one type to be injected with a reference to another
- object.
-
- For example, provided each factory of type `model` needed a `store`.
- one would do the following:
-
- ```javascript
- var container = new Container();
-
- container.register('store:main', SomeStore);
-
- container.factoryTypeInjection('model', 'store', 'store:main');
-
- var store = container.lookup('store:main');
- var UserFactory = container.lookupFactory('model:user');
-
- UserFactory.store instanceof SomeStore; //=> true
- ```
-
- @private
- @method factoryTypeInjection
- @param {String} type
- @param {String} property
- @param {String} fullName
- */
- factoryTypeInjection: function(type, property, fullName) {
- if (this.parent) { illegalChildOperation('factoryTypeInjection'); }
-
- addTypeInjection(this.factoryTypeInjections, type, property, this.normalize(fullName));
- },
-
- /**
- Defines factory injection rules.
-
- Similar to regular injection rules, but are run against factories, via
- `Container#lookupFactory`.
-
- These rules are used to inject objects onto factories when they
- are looked up.
-
- Two forms of injections are possible:
-
- * Injecting one fullName on another fullName
- * Injecting one fullName on a type
-
- Example:
-
- ```javascript
- var container = new Container();
-
- container.register('store:main', Store);
- container.register('store:secondary', OtherStore);
- container.register('model:user', User);
- container.register('model:post', Post);
-
- // injecting one fullName on another type
- container.factoryInjection('model', 'store', 'store:main');
-
- // injecting one fullName on another fullName
- container.factoryInjection('model:post', 'secondaryStore', 'store:secondary');
-
- var UserFactory = container.lookupFactory('model:user');
- var PostFactory = container.lookupFactory('model:post');
- var store = container.lookup('store:main');
-
- UserFactory.store instanceof Store; //=> true
- UserFactory.secondaryStore instanceof OtherStore; //=> false
-
- PostFactory.store instanceof Store; //=> true
- PostFactory.secondaryStore instanceof OtherStore; //=> true
-
- // and both models share the same source instance
- UserFactory.store === PostFactory.store; //=> true
- ```
-
- @method factoryInjection
- @param {String} factoryName
- @param {String} property
- @param {String} injectionName
- */
- factoryInjection: function(fullName, property, injectionName) {
- if (this.parent) { illegalChildOperation('injection'); }
-
- var normalizedName = this.normalize(fullName);
- var normalizedInjectionName = this.normalize(injectionName);
-
- validateFullName(injectionName);
-
- if (fullName.indexOf(':') === -1) {
- return this.factoryTypeInjection(normalizedName, property, normalizedInjectionName);
- }
-
- Ember.assert('fullName must be a proper full name', validateFullName(fullName));
-
- if (this.factoryCache[normalizedName]) {
- throw new Error('Attempted to register a factoryInjection for a type that has already ' +
- 'been looked up. (\'' + normalizedName + '\', \'' + property + '\', \'' + injectionName + '\')');
- }
-
- addInjection(initRules(this.factoryInjections, normalizedName), property, normalizedInjectionName);
- },
-
- /**
- A depth first traversal, destroying the container, its descendant containers and all
- their managed objects.
-
- @method destroy
- */
- destroy: function() {
- for (var i = 0, length = this.children.length; i < length; i++) {
- this.children[i].destroy();
- }
-
- this.children = [];
-
- eachDestroyable(this, function(item) {
- item.destroy();
- });
-
- this.parent = undefined;
- this.isDestroyed = true;
- },
-
- /**
- @method reset
- */
- reset: function() {
- for (var i = 0, length = this.children.length; i < length; i++) {
- resetCache(this.children[i]);
- }
-
- resetCache(this);
- }
- };
-
- function resolve(container, normalizedName) {
- var cached = container.resolveCache[normalizedName];
- if (cached) { return cached; }
-
- var resolved = container.resolver(normalizedName) || container.registry[normalizedName];
- container.resolveCache[normalizedName] = resolved;
-
- return resolved;
- }
-
- function has(container, fullName){
- if (container.cache[fullName]) {
- return true;
- }
-
- return container.resolve(fullName) !== undefined;
- }
-
- function lookup(container, fullName, options) {
- options = options || {};
-
- if (container.cache[fullName] && options.singleton !== false) {
- return container.cache[fullName];
- }
-
- var value = instantiate(container, fullName);
-
- if (value === undefined) { return; }
-
- if (isSingleton(container, fullName) && options.singleton !== false) {
- container.cache[fullName] = value;
- }
-
- return value;
- }
-
- function illegalChildOperation(operation) {
- throw new Error(operation + ' is not currently supported on child containers');
- }
-
- function isSingleton(container, fullName) {
- var singleton = option(container, fullName, 'singleton');
-
- return singleton !== false;
- }
-
- function buildInjections(container, injections) {
- var hash = {};
-
- if (!injections) { return hash; }
-
- validateInjections(container, injections);
-
- var injection;
-
- for (var i = 0, length = injections.length; i < length; i++) {
- injection = injections[i];
- hash[injection.property] = lookup(container, injection.fullName);
- }
-
- return hash;
- }
-
- function validateInjections(container, injections) {
- if (!injections) { return; }
-
- var fullName;
-
- for (var i = 0, length = injections.length; i < length; i++) {
- fullName = injections[i].fullName;
-
- if (!container.has(fullName)) {
- throw new Error('Attempting to inject an unknown injection: `' + fullName + '`');
- }
- }
- }
-
- function option(container, fullName, optionName) {
- var options = container._options[fullName];
-
- if (options && options[optionName] !== undefined) {
- return options[optionName];
- }
-
- var type = fullName.split(':')[0];
- options = container._typeOptions[type];
-
- if (options) {
- return options[optionName];
- }
- }
-
- function factoryFor(container, fullName) {
- var cache = container.factoryCache;
- if (cache[fullName]) {
- return cache[fullName];
- }
- var factory = container.resolve(fullName);
- if (factory === undefined) { return; }
-
- var type = fullName.split(':')[0];
- if (!factory || typeof factory.extend !== 'function' || (!Ember.MODEL_FACTORY_INJECTIONS && type === 'model')) {
- // TODO: think about a 'safe' merge style extension
- // for now just fallback to create time injection
- cache[fullName] = factory;
- return factory;
- } else {
- var injections = injectionsFor(container, fullName);
- var factoryInjections = factoryInjectionsFor(container, fullName);
-
- factoryInjections._toString = container.makeToString(factory, fullName);
-
- var injectedFactory = factory.extend(injections);
- injectedFactory.reopenClass(factoryInjections);
-
- cache[fullName] = injectedFactory;
-
- return injectedFactory;
- }
- }
-
- function injectionsFor(container, fullName) {
- var splitName = fullName.split(':');
- var type = splitName[0];
- var injections = [];
-
- injections = injections.concat(container.typeInjections[type] || []);
- injections = injections.concat(container.injections[fullName] || []);
-
- injections = buildInjections(container, injections);
- injections._debugContainerKey = fullName;
- injections.container = container;
-
- return injections;
- }
-
- function factoryInjectionsFor(container, fullName) {
- var splitName = fullName.split(':');
- var type = splitName[0];
- var factoryInjections = [];
-
- factoryInjections = factoryInjections.concat(container.factoryTypeInjections[type] || []);
- factoryInjections = factoryInjections.concat(container.factoryInjections[fullName] || []);
-
- factoryInjections = buildInjections(container, factoryInjections);
- factoryInjections._debugContainerKey = fullName;
-
- return factoryInjections;
- }
-
- function normalizeInjectionsHash(hash) {
- var injections = [];
-
- for (var key in hash) {
- if (hash.hasOwnProperty(key)) {
- Ember.assert("Expected a proper full name, given '" + hash[key] + "'", validateFullName(hash[key]));
-
- addInjection(injections, key, hash[key]);
- }
- }
-
- return injections;
- }
-
- function instantiate(container, fullName) {
- var factory = factoryFor(container, fullName);
- var lazyInjections;
-
- if (option(container, fullName, 'instantiate') === false) {
- return factory;
- }
-
- if (factory) {
- if (typeof factory.create !== 'function') {
- throw new Error('Failed to create an instance of \'' + fullName + '\'. ' +
- 'Most likely an improperly defined class or an invalid module export.');
- }
-
-
- if (typeof factory.extend === 'function') {
- // assume the factory was extendable and is already injected
- return factory.create();
- } else {
- // assume the factory was extendable
- // to create time injections
- // TODO: support new'ing for instantiation and merge injections for pure JS Functions
- return factory.create(injectionsFor(container, fullName));
- }
- }
- }
-
- function eachDestroyable(container, callback) {
- var cache = container.cache;
- var keys = emberKeys(cache);
- var key, value;
-
- for (var i = 0, l = keys.length; i < l; i++) {
- key = keys[i];
- value = cache[key];
-
- if (option(container, key, 'instantiate') !== false) {
- callback(value);
- }
- }
- }
-
- function resetCache(container) {
- eachDestroyable(container, function(value) {
- value.destroy();
- });
-
- container.cache.dict = dictionary(null);
- }
-
- function addTypeInjection(rules, type, property, fullName) {
- var injections = rules[type];
-
- if (!injections) {
- injections = [];
- rules[type] = injections;
- }
-
- injections.push({
- property: property,
- fullName: fullName
- });
- }
-
- var VALID_FULL_NAME_REGEXP = /^[^:]+.+:[^:]+$/;
- function validateFullName(fullName) {
- if (!VALID_FULL_NAME_REGEXP.test(fullName)) {
- throw new TypeError('Invalid Fullname, expected: `type:name` got: ' + fullName);
- }
- return true;
- }
-
- function initRules(rules, factoryName) {
- return rules[factoryName] || (rules[factoryName] = []);
- }
-
- function addInjection(injections, property, injectionName) {
- injections.push({
- property: property,
- fullName: injectionName
- });
- }
-
- __exports__["default"] = Container;
- });
-enifed("dag-map",
- ["exports"],
- function(__exports__) {
- "use strict";
- function visit(vertex, fn, visited, path) {
- var name = vertex.name;
- var vertices = vertex.incoming;
- var names = vertex.incomingNames;
- var len = names.length;
- var i;
-
- if (!visited) {
- visited = {};
- }
- if (!path) {
- path = [];
- }
- if (visited.hasOwnProperty(name)) {
- return;
- }
- path.push(name);
- visited[name] = true;
- for (i = 0; i < len; i++) {
- visit(vertices[names[i]], fn, visited, path);
- }
- fn(vertex, path);
- path.pop();
- }
-
-
- /**
- * DAG stands for Directed acyclic graph.
- *
- * It is used to build a graph of dependencies checking that there isn't circular
- * dependencies. p.e Registering initializers with a certain precedence order.
- *
- * @class DAG
- * @constructor
- */
- function DAG() {
- this.names = [];
- this.vertices = Object.create(null);
- }
-
- /**
- * DAG Vertex
- *
- * @class Vertex
- * @constructor
- */
-
- function Vertex(name) {
- this.name = name;
- this.incoming = {};
- this.incomingNames = [];
- this.hasOutgoing = false;
- this.value = null;
- }
-
- /**
- * Adds a vertex entry to the graph unless it is already added.
- *
- * @private
- * @method add
- * @param {String} name The name of the vertex to add
- */
- DAG.prototype.add = function(name) {
- if (!name) {
- throw new Error("Can't add Vertex without name");
- }
- if (this.vertices[name] !== undefined) {
- return this.vertices[name];
- }
- var vertex = new Vertex(name);
- this.vertices[name] = vertex;
- this.names.push(name);
- return vertex;
- };
-
- /**
- * Adds a vertex to the graph and sets its value.
- *
- * @private
- * @method map
- * @param {String} name The name of the vertex.
- * @param value The value to put in the vertex.
- */
- DAG.prototype.map = function(name, value) {
- this.add(name).value = value;
- };
-
- /**
- * Connects the vertices with the given names, adding them to the graph if
- * necessary, only if this does not produce is any circular dependency.
- *
- * @private
- * @method addEdge
- * @param {String} fromName The name the vertex where the edge starts.
- * @param {String} toName The name the vertex where the edge ends.
- */
- DAG.prototype.addEdge = function(fromName, toName) {
- if (!fromName || !toName || fromName === toName) {
- return;
- }
- var from = this.add(fromName);
- var to = this.add(toName);
- if (to.incoming.hasOwnProperty(fromName)) {
- return;
- }
- function checkCycle(vertex, path) {
- if (vertex.name === toName) {
- throw new Error("cycle detected: " + toName + " <- " + path.join(" <- "));
- }
- }
- visit(from, checkCycle);
- from.hasOutgoing = true;
- to.incoming[fromName] = from;
- to.incomingNames.push(fromName);
- };
-
- /**
- * Visits all the vertex of the graph calling the given function with each one,
- * ensuring that the vertices are visited respecting their precedence.
- *
- * @method topsort
- * @param {Function} fn The function to be invoked on each vertex.
- */
- DAG.prototype.topsort = function(fn) {
- var visited = {};
- var vertices = this.vertices;
- var names = this.names;
- var len = names.length;
- var i, vertex;
-
- for (i = 0; i < len; i++) {
- vertex = vertices[names[i]];
- if (!vertex.hasOutgoing) {
- visit(vertex, fn, visited);
- }
- }
- };
-
- /**
- * Adds a vertex with the given name and value to the graph and joins it with the
- * vertices referenced in _before_ and _after_. If there isn't vertices with those
- * names, they are added too.
- *
- * If either _before_ or _after_ are falsy/empty, the added vertex will not have
- * an incoming/outgoing edge.
- *
- * @method addEdges
- * @param {String} name The name of the vertex to be added.
- * @param value The value of that vertex.
- * @param before An string or array of strings with the names of the vertices before
- * which this vertex must be visited.
- * @param after An string or array of strings with the names of the vertex after
- * which this vertex must be visited.
- *
- */
- DAG.prototype.addEdges = function(name, value, before, after) {
- var i;
- this.map(name, value);
- if (before) {
- if (typeof before === 'string') {
- this.addEdge(name, before);
- } else {
- for (i = 0; i < before.length; i++) {
- this.addEdge(name, before[i]);
- }
- }
- }
- if (after) {
- if (typeof after === 'string') {
- this.addEdge(after, name);
- } else {
- for (i = 0; i < after.length; i++) {
- this.addEdge(after[i], name);
- }
- }
- }
- };
-
- __exports__["default"] = DAG;
- });
-enifed("dag-map.umd",
- ["./dag-map"],
- function(__dependency1__) {
- "use strict";
- var DAG = __dependency1__["default"];
-
- /* global define:true module:true window: true */
- if (typeof enifed === 'function' && enifed.amd) {
- enifed(function() { return DAG; });
- } else if (typeof module !== 'undefined' && module.exports) {
- module.exports = DAG;
- } else if (typeof this !== 'undefined') {
- this['DAG'] = DAG;
- }
- });
-enifed("ember-application",
- ["ember-metal/core","ember-runtime/system/lazy_load","ember-application/system/resolver","ember-application/system/application","ember-application/ext/controller"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var runLoadHooks = __dependency2__.runLoadHooks;
-
- /**
- Ember Application
-
- @module ember
- @submodule ember-application
- @requires ember-views, ember-routing
- */
-
- var Resolver = __dependency3__.Resolver;
- var DefaultResolver = __dependency3__["default"];
- var Application = __dependency4__["default"];
- // side effect of extending ControllerMixin
-
- Ember.Application = Application;
- Ember.Resolver = Resolver;
- Ember.DefaultResolver = DefaultResolver;
-
- runLoadHooks('Ember.Application', Application);
- });
-enifed("ember-application/ext/controller",
- ["ember-metal/core","ember-metal/property_get","ember-metal/error","ember-metal/utils","ember-metal/computed","ember-runtime/mixins/controller","ember-routing/system/controller_for","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-application
- */
-
- var Ember = __dependency1__["default"];
- // Ember.assert
- var get = __dependency2__.get;
- var EmberError = __dependency3__["default"];
- var inspect = __dependency4__.inspect;
- var computed = __dependency5__.computed;
- var ControllerMixin = __dependency6__["default"];
- var meta = __dependency4__.meta;
- var controllerFor = __dependency7__["default"];
-
- function verifyNeedsDependencies(controller, container, needs) {
- var dependency, i, l;
- var missing = [];
-
- for (i=0, l=needs.length; i 1 ? 'they' : 'it') + " could not be found");
- }
- }
-
- var defaultControllersComputedProperty = computed(function() {
- var controller = this;
-
- return {
- needs: get(controller, 'needs'),
- container: get(controller, 'container'),
- unknownProperty: function(controllerName) {
- var needs = this.needs;
- var dependency, i, l;
-
- for (i=0, l=needs.length; i 0) {
- Ember.assert(' `' + inspect(this) + ' specifies `needs`, but does ' +
- "not have a container. Please ensure this controller was " +
- "instantiated with a container.",
- this.container || meta(this, false).descs.controllers !== defaultControllersComputedProperty);
-
- if (this.container) {
- verifyNeedsDependencies(this, this.container, needs);
- }
-
- // if needs then initialize controllers proxy
- get(this, 'controllers');
- }
-
- this._super.apply(this, arguments);
- },
-
- /**
- @method controllerFor
- @see {Ember.Route#controllerFor}
- @deprecated Use `needs` instead
- */
- controllerFor: function(controllerName) {
- Ember.deprecate("Controller#controllerFor is deprecated, please use Controller#needs instead");
- return controllerFor(get(this, 'container'), controllerName);
- },
-
- /**
- Stores the instances of other controllers available from within
- this controller. Any controller listed by name in the `needs`
- property will be accessible by name through this property.
-
- ```javascript
- App.CommentsController = Ember.ArrayController.extend({
- needs: ['post'],
- postTitle: function(){
- var currentPost = this.get('controllers.post'); // instance of App.PostController
- return currentPost.get('title');
- }.property('controllers.post.title')
- });
- ```
-
- @see {Ember.ControllerMixin#needs}
- @property {Object} controllers
- @default null
- */
- controllers: defaultControllersComputedProperty
- });
-
- __exports__["default"] = ControllerMixin;
- });
-enifed("ember-application/system/application",
- ["dag-map","container/container","ember-metal","ember-metal/property_get","ember-metal/property_set","ember-runtime/system/lazy_load","ember-runtime/system/namespace","ember-runtime/mixins/deferred","ember-application/system/resolver","ember-metal/platform","ember-metal/run_loop","ember-metal/utils","ember-runtime/controllers/controller","ember-metal/enumerable_utils","ember-runtime/controllers/object_controller","ember-runtime/controllers/array_controller","ember-handlebars/controls/select","ember-views/system/event_dispatcher","ember-views/system/jquery","ember-routing/system/route","ember-routing/system/router","ember-routing/location/hash_location","ember-routing/location/history_location","ember-routing/location/auto_location","ember-routing/location/none_location","ember-routing/system/cache","ember-extension-support/container_debug_adapter","ember-metal/core","ember-handlebars-compiler","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __dependency13__, __dependency14__, __dependency15__, __dependency16__, __dependency17__, __dependency18__, __dependency19__, __dependency20__, __dependency21__, __dependency22__, __dependency23__, __dependency24__, __dependency25__, __dependency26__, __dependency27__, __dependency28__, __dependency29__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-application
- */
- var DAG = __dependency1__["default"];
- var Container = __dependency2__["default"];
-
-
- var Ember = __dependency3__["default"];
- // Ember.FEATURES, Ember.deprecate, Ember.assert, Ember.libraries, LOG_VERSION, Namespace, BOOTED
- var get = __dependency4__.get;
- var set = __dependency5__.set;
- var runLoadHooks = __dependency6__.runLoadHooks;
- var Namespace = __dependency7__["default"];
- var DeferredMixin = __dependency8__["default"];
- var DefaultResolver = __dependency9__["default"];
- var create = __dependency10__.create;
- var run = __dependency11__["default"];
- var canInvoke = __dependency12__.canInvoke;
- var Controller = __dependency13__["default"];
- var EnumerableUtils = __dependency14__["default"];
- var ObjectController = __dependency15__["default"];
- var ArrayController = __dependency16__["default"];
- var SelectView = __dependency17__["default"];
- var EventDispatcher = __dependency18__["default"];
- var jQuery = __dependency19__["default"];
- var Route = __dependency20__["default"];
- var Router = __dependency21__["default"];
- var HashLocation = __dependency22__["default"];
- var HistoryLocation = __dependency23__["default"];
- var AutoLocation = __dependency24__["default"];
- var NoneLocation = __dependency25__["default"];
- var BucketCache = __dependency26__["default"];
-
- // this is technically incorrect (per @wycats)
- // it should work properly with:
- // `import ContainerDebugAdapter from 'ember-extension-support/container_debug_adapter';` but
- // es6-module-transpiler 0.4.0 eagerly grabs the module (which is undefined)
-
- var ContainerDebugAdapter = __dependency27__["default"];
-
- var K = __dependency28__.K;
- var EmberHandlebars = __dependency29__["default"];
-
- function props(obj) {
- var properties = [];
-
- for (var key in obj) {
- properties.push(key);
- }
-
- return properties;
- }
-
- /**
- An instance of `Ember.Application` is the starting point for every Ember
- application. It helps to instantiate, initialize and coordinate the many
- objects that make up your app.
-
- Each Ember app has one and only one `Ember.Application` object. In fact, the
- very first thing you should do in your application is create the instance:
-
- ```javascript
- window.App = Ember.Application.create();
- ```
-
- Typically, the application object is the only global variable. All other
- classes in your app should be properties on the `Ember.Application` instance,
- which highlights its first role: a global namespace.
-
- For example, if you define a view class, it might look like this:
-
- ```javascript
- App.MyView = Ember.View.extend();
- ```
-
- By default, calling `Ember.Application.create()` will automatically initialize
- your application by calling the `Ember.Application.initialize()` method. If
- you need to delay initialization, you can call your app's `deferReadiness()`
- method. When you are ready for your app to be initialized, call its
- `advanceReadiness()` method.
-
- You can define a `ready` method on the `Ember.Application` instance, which
- will be run by Ember when the application is initialized.
-
- Because `Ember.Application` inherits from `Ember.Namespace`, any classes
- you create will have useful string representations when calling `toString()`.
- See the `Ember.Namespace` documentation for more information.
-
- While you can think of your `Ember.Application` as a container that holds the
- other classes in your application, there are several other responsibilities
- going on under-the-hood that you may want to understand.
-
- ### Event Delegation
-
- Ember uses a technique called _event delegation_. This allows the framework
- to set up a global, shared event listener instead of requiring each view to
- do it manually. For example, instead of each view registering its own
- `mousedown` listener on its associated element, Ember sets up a `mousedown`
- listener on the `body`.
-
- If a `mousedown` event occurs, Ember will look at the target of the event and
- start walking up the DOM node tree, finding corresponding views and invoking
- their `mouseDown` method as it goes.
-
- `Ember.Application` has a number of default events that it listens for, as
- well as a mapping from lowercase events to camel-cased view method names. For
- example, the `keypress` event causes the `keyPress` method on the view to be
- called, the `dblclick` event causes `doubleClick` to be called, and so on.
-
- If there is a bubbling browser event that Ember does not listen for by
- default, you can specify custom events and their corresponding view method
- names by setting the application's `customEvents` property:
-
- ```javascript
- var App = Ember.Application.create({
- customEvents: {
- // add support for the paste event
- paste: 'paste'
- }
- });
- ```
-
- By default, the application sets up these event listeners on the document
- body. However, in cases where you are embedding an Ember application inside
- an existing page, you may want it to set up the listeners on an element
- inside the body.
-
- For example, if only events inside a DOM element with the ID of `ember-app`
- should be delegated, set your application's `rootElement` property:
-
- ```javascript
- var App = Ember.Application.create({
- rootElement: '#ember-app'
- });
- ```
-
- The `rootElement` can be either a DOM element or a jQuery-compatible selector
- string. Note that *views appended to the DOM outside the root element will
- not receive events.* If you specify a custom root element, make sure you only
- append views inside it!
-
- To learn more about the advantages of event delegation and the Ember view
- layer, and a list of the event listeners that are setup by default, visit the
- [Ember View Layer guide](http://emberjs.com/guides/understanding-ember/the-view-layer/#toc_event-delegation).
-
- ### Initializers
-
- Libraries on top of Ember can add initializers, like so:
-
- ```javascript
- Ember.Application.initializer({
- name: 'api-adapter',
-
- initialize: function(container, application) {
- application.register('api-adapter:main', ApiAdapter);
- }
- });
- ```
-
- Initializers provide an opportunity to access the container, which
- organizes the different components of an Ember application. Additionally
- they provide a chance to access the instantiated application. Beyond
- being used for libraries, initializers are also a great way to organize
- dependency injection or setup in your own application.
-
- ### Routing
-
- In addition to creating your application's router, `Ember.Application` is
- also responsible for telling the router when to start routing. Transitions
- between routes can be logged with the `LOG_TRANSITIONS` flag, and more
- detailed intra-transition logging can be logged with
- the `LOG_TRANSITIONS_INTERNAL` flag:
-
- ```javascript
- var App = Ember.Application.create({
- LOG_TRANSITIONS: true, // basic logging of successful transitions
- LOG_TRANSITIONS_INTERNAL: true // detailed logging of all routing steps
- });
- ```
-
- By default, the router will begin trying to translate the current URL into
- application state once the browser emits the `DOMContentReady` event. If you
- need to defer routing, you can call the application's `deferReadiness()`
- method. Once routing can begin, call the `advanceReadiness()` method.
-
- If there is any setup required before routing begins, you can implement a
- `ready()` method on your app that will be invoked immediately before routing
- begins.
- ```
-
- @class Application
- @namespace Ember
- @extends Ember.Namespace
- */
-
- var Application = Namespace.extend(DeferredMixin, {
- _suppressDeferredDeprecation: true,
-
- /**
- The root DOM element of the Application. This can be specified as an
- element or a
- [jQuery-compatible selector string](http://api.jquery.com/category/selectors/).
-
- This is the element that will be passed to the Application's,
- `eventDispatcher`, which sets up the listeners for event delegation. Every
- view in your application should be a child of the element you specify here.
-
- @property rootElement
- @type DOMElement
- @default 'body'
- */
- rootElement: 'body',
-
- /**
- The `Ember.EventDispatcher` responsible for delegating events to this
- application's views.
-
- The event dispatcher is created by the application at initialization time
- and sets up event listeners on the DOM element described by the
- application's `rootElement` property.
-
- See the documentation for `Ember.EventDispatcher` for more information.
-
- @property eventDispatcher
- @type Ember.EventDispatcher
- @default null
- */
- eventDispatcher: null,
-
- /**
- The DOM events for which the event dispatcher should listen.
-
- By default, the application's `Ember.EventDispatcher` listens
- for a set of standard DOM events, such as `mousedown` and
- `keyup`, and delegates them to your application's `Ember.View`
- instances.
-
- If you would like additional bubbling events to be delegated to your
- views, set your `Ember.Application`'s `customEvents` property
- to a hash containing the DOM event name as the key and the
- corresponding view method name as the value. For example:
-
- ```javascript
- var App = Ember.Application.create({
- customEvents: {
- // add support for the paste event
- paste: 'paste'
- }
- });
- ```
-
- @property customEvents
- @type Object
- @default null
- */
- customEvents: null,
-
- // Start off the number of deferrals at 1. This will be
- // decremented by the Application's own `initialize` method.
- _readinessDeferrals: 1,
-
- init: function() {
- if (!this.$) {
- this.$ = jQuery;
- }
- this.__container__ = this.buildContainer();
-
- this.Router = this.defaultRouter();
-
- this._super();
-
- this.scheduleInitialize();
-
- Ember.libraries.registerCoreLibrary('Handlebars' + (EmberHandlebars.compile ? '' : '-runtime'), EmberHandlebars.VERSION);
- Ember.libraries.registerCoreLibrary('jQuery', jQuery().jquery);
-
- if ( Ember.LOG_VERSION ) {
- Ember.LOG_VERSION = false; // we only need to see this once per Application#init
-
- var nameLengths = EnumerableUtils.map(Ember.libraries, function(item) {
- return get(item, "name.length");
- });
-
- var maxNameLength = Math.max.apply(this, nameLengths);
-
- Ember.debug('-------------------------------');
- Ember.libraries.each(function(name, version) {
- var spaces = new Array(maxNameLength - name.length + 1).join(" ");
- Ember.debug([name, spaces, ' : ', version].join(""));
- });
- Ember.debug('-------------------------------');
- }
- },
-
- /**
- Build the container for the current application.
-
- Also register a default application view in case the application
- itself does not.
-
- @private
- @method buildContainer
- @return {Ember.Container} the configured container
- */
- buildContainer: function() {
- var container = this.__container__ = Application.buildContainer(this);
-
- return container;
- },
-
- /**
- If the application has not opted out of routing and has not explicitly
- defined a router, supply a default router for the application author
- to configure.
-
- This allows application developers to do:
-
- ```javascript
- var App = Ember.Application.create();
-
- App.Router.map(function() {
- this.resource('posts');
- });
- ```
-
- @private
- @method defaultRouter
- @return {Ember.Router} the default router
- */
-
- defaultRouter: function() {
- if (this.Router === false) { return; }
- var container = this.__container__;
-
- if (this.Router) {
- container.unregister('router:main');
- container.register('router:main', this.Router);
- }
-
- return container.lookupFactory('router:main');
- },
-
- /**
- Automatically initialize the application once the DOM has
- become ready.
-
- The initialization itself is scheduled on the actions queue
- which ensures that application loading finishes before
- booting.
-
- If you are asynchronously loading code, you should call
- `deferReadiness()` to defer booting, and then call
- `advanceReadiness()` once all of your code has finished
- loading.
-
- @private
- @method scheduleInitialize
- */
- scheduleInitialize: function() {
- var self = this;
-
- if (!this.$ || this.$.isReady) {
- run.schedule('actions', self, '_initialize');
- } else {
- this.$().ready(function runInitialize() {
- run(self, '_initialize');
- });
- }
- },
-
- /**
- Use this to defer readiness until some condition is true.
-
- Example:
-
- ```javascript
- var App = Ember.Application.create();
-
- App.deferReadiness();
- // Ember.$ is a reference to the jQuery object/function
- Ember.$.getJSON('/auth-token', function(token) {
- App.token = token;
- App.advanceReadiness();
- });
- ```
-
- This allows you to perform asynchronous setup logic and defer
- booting your application until the setup has finished.
-
- However, if the setup requires a loading UI, it might be better
- to use the router for this purpose.
-
- @method deferReadiness
- */
- deferReadiness: function() {
- Ember.assert("You must call deferReadiness on an instance of Ember.Application", this instanceof Application);
- Ember.assert("You cannot defer readiness since the `ready()` hook has already been called.", this._readinessDeferrals > 0);
- this._readinessDeferrals++;
- },
-
- /**
- Call `advanceReadiness` after any asynchronous setup logic has completed.
- Each call to `deferReadiness` must be matched by a call to `advanceReadiness`
- or the application will never become ready and routing will not begin.
-
- @method advanceReadiness
- @see {Ember.Application#deferReadiness}
- */
- advanceReadiness: function() {
- Ember.assert("You must call advanceReadiness on an instance of Ember.Application", this instanceof Application);
- this._readinessDeferrals--;
-
- if (this._readinessDeferrals === 0) {
- run.once(this, this.didBecomeReady);
- }
- },
-
- /**
- Registers a factory that can be used for dependency injection (with
- `App.inject`) or for service lookup. Each factory is registered with
- a full name including two parts: `type:name`.
-
- A simple example:
-
- ```javascript
- var App = Ember.Application.create();
-
- App.Orange = Ember.Object.extend();
- App.register('fruit:favorite', App.Orange);
- ```
-
- Ember will resolve factories from the `App` namespace automatically.
- For example `App.CarsController` will be discovered and returned if
- an application requests `controller:cars`.
-
- An example of registering a controller with a non-standard name:
-
- ```javascript
- var App = Ember.Application.create();
- var Session = Ember.Controller.extend();
-
- App.register('controller:session', Session);
-
- // The Session controller can now be treated like a normal controller,
- // despite its non-standard name.
- App.ApplicationController = Ember.Controller.extend({
- needs: ['session']
- });
- ```
-
- Registered factories are **instantiated** by having `create`
- called on them. Additionally they are **singletons**, each time
- they are looked up they return the same instance.
-
- Some examples modifying that default behavior:
-
- ```javascript
- var App = Ember.Application.create();
-
- App.Person = Ember.Object.extend();
- App.Orange = Ember.Object.extend();
- App.Email = Ember.Object.extend();
- App.session = Ember.Object.create();
-
- App.register('model:user', App.Person, { singleton: false });
- App.register('fruit:favorite', App.Orange);
- App.register('communication:main', App.Email, { singleton: false });
- App.register('session', App.session, { instantiate: false });
- ```
-
- @method register
- @param fullName {String} type:name (e.g., 'model:user')
- @param factory {Function} (e.g., App.Person)
- @param options {Object} (optional) disable instantiation or singleton usage
- **/
- register: function() {
- var container = this.__container__;
- container.register.apply(container, arguments);
- },
-
- /**
- Define a dependency injection onto a specific factory or all factories
- of a type.
-
- When Ember instantiates a controller, view, or other framework component
- it can attach a dependency to that component. This is often used to
- provide services to a set of framework components.
-
- An example of providing a session object to all controllers:
-
- ```javascript
- var App = Ember.Application.create();
- var Session = Ember.Object.extend({ isAuthenticated: false });
-
- // A factory must be registered before it can be injected
- App.register('session:main', Session);
-
- // Inject 'session:main' onto all factories of the type 'controller'
- // with the name 'session'
- App.inject('controller', 'session', 'session:main');
-
- App.IndexController = Ember.Controller.extend({
- isLoggedIn: Ember.computed.alias('session.isAuthenticated')
- });
- ```
-
- Injections can also be performed on specific factories.
-
- ```javascript
- App.inject(, , )
- App.inject('route', 'source', 'source:main')
- App.inject('route:application', 'email', 'model:email')
- ```
-
- It is important to note that injections can only be performed on
- classes that are instantiated by Ember itself. Instantiating a class
- directly (via `create` or `new`) bypasses the dependency injection
- system.
-
- **Note:** Ember-Data instantiates its models in a unique manner, and consequently
- injections onto models (or all models) will not work as expected. Injections
- on models can be enabled by setting `Ember.MODEL_FACTORY_INJECTIONS`
- to `true`.
-
- @method inject
- @param factoryNameOrType {String}
- @param property {String}
- @param injectionName {String}
- **/
- inject: function() {
- var container = this.__container__;
- container.injection.apply(container, arguments);
- },
-
- /**
- Calling initialize manually is not supported.
-
- Please see Ember.Application#advanceReadiness and
- Ember.Application#deferReadiness.
-
- @private
- @deprecated
- @method initialize
- **/
- initialize: function() {
- Ember.deprecate('Calling initialize manually is not supported. Please see Ember.Application#advanceReadiness and Ember.Application#deferReadiness');
- },
-
- /**
- Initialize the application. This happens automatically.
-
- Run any initializers and run the application load hook. These hooks may
- choose to defer readiness. For example, an authentication hook might want
- to defer readiness until the auth token has been retrieved.
-
- @private
- @method _initialize
- */
- _initialize: function() {
- if (this.isDestroyed) { return; }
-
- // At this point, the App.Router must already be assigned
- if (this.Router) {
- var container = this.__container__;
- container.unregister('router:main');
- container.register('router:main', this.Router);
- }
-
- this.runInitializers();
- runLoadHooks('application', this);
-
- // At this point, any initializers or load hooks that would have wanted
- // to defer readiness have fired. In general, advancing readiness here
- // will proceed to didBecomeReady.
- this.advanceReadiness();
-
- return this;
- },
-
- /**
- Reset the application. This is typically used only in tests. It cleans up
- the application in the following order:
-
- 1. Deactivate existing routes
- 2. Destroy all objects in the container
- 3. Create a new application container
- 4. Re-route to the existing url
-
- Typical Example:
-
- ```javascript
- var App;
-
- run(function() {
- App = Ember.Application.create();
- });
-
- module('acceptance test', {
- setup: function() {
- App.reset();
- }
- });
-
- test('first test', function() {
- // App is freshly reset
- });
-
- test('second test', function() {
- // App is again freshly reset
- });
- ```
-
- Advanced Example:
-
- Occasionally you may want to prevent the app from initializing during
- setup. This could enable extra configuration, or enable asserting prior
- to the app becoming ready.
-
- ```javascript
- var App;
-
- run(function() {
- App = Ember.Application.create();
- });
-
- module('acceptance test', {
- setup: function() {
- run(function() {
- App.reset();
- App.deferReadiness();
- });
- }
- });
-
- test('first test', function() {
- ok(true, 'something before app is initialized');
-
- run(function() {
- App.advanceReadiness();
- });
-
- ok(true, 'something after app is initialized');
- });
- ```
-
- @method reset
- **/
- reset: function() {
- this._readinessDeferrals = 1;
-
- function handleReset() {
- var router = this.__container__.lookup('router:main');
- router.reset();
-
- run(this.__container__, 'destroy');
-
- this.buildContainer();
-
- run.schedule('actions', this, function() {
- this._initialize();
- });
- }
-
- run.join(this, handleReset);
- },
-
- /**
- @private
- @method runInitializers
- */
- runInitializers: function() {
- var initializersByName = get(this.constructor, 'initializers');
- var initializers = props(initializersByName);
- var container = this.__container__;
- var graph = new DAG();
- var namespace = this;
- var initializer;
-
- for (var i = 0; i < initializers.length; i++) {
- initializer = initializersByName[initializers[i]];
- graph.addEdges(initializer.name, initializer.initialize, initializer.before, initializer.after);
- }
-
- graph.topsort(function (vertex) {
- var initializer = vertex.value;
- Ember.assert("No application initializer named '" + vertex.name + "'", initializer);
- initializer(container, namespace);
- });
- },
-
- /**
- @private
- @method didBecomeReady
- */
- didBecomeReady: function() {
- this.setupEventDispatcher();
- this.ready(); // user hook
- this.startRouting();
-
- if (!Ember.testing) {
- // Eagerly name all classes that are already loaded
- Ember.Namespace.processAll();
- Ember.BOOTED = true;
- }
-
- this.resolve(this);
- },
-
- /**
- Setup up the event dispatcher to receive events on the
- application's `rootElement` with any registered
- `customEvents`.
-
- @private
- @method setupEventDispatcher
- */
- setupEventDispatcher: function() {
- var customEvents = get(this, 'customEvents');
- var rootElement = get(this, 'rootElement');
- var dispatcher = this.__container__.lookup('event_dispatcher:main');
-
- set(this, 'eventDispatcher', dispatcher);
- dispatcher.setup(customEvents, rootElement);
- },
-
- /**
- If the application has a router, use it to route to the current URL, and
- trigger a new call to `route` whenever the URL changes.
-
- @private
- @method startRouting
- @property router {Ember.Router}
- */
- startRouting: function() {
- var router = this.__container__.lookup('router:main');
- if (!router) { return; }
-
- router.startRouting();
- },
-
- handleURL: function(url) {
- var router = this.__container__.lookup('router:main');
-
- router.handleURL(url);
- },
-
- /**
- Called when the Application has become ready.
- The call will be delayed until the DOM has become ready.
-
- @event ready
- */
- ready: K,
-
- /**
- @deprecated Use 'Resolver' instead
- Set this to provide an alternate class to `Ember.DefaultResolver`
-
-
- @property resolver
- */
- resolver: null,
-
- /**
- Set this to provide an alternate class to `Ember.DefaultResolver`
-
- @property resolver
- */
- Resolver: null,
-
- willDestroy: function() {
- Ember.BOOTED = false;
- // Ensure deactivation of routes before objects are destroyed
- this.__container__.lookup('router:main').reset();
-
- this.__container__.destroy();
- },
-
- initializer: function(options) {
- this.constructor.initializer(options);
- },
-
- /**
- @method then
- @private
- @deprecated
- */
- then: function() {
- Ember.deprecate('Do not use `.then` on an instance of Ember.Application. Please use the `.ready` hook instead.');
-
- this._super.apply(this, arguments);
- }
- });
-
- Application.reopenClass({
- initializers: create(null),
-
- /**
- Initializer receives an object which has the following attributes:
- `name`, `before`, `after`, `initialize`. The only required attribute is
- `initialize, all others are optional.
-
- * `name` allows you to specify under which name the initializer is registered.
- This must be a unique name, as trying to register two initializers with the
- same name will result in an error.
-
- ```javascript
- Ember.Application.initializer({
- name: 'namedInitializer',
-
- initialize: function(container, application) {
- Ember.debug('Running namedInitializer!');
- }
- });
- ```
-
- * `before` and `after` are used to ensure that this initializer is ran prior
- or after the one identified by the value. This value can be a single string
- or an array of strings, referencing the `name` of other initializers.
-
- An example of ordering initializers, we create an initializer named `first`:
-
- ```javascript
- Ember.Application.initializer({
- name: 'first',
-
- initialize: function(container, application) {
- Ember.debug('First initializer!');
- }
- });
-
- // DEBUG: First initializer!
- ```
-
- We add another initializer named `second`, specifying that it should run
- after the initializer named `first`:
-
- ```javascript
- Ember.Application.initializer({
- name: 'second',
- after: 'first',
-
- initialize: function(container, application) {
- Ember.debug('Second initializer!');
- }
- });
-
- // DEBUG: First initializer!
- // DEBUG: Second initializer!
- ```
-
- Afterwards we add a further initializer named `pre`, this time specifying
- that it should run before the initializer named `first`:
-
- ```javascript
- Ember.Application.initializer({
- name: 'pre',
- before: 'first',
-
- initialize: function(container, application) {
- Ember.debug('Pre initializer!');
- }
- });
-
- // DEBUG: Pre initializer!
- // DEBUG: First initializer!
- // DEBUG: Second initializer!
- ```
-
- Finally we add an initializer named `post`, specifying it should run after
- both the `first` and the `second` initializers:
-
- ```javascript
- Ember.Application.initializer({
- name: 'post',
- after: ['first', 'second'],
-
- initialize: function(container, application) {
- Ember.debug('Post initializer!');
- }
- });
-
- // DEBUG: Pre initializer!
- // DEBUG: First initializer!
- // DEBUG: Second initializer!
- // DEBUG: Post initializer!
- ```
-
- * `initialize` is a callback function that receives two arguments, `container`
- and `application` on which you can operate.
-
- Example of using `container` to preload data into the store:
-
- ```javascript
- Ember.Application.initializer({
- name: 'preload-data',
-
- initialize: function(container, application) {
- var store = container.lookup('store:main');
-
- store.pushPayload(preloadedData);
- }
- });
- ```
-
- Example of using `application` to register an adapter:
-
- ```javascript
- Ember.Application.initializer({
- name: 'api-adapter',
-
- initialize: function(container, application) {
- application.register('api-adapter:main', ApiAdapter);
- }
- });
- ```
-
- @method initializer
- @param initializer {Object}
- */
- initializer: function(initializer) {
- // If this is the first initializer being added to a subclass, we are going to reopen the class
- // to make sure we have a new `initializers` object, which extends from the parent class' using
- // prototypal inheritance. Without this, attempting to add initializers to the subclass would
- // pollute the parent class as well as other subclasses.
- if (this.superclass.initializers !== undefined && this.superclass.initializers === this.initializers) {
- this.reopenClass({
- initializers: create(this.initializers)
- });
- }
-
- Ember.assert("The initializer '" + initializer.name + "' has already been registered", !this.initializers[initializer.name]);
- Ember.assert("An initializer cannot be registered without an initialize function", canInvoke(initializer, 'initialize'));
- Ember.assert("An initializer cannot be registered without a name property", initializer.name !== undefined);
-
- this.initializers[initializer.name] = initializer;
- },
-
- /**
- This creates a container with the default Ember naming conventions.
-
- It also configures the container:
-
- * registered views are created every time they are looked up (they are
- not singletons)
- * registered templates are not factories; the registered value is
- returned directly.
- * the router receives the application as its `namespace` property
- * all controllers receive the router as their `target` and `controllers`
- properties
- * all controllers receive the application as their `namespace` property
- * the application view receives the application controller as its
- `controller` property
- * the application view receives the application template as its
- `defaultTemplate` property
-
- @private
- @method buildContainer
- @static
- @param {Ember.Application} namespace the application to build the
- container for.
- @return {Ember.Container} the built container
- */
- buildContainer: function(namespace) {
- var container = new Container();
-
- container.set = set;
- container.resolver = resolverFor(namespace);
- container.normalizeFullName = container.resolver.normalize;
- container.describe = container.resolver.describe;
- container.makeToString = container.resolver.makeToString;
-
- container.optionsForType('component', { singleton: false });
- container.optionsForType('view', { singleton: false });
- container.optionsForType('template', { instantiate: false });
- container.optionsForType('helper', { instantiate: false });
-
- container.register('application:main', namespace, { instantiate: false });
-
- container.register('controller:basic', Controller, { instantiate: false });
- container.register('controller:object', ObjectController, { instantiate: false });
- container.register('controller:array', ArrayController, { instantiate: false });
-
- container.register('view:select', SelectView);
-
- container.register('route:basic', Route, { instantiate: false });
- container.register('event_dispatcher:main', EventDispatcher);
-
- container.register('router:main', Router);
- container.injection('router:main', 'namespace', 'application:main');
-
- container.register('location:auto', AutoLocation);
- container.register('location:hash', HashLocation);
- container.register('location:history', HistoryLocation);
- container.register('location:none', NoneLocation);
-
- container.injection('controller', 'target', 'router:main');
- container.injection('controller', 'namespace', 'application:main');
-
- container.register('-bucket-cache:main', BucketCache);
- container.injection('router', '_bucketCache', '-bucket-cache:main');
- container.injection('route', '_bucketCache', '-bucket-cache:main');
- container.injection('controller', '_bucketCache', '-bucket-cache:main');
-
- container.injection('route', 'router', 'router:main');
- container.injection('location', 'rootURL', '-location-setting:root-url');
-
- // DEBUGGING
- container.register('resolver-for-debugging:main', container.resolver.__resolver__, { instantiate: false });
- container.injection('container-debug-adapter:main', 'resolver', 'resolver-for-debugging:main');
- container.injection('data-adapter:main', 'containerDebugAdapter', 'container-debug-adapter:main');
- // Custom resolver authors may want to register their own ContainerDebugAdapter with this key
-
- container.register('container-debug-adapter:main', ContainerDebugAdapter);
-
- return container;
- }
- });
-
- /**
- This function defines the default lookup rules for container lookups:
-
- * templates are looked up on `Ember.TEMPLATES`
- * other names are looked up on the application after classifying the name.
- For example, `controller:post` looks up `App.PostController` by default.
- * if the default lookup fails, look for registered classes on the container
-
- This allows the application to register default injections in the container
- that could be overridden by the normal naming convention.
-
- @private
- @method resolverFor
- @param {Ember.Namespace} namespace the namespace to look for classes
- @return {*} the resolved value for a given lookup
- */
- function resolverFor(namespace) {
- if (namespace.get('resolver')) {
- Ember.deprecate('Application.resolver is deprecated in favor of Application.Resolver', false);
- }
-
- var ResolverClass = namespace.get('resolver') || namespace.get('Resolver') || DefaultResolver;
- var resolver = ResolverClass.create({
- namespace: namespace
- });
-
- function resolve(fullName) {
- return resolver.resolve(fullName);
- }
-
- resolve.describe = function(fullName) {
- return resolver.lookupDescription(fullName);
- };
-
- resolve.makeToString = function(factory, fullName) {
- return resolver.makeToString(factory, fullName);
- };
-
- resolve.normalize = function(fullName) {
- if (resolver.normalize) {
- return resolver.normalize(fullName);
- } else {
- Ember.deprecate('The Resolver should now provide a \'normalize\' function', false);
- return fullName;
- }
- };
-
- resolve.__resolver__ = resolver;
-
- return resolve;
- }
-
- __exports__["default"] = Application;
- });
-enifed("ember-application/system/resolver",
- ["ember-metal/core","ember-metal/property_get","ember-metal/logger","ember-runtime/system/string","ember-runtime/system/object","ember-runtime/system/namespace","ember-handlebars","ember-metal/dictionary","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-application
- */
-
- var Ember = __dependency1__["default"];
- // Ember.TEMPLATES, Ember.assert
- var get = __dependency2__.get;
- var Logger = __dependency3__["default"];
- var classify = __dependency4__.classify;
- var capitalize = __dependency4__.capitalize;
- var decamelize = __dependency4__.decamelize;
- var EmberObject = __dependency5__["default"];
- var Namespace = __dependency6__["default"];
- var EmberHandlebars = __dependency7__["default"];
-
- var Resolver = EmberObject.extend({
- /**
- This will be set to the Application instance when it is
- created.
-
- @property namespace
- */
- namespace: null,
- normalize: Ember.required(Function),
- resolve: Ember.required(Function),
- parseName: Ember.required(Function),
- lookupDescription: Ember.required(Function),
- makeToString: Ember.required(Function),
- resolveOther: Ember.required(Function),
- _logLookup: Ember.required(Function)
- });
- __exports__.Resolver = Resolver;
- /**
- The DefaultResolver defines the default lookup rules to resolve
- container lookups before consulting the container for registered
- items:
-
- * templates are looked up on `Ember.TEMPLATES`
- * other names are looked up on the application after converting
- the name. For example, `controller:post` looks up
- `App.PostController` by default.
- * there are some nuances (see examples below)
-
- ### How Resolving Works
-
- The container calls this object's `resolve` method with the
- `fullName` argument.
-
- It first parses the fullName into an object using `parseName`.
-
- Then it checks for the presence of a type-specific instance
- method of the form `resolve[Type]` and calls it if it exists.
- For example if it was resolving 'template:post', it would call
- the `resolveTemplate` method.
-
- Its last resort is to call the `resolveOther` method.
-
- The methods of this object are designed to be easy to override
- in a subclass. For example, you could enhance how a template
- is resolved like so:
-
- ```javascript
- App = Ember.Application.create({
- Resolver: Ember.DefaultResolver.extend({
- resolveTemplate: function(parsedName) {
- var resolvedTemplate = this._super(parsedName);
- if (resolvedTemplate) { return resolvedTemplate; }
- return Ember.TEMPLATES['not_found'];
- }
- })
- });
- ```
-
- Some examples of how names are resolved:
-
- ```
- 'template:post' //=> Ember.TEMPLATES['post']
- 'template:posts/byline' //=> Ember.TEMPLATES['posts/byline']
- 'template:posts.byline' //=> Ember.TEMPLATES['posts/byline']
- 'template:blogPost' //=> Ember.TEMPLATES['blogPost']
- // OR
- // Ember.TEMPLATES['blog_post']
- 'controller:post' //=> App.PostController
- 'controller:posts.index' //=> App.PostsIndexController
- 'controller:blog/post' //=> Blog.PostController
- 'controller:basic' //=> Ember.Controller
- 'route:post' //=> App.PostRoute
- 'route:posts.index' //=> App.PostsIndexRoute
- 'route:blog/post' //=> Blog.PostRoute
- 'route:basic' //=> Ember.Route
- 'view:post' //=> App.PostView
- 'view:posts.index' //=> App.PostsIndexView
- 'view:blog/post' //=> Blog.PostView
- 'view:basic' //=> Ember.View
- 'foo:post' //=> App.PostFoo
- 'model:post' //=> App.Post
- ```
-
- @class DefaultResolver
- @namespace Ember
- @extends Ember.Object
- */
- var dictionary = __dependency8__["default"];
-
- __exports__["default"] = EmberObject.extend({
- /**
- This will be set to the Application instance when it is
- created.
-
- @property namespace
- */
- namespace: null,
-
- init: function() {
- this._parseNameCache = dictionary(null);
- },
- normalize: function(fullName) {
- var split = fullName.split(':', 2);
- var type = split[0];
- var name = split[1];
-
- Ember.assert("Tried to normalize a container name without a colon (:) in it." +
- " You probably tried to lookup a name that did not contain a type," +
- " a colon, and a name. A proper lookup name would be `view:post`.", split.length === 2);
-
- if (type !== 'template') {
- var result = name;
-
- if (result.indexOf('.') > -1) {
- result = result.replace(/\.(.)/g, function(m) {
- return m.charAt(1).toUpperCase();
- });
- }
-
- if (name.indexOf('_') > -1) {
- result = result.replace(/_(.)/g, function(m) {
- return m.charAt(1).toUpperCase();
- });
- }
-
- return type + ':' + result;
- } else {
- return fullName;
- }
- },
-
-
- /**
- This method is called via the container's resolver method.
- It parses the provided `fullName` and then looks up and
- returns the appropriate template or class.
-
- @method resolve
- @param {String} fullName the lookup string
- @return {Object} the resolved factory
- */
- resolve: function(fullName) {
- var parsedName = this.parseName(fullName);
- var resolveMethodName = parsedName.resolveMethodName;
- var resolved;
-
- if (!(parsedName.name && parsedName.type)) {
- throw new TypeError('Invalid fullName: `' + fullName + '`, must be of the form `type:name` ');
- }
-
- if (this[resolveMethodName]) {
- resolved = this[resolveMethodName](parsedName);
- }
-
- if (!resolved) {
- resolved = this.resolveOther(parsedName);
- }
-
- if (parsedName.root && parsedName.root.LOG_RESOLVER) {
- this._logLookup(resolved, parsedName);
- }
-
- return resolved;
- },
- /**
- Convert the string name of the form 'type:name' to
- a Javascript object with the parsed aspects of the name
- broken out.
-
- @protected
- @param {String} fullName the lookup string
- @method parseName
- */
-
- parseName: function(fullName) {
- return this._parseNameCache[fullName] || (
- this._parseNameCache[fullName] = this._parseName(fullName)
- );
- },
-
- _parseName: function(fullName) {
- var nameParts = fullName.split(':');
- var type = nameParts[0], fullNameWithoutType = nameParts[1];
- var name = fullNameWithoutType;
- var namespace = get(this, 'namespace');
- var root = namespace;
-
- if (type !== 'template' && name.indexOf('/') !== -1) {
- var parts = name.split('/');
- name = parts[parts.length - 1];
- var namespaceName = capitalize(parts.slice(0, -1).join('.'));
- root = Namespace.byName(namespaceName);
-
- Ember.assert('You are looking for a ' + name + ' ' + type +
- ' in the ' + namespaceName +
- ' namespace, but the namespace could not be found', root);
- }
-
- return {
- fullName: fullName,
- type: type,
- fullNameWithoutType: fullNameWithoutType,
- name: name,
- root: root,
- resolveMethodName: 'resolve' + classify(type)
- };
- },
-
- /**
- Returns a human-readable description for a fullName. Used by the
- Application namespace in assertions to describe the
- precise name of the class that Ember is looking for, rather than
- container keys.
-
- @protected
- @param {String} fullName the lookup string
- @method lookupDescription
- */
- lookupDescription: function(fullName) {
- var parsedName = this.parseName(fullName);
-
- if (parsedName.type === 'template') {
- return 'template at ' + parsedName.fullNameWithoutType.replace(/\./g, '/');
- }
-
- var description = parsedName.root + '.' + classify(parsedName.name);
-
- if (parsedName.type !== 'model') {
- description += classify(parsedName.type);
- }
-
- return description;
- },
-
- makeToString: function(factory, fullName) {
- return factory.toString();
- },
- /**
- Given a parseName object (output from `parseName`), apply
- the conventions expected by `Ember.Router`
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method useRouterNaming
- */
- useRouterNaming: function(parsedName) {
- parsedName.name = parsedName.name.replace(/\./g, '_');
- if (parsedName.name === 'basic') {
- parsedName.name = '';
- }
- },
- /**
- Look up the template in Ember.TEMPLATES
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveTemplate
- */
- resolveTemplate: function(parsedName) {
- var templateName = parsedName.fullNameWithoutType.replace(/\./g, '/');
-
- if (Ember.TEMPLATES[templateName]) {
- return Ember.TEMPLATES[templateName];
- }
-
- templateName = decamelize(templateName);
- if (Ember.TEMPLATES[templateName]) {
- return Ember.TEMPLATES[templateName];
- }
- },
-
- /**
- Lookup the view using `resolveOther`
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveView
- */
- resolveView: function(parsedName) {
- this.useRouterNaming(parsedName);
- return this.resolveOther(parsedName);
- },
-
- /**
- Lookup the controller using `resolveOther`
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveController
- */
- resolveController: function(parsedName) {
- this.useRouterNaming(parsedName);
- return this.resolveOther(parsedName);
- },
- /**
- Lookup the route using `resolveOther`
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveRoute
- */
- resolveRoute: function(parsedName) {
- this.useRouterNaming(parsedName);
- return this.resolveOther(parsedName);
- },
-
- /**
- Lookup the model on the Application namespace
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveModel
- */
- resolveModel: function(parsedName) {
- var className = classify(parsedName.name);
- var factory = get(parsedName.root, className);
-
- if (factory) { return factory; }
- },
- /**
- Look up the specified object (from parsedName) on the appropriate
- namespace (usually on the Application)
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveHelper
- */
- resolveHelper: function(parsedName) {
- return this.resolveOther(parsedName) || EmberHandlebars.helpers[parsedName.fullNameWithoutType];
- },
- /**
- Look up the specified object (from parsedName) on the appropriate
- namespace (usually on the Application)
-
- @protected
- @param {Object} parsedName a parseName object with the parsed
- fullName lookup string
- @method resolveOther
- */
- resolveOther: function(parsedName) {
- var className = classify(parsedName.name) + classify(parsedName.type);
- var factory = get(parsedName.root, className);
- if (factory) { return factory; }
- },
-
- /**
- @method _logLookup
- @param {Boolean} found
- @param {Object} parsedName
- @private
- */
- _logLookup: function(found, parsedName) {
- var symbol, padding;
-
- if (found) { symbol = '[✓]'; }
- else { symbol = '[ ]'; }
-
- if (parsedName.fullName.length > 60) {
- padding = '.';
- } else {
- padding = new Array(60 - parsedName.fullName.length).join('.');
- }
-
- Logger.info(symbol, parsedName.fullName, padding, this.lookupDescription(parsedName.fullName));
- }
- });
- });
-enifed("ember-debug",
- ["ember-metal/core","ember-metal/error","ember-metal/logger","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- /*global __fail__*/
-
- var Ember = __dependency1__["default"];
- var EmberError = __dependency2__["default"];
- var Logger = __dependency3__["default"];
-
- /**
- Ember Debug
-
- @module ember
- @submodule ember-debug
- */
-
- /**
- @class Ember
- */
-
- /**
- Define an assertion that will throw an exception if the condition is not
- met. Ember build tools will remove any calls to `Ember.assert()` when
- doing a production build. Example:
-
- ```javascript
- // Test for truthiness
- Ember.assert('Must pass a valid object', obj);
-
- // Fail unconditionally
- Ember.assert('This code path should never be run');
- ```
-
- @method assert
- @param {String} desc A description of the assertion. This will become
- the text of the Error thrown if the assertion fails.
- @param {Boolean} test Must be truthy for the assertion to pass. If
- falsy, an exception will be thrown.
- */
- Ember.assert = function(desc, test) {
- if (!test) {
- throw new EmberError("Assertion Failed: " + desc);
- }
- };
-
-
- /**
- Display a warning with the provided message. Ember build tools will
- remove any calls to `Ember.warn()` when doing a production build.
-
- @method warn
- @param {String} message A warning to display.
- @param {Boolean} test An optional boolean. If falsy, the warning
- will be displayed.
- */
- Ember.warn = function(message, test) {
- if (!test) {
- Logger.warn("WARNING: "+message);
- if ('trace' in Logger) Logger.trace();
- }
- };
-
- /**
- Display a debug notice. Ember build tools will remove any calls to
- `Ember.debug()` when doing a production build.
-
- ```javascript
- Ember.debug('I\'m a debug notice!');
- ```
-
- @method debug
- @param {String} message A debug message to display.
- */
- Ember.debug = function(message) {
- Logger.debug("DEBUG: "+message);
- };
-
- /**
- Display a deprecation warning with the provided message and a stack trace
- (Chrome and Firefox only). Ember build tools will remove any calls to
- `Ember.deprecate()` when doing a production build.
-
- @method deprecate
- @param {String} message A description of the deprecation.
- @param {Boolean} test An optional boolean. If falsy, the deprecation
- will be displayed.
- */
- Ember.deprecate = function(message, test) {
- if (test) { return; }
-
- if (Ember.ENV.RAISE_ON_DEPRECATION) { throw new EmberError(message); }
-
- var error;
-
- // When using new Error, we can't do the arguments check for Chrome. Alternatives are welcome
- try { __fail__.fail(); } catch (e) { error = e; }
-
- if (Ember.LOG_STACKTRACE_ON_DEPRECATION && error.stack) {
- var stack;
- var stackStr = '';
-
- if (error['arguments']) {
- // Chrome
- stack = error.stack.replace(/^\s+at\s+/gm, '').
- replace(/^([^\(]+?)([\n$])/gm, '{anonymous}($1)$2').
- replace(/^Object.\s*\(([^\)]+)\)/gm, '{anonymous}($1)').split('\n');
- stack.shift();
- } else {
- // Firefox
- stack = error.stack.replace(/(?:\n@:0)?\s+$/m, '').
- replace(/^\(/gm, '{anonymous}(').split('\n');
- }
-
- stackStr = "\n " + stack.slice(2).join("\n ");
- message = message + stackStr;
- }
-
- Logger.warn("DEPRECATION: "+message);
- };
-
-
-
- /**
- Alias an old, deprecated method with its new counterpart.
-
- Display a deprecation warning with the provided message and a stack trace
- (Chrome and Firefox only) when the assigned method is called.
-
- Ember build tools will not remove calls to `Ember.deprecateFunc()`, though
- no warnings will be shown in production.
-
- ```javascript
- Ember.oldMethod = Ember.deprecateFunc('Please use the new, updated method', Ember.newMethod);
- ```
-
- @method deprecateFunc
- @param {String} message A description of the deprecation.
- @param {Function} func The new function called to replace its deprecated counterpart.
- @return {Function} a new function that wrapped the original function with a deprecation warning
- */
- Ember.deprecateFunc = function(message, func) {
- return function() {
- Ember.deprecate(message);
- return func.apply(this, arguments);
- };
- };
-
-
- /**
- Run a function meant for debugging. Ember build tools will remove any calls to
- `Ember.runInDebug()` when doing a production build.
-
- ```javascript
- Ember.runInDebug(function() {
- Ember.Handlebars.EachView.reopen({
- didInsertElement: function() {
- console.log('I\'m happy');
- }
- });
- });
- ```
-
- @method runInDebug
- @param {Function} func The function to be executed.
- @since 1.5.0
- */
- Ember.runInDebug = function(func) {
- func();
- };
-
- /**
- Will call `Ember.warn()` if ENABLE_ALL_FEATURES, ENABLE_OPTIONAL_FEATURES, or
- any specific FEATURES flag is truthy.
-
- This method is called automatically in debug canary builds.
-
- @private
- @method _warnIfUsingStrippedFeatureFlags
- @return {void}
- */
- function _warnIfUsingStrippedFeatureFlags(FEATURES, featuresWereStripped) {
- if (featuresWereStripped) {
- Ember.warn('Ember.ENV.ENABLE_ALL_FEATURES is only available in canary builds.', !Ember.ENV.ENABLE_ALL_FEATURES);
- Ember.warn('Ember.ENV.ENABLE_OPTIONAL_FEATURES is only available in canary builds.', !Ember.ENV.ENABLE_OPTIONAL_FEATURES);
-
- for (var key in FEATURES) {
- if (FEATURES.hasOwnProperty(key) && key !== 'isEnabled') {
- Ember.warn('FEATURE["' + key + '"] is set as enabled, but FEATURE flags are only available in canary builds.', !FEATURES[key]);
- }
- }
- }
- }
-
- __exports__._warnIfUsingStrippedFeatureFlags = _warnIfUsingStrippedFeatureFlags;if (!Ember.testing) {
- // Complain if they're using FEATURE flags in builds other than canary
- Ember.FEATURES['features-stripped-test'] = true;
- var featuresWereStripped = true;
-
-
- delete Ember.FEATURES['features-stripped-test'];
- _warnIfUsingStrippedFeatureFlags(Ember.ENV.FEATURES, featuresWereStripped);
-
- // Inform the developer about the Ember Inspector if not installed.
- var isFirefox = typeof InstallTrigger !== 'undefined';
- var isChrome = !!window.chrome && !window.opera;
-
- if (typeof window !== 'undefined' && (isFirefox || isChrome) && window.addEventListener) {
- window.addEventListener("load", function() {
- if (document.documentElement && document.documentElement.dataset && !document.documentElement.dataset.emberExtension) {
- var downloadURL;
-
- if(isChrome) {
- downloadURL = 'https://chrome.google.com/webstore/detail/ember-inspector/bmdblncegkenkacieihfhpjfppoconhi';
- } else if(isFirefox) {
- downloadURL = 'https://addons.mozilla.org/en-US/firefox/addon/ember-inspector/';
- }
-
- Ember.debug('For more advanced debugging, install the Ember Inspector from ' + downloadURL);
- }
- }, false);
- }
- }
- });
-enifed("ember-extension-support",
- ["ember-metal/core","ember-extension-support/data_adapter","ember-extension-support/container_debug_adapter"],
- function(__dependency1__, __dependency2__, __dependency3__) {
- "use strict";
- /**
- Ember Extension Support
-
- @module ember
- @submodule ember-extension-support
- @requires ember-application
- */
-
- var Ember = __dependency1__["default"];
- var DataAdapter = __dependency2__["default"];
- var ContainerDebugAdapter = __dependency3__["default"];
-
- Ember.DataAdapter = DataAdapter;
- Ember.ContainerDebugAdapter = ContainerDebugAdapter;
- });
-enifed("ember-extension-support/container_debug_adapter",
- ["ember-metal/core","ember-runtime/system/native_array","ember-metal/utils","ember-runtime/system/string","ember-runtime/system/namespace","ember-runtime/system/object","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var emberA = __dependency2__.A;
- var typeOf = __dependency3__.typeOf;
- var dasherize = __dependency4__.dasherize;
- var classify = __dependency4__.classify;
- var Namespace = __dependency5__["default"];
- var EmberObject = __dependency6__["default"];
-
- /**
- @module ember
- @submodule ember-extension-support
- */
-
- /**
- The `ContainerDebugAdapter` helps the container and resolver interface
- with tools that debug Ember such as the
- [Ember Extension](https://github.com/tildeio/ember-extension)
- for Chrome and Firefox.
-
- This class can be extended by a custom resolver implementer
- to override some of the methods with library-specific code.
-
- The methods likely to be overridden are:
-
- * `canCatalogEntriesByType`
- * `catalogEntriesByType`
-
- The adapter will need to be registered
- in the application's container as `container-debug-adapter:main`
-
- Example:
-
- ```javascript
- Application.initializer({
- name: "containerDebugAdapter",
-
- initialize: function(container, application) {
- application.register('container-debug-adapter:main', require('app/container-debug-adapter'));
- }
- });
- ```
-
- @class ContainerDebugAdapter
- @namespace Ember
- @extends EmberObject
- @since 1.5.0
- */
- __exports__["default"] = EmberObject.extend({
- /**
- The container of the application being debugged.
- This property will be injected
- on creation.
-
- @property container
- @default null
- */
- container: null,
-
- /**
- The resolver instance of the application
- being debugged. This property will be injected
- on creation.
-
- @property resolver
- @default null
- */
- resolver: null,
-
- /**
- Returns true if it is possible to catalog a list of available
- classes in the resolver for a given type.
-
- @method canCatalogEntriesByType
- @param {String} type The type. e.g. "model", "controller", "route"
- @return {boolean} whether a list is available for this type.
- */
- canCatalogEntriesByType: function(type) {
- if (type === 'model' || type === 'template') return false;
- return true;
- },
-
- /**
- Returns the available classes a given type.
-
- @method catalogEntriesByType
- @param {String} type The type. e.g. "model", "controller", "route"
- @return {Array} An array of strings.
- */
- catalogEntriesByType: function(type) {
- var namespaces = emberA(Namespace.NAMESPACES), types = emberA();
- var typeSuffixRegex = new RegExp(classify(type) + "$");
-
- namespaces.forEach(function(namespace) {
- if (namespace !== Ember) {
- for (var key in namespace) {
- if (!namespace.hasOwnProperty(key)) { continue; }
- if (typeSuffixRegex.test(key)) {
- var klass = namespace[key];
- if (typeOf(klass) === 'class') {
- types.push(dasherize(key.replace(typeSuffixRegex, '')));
- }
- }
- }
- }
- });
- return types;
- }
- });
- });
-enifed("ember-extension-support/data_adapter",
- ["ember-metal/core","ember-metal/property_get","ember-metal/run_loop","ember-runtime/system/string","ember-runtime/system/namespace","ember-runtime/system/object","ember-runtime/system/native_array","ember-application/system/application","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var get = __dependency2__.get;
- var run = __dependency3__["default"];
- var dasherize = __dependency4__.dasherize;
- var Namespace = __dependency5__["default"];
- var EmberObject = __dependency6__["default"];
- var emberA = __dependency7__.A;
- var Application = __dependency8__["default"];
-
- /**
- @module ember
- @submodule ember-extension-support
- */
-
- /**
- The `DataAdapter` helps a data persistence library
- interface with tools that debug Ember such
- as the [Ember Extension](https://github.com/tildeio/ember-extension)
- for Chrome and Firefox.
-
- This class will be extended by a persistence library
- which will override some of the methods with
- library-specific code.
-
- The methods likely to be overridden are:
-
- * `getFilters`
- * `detect`
- * `columnsForType`
- * `getRecords`
- * `getRecordColumnValues`
- * `getRecordKeywords`
- * `getRecordFilterValues`
- * `getRecordColor`
- * `observeRecord`
-
- The adapter will need to be registered
- in the application's container as `dataAdapter:main`
-
- Example:
-
- ```javascript
- Application.initializer({
- name: "data-adapter",
-
- initialize: function(container, application) {
- application.register('data-adapter:main', DS.DataAdapter);
- }
- });
- ```
-
- @class DataAdapter
- @namespace Ember
- @extends EmberObject
- */
- __exports__["default"] = EmberObject.extend({
- init: function() {
- this._super();
- this.releaseMethods = emberA();
- },
-
- /**
- The container of the application being debugged.
- This property will be injected
- on creation.
-
- @property container
- @default null
- @since 1.3.0
- */
- container: null,
-
-
- /**
- The container-debug-adapter which is used
- to list all models.
-
- @property containerDebugAdapter
- @default undefined
- @since 1.5.0
- **/
- containerDebugAdapter: undefined,
-
- /**
- Number of attributes to send
- as columns. (Enough to make the record
- identifiable).
-
- @private
- @property attributeLimit
- @default 3
- @since 1.3.0
- */
- attributeLimit: 3,
-
- /**
- Stores all methods that clear observers.
- These methods will be called on destruction.
-
- @private
- @property releaseMethods
- @since 1.3.0
- */
- releaseMethods: emberA(),
-
- /**
- Specifies how records can be filtered.
- Records returned will need to have a `filterValues`
- property with a key for every name in the returned array.
-
- @public
- @method getFilters
- @return {Array} List of objects defining filters.
- The object should have a `name` and `desc` property.
- */
- getFilters: function() {
- return emberA();
- },
-
- /**
- Fetch the model types and observe them for changes.
-
- @public
- @method watchModelTypes
-
- @param {Function} typesAdded Callback to call to add types.
- Takes an array of objects containing wrapped types (returned from `wrapModelType`).
-
- @param {Function} typesUpdated Callback to call when a type has changed.
- Takes an array of objects containing wrapped types.
-
- @return {Function} Method to call to remove all observers
- */
- watchModelTypes: function(typesAdded, typesUpdated) {
- var modelTypes = this.getModelTypes();
- var self = this;
- var releaseMethods = emberA();
- var typesToSend;
-
- typesToSend = modelTypes.map(function(type) {
- var klass = type.klass;
- var wrapped = self.wrapModelType(klass, type.name);
- releaseMethods.push(self.observeModelType(klass, typesUpdated));
- return wrapped;
- });
-
- typesAdded(typesToSend);
-
- var release = function() {
- releaseMethods.forEach(function(fn) { fn(); });
- self.releaseMethods.removeObject(release);
- };
- this.releaseMethods.pushObject(release);
- return release;
- },
-
- _nameToClass: function(type) {
- if (typeof type === 'string') {
- type = this.container.lookupFactory('model:' + type);
- }
- return type;
- },
-
- /**
- Fetch the records of a given type and observe them for changes.
-
- @public
- @method watchRecords
-
- @param {Function} recordsAdded Callback to call to add records.
- Takes an array of objects containing wrapped records.
- The object should have the following properties:
- columnValues: {Object} key and value of a table cell
- object: {Object} the actual record object
-
- @param {Function} recordsUpdated Callback to call when a record has changed.
- Takes an array of objects containing wrapped records.
-
- @param {Function} recordsRemoved Callback to call when a record has removed.
- Takes the following parameters:
- index: the array index where the records were removed
- count: the number of records removed
-
- @return {Function} Method to call to remove all observers
- */
- watchRecords: function(type, recordsAdded, recordsUpdated, recordsRemoved) {
- var self = this, releaseMethods = emberA(), records = this.getRecords(type), release;
-
- var recordUpdated = function(updatedRecord) {
- recordsUpdated([updatedRecord]);
- };
-
- var recordsToSend = records.map(function(record) {
- releaseMethods.push(self.observeRecord(record, recordUpdated));
- return self.wrapRecord(record);
- });
-
-
- var contentDidChange = function(array, idx, removedCount, addedCount) {
- for (var i = idx; i < idx + addedCount; i++) {
- var record = array.objectAt(i);
- var wrapped = self.wrapRecord(record);
- releaseMethods.push(self.observeRecord(record, recordUpdated));
- recordsAdded([wrapped]);
- }
-
- if (removedCount) {
- recordsRemoved(idx, removedCount);
- }
- };
-
- var observer = { didChange: contentDidChange, willChange: Ember.K };
- records.addArrayObserver(self, observer);
-
- release = function() {
- releaseMethods.forEach(function(fn) { fn(); });
- records.removeArrayObserver(self, observer);
- self.releaseMethods.removeObject(release);
- };
-
- recordsAdded(recordsToSend);
-
- this.releaseMethods.pushObject(release);
- return release;
- },
-
- /**
- Clear all observers before destruction
- @private
- @method willDestroy
- */
- willDestroy: function() {
- this._super();
- this.releaseMethods.forEach(function(fn) {
- fn();
- });
- },
-
- /**
- Detect whether a class is a model.
-
- Test that against the model class
- of your persistence library
-
- @private
- @method detect
- @param {Class} klass The class to test
- @return boolean Whether the class is a model class or not
- */
- detect: function(klass) {
- return false;
- },
-
- /**
- Get the columns for a given model type.
-
- @private
- @method columnsForType
- @param {Class} type The model type
- @return {Array} An array of columns of the following format:
- name: {String} name of the column
- desc: {String} Humanized description (what would show in a table column name)
- */
- columnsForType: function(type) {
- return emberA();
- },
-
- /**
- Adds observers to a model type class.
-
- @private
- @method observeModelType
- @param {Class} type The model type class
- @param {Function} typesUpdated Called when a type is modified.
- @return {Function} The function to call to remove observers
- */
-
- observeModelType: function(type, typesUpdated) {
- var self = this;
- var records = this.getRecords(type);
-
- var onChange = function() {
- typesUpdated([self.wrapModelType(type)]);
- };
- var observer = {
- didChange: function() {
- run.scheduleOnce('actions', this, onChange);
- },
- willChange: Ember.K
- };
-
- records.addArrayObserver(this, observer);
-
- var release = function() {
- records.removeArrayObserver(self, observer);
- };
-
- return release;
- },
-
-
- /**
- Wraps a given model type and observes changes to it.
-
- @private
- @method wrapModelType
- @param {Class} type A model class
- @param {String} Optional name of the class
- @return {Object} contains the wrapped type and the function to remove observers
- Format:
- type: {Object} the wrapped type
- The wrapped type has the following format:
- name: {String} name of the type
- count: {Integer} number of records available
- columns: {Columns} array of columns to describe the record
- object: {Class} the actual Model type class
- release: {Function} The function to remove observers
- */
- wrapModelType: function(type, name) {
- var records = this.getRecords(type);
- var typeToSend;
-
- typeToSend = {
- name: name || type.toString(),
- count: get(records, 'length'),
- columns: this.columnsForType(type),
- object: type
- };
-
-
- return typeToSend;
- },
-
-
- /**
- Fetches all models defined in the application.
-
- @private
- @method getModelTypes
- @return {Array} Array of model types
- */
- getModelTypes: function() {
- var self = this;
- var containerDebugAdapter = this.get('containerDebugAdapter');
- var types;
-
- if (containerDebugAdapter.canCatalogEntriesByType('model')) {
- types = containerDebugAdapter.catalogEntriesByType('model');
- } else {
- types = this._getObjectsOnNamespaces();
- }
-
- // New adapters return strings instead of classes
- types = emberA(types).map(function(name) {
- return {
- klass: self._nameToClass(name),
- name: name
- };
- });
- types = emberA(types).filter(function(type) {
- return self.detect(type.klass);
- });
-
- return emberA(types);
- },
-
- /**
- Loops over all namespaces and all objects
- attached to them
-
- @private
- @method _getObjectsOnNamespaces
- @return {Array} Array of model type strings
- */
- _getObjectsOnNamespaces: function() {
- var namespaces = emberA(Namespace.NAMESPACES);
- var types = emberA();
- var self = this;
-
- namespaces.forEach(function(namespace) {
- for (var key in namespace) {
- if (!namespace.hasOwnProperty(key)) { continue; }
- // Even though we will filter again in `getModelTypes`,
- // we should not call `lookupContainer` on non-models
- // (especially when `Ember.MODEL_FACTORY_INJECTIONS` is `true`)
- if (!self.detect(namespace[key])) { continue; }
- var name = dasherize(key);
- if (!(namespace instanceof Application) && namespace.toString()) {
- name = namespace + '/' + name;
- }
- types.push(name);
- }
- });
- return types;
- },
-
- /**
- Fetches all loaded records for a given type.
-
- @private
- @method getRecords
- @return {Array} An array of records.
- This array will be observed for changes,
- so it should update when new records are added/removed.
- */
- getRecords: function(type) {
- return emberA();
- },
-
- /**
- Wraps a record and observers changes to it.
-
- @private
- @method wrapRecord
- @param {Object} record The record instance.
- @return {Object} The wrapped record. Format:
- columnValues: {Array}
- searchKeywords: {Array}
- */
- wrapRecord: function(record) {
- var recordToSend = { object: record };
-
- recordToSend.columnValues = this.getRecordColumnValues(record);
- recordToSend.searchKeywords = this.getRecordKeywords(record);
- recordToSend.filterValues = this.getRecordFilterValues(record);
- recordToSend.color = this.getRecordColor(record);
-
- return recordToSend;
- },
-
- /**
- Gets the values for each column.
-
- @private
- @method getRecordColumnValues
- @return {Object} Keys should match column names defined
- by the model type.
- */
- getRecordColumnValues: function(record) {
- return {};
- },
-
- /**
- Returns keywords to match when searching records.
-
- @private
- @method getRecordKeywords
- @return {Array} Relevant keywords for search.
- */
- getRecordKeywords: function(record) {
- return emberA();
- },
-
- /**
- Returns the values of filters defined by `getFilters`.
-
- @private
- @method getRecordFilterValues
- @param {Object} record The record instance
- @return {Object} The filter values
- */
- getRecordFilterValues: function(record) {
- return {};
- },
-
- /**
- Each record can have a color that represents its state.
-
- @private
- @method getRecordColor
- @param {Object} record The record instance
- @return {String} The record's color
- Possible options: black, red, blue, green
- */
- getRecordColor: function(record) {
- return null;
- },
-
- /**
- Observes all relevant properties and re-sends the wrapped record
- when a change occurs.
-
- @private
- @method observerRecord
- @param {Object} record The record instance
- @param {Function} recordUpdated The callback to call when a record is updated.
- @return {Function} The function to call to remove all observers.
- */
- observeRecord: function(record, recordUpdated) {
- return function(){};
- }
- });
- });
-enifed("ember-extension-support/initializers",
- [],
- function() {
- "use strict";
-
- });
-enifed("ember-handlebars-compiler",
- ["ember-metal/core","exports"],
- function(__dependency1__, __exports__) {
- /* global Handlebars:true */
-
- // Remove "use strict"; from transpiled module (in browser builds only) until
- // https://bugs.webkit.org/show_bug.cgi?id=138038 is fixed
- //
- // REMOVE_USE_STRICT: true
-
- /**
- @module ember
- @submodule ember-handlebars-compiler
- */
-
- var Ember = __dependency1__["default"];
-
- // ES6Todo: you'll need to import debugger once debugger is es6'd.
- if (typeof Ember.assert === 'undefined') { Ember.assert = function(){}; }
- if (typeof Ember.FEATURES === 'undefined') { Ember.FEATURES = { isEnabled: function(){} }; }
-
- var objectCreate = Object.create || function(parent) {
- function F() {}
- F.prototype = parent;
- return new F();
- };
-
- // set up for circular references later
- var View, Component;
-
- // ES6Todo: when ember-debug is es6'ed import this.
- // var emberAssert = Ember.assert;
- var Handlebars = (Ember.imports && Ember.imports.Handlebars) || (this && this.Handlebars);
- if (!Handlebars && typeof eriuqer === 'function') {
- Handlebars = eriuqer('handlebars');
- }
-
- Ember.assert("Ember Handlebars requires Handlebars version 2.0. Include " +
- "a SCRIPT tag in the HTML HEAD linking to the Handlebars file " +
- "before you link to Ember.", Handlebars);
-
- Ember.assert("Ember Handlebars requires Handlebars version 2.0. " +
- "Please see more details at http://emberjs.com/blog/2014/10/16/handlebars-update.html.",
- Handlebars.COMPILER_REVISION === 6);
-
- /**
- Prepares the Handlebars templating library for use inside Ember's view
- system.
-
- The `Ember.Handlebars` object is the standard Handlebars library, extended to
- use Ember's `get()` method instead of direct property access, which allows
- computed properties to be used inside templates.
-
- To create an `Ember.Handlebars` template, call `Ember.Handlebars.compile()`.
- This will return a function that can be used by `Ember.View` for rendering.
-
- @class Handlebars
- @namespace Ember
- */
- var EmberHandlebars = Ember.Handlebars = Handlebars.create();
-
- /**
- Register a bound helper or custom view helper.
-
- ## Simple bound helper example
-
- ```javascript
- Ember.Handlebars.helper('capitalize', function(value) {
- return value.toUpperCase();
- });
- ```
-
- The above bound helper can be used inside of templates as follows:
-
- ```handlebars
- {{capitalize name}}
- ```
-
- In this case, when the `name` property of the template's context changes,
- the rendered value of the helper will update to reflect this change.
-
- For more examples of bound helpers, see documentation for
- `Ember.Handlebars.registerBoundHelper`.
-
- ## Custom view helper example
-
- Assuming a view subclass named `App.CalendarView` were defined, a helper
- for rendering instances of this view could be registered as follows:
-
- ```javascript
- Ember.Handlebars.helper('calendar', App.CalendarView):
- ```
-
- The above bound helper can be used inside of templates as follows:
-
- ```handlebars
- {{calendar}}
- ```
-
- Which is functionally equivalent to:
-
- ```handlebars
- {{view 'calendar'}}
- ```
-
- Options in the helper will be passed to the view in exactly the same
- manner as with the `view` helper.
-
- @method helper
- @for Ember.Handlebars
- @param {String} name
- @param {Function|Ember.View} function or view class constructor
- @param {String} dependentKeys*
- */
- EmberHandlebars.helper = function(name, value) {
- if (!View) { View = requireModule('ember-views/views/view')['default']; } // ES6TODO: stupid circular dep
- if (!Component) { Component = requireModule('ember-views/views/component')['default']; } // ES6TODO: stupid circular dep
-
- Ember.assert("You tried to register a component named '" + name +
- "', but component names must include a '-'", !Component.detect(value) || name.match(/-/));
-
- if (View.detect(value)) {
- EmberHandlebars.registerHelper(name, EmberHandlebars.makeViewHelper(value));
- } else {
- EmberHandlebars.registerBoundHelper.apply(null, arguments);
- }
- };
-
- /**
- Returns a helper function that renders the provided ViewClass.
-
- Used internally by Ember.Handlebars.helper and other methods
- involving helper/component registration.
-
- @private
- @method makeViewHelper
- @for Ember.Handlebars
- @param {Function} ViewClass view class constructor
- @since 1.2.0
- */
- EmberHandlebars.makeViewHelper = function(ViewClass) {
- return function(options) {
- Ember.assert("You can only pass attributes (such as name=value) not bare " +
- "values to a helper for a View found in '" + ViewClass.toString() + "'", arguments.length < 2);
- return EmberHandlebars.helpers.view.call(this, ViewClass, options);
- };
- };
-
- /**
- @class helpers
- @namespace Ember.Handlebars
- */
- EmberHandlebars.helpers = objectCreate(Handlebars.helpers);
-
- /**
- Override the the opcode compiler and JavaScript compiler for Handlebars.
-
- @class Compiler
- @namespace Ember.Handlebars
- @private
- @constructor
- */
- EmberHandlebars.Compiler = function() {};
-
- // Handlebars.Compiler doesn't exist in runtime-only
- if (Handlebars.Compiler) {
- EmberHandlebars.Compiler.prototype = objectCreate(Handlebars.Compiler.prototype);
- }
-
- EmberHandlebars.Compiler.prototype.compiler = EmberHandlebars.Compiler;
-
- /**
- @class JavaScriptCompiler
- @namespace Ember.Handlebars
- @private
- @constructor
- */
- EmberHandlebars.JavaScriptCompiler = function() {};
-
- // Handlebars.JavaScriptCompiler doesn't exist in runtime-only
- if (Handlebars.JavaScriptCompiler) {
- EmberHandlebars.JavaScriptCompiler.prototype = objectCreate(Handlebars.JavaScriptCompiler.prototype);
- EmberHandlebars.JavaScriptCompiler.prototype.compiler = EmberHandlebars.JavaScriptCompiler;
- }
-
-
- EmberHandlebars.JavaScriptCompiler.prototype.namespace = "Ember.Handlebars";
-
- EmberHandlebars.JavaScriptCompiler.prototype.initializeBuffer = function() {
- return "''";
- };
-
- /**
- Override the default buffer for Ember Handlebars. By default, Handlebars
- creates an empty String at the beginning of each invocation and appends to
- it. Ember's Handlebars overrides this to append to a single shared buffer.
-
- @private
- @method appendToBuffer
- @param string {String}
- */
- EmberHandlebars.JavaScriptCompiler.prototype.appendToBuffer = function(string) {
- return "data.buffer.push("+string+");";
- };
-
- /**
- Rewrite simple mustaches from `{{foo}}` to `{{bind "foo"}}`. This means that
- all simple mustaches in Ember's Handlebars will also set up an observer to
- keep the DOM up to date when the underlying property changes.
-
- @private
- @method mustache
- @for Ember.Handlebars.Compiler
- @param mustache
- */
- EmberHandlebars.Compiler.prototype.mustache = function(mustache) {
- if (!(mustache.params.length || mustache.hash)) {
- var id = new Handlebars.AST.IdNode([{ part: '_triageMustache' }]);
-
- // Update the mustache node to include a hash value indicating whether the original node
- // was escaped. This will allow us to properly escape values when the underlying value
- // changes and we need to re-render the value.
- if (!mustache.escaped) {
- mustache.hash = mustache.hash || new Handlebars.AST.HashNode([]);
- mustache.hash.pairs.push(["unescaped", new Handlebars.AST.StringNode("true")]);
- }
- mustache = new Handlebars.AST.MustacheNode([id].concat([mustache.id]), mustache.hash, !mustache.escaped);
- }
-
- return Handlebars.Compiler.prototype.mustache.call(this, mustache);
- };
-
- /**
- Used for precompilation of Ember Handlebars templates. This will not be used
- during normal app execution.
-
- @method precompile
- @for Ember.Handlebars
- @static
- @param {String|Object} value The template to precompile or an Handlebars AST
- @param {Boolean} asObject optional parameter, defaulting to true, of whether or not the
- compiled template should be returned as an Object or a String
- */
- EmberHandlebars.precompile = function(value, asObject) {
- var ast = Handlebars.parse(value);
-
- var options = {
- knownHelpers: {
- action: true,
- unbound: true,
- 'bind-attr': true,
- template: true,
- view: true,
- _triageMustache: true
- },
- data: true,
- stringParams: true
- };
-
- asObject = asObject === undefined ? true : asObject;
-
- var environment = new EmberHandlebars.Compiler().compile(ast, options);
- return new EmberHandlebars.JavaScriptCompiler().compile(environment, options, undefined, asObject);
- };
-
- // We don't support this for Handlebars runtime-only
- if (Handlebars.compile) {
- /**
- The entry point for Ember Handlebars. This replaces the default
- `Handlebars.compile` and turns on template-local data and String
- parameters.
-
- @method compile
- @for Ember.Handlebars
- @static
- @param {String} string The template to compile
- @return {Function}
- */
- EmberHandlebars.compile = function(string) {
- var ast = Handlebars.parse(string);
- var options = { data: true, stringParams: true };
- var environment = new EmberHandlebars.Compiler().compile(ast, options);
- var templateSpec = new EmberHandlebars.JavaScriptCompiler().compile(environment, options, undefined, true);
-
- var template = EmberHandlebars.template(templateSpec);
- template.isMethod = false; //Make sure we don't wrap templates with ._super
-
- return template;
- };
- }
-
- __exports__["default"] = EmberHandlebars;
- });
-enifed("ember-handlebars",
- ["ember-handlebars-compiler","ember-metal/core","ember-runtime/system/lazy_load","ember-handlebars/loader","ember-handlebars/ext","ember-handlebars/string","ember-handlebars/helpers/binding","ember-handlebars/helpers/if_unless","ember-handlebars/helpers/with","ember-handlebars/helpers/bind_attr","ember-handlebars/helpers/collection","ember-handlebars/helpers/view","ember-handlebars/helpers/unbound","ember-handlebars/helpers/debug","ember-handlebars/helpers/each","ember-handlebars/helpers/template","ember-handlebars/helpers/partial","ember-handlebars/helpers/yield","ember-handlebars/helpers/loc","ember-handlebars/controls/checkbox","ember-handlebars/controls/select","ember-handlebars/controls/text_area","ember-handlebars/controls/text_field","ember-handlebars/controls/text_support","ember-handlebars/controls","ember-handlebars/component_lookup","ember-handlebars/views/handlebars_bound_view","ember-handlebars/views/metamorph_view","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __dependency13__, __dependency14__, __dependency15__, __dependency16__, __dependency17__, __dependency18__, __dependency19__, __dependency20__, __dependency21__, __dependency22__, __dependency23__, __dependency24__, __dependency25__, __dependency26__, __dependency27__, __dependency28__, __exports__) {
- "use strict";
- var EmberHandlebars = __dependency1__["default"];
- var Ember = __dependency2__["default"];
- // to add to globals
-
- var runLoadHooks = __dependency3__.runLoadHooks;
- var bootstrap = __dependency4__["default"];
-
- var makeBoundHelper = __dependency5__.makeBoundHelper;
- var registerBoundHelper = __dependency5__.registerBoundHelper;
- var helperMissingHelper = __dependency5__.helperMissingHelper;
- var blockHelperMissingHelper = __dependency5__.blockHelperMissingHelper;
- var handlebarsGet = __dependency5__.handlebarsGet;
-
-
- // side effect of extending StringUtils of htmlSafe
-
- var bind = __dependency7__.bind;
- var _triageMustacheHelper = __dependency7__._triageMustacheHelper;
- var resolveHelper = __dependency7__.resolveHelper;
- var bindHelper = __dependency7__.bindHelper;
-
- var ifHelper = __dependency8__.ifHelper;
- var boundIfHelper = __dependency8__.boundIfHelper;
- var unboundIfHelper = __dependency8__.unboundIfHelper;
- var unlessHelper = __dependency8__.unlessHelper;
-
- var withHelper = __dependency9__["default"];
-
- var bindAttrHelper = __dependency10__.bindAttrHelper;
- var bindAttrHelperDeprecated = __dependency10__.bindAttrHelperDeprecated;
- var bindClasses = __dependency10__.bindClasses;
-
- var collectionHelper = __dependency11__["default"];
- var ViewHelper = __dependency12__.ViewHelper;
- var viewHelper = __dependency12__.viewHelper;
- var unboundHelper = __dependency13__["default"];
- var logHelper = __dependency14__.logHelper;
- var debuggerHelper = __dependency14__.debuggerHelper;
- var EachView = __dependency15__.EachView;
- var eachHelper = __dependency15__.eachHelper;
- var templateHelper = __dependency16__["default"];
- var partialHelper = __dependency17__["default"];
- var yieldHelper = __dependency18__["default"];
- var locHelper = __dependency19__["default"];
-
-
- var Checkbox = __dependency20__["default"];
- var Select = __dependency21__.Select;
- var SelectOption = __dependency21__.SelectOption;
- var SelectOptgroup = __dependency21__.SelectOptgroup;
- var TextArea = __dependency22__["default"];
- var TextField = __dependency23__["default"];
- var TextSupport = __dependency24__["default"];
- var inputHelper = __dependency25__.inputHelper;
- var textareaHelper = __dependency25__.textareaHelper;
-
- var ComponentLookup = __dependency26__["default"];
- var _HandlebarsBoundView = __dependency27__._HandlebarsBoundView;
- var SimpleHandlebarsView = __dependency27__.SimpleHandlebarsView;
- var _MetamorphView = __dependency28__["default"];
- var _SimpleMetamorphView = __dependency28__._SimpleMetamorphView;
- var _Metamorph = __dependency28__._Metamorph;
-
-
- /**
- Ember Handlebars
-
- @module ember
- @submodule ember-handlebars
- @requires ember-views
- */
-
- // Ember.Handlebars.Globals
- EmberHandlebars.bootstrap = bootstrap;
- EmberHandlebars.makeBoundHelper = makeBoundHelper;
- EmberHandlebars.registerBoundHelper = registerBoundHelper;
- EmberHandlebars.resolveHelper = resolveHelper;
- EmberHandlebars.bind = bind;
- EmberHandlebars.bindClasses = bindClasses;
- EmberHandlebars.EachView = EachView;
- EmberHandlebars.ViewHelper = ViewHelper;
-
-
- // Ember Globals
- Ember.Handlebars = EmberHandlebars;
- EmberHandlebars.get = handlebarsGet;
- Ember.ComponentLookup = ComponentLookup;
- Ember._SimpleHandlebarsView = SimpleHandlebarsView;
- Ember._HandlebarsBoundView = _HandlebarsBoundView;
- Ember._SimpleMetamorphView = _SimpleMetamorphView;
- Ember._MetamorphView = _MetamorphView;
- Ember._Metamorph = _Metamorph;
- Ember.TextSupport = TextSupport;
- Ember.Checkbox = Checkbox;
- Ember.Select = Select;
- Ember.SelectOption = SelectOption;
- Ember.SelectOptgroup = SelectOptgroup;
- Ember.TextArea = TextArea;
- Ember.TextField = TextField;
- Ember.TextSupport = TextSupport;
-
- // register helpers
- EmberHandlebars.registerHelper('helperMissing', helperMissingHelper);
- EmberHandlebars.registerHelper('blockHelperMissing', blockHelperMissingHelper);
- EmberHandlebars.registerHelper('bind', bindHelper);
- EmberHandlebars.registerHelper('boundIf', boundIfHelper);
- EmberHandlebars.registerHelper('_triageMustache', _triageMustacheHelper);
- EmberHandlebars.registerHelper('unboundIf', unboundIfHelper);
- EmberHandlebars.registerHelper('with', withHelper);
- EmberHandlebars.registerHelper('if', ifHelper);
- EmberHandlebars.registerHelper('unless', unlessHelper);
- EmberHandlebars.registerHelper('bind-attr', bindAttrHelper);
- EmberHandlebars.registerHelper('bindAttr', bindAttrHelperDeprecated);
- EmberHandlebars.registerHelper('collection', collectionHelper);
- EmberHandlebars.registerHelper("log", logHelper);
- EmberHandlebars.registerHelper("debugger", debuggerHelper);
- EmberHandlebars.registerHelper("each", eachHelper);
- EmberHandlebars.registerHelper("loc", locHelper);
- EmberHandlebars.registerHelper("partial", partialHelper);
- EmberHandlebars.registerHelper("template", templateHelper);
- EmberHandlebars.registerHelper("yield", yieldHelper);
- EmberHandlebars.registerHelper("view", viewHelper);
- EmberHandlebars.registerHelper("unbound", unboundHelper);
- EmberHandlebars.registerHelper("input", inputHelper);
- EmberHandlebars.registerHelper("textarea", textareaHelper);
-
- // run load hooks
- runLoadHooks('Ember.Handlebars', EmberHandlebars);
-
- __exports__["default"] = EmberHandlebars;
- });
-enifed("ember-handlebars/component_lookup",
- ["ember-runtime/system/object","exports"],
- function(__dependency1__, __exports__) {
- "use strict";
- var EmberObject = __dependency1__["default"];
-
- __exports__["default"] = EmberObject.extend({
- lookupFactory: function(name, container) {
-
- container = container || this.container;
-
- var fullName = 'component:' + name;
- var templateFullName = 'template:components/' + name;
- var templateRegistered = container && container.has(templateFullName);
-
- if (templateRegistered) {
- container.injection(fullName, 'layout', templateFullName);
- }
-
- var Component = container.lookupFactory(fullName);
-
- // Only treat as a component if either the component
- // or a template has been registered.
- if (templateRegistered || Component) {
- if (!Component) {
- container.register(fullName, Ember.Component);
- Component = container.lookupFactory(fullName);
- }
- return Component;
- }
- }
- });
- });
-enifed("ember-handlebars/controls",
- ["ember-handlebars/controls/checkbox","ember-handlebars/controls/text_field","ember-handlebars/controls/text_area","ember-metal/core","ember-handlebars-compiler","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __exports__) {
- "use strict";
- var Checkbox = __dependency1__["default"];
- var TextField = __dependency2__["default"];
- var TextArea = __dependency3__["default"];
-
- var Ember = __dependency4__["default"];
- // Ember.assert
- // var emberAssert = Ember.assert;
-
- var EmberHandlebars = __dependency5__["default"];
-
- /**
- @module ember
- @submodule ember-handlebars-compiler
- */
-
- /**
-
- The `{{input}}` helper inserts an HTML `` tag into the template,
- with a `type` value of either `text` or `checkbox`. If no `type` is provided,
- `text` will be the default value applied. The attributes of `{{input}}`
- match those of the native HTML tag as closely as possible for these two types.
-
- ## Use as text field
- An `{{input}}` with no `type` or a `type` of `text` will render an HTML text input.
- The following HTML attributes can be set via the helper:
-
-
- `readonly` `required` `autofocus`
- `value` `placeholder` `disabled`
- `size` `tabindex` `maxlength`
- `name` `min` `max`
- `pattern` `accept` `autocomplete`
- `autosave` `formaction` `formenctype`
- `formmethod` `formnovalidate` `formtarget`
- `height` `inputmode` `multiple`
- `step` `width` `form`
- `selectionDirection` `spellcheck`
-
-
-
- When set to a quoted string, these values will be directly applied to the HTML
- element. When left unquoted, these values will be bound to a property on the
- template's current rendering context (most typically a controller instance).
-
- ## Unbound:
-
- ```handlebars
- {{input value="http://www.facebook.com"}}
- ```
-
-
- ```html
-
- ```
-
- ## Bound:
-
- ```javascript
- App.ApplicationController = Ember.Controller.extend({
- firstName: "Stanley",
- entryNotAllowed: true
- });
- ```
-
-
- ```handlebars
- {{input type="text" value=firstName disabled=entryNotAllowed size="50"}}
- ```
-
-
- ```html
-
- ```
-
- ## Actions
-
- The helper can send multiple actions based on user events.
-
- The action property defines the action which is sent when
- the user presses the return key.
-
-
- ```handlebars
- {{input action="submit"}}
- ```
-
-
- The helper allows some user events to send actions.
-
- * `enter`
- * `insert-newline`
- * `escape-press`
- * `focus-in`
- * `focus-out`
- * `key-press`
-
-
- For example, if you desire an action to be sent when the input is blurred,
- you only need to setup the action name to the event name property.
-
-
- ```handlebars
- {{input focus-in="alertMessage"}}
- ```
-
-
- See more about [Text Support Actions](/api/classes/Ember.TextField.html)
-
- ## Extension
-
- Internally, `{{input type="text"}}` creates an instance of `Ember.TextField`, passing
- arguments from the helper to `Ember.TextField`'s `create` method. You can extend the
- capabilities of text inputs in your applications by reopening this class. For example,
- if you are building a Bootstrap project where `data-*` attributes are used, you
- can add one to the `TextField`'s `attributeBindings` property:
-
-
- ```javascript
- Ember.TextField.reopen({
- attributeBindings: ['data-error']
- });
- ```
-
- Keep in mind when writing `Ember.TextField` subclasses that `Ember.TextField`
- itself extends `Ember.Component`, meaning that it does NOT inherit
- the `controller` of the parent view.
-
- See more about [Ember components](/api/classes/Ember.Component.html)
-
-
- ## Use as checkbox
-
- An `{{input}}` with a `type` of `checkbox` will render an HTML checkbox input.
- The following HTML attributes can be set via the helper:
-
- * `checked`
- * `disabled`
- * `tabindex`
- * `indeterminate`
- * `name`
- * `autofocus`
- * `form`
-
-
- When set to a quoted string, these values will be directly applied to the HTML
- element. When left unquoted, these values will be bound to a property on the
- template's current rendering context (most typically a controller instance).
-
- ## Unbound:
-
- ```handlebars
- {{input type="checkbox" name="isAdmin"}}
- ```
-
- ```html
-
- ```
-
- ## Bound:
-
- ```javascript
- App.ApplicationController = Ember.Controller.extend({
- isAdmin: true
- });
- ```
-
-
- ```handlebars
- {{input type="checkbox" checked=isAdmin }}
- ```
-
-
- ```html
-
- ```
-
- ## Extension
-
- Internally, `{{input type="checkbox"}}` creates an instance of `Ember.Checkbox`, passing
- arguments from the helper to `Ember.Checkbox`'s `create` method. You can extend the
- capablilties of checkbox inputs in your applications by reopening this class. For example,
- if you wanted to add a css class to all checkboxes in your application:
-
-
- ```javascript
- Ember.Checkbox.reopen({
- classNames: ['my-app-checkbox']
- });
- ```
-
-
- @method input
- @for Ember.Handlebars.helpers
- @param {Hash} options
- */
- function inputHelper(options) {
- Ember.assert('You can only pass attributes to the `input` helper, not arguments', arguments.length < 2);
-
- var view = options.data.view;
- var hash = options.hash;
- var types = options.hashTypes;
- var onEvent = hash.on;
- var inputType;
-
- if (types.type === 'ID') {
- inputType = view.getStream(hash.type).value();
- } else {
- inputType = hash.type;
- }
-
- if (inputType === 'checkbox') {
- delete hash.type;
- delete types.type;
-
- Ember.assert("{{input type='checkbox'}} does not support setting `value=someBooleanValue`;" +
- " you must use `checked=someBooleanValue` instead.", options.hashTypes.value !== 'ID');
-
- return EmberHandlebars.helpers.view.call(this, Checkbox, options);
- } else {
- delete hash.on;
-
- hash.onEvent = onEvent || 'enter';
- return EmberHandlebars.helpers.view.call(this, TextField, options);
- }
- }
-
- __exports__.inputHelper = inputHelper;/**
- `{{textarea}}` inserts a new instance of `
- {{/each}}
- ```
-
- ```javascript
- App.PostsController = Ember.ArrayController.extend({
- itemController: 'post'
- });
-
- App.PostController = Ember.ObjectController.extend({
- // the `title` property will be proxied to the underlying post.
- titleLength: function() {
- return this.get('title').length;
- }.property('title')
- });
- ```
-
- In some cases it is helpful to return a different `itemController` depending
- on the particular item. Subclasses can do this by overriding
- `lookupItemController`.
-
- For example:
-
- ```javascript
- App.MyArrayController = Ember.ArrayController.extend({
- lookupItemController: function( object ) {
- if (object.get('isSpecial')) {
- return "special"; // use App.SpecialController
- } else {
- return "regular"; // use App.RegularController
- }
- }
- });
- ```
-
- The itemController instances will have a `parentController` property set to
- the `ArrayController` instance.
-
- @class ArrayController
- @namespace Ember
- @extends Ember.ArrayProxy
- @uses Ember.SortableMixin
- @uses Ember.ControllerMixin
- */
-
- __exports__["default"] = ArrayProxy.extend(ControllerMixin, SortableMixin, {
-
- /**
- The controller used to wrap items, if any. If the value is a string, it will
- be used to lookup the container for the controller. As an alternative, you
- can also provide a controller class as the value.
-
- For example:
-
- ```javascript
- App.MyArrayController = Ember.ArrayController.extend({
- itemController: Ember.ObjectController.extend({
- //Item Controller Implementation
- })
- });
- ```
-
- @property itemController
- @type String | Ember.Controller
- @default null
- */
- itemController: null,
-
- /**
- Return the name of the controller to wrap items, or `null` if items should
- be returned directly. The default implementation simply returns the
- `itemController` property, but subclasses can override this method to return
- different controllers for different objects.
-
- For example:
-
- ```javascript
- App.MyArrayController = Ember.ArrayController.extend({
- lookupItemController: function( object ) {
- if (object.get('isSpecial')) {
- return "special"; // use App.SpecialController
- } else {
- return "regular"; // use App.RegularController
- }
- }
- });
- ```
-
- @method lookupItemController
- @param {Object} object
- @return {String}
- */
- lookupItemController: function(object) {
- return get(this, 'itemController');
- },
-
- objectAtContent: function(idx) {
- var length = get(this, 'length');
- var arrangedContent = get(this, 'arrangedContent');
- var object = arrangedContent && arrangedContent.objectAt(idx);
- var controllerClass;
-
- if (idx >= 0 && idx < length) {
- controllerClass = this.lookupItemController(object);
-
- if (controllerClass) {
- return this.controllerAt(idx, object, controllerClass);
- }
- }
-
- // When `controllerClass` is falsy, we have not opted in to using item
- // controllers, so return the object directly.
-
- // When the index is out of range, we want to return the "out of range"
- // value, whatever that might be. Rather than make assumptions
- // (e.g. guessing `null` or `undefined`) we defer this to `arrangedContent`.
- return object;
- },
-
- arrangedContentDidChange: function() {
- this._super();
- this._resetSubControllers();
- },
-
- arrayContentDidChange: function(idx, removedCnt, addedCnt) {
- var subControllers = this._subControllers;
-
- if (subControllers.length) {
- var subControllersToRemove = subControllers.slice(idx, idx + removedCnt);
-
- forEach(subControllersToRemove, function(subController) {
- if (subController) {
- subController.destroy();
- }
- });
-
- replace(subControllers, idx, removedCnt, new Array(addedCnt));
- }
-
- // The shadow array of subcontrollers must be updated before we trigger
- // observers, otherwise observers will get the wrong subcontainer when
- // calling `objectAt`
- this._super(idx, removedCnt, addedCnt);
- },
-
- init: function() {
- this._super();
- this._subControllers = [];
- },
-
- model: computed(function () {
- return Ember.A();
- }),
-
- /**
- * Flag to mark as being "virtual". Used to keep this instance
- * from participating in the parentController hierarchy.
- *
- * @private
- * @property _isVirtual
- * @type Boolean
- */
- _isVirtual: false,
-
- controllerAt: function(idx, object, controllerClass) {
- var container = get(this, 'container');
- var subControllers = this._subControllers;
- var fullName, subController, subControllerFactory, parentController, options;
-
- if (subControllers.length > idx) {
- subController = subControllers[idx];
-
- if (subController) {
- return subController;
- }
- }
-
- if (this._isVirtual) {
- parentController = get(this, 'parentController');
- } else {
- parentController = this;
- }
-
-
- fullName = 'controller:' + controllerClass;
-
- if (!container.has(fullName)) {
- throw new EmberError('Could not resolve itemController: "' + controllerClass + '"');
- }
-
- subController = container.lookupFactory(fullName).create({
- target: parentController,
- parentController: parentController,
- model: object
- });
-
-
- subControllers[idx] = subController;
-
- return subController;
- },
-
- _subControllers: null,
-
- _resetSubControllers: function() {
- var controller;
- var subControllers = this._subControllers;
-
- if (subControllers.length) {
- for (var i = 0, length = subControllers.length; length > i; i++) {
- controller = subControllers[i];
-
- if (controller) {
- controller.destroy();
- }
- }
-
- subControllers.length = 0;
- }
- },
-
- willDestroy: function() {
- this._resetSubControllers();
- this._super();
- }
- });
- });
-enifed("ember-runtime/controllers/controller",
- ["ember-metal/core","ember-runtime/system/object","ember-runtime/mixins/controller","ember-runtime/inject","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.assert
- var EmberObject = __dependency2__["default"];
- var Mixin = __dependency3__["default"];
- var createInjectionHelper = __dependency4__.createInjectionHelper;
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- @class Controller
- @namespace Ember
- @extends Ember.Object
- @uses Ember.ControllerMixin
- */
- var Controller = EmberObject.extend(Mixin);
-
- function controllerInjectionHelper(factory) {
- Ember.assert("Defining an injected controller property on a " +
- "non-controller is not allowed.", Controller.detect(factory));
- }
-
-
- __exports__["default"] = Controller;
- });
-enifed("ember-runtime/controllers/object_controller",
- ["ember-runtime/mixins/controller","ember-runtime/system/object_proxy","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var ControllerMixin = __dependency1__["default"];
- var ObjectProxy = __dependency2__["default"];
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- `Ember.ObjectController` is part of Ember's Controller layer. It is intended
- to wrap a single object, proxying unhandled attempts to `get` and `set` to the underlying
- model object, and to forward unhandled action attempts to its `target`.
-
- `Ember.ObjectController` derives this functionality from its superclass
- `Ember.ObjectProxy` and the `Ember.ControllerMixin` mixin.
-
- @class ObjectController
- @namespace Ember
- @extends Ember.ObjectProxy
- @uses Ember.ControllerMixin
- **/
- __exports__["default"] = ObjectProxy.extend(ControllerMixin);
- });
-enifed("ember-runtime/copy",
- ["ember-metal/enumerable_utils","ember-metal/utils","ember-runtime/system/object","ember-runtime/mixins/copyable","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- var indexOf = __dependency1__.indexOf;
- var typeOf = __dependency2__.typeOf;
- var EmberObject = __dependency3__["default"];
- var Copyable = __dependency4__["default"];
-
- function _copy(obj, deep, seen, copies) {
- var ret, loc, key;
-
- // primitive data types are immutable, just return them.
- if (typeof obj !== 'object' || obj === null) {
- return obj;
- }
-
- // avoid cyclical loops
- if (deep && (loc = indexOf(seen, obj)) >= 0) {
- return copies[loc];
- }
-
- Ember.assert('Cannot clone an Ember.Object that does not implement Ember.Copyable',
- !(obj instanceof EmberObject) || (Copyable && Copyable.detect(obj)));
-
- // IMPORTANT: this specific test will detect a native array only. Any other
- // object will need to implement Copyable.
- if (typeOf(obj) === 'array') {
- ret = obj.slice();
-
- if (deep) {
- loc = ret.length;
-
- while (--loc >= 0) {
- ret[loc] = _copy(ret[loc], deep, seen, copies);
- }
- }
- } else if (Copyable && Copyable.detect(obj)) {
- ret = obj.copy(deep, seen, copies);
- } else if (obj instanceof Date) {
- ret = new Date(obj.getTime());
- } else {
- ret = {};
-
- for (key in obj) {
- // support Null prototype
- if (!Object.prototype.hasOwnProperty.call(obj, key)) {
- continue;
- }
-
- // Prevents browsers that don't respect non-enumerability from
- // copying internal Ember properties
- if (key.substring(0, 2) === '__') {
- continue;
- }
-
- ret[key] = deep ? _copy(obj[key], deep, seen, copies) : obj[key];
- }
- }
-
- if (deep) {
- seen.push(obj);
- copies.push(ret);
- }
-
- return ret;
- }
-
- /**
- Creates a clone of the passed object. This function can take just about
- any type of object and create a clone of it, including primitive values
- (which are not actually cloned because they are immutable).
-
- If the passed object implements the `copy()` method, then this function
- will simply call that method and return the result. Please see
- `Ember.Copyable` for further details.
-
- @method copy
- @for Ember
- @param {Object} obj The object to clone
- @param {Boolean} deep If true, a deep copy of the object is made
- @return {Object} The cloned object
- */
- __exports__["default"] = function copy(obj, deep) {
- // fast paths
- if ('object' !== typeof obj || obj === null) {
- return obj; // can't copy primitives
- }
-
- if (Copyable && Copyable.detect(obj)) {
- return obj.copy(deep);
- }
-
- return _copy(obj, deep, deep ? [] : null, deep ? [] : null);
- }
- });
-enifed("ember-runtime/core",
- ["exports"],
- function(__exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- Compares two objects, returning true if they are logically equal. This is
- a deeper comparison than a simple triple equal. For sets it will compare the
- internal objects. For any other object that implements `isEqual()` it will
- respect that method.
-
- ```javascript
- Ember.isEqual('hello', 'hello'); // true
- Ember.isEqual(1, 2); // false
- Ember.isEqual([4, 2], [4, 2]); // false
- ```
-
- @method isEqual
- @for Ember
- @param {Object} a first object to compare
- @param {Object} b second object to compare
- @return {Boolean}
- */
- var isEqual = function isEqual(a, b) {
- if (a && typeof a.isEqual === 'function') {
- return a.isEqual(b);
- }
-
- if (a instanceof Date && b instanceof Date) {
- return a.getTime() === b.getTime();
- }
-
- return a === b;
- };
- __exports__.isEqual = isEqual;
- });
-enifed("ember-runtime/ext/function",
- ["ember-metal/core","ember-metal/expand_properties","ember-metal/computed","ember-metal/mixin"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.EXTEND_PROTOTYPES, Ember.assert
- var expandProperties = __dependency2__["default"];
- var computed = __dependency3__.computed;
- var observer = __dependency4__.observer;
-
- var a_slice = Array.prototype.slice;
- var FunctionPrototype = Function.prototype;
-
- if (Ember.EXTEND_PROTOTYPES === true || Ember.EXTEND_PROTOTYPES.Function) {
-
- /**
- The `property` extension of Javascript's Function prototype is available
- when `Ember.EXTEND_PROTOTYPES` or `Ember.EXTEND_PROTOTYPES.Function` is
- `true`, which is the default.
-
- Computed properties allow you to treat a function like a property:
-
- ```javascript
- MyApp.President = Ember.Object.extend({
- firstName: '',
- lastName: '',
-
- fullName: function() {
- return this.get('firstName') + ' ' + this.get('lastName');
- }.property() // Call this flag to mark the function as a property
- });
-
- var president = MyApp.President.create({
- firstName: 'Barack',
- lastName: 'Obama'
- });
-
- president.get('fullName'); // 'Barack Obama'
- ```
-
- Treating a function like a property is useful because they can work with
- bindings, just like any other property.
-
- Many computed properties have dependencies on other properties. For
- example, in the above example, the `fullName` property depends on
- `firstName` and `lastName` to determine its value. You can tell Ember
- about these dependencies like this:
-
- ```javascript
- MyApp.President = Ember.Object.extend({
- firstName: '',
- lastName: '',
-
- fullName: function() {
- return this.get('firstName') + ' ' + this.get('lastName');
-
- // Tell Ember.js that this computed property depends on firstName
- // and lastName
- }.property('firstName', 'lastName')
- });
- ```
-
- Make sure you list these dependencies so Ember knows when to update
- bindings that connect to a computed property. Changing a dependency
- will not immediately trigger an update of the computed property, but
- will instead clear the cache so that it is updated when the next `get`
- is called on the property.
-
- See [Ember.ComputedProperty](/api/classes/Ember.ComputedProperty.html), [Ember.computed](/api/#method_computed).
-
- @method property
- @for Function
- */
- FunctionPrototype.property = function () {
- var ret = computed(this);
- // ComputedProperty.prototype.property expands properties; no need for us to
- // do so here.
- return ret.property.apply(ret, arguments);
- };
-
- /**
- The `observes` extension of Javascript's Function prototype is available
- when `Ember.EXTEND_PROTOTYPES` or `Ember.EXTEND_PROTOTYPES.Function` is
- true, which is the default.
-
- You can observe property changes simply by adding the `observes`
- call to the end of your method declarations in classes that you write.
- For example:
-
- ```javascript
- Ember.Object.extend({
- valueObserver: function() {
- // Executes whenever the "value" property changes
- }.observes('value')
- });
- ```
-
- In the future this method may become asynchronous. If you want to ensure
- synchronous behavior, use `observesImmediately`.
-
- See `Ember.observer`.
-
- @method observes
- @for Function
- */
- FunctionPrototype.observes = function() {
- var length = arguments.length;
- var args = new Array(length);
- for (var x = 0; x < length; x++) {
- args[x] = arguments[x];
- }
- return observer.apply(this, args.concat(this));
- };
-
- /**
- The `observesImmediately` extension of Javascript's Function prototype is
- available when `Ember.EXTEND_PROTOTYPES` or
- `Ember.EXTEND_PROTOTYPES.Function` is true, which is the default.
-
- You can observe property changes simply by adding the `observesImmediately`
- call to the end of your method declarations in classes that you write.
- For example:
-
- ```javascript
- Ember.Object.extend({
- valueObserver: function() {
- // Executes immediately after the "value" property changes
- }.observesImmediately('value')
- });
- ```
-
- In the future, `observes` may become asynchronous. In this event,
- `observesImmediately` will maintain the synchronous behavior.
-
- See `Ember.immediateObserver`.
-
- @method observesImmediately
- @for Function
- */
- FunctionPrototype.observesImmediately = function () {
- for (var i = 0, l = arguments.length; i < l; i++) {
- var arg = arguments[i];
- Ember.assert('Immediate observers must observe internal properties only, ' +
- 'not properties on other objects.', arg.indexOf('.') === -1);
- }
-
- // observes handles property expansion
- return this.observes.apply(this, arguments);
- };
-
- /**
- The `observesBefore` extension of Javascript's Function prototype is
- available when `Ember.EXTEND_PROTOTYPES` or
- `Ember.EXTEND_PROTOTYPES.Function` is true, which is the default.
-
- You can get notified when a property change is about to happen by
- by adding the `observesBefore` call to the end of your method
- declarations in classes that you write. For example:
-
- ```javascript
- Ember.Object.extend({
- valueObserver: function() {
- // Executes whenever the "value" property is about to change
- }.observesBefore('value')
- });
- ```
-
- See `Ember.beforeObserver`.
-
- @method observesBefore
- @for Function
- */
- FunctionPrototype.observesBefore = function () {
- var watched = [];
- var addWatchedProperty = function (obs) {
- watched.push(obs);
- };
-
- for (var i = 0, l = arguments.length; i < l; ++i) {
- expandProperties(arguments[i], addWatchedProperty);
- }
-
- this.__ember_observesBefore__ = watched;
-
- return this;
- };
-
- /**
- The `on` extension of Javascript's Function prototype is available
- when `Ember.EXTEND_PROTOTYPES` or `Ember.EXTEND_PROTOTYPES.Function` is
- true, which is the default.
-
- You can listen for events simply by adding the `on` call to the end of
- your method declarations in classes or mixins that you write. For example:
-
- ```javascript
- Ember.Mixin.create({
- doSomethingWithElement: function() {
- // Executes whenever the "didInsertElement" event fires
- }.on('didInsertElement')
- });
- ```
-
- See `Ember.on`.
-
- @method on
- @for Function
- */
- FunctionPrototype.on = function () {
- var events = a_slice.call(arguments);
- this.__ember_listens__ = events;
-
- return this;
- };
- }
- });
-enifed("ember-runtime/ext/rsvp",
- ["ember-metal/core","ember-metal/logger","ember-metal/run_loop","rsvp","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- /* globals RSVP:true */
-
- var Ember = __dependency1__["default"];
- var Logger = __dependency2__["default"];
- var run = __dependency3__["default"];
-
- // this is technically incorrect (per @wycats)
- // it should be `import * as RSVP from 'rsvp';` but
- // Esprima does not support this syntax yet (and neither does
- // es6-module-transpiler 0.4.0 - 0.6.2).
- var RSVP = __dependency4__;
-
- var testModuleName = 'ember-testing/test';
- var Test;
-
- var asyncStart = function() {
- if (Ember.Test && Ember.Test.adapter) {
- Ember.Test.adapter.asyncStart();
- }
- };
-
- var asyncEnd = function() {
- if (Ember.Test && Ember.Test.adapter) {
- Ember.Test.adapter.asyncEnd();
- }
- };
-
- RSVP.configure('async', function(callback, promise) {
- var async = !run.currentRunLoop;
-
- if (Ember.testing && async) { asyncStart(); }
-
- run.backburner.schedule('actions', function(){
- if (Ember.testing && async) { asyncEnd(); }
- callback(promise);
- });
- });
-
- RSVP.Promise.prototype.fail = function(callback, label){
- Ember.deprecate('RSVP.Promise.fail has been renamed as RSVP.Promise.catch');
- return this['catch'](callback, label);
- };
-
- RSVP.onerrorDefault = function (error) {
- if (error && error.name !== 'TransitionAborted') {
- if (Ember.testing) {
- // ES6TODO: remove when possible
- if (!Test && Ember.__loader.registry[testModuleName]) {
- Test = requireModule(testModuleName)['default'];
- }
-
- if (Test && Test.adapter) {
- Test.adapter.exception(error);
- Logger.error(error.stack);
- } else {
- throw error;
- }
- } else if (Ember.onerror) {
- Ember.onerror(error);
- } else {
- Logger.error(error.stack);
- Ember.assert(error, false);
- }
- }
- };
-
- RSVP.on('error', RSVP.onerrorDefault);
-
- __exports__["default"] = RSVP;
- });
-enifed("ember-runtime/ext/string",
- ["ember-metal/core","ember-runtime/system/string"],
- function(__dependency1__, __dependency2__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.EXTEND_PROTOTYPES, Ember.assert, Ember.FEATURES
- var fmt = __dependency2__.fmt;
- var w = __dependency2__.w;
- var loc = __dependency2__.loc;
- var camelize = __dependency2__.camelize;
- var decamelize = __dependency2__.decamelize;
- var dasherize = __dependency2__.dasherize;
- var underscore = __dependency2__.underscore;
- var capitalize = __dependency2__.capitalize;
- var classify = __dependency2__.classify;
-
- var StringPrototype = String.prototype;
-
- if (Ember.EXTEND_PROTOTYPES === true || Ember.EXTEND_PROTOTYPES.String) {
-
- /**
- See [Ember.String.fmt](/api/classes/Ember.String.html#method_fmt).
-
- @method fmt
- @for String
- */
- StringPrototype.fmt = function () {
- return fmt(this, arguments);
- };
-
- /**
- See [Ember.String.w](/api/classes/Ember.String.html#method_w).
-
- @method w
- @for String
- */
- StringPrototype.w = function () {
- return w(this);
- };
-
- /**
- See [Ember.String.loc](/api/classes/Ember.String.html#method_loc).
-
- @method loc
- @for String
- */
- StringPrototype.loc = function () {
- return loc(this, arguments);
- };
-
- /**
- See [Ember.String.camelize](/api/classes/Ember.String.html#method_camelize).
-
- @method camelize
- @for String
- */
- StringPrototype.camelize = function () {
- return camelize(this);
- };
-
- /**
- See [Ember.String.decamelize](/api/classes/Ember.String.html#method_decamelize).
-
- @method decamelize
- @for String
- */
- StringPrototype.decamelize = function () {
- return decamelize(this);
- };
-
- /**
- See [Ember.String.dasherize](/api/classes/Ember.String.html#method_dasherize).
-
- @method dasherize
- @for String
- */
- StringPrototype.dasherize = function () {
- return dasherize(this);
- };
-
- /**
- See [Ember.String.underscore](/api/classes/Ember.String.html#method_underscore).
-
- @method underscore
- @for String
- */
- StringPrototype.underscore = function () {
- return underscore(this);
- };
-
- /**
- See [Ember.String.classify](/api/classes/Ember.String.html#method_classify).
-
- @method classify
- @for String
- */
- StringPrototype.classify = function () {
- return classify(this);
- };
-
- /**
- See [Ember.String.capitalize](/api/classes/Ember.String.html#method_capitalize).
-
- @method capitalize
- @for String
- */
- StringPrototype.capitalize = function () {
- return capitalize(this);
- };
- }
- });
-enifed("ember-runtime/inject",
- ["ember-metal/core","ember-metal/enumerable_utils","ember-metal/injected_property","ember-metal/keys","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.assert
- var indexOf = __dependency2__.indexOf;
- var InjectedProperty = __dependency3__["default"];
- var keys = __dependency4__["default"];
-
- /**
- Namespace for injection helper methods.
-
- @class inject
- @namespace Ember
- */
- function inject() {
- Ember.assert("Injected properties must be created through helpers, see `" +
- keys(inject).join("`, `") + "`");
- }
-
- // Dictionary of injection validations by type, added to by `createInjectionHelper`
- var typeValidators = {};
-
- /**
- This method allows other Ember modules to register injection helpers for a
- given container type. Helpers are exported to the `inject` namespace as the
- container type itself.
-
- @private
- @method createInjectionHelper
- @namespace Ember
- @param {String} type The container type the helper will inject
- @param {Function} validator A validation callback that is executed at mixin-time
- */
- function createInjectionHelper(type, validator) {
- typeValidators[type] = validator;
-
- inject[type] = function(name) {
- return new InjectedProperty(type, name);
- };
- }
-
- __exports__.createInjectionHelper = createInjectionHelper;/**
- Validation function intended to be invoked at when extending a factory with
- injected properties. Runs per-type validation functions once for each injected
- type encountered.
-
- Note that this currently modifies the mixin themselves, which is technically
- dubious but is practically of little consequence. This may change in the
- future.
-
- @private
- @method validatePropertyInjections
- @namespace Ember
- @param {Object} factory The factory object being extended
- @param {Object} props A hash of properties to be added to the factory
- */
- function validatePropertyInjections(factory, props) {
- var types = [];
- var key, desc, validator, i, l;
-
- for (key in props) {
- desc = props[key];
- if (desc instanceof InjectedProperty && indexOf(types, desc.type) === -1) {
- types.push(desc.type);
- }
- }
-
- if (types.length) {
- for (i = 0, l = types.length; i < l; i++) {
- validator = typeValidators[types[i]];
-
- if (typeof validator === 'function') {
- validator(factory);
- }
- }
- }
-
- return true;
- }
-
- __exports__.validatePropertyInjections = validatePropertyInjections;__exports__["default"] = inject;
- });
-enifed("ember-runtime/mixins/-proxy",
- ["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/observer","ember-metal/property_events","ember-metal/computed","ember-metal/properties","ember-metal/mixin","ember-runtime/system/string","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.assert
- var get = __dependency2__.get;
- var set = __dependency3__.set;
- var meta = __dependency4__.meta;
- var addObserver = __dependency5__.addObserver;
- var removeObserver = __dependency5__.removeObserver;
- var addBeforeObserver = __dependency5__.addBeforeObserver;
- var removeBeforeObserver = __dependency5__.removeBeforeObserver;
- var propertyWillChange = __dependency6__.propertyWillChange;
- var propertyDidChange = __dependency6__.propertyDidChange;
- var computed = __dependency7__.computed;
- var defineProperty = __dependency8__.defineProperty;
- var Mixin = __dependency9__.Mixin;
- var observer = __dependency9__.observer;
- var fmt = __dependency10__.fmt;
-
- function contentPropertyWillChange(content, contentKey) {
- var key = contentKey.slice(8); // remove "content."
- if (key in this) { return; } // if shadowed in proxy
- propertyWillChange(this, key);
- }
-
- function contentPropertyDidChange(content, contentKey) {
- var key = contentKey.slice(8); // remove "content."
- if (key in this) { return; } // if shadowed in proxy
- propertyDidChange(this, key);
- }
-
- /**
- `Ember.ProxyMixin` forwards all properties not defined by the proxy itself
- to a proxied `content` object. See Ember.ObjectProxy for more details.
-
- @class ProxyMixin
- @namespace Ember
- */
- __exports__["default"] = Mixin.create({
- /**
- The object whose properties will be forwarded.
-
- @property content
- @type Ember.Object
- @default null
- */
- content: null,
- _contentDidChange: observer('content', function() {
- Ember.assert("Can't set Proxy's content to itself", get(this, 'content') !== this);
- }),
-
- isTruthy: computed.bool('content'),
-
- _debugContainerKey: null,
-
- willWatchProperty: function (key) {
- var contentKey = 'content.' + key;
- addBeforeObserver(this, contentKey, null, contentPropertyWillChange);
- addObserver(this, contentKey, null, contentPropertyDidChange);
- },
-
- didUnwatchProperty: function (key) {
- var contentKey = 'content.' + key;
- removeBeforeObserver(this, contentKey, null, contentPropertyWillChange);
- removeObserver(this, contentKey, null, contentPropertyDidChange);
- },
-
- unknownProperty: function (key) {
- var content = get(this, 'content');
- if (content) {
- return get(content, key);
- }
- },
-
- setUnknownProperty: function (key, value) {
- var m = meta(this);
- if (m.proto === this) {
- // if marked as prototype then just defineProperty
- // rather than delegate
- defineProperty(this, key, null, value);
- return value;
- }
-
- var content = get(this, 'content');
- Ember.assert(fmt("Cannot delegate set('%@', %@) to the 'content' property of" +
- " object proxy %@: its 'content' is undefined.", [key, value, this]), content);
- return set(content, key, value);
- }
-
- });
- });
-enifed("ember-runtime/mixins/action_handler",
- ["ember-metal/merge","ember-metal/mixin","ember-metal/property_get","ember-metal/utils","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
- var merge = __dependency1__["default"];
- var Mixin = __dependency2__.Mixin;
- var get = __dependency3__.get;
- var typeOf = __dependency4__.typeOf;
-
- /**
- The `Ember.ActionHandler` mixin implements support for moving an `actions`
- property to an `_actions` property at extend time, and adding `_actions`
- to the object's mergedProperties list.
-
- `Ember.ActionHandler` is available on some familiar classes including
- `Ember.Route`, `Ember.View`, `Ember.Component`, and controllers such as
- `Ember.Controller` and `Ember.ObjectController`.
- (Internally the mixin is used by `Ember.CoreView`, `Ember.ControllerMixin`,
- and `Ember.Route` and available to the above classes through
- inheritance.)
-
- @class ActionHandler
- @namespace Ember
- */
- var ActionHandler = Mixin.create({
- mergedProperties: ['_actions'],
-
- /**
- The collection of functions, keyed by name, available on this
- `ActionHandler` as action targets.
-
- These functions will be invoked when a matching `{{action}}` is triggered
- from within a template and the application's current route is this route.
-
- Actions can also be invoked from other parts of your application
- via `ActionHandler#send`.
-
- The `actions` hash will inherit action handlers from
- the `actions` hash defined on extended parent classes
- or mixins rather than just replace the entire hash, e.g.:
-
- ```js
- App.CanDisplayBanner = Ember.Mixin.create({
- actions: {
- displayBanner: function(msg) {
- // ...
- }
- }
- });
-
- App.WelcomeRoute = Ember.Route.extend(App.CanDisplayBanner, {
- actions: {
- playMusic: function() {
- // ...
- }
- }
- });
-
- // `WelcomeRoute`, when active, will be able to respond
- // to both actions, since the actions hash is merged rather
- // then replaced when extending mixins / parent classes.
- this.send('displayBanner');
- this.send('playMusic');
- ```
-
- Within a Controller, Route, View or Component's action handler,
- the value of the `this` context is the Controller, Route, View or
- Component object:
-
- ```js
- App.SongRoute = Ember.Route.extend({
- actions: {
- myAction: function() {
- this.controllerFor("song");
- this.transitionTo("other.route");
- ...
- }
- }
- });
- ```
-
- It is also possible to call `this._super()` from within an
- action handler if it overrides a handler defined on a parent
- class or mixin:
-
- Take for example the following routes:
-
- ```js
- App.DebugRoute = Ember.Mixin.create({
- actions: {
- debugRouteInformation: function() {
- console.debug("trololo");
- }
- }
- });
-
- App.AnnoyingDebugRoute = Ember.Route.extend(App.DebugRoute, {
- actions: {
- debugRouteInformation: function() {
- // also call the debugRouteInformation of mixed in App.DebugRoute
- this._super();
-
- // show additional annoyance
- window.alert(...);
- }
- }
- });
- ```
-
- ## Bubbling
-
- By default, an action will stop bubbling once a handler defined
- on the `actions` hash handles it. To continue bubbling the action,
- you must return `true` from the handler:
-
- ```js
- App.Router.map(function() {
- this.resource("album", function() {
- this.route("song");
- });
- });
-
- App.AlbumRoute = Ember.Route.extend({
- actions: {
- startPlaying: function() {
- }
- }
- });
-
- App.AlbumSongRoute = Ember.Route.extend({
- actions: {
- startPlaying: function() {
- // ...
-
- if (actionShouldAlsoBeTriggeredOnParentRoute) {
- return true;
- }
- }
- }
- });
- ```
-
- @property actions
- @type Hash
- @default null
- */
-
- /**
- Moves `actions` to `_actions` at extend time. Note that this currently
- modifies the mixin themselves, which is technically dubious but
- is practically of little consequence. This may change in the future.
-
- @private
- @method willMergeMixin
- */
- willMergeMixin: function(props) {
-
- var hashName;
-
- if (!props._actions) {
- Ember.assert("'actions' should not be a function", typeof(props.actions) !== 'function');
-
- if (typeOf(props.actions) === 'object') {
- hashName = 'actions';
- } else if (typeOf(props.events) === 'object') {
- Ember.deprecate('Action handlers contained in an `events` object are deprecated in favor' +
- ' of putting them in an `actions` object', false);
- hashName = 'events';
- }
-
- if (hashName) {
- props._actions = merge(props._actions || {}, props[hashName]);
- }
-
- delete props[hashName];
- }
- },
-
- /**
- Triggers a named action on the `ActionHandler`. Any parameters
- supplied after the `actionName` string will be passed as arguments
- to the action target function.
-
- If the `ActionHandler` has its `target` property set, actions may
- bubble to the `target`. Bubbling happens when an `actionName` can
- not be found in the `ActionHandler`'s `actions` hash or if the
- action target function returns `true`.
-
- Example
-
- ```js
- App.WelcomeRoute = Ember.Route.extend({
- actions: {
- playTheme: function() {
- this.send('playMusic', 'theme.mp3');
- },
- playMusic: function(track) {
- // ...
- }
- }
- });
- ```
-
- @method send
- @param {String} actionName The action to trigger
- @param {*} context a context to send with the action
- */
- send: function(actionName) {
- var args = [].slice.call(arguments, 1);
- var target;
-
- if (this._actions && this._actions[actionName]) {
- if (this._actions[actionName].apply(this, args) === true) {
- // handler returned true, so this action will bubble
- } else {
- return;
- }
- }
-
- if (target = get(this, 'target')) {
- Ember.assert("The `target` for " + this + " (" + target +
- ") does not have a `send` method", typeof target.send === 'function');
- target.send.apply(target, arguments);
- }
- }
- });
-
- __exports__["default"] = ActionHandler;
- });
-enifed("ember-runtime/mixins/array",
- ["ember-metal/core","ember-metal/property_get","ember-metal/computed","ember-metal/is_none","ember-runtime/mixins/enumerable","ember-metal/enumerable_utils","ember-metal/mixin","ember-metal/property_events","ember-metal/events","ember-metal/watching","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- // ..........................................................
- // HELPERS
- //
- var Ember = __dependency1__["default"];
- // ES6TODO: Ember.A
-
- var get = __dependency2__.get;
- var computed = __dependency3__.computed;
- var cacheFor = __dependency3__.cacheFor;
- var isNone = __dependency4__["default"];
- var Enumerable = __dependency5__["default"];
- var map = __dependency6__.map;
- var Mixin = __dependency7__.Mixin;
- var required = __dependency7__.required;
- var propertyWillChange = __dependency8__.propertyWillChange;
- var propertyDidChange = __dependency8__.propertyDidChange;
- var addListener = __dependency9__.addListener;
- var removeListener = __dependency9__.removeListener;
- var sendEvent = __dependency9__.sendEvent;
- var hasListeners = __dependency9__.hasListeners;
- var isWatching = __dependency10__.isWatching;
-
- function arrayObserversHelper(obj, target, opts, operation, notify) {
- var willChange = (opts && opts.willChange) || 'arrayWillChange';
- var didChange = (opts && opts.didChange) || 'arrayDidChange';
- var hasObservers = get(obj, 'hasArrayObservers');
-
- if (hasObservers === notify) {
- propertyWillChange(obj, 'hasArrayObservers');
- }
-
- operation(obj, '@array:before', target, willChange);
- operation(obj, '@array:change', target, didChange);
-
- if (hasObservers === notify) {
- propertyDidChange(obj, 'hasArrayObservers');
- }
-
- return obj;
- }
-
- // ..........................................................
- // ARRAY
- //
- /**
- This mixin implements Observer-friendly Array-like behavior. It is not a
- concrete implementation, but it can be used up by other classes that want
- to appear like arrays.
-
- For example, ArrayProxy and ArrayController are both concrete classes that can
- be instantiated to implement array-like behavior. Both of these classes use
- the Array Mixin by way of the MutableArray mixin, which allows observable
- changes to be made to the underlying array.
-
- Unlike `Ember.Enumerable,` this mixin defines methods specifically for
- collections that provide index-ordered access to their contents. When you
- are designing code that needs to accept any kind of Array-like object, you
- should use these methods instead of Array primitives because these will
- properly notify observers of changes to the array.
-
- Although these methods are efficient, they do add a layer of indirection to
- your application so it is a good idea to use them only when you need the
- flexibility of using both true JavaScript arrays and "virtual" arrays such
- as controllers and collections.
-
- You can use the methods defined in this module to access and modify array
- contents in a KVO-friendly way. You can also be notified whenever the
- membership of an array changes by using `.observes('myArray.[]')`.
-
- To support `Ember.Array` in your own class, you must override two
- primitives to use it: `replace()` and `objectAt()`.
-
- Note that the Ember.Array mixin also incorporates the `Ember.Enumerable`
- mixin. All `Ember.Array`-like objects are also enumerable.
-
- @class Array
- @namespace Ember
- @uses Ember.Enumerable
- @since Ember 0.9.0
- */
- __exports__["default"] = Mixin.create(Enumerable, {
-
- /**
- Your array must support the `length` property. Your replace methods should
- set this property whenever it changes.
-
- @property {Number} length
- */
- length: required(),
-
- /**
- Returns the object at the given `index`. If the given `index` is negative
- or is greater or equal than the array length, returns `undefined`.
-
- This is one of the primitives you must implement to support `Ember.Array`.
- If your object supports retrieving the value of an array item using `get()`
- (i.e. `myArray.get(0)`), then you do not need to implement this method
- yourself.
-
- ```javascript
- var arr = ['a', 'b', 'c', 'd'];
-
- arr.objectAt(0); // 'a'
- arr.objectAt(3); // 'd'
- arr.objectAt(-1); // undefined
- arr.objectAt(4); // undefined
- arr.objectAt(5); // undefined
- ```
-
- @method objectAt
- @param {Number} idx The index of the item to return.
- @return {*} item at index or undefined
- */
- objectAt: function(idx) {
- if (idx < 0 || idx >= get(this, 'length')) {
- return undefined;
- }
-
- return get(this, idx);
- },
-
- /**
- This returns the objects at the specified indexes, using `objectAt`.
-
- ```javascript
- var arr = ['a', 'b', 'c', 'd'];
-
- arr.objectsAt([0, 1, 2]); // ['a', 'b', 'c']
- arr.objectsAt([2, 3, 4]); // ['c', 'd', undefined]
- ```
-
- @method objectsAt
- @param {Array} indexes An array of indexes of items to return.
- @return {Array}
- */
- objectsAt: function(indexes) {
- var self = this;
-
- return map(indexes, function(idx) {
- return self.objectAt(idx);
- });
- },
-
- // overrides Ember.Enumerable version
- nextObject: function(idx) {
- return this.objectAt(idx);
- },
-
- /**
- This is the handler for the special array content property. If you get
- this property, it will return this. If you set this property to a new
- array, it will replace the current content.
-
- This property overrides the default property defined in `Ember.Enumerable`.
-
- @property []
- @return this
- */
- '[]': computed(function(key, value) {
- if (value !== undefined) {
- this.replace(0, get(this, 'length'), value);
- }
-
- return this;
- }),
-
- firstObject: computed(function() {
- return this.objectAt(0);
- }),
-
- lastObject: computed(function() {
- return this.objectAt(get(this, 'length') - 1);
- }),
-
- // optimized version from Enumerable
- contains: function(obj) {
- return this.indexOf(obj) >= 0;
- },
-
- // Add any extra methods to Ember.Array that are native to the built-in Array.
- /**
- Returns a new array that is a slice of the receiver. This implementation
- uses the observable array methods to retrieve the objects for the new
- slice.
-
- ```javascript
- var arr = ['red', 'green', 'blue'];
-
- arr.slice(0); // ['red', 'green', 'blue']
- arr.slice(0, 2); // ['red', 'green']
- arr.slice(1, 100); // ['green', 'blue']
- ```
-
- @method slice
- @param {Integer} beginIndex (Optional) index to begin slicing from.
- @param {Integer} endIndex (Optional) index to end the slice at (but not included).
- @return {Array} New array with specified slice
- */
- slice: function(beginIndex, endIndex) {
- var ret = Ember.A();
- var length = get(this, 'length');
-
- if (isNone(beginIndex)) {
- beginIndex = 0;
- }
-
- if (isNone(endIndex) || (endIndex > length)) {
- endIndex = length;
- }
-
- if (beginIndex < 0) {
- beginIndex = length + beginIndex;
- }
-
- if (endIndex < 0) {
- endIndex = length + endIndex;
- }
-
- while (beginIndex < endIndex) {
- ret[ret.length] = this.objectAt(beginIndex++);
- }
-
- return ret;
- },
-
- /**
- Returns the index of the given object's first occurrence.
- If no `startAt` argument is given, the starting location to
- search is 0. If it's negative, will count backward from
- the end of the array. Returns -1 if no match is found.
-
- ```javascript
- var arr = ['a', 'b', 'c', 'd', 'a'];
-
- arr.indexOf('a'); // 0
- arr.indexOf('z'); // -1
- arr.indexOf('a', 2); // 4
- arr.indexOf('a', -1); // 4
- arr.indexOf('b', 3); // -1
- arr.indexOf('a', 100); // -1
- ```
-
- @method indexOf
- @param {Object} object the item to search for
- @param {Number} startAt optional starting location to search, default 0
- @return {Number} index or -1 if not found
- */
- indexOf: function(object, startAt) {
- var len = get(this, 'length');
- var idx;
-
- if (startAt === undefined) {
- startAt = 0;
- }
-
- if (startAt < 0) {
- startAt += len;
- }
-
- for (idx = startAt; idx < len; idx++) {
- if (this.objectAt(idx) === object) {
- return idx;
- }
- }
-
- return -1;
- },
-
- /**
- Returns the index of the given object's last occurrence.
- If no `startAt` argument is given, the search starts from
- the last position. If it's negative, will count backward
- from the end of the array. Returns -1 if no match is found.
-
- ```javascript
- var arr = ['a', 'b', 'c', 'd', 'a'];
-
- arr.lastIndexOf('a'); // 4
- arr.lastIndexOf('z'); // -1
- arr.lastIndexOf('a', 2); // 0
- arr.lastIndexOf('a', -1); // 4
- arr.lastIndexOf('b', 3); // 1
- arr.lastIndexOf('a', 100); // 4
- ```
-
- @method lastIndexOf
- @param {Object} object the item to search for
- @param {Number} startAt optional starting location to search, default 0
- @return {Number} index or -1 if not found
- */
- lastIndexOf: function(object, startAt) {
- var len = get(this, 'length');
- var idx;
-
- if (startAt === undefined || startAt >= len) {
- startAt = len-1;
- }
-
- if (startAt < 0) {
- startAt += len;
- }
-
- for (idx = startAt; idx >= 0; idx--) {
- if (this.objectAt(idx) === object) {
- return idx;
- }
- }
-
- return -1;
- },
-
- // ..........................................................
- // ARRAY OBSERVERS
- //
-
- /**
- Adds an array observer to the receiving array. The array observer object
- normally must implement two methods:
-
- * `arrayWillChange(observedObj, start, removeCount, addCount)` - This method will be
- called just before the array is modified.
- * `arrayDidChange(observedObj, start, removeCount, addCount)` - This method will be
- called just after the array is modified.
-
- Both callbacks will be passed the observed object, starting index of the
- change as well a a count of the items to be removed and added. You can use
- these callbacks to optionally inspect the array during the change, clear
- caches, or do any other bookkeeping necessary.
-
- In addition to passing a target, you can also include an options hash
- which you can use to override the method names that will be invoked on the
- target.
-
- @method addArrayObserver
- @param {Object} target The observer object.
- @param {Hash} opts Optional hash of configuration options including
- `willChange` and `didChange` option.
- @return {Ember.Array} receiver
- */
-
- addArrayObserver: function(target, opts) {
- return arrayObserversHelper(this, target, opts, addListener, false);
- },
-
- /**
- Removes an array observer from the object if the observer is current
- registered. Calling this method multiple times with the same object will
- have no effect.
-
- @method removeArrayObserver
- @param {Object} target The object observing the array.
- @param {Hash} opts Optional hash of configuration options including
- `willChange` and `didChange` option.
- @return {Ember.Array} receiver
- */
- removeArrayObserver: function(target, opts) {
- return arrayObserversHelper(this, target, opts, removeListener, true);
- },
-
- /**
- Becomes true whenever the array currently has observers watching changes
- on the array.
-
- @property {Boolean} hasArrayObservers
- */
- hasArrayObservers: computed(function() {
- return hasListeners(this, '@array:change') || hasListeners(this, '@array:before');
- }),
-
- /**
- If you are implementing an object that supports `Ember.Array`, call this
- method just before the array content changes to notify any observers and
- invalidate any related properties. Pass the starting index of the change
- as well as a delta of the amounts to change.
-
- @method arrayContentWillChange
- @param {Number} startIdx The starting index in the array that will change.
- @param {Number} removeAmt The number of items that will be removed. If you
- pass `null` assumes 0
- @param {Number} addAmt The number of items that will be added. If you
- pass `null` assumes 0.
- @return {Ember.Array} receiver
- */
- arrayContentWillChange: function(startIdx, removeAmt, addAmt) {
- var removing, lim;
-
- // if no args are passed assume everything changes
- if (startIdx === undefined) {
- startIdx = 0;
- removeAmt = addAmt = -1;
- } else {
- if (removeAmt === undefined) {
- removeAmt = -1;
- }
-
- if (addAmt === undefined) {
- addAmt = -1;
- }
- }
-
- // Make sure the @each proxy is set up if anyone is observing @each
- if (isWatching(this, '@each')) {
- get(this, '@each');
- }
-
- sendEvent(this, '@array:before', [this, startIdx, removeAmt, addAmt]);
-
- if (startIdx >= 0 && removeAmt >= 0 && get(this, 'hasEnumerableObservers')) {
- removing = [];
- lim = startIdx + removeAmt;
-
- for (var idx = startIdx; idx < lim; idx++) {
- removing.push(this.objectAt(idx));
- }
- } else {
- removing = removeAmt;
- }
-
- this.enumerableContentWillChange(removing, addAmt);
-
- return this;
- },
-
- /**
- If you are implementing an object that supports `Ember.Array`, call this
- method just after the array content changes to notify any observers and
- invalidate any related properties. Pass the starting index of the change
- as well as a delta of the amounts to change.
-
- @method arrayContentDidChange
- @param {Number} startIdx The starting index in the array that did change.
- @param {Number} removeAmt The number of items that were removed. If you
- pass `null` assumes 0
- @param {Number} addAmt The number of items that were added. If you
- pass `null` assumes 0.
- @return {Ember.Array} receiver
- */
- arrayContentDidChange: function(startIdx, removeAmt, addAmt) {
- var adding, lim;
-
- // if no args are passed assume everything changes
- if (startIdx === undefined) {
- startIdx = 0;
- removeAmt = addAmt = -1;
- } else {
- if (removeAmt === undefined) {
- removeAmt = -1;
- }
-
- if (addAmt === undefined) {
- addAmt = -1;
- }
- }
-
- if (startIdx >= 0 && addAmt >= 0 && get(this, 'hasEnumerableObservers')) {
- adding = [];
- lim = startIdx + addAmt;
-
- for (var idx = startIdx; idx < lim; idx++) {
- adding.push(this.objectAt(idx));
- }
- } else {
- adding = addAmt;
- }
-
- this.enumerableContentDidChange(removeAmt, adding);
- sendEvent(this, '@array:change', [this, startIdx, removeAmt, addAmt]);
-
- var length = get(this, 'length');
- var cachedFirst = cacheFor(this, 'firstObject');
- var cachedLast = cacheFor(this, 'lastObject');
-
- if (this.objectAt(0) !== cachedFirst) {
- propertyWillChange(this, 'firstObject');
- propertyDidChange(this, 'firstObject');
- }
-
- if (this.objectAt(length-1) !== cachedLast) {
- propertyWillChange(this, 'lastObject');
- propertyDidChange(this, 'lastObject');
- }
-
- return this;
- },
-
- // ..........................................................
- // ENUMERATED PROPERTIES
- //
-
- /**
- Returns a special object that can be used to observe individual properties
- on the array. Just get an equivalent property on this object and it will
- return an enumerable that maps automatically to the named key on the
- member objects.
-
- If you merely want to watch for any items being added or removed to the array,
- use the `[]` property instead of `@each`.
-
- @property @each
- */
- '@each': computed(function() {
- if (!this.__each) {
- // ES6TODO: GRRRRR
- var EachProxy = requireModule('ember-runtime/system/each_proxy')['EachProxy'];
-
- this.__each = new EachProxy(this);
- }
-
- return this.__each;
- })
- });
- });
-enifed("ember-runtime/mixins/comparable",
- ["ember-metal/mixin","exports"],
- function(__dependency1__, __exports__) {
- "use strict";
- var Mixin = __dependency1__.Mixin;
- var required = __dependency1__.required;
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- Implements some standard methods for comparing objects. Add this mixin to
- any class you create that can compare its instances.
-
- You should implement the `compare()` method.
-
- @class Comparable
- @namespace Ember
- @since Ember 0.9
- */
- __exports__["default"] = Mixin.create({
-
- /**
- Override to return the result of the comparison of the two parameters. The
- compare method should return:
-
- - `-1` if `a < b`
- - `0` if `a == b`
- - `1` if `a > b`
-
- Default implementation raises an exception.
-
- @method compare
- @param a {Object} the first object to compare
- @param b {Object} the second object to compare
- @return {Integer} the result of the comparison
- */
- compare: required(Function)
- });
- });
-enifed("ember-runtime/mixins/controller",
- ["ember-metal/mixin","ember-metal/computed","ember-runtime/mixins/action_handler","ember-runtime/mixins/controller_content_model_alias_deprecation","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- var Mixin = __dependency1__.Mixin;
- var computed = __dependency2__.computed;
- var ActionHandler = __dependency3__["default"];
- var ControllerContentModelAliasDeprecation = __dependency4__["default"];
-
- /**
- `Ember.ControllerMixin` provides a standard interface for all classes that
- compose Ember's controller layer: `Ember.Controller`,
- `Ember.ArrayController`, and `Ember.ObjectController`.
-
- @class ControllerMixin
- @namespace Ember
- @uses Ember.ActionHandler
- */
- __exports__["default"] = Mixin.create(ActionHandler, ControllerContentModelAliasDeprecation, {
- /* ducktype as a controller */
- isController: true,
-
- /**
- The object to which actions from the view should be sent.
-
- For example, when a Handlebars template uses the `{{action}}` helper,
- it will attempt to send the action to the view's controller's `target`.
-
- By default, the value of the target property is set to the router, and
- is injected when a controller is instantiated. This injection is defined
- in Ember.Application#buildContainer, and is applied as part of the
- applications initialization process. It can also be set after a controller
- has been instantiated, for instance when using the render helper in a
- template, or when a controller is used as an `itemController`. In most
- cases the `target` property will automatically be set to the logical
- consumer of actions for the controller.
-
- @property target
- @default null
- */
- target: null,
-
- container: null,
-
- parentController: null,
-
- store: null,
-
- /**
- The controller's current model. When retrieving or modifying a controller's
- model, this property should be used instead of the `content` property.
-
- @property model
- @public
- */
- model: null,
-
- /**
- @private
- */
- content: computed.alias('model')
-
- });
- });
-enifed("ember-runtime/mixins/controller_content_model_alias_deprecation",
- ["ember-metal/core","ember-metal/mixin","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.deprecate
- var Mixin = __dependency2__.Mixin;
-
- /**
- The ControllerContentModelAliasDeprecation mixin is used to provide a useful
- deprecation warning when specifying `content` directly on a `Ember.Controller`
- (without also specifying `model`).
-
- Ember versions prior to 1.7 used `model` as an alias of `content`, but due to
- much confusion this alias was reversed (so `content` is now an alias of `model).
-
- This change reduces many caveats with model/content, and also sets a
- simple ground rule: Never set a controllers content, rather always set
- it's model and ember will do the right thing.
-
-
- `Ember.ControllerContentModelAliasDeprecation` is used internally by Ember in
- `Ember.Controller`.
-
- @class ControllerContentModelAliasDeprecation
- @namespace Ember
- @private
- @since 1.7.0
- */
- __exports__["default"] = Mixin.create({
- /**
- @private
-
- Moves `content` to `model` at extend time if a `model` is not also specified.
-
- Note that this currently modifies the mixin themselves, which is technically
- dubious but is practically of little consequence. This may change in the
- future.
-
- @method willMergeMixin
- @since 1.4.0
- */
- willMergeMixin: function(props) {
- // Calling super is only OK here since we KNOW that
- // there is another Mixin loaded first.
- this._super.apply(this, arguments);
-
- var modelSpecified = !!props.model;
-
- if (props.content && !modelSpecified) {
- props.model = props.content;
- delete props['content'];
-
- Ember.deprecate('Do not specify `content` on a Controller, use `model` instead.', false);
- }
- }
- });
- });
-enifed("ember-runtime/mixins/copyable",
- ["ember-metal/property_get","ember-metal/mixin","ember-runtime/mixins/freezable","ember-runtime/system/string","ember-metal/error","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
-
- var get = __dependency1__.get;
- var required = __dependency2__.required;
- var Freezable = __dependency3__.Freezable;
- var Mixin = __dependency2__.Mixin;
- var fmt = __dependency4__.fmt;
- var EmberError = __dependency5__["default"];
-
-
- /**
- Implements some standard methods for copying an object. Add this mixin to
- any object you create that can create a copy of itself. This mixin is
- added automatically to the built-in array.
-
- You should generally implement the `copy()` method to return a copy of the
- receiver.
-
- Note that `frozenCopy()` will only work if you also implement
- `Ember.Freezable`.
-
- @class Copyable
- @namespace Ember
- @since Ember 0.9
- */
- __exports__["default"] = Mixin.create({
- /**
- Override to return a copy of the receiver. Default implementation raises
- an exception.
-
- @method copy
- @param {Boolean} deep if `true`, a deep copy of the object should be made
- @return {Object} copy of receiver
- */
- copy: required(Function),
-
- /**
- If the object implements `Ember.Freezable`, then this will return a new
- copy if the object is not frozen and the receiver if the object is frozen.
-
- Raises an exception if you try to call this method on a object that does
- not support freezing.
-
- You should use this method whenever you want a copy of a freezable object
- since a freezable object can simply return itself without actually
- consuming more memory.
-
- @method frozenCopy
- @return {Object} copy of receiver or receiver
- */
- frozenCopy: function() {
- if (Freezable && Freezable.detect(this)) {
- return get(this, 'isFrozen') ? this : this.copy().freeze();
- } else {
- throw new EmberError(fmt("%@ does not support freezing", [this]));
- }
- }
- });
- });
-enifed("ember-runtime/mixins/deferred",
- ["ember-metal/core","ember-metal/property_get","ember-metal/mixin","ember-metal/computed","ember-runtime/ext/rsvp","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.FEATURES, Ember.Test
- var get = __dependency2__.get;
- var Mixin = __dependency3__.Mixin;
- var computed = __dependency4__.computed;
- var RSVP = __dependency5__["default"];
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
-
- /**
- @class Deferred
- @namespace Ember
- */
- __exports__["default"] = Mixin.create({
- /**
- Add handlers to be called when the Deferred object is resolved or rejected.
-
- @method then
- @param {Function} resolve a callback function to be called when done
- @param {Function} reject a callback function to be called when failed
- */
- then: function(resolve, reject, label) {
- var deferred, promise, entity;
-
- entity = this;
- deferred = get(this, '_deferred');
- promise = deferred.promise;
-
- function fulfillmentHandler(fulfillment) {
- if (fulfillment === promise) {
- return resolve(entity);
- } else {
- return resolve(fulfillment);
- }
- }
-
- return promise.then(resolve && fulfillmentHandler, reject, label);
- },
-
- /**
- Resolve a Deferred object and call any `doneCallbacks` with the given args.
-
- @method resolve
- */
- resolve: function(value) {
- var deferred, promise;
-
- deferred = get(this, '_deferred');
- promise = deferred.promise;
-
- if (value === this) {
- deferred.resolve(promise);
- } else {
- deferred.resolve(value);
- }
- },
-
- /**
- Reject a Deferred object and call any `failCallbacks` with the given args.
-
- @method reject
- */
- reject: function(value) {
- get(this, '_deferred').reject(value);
- },
-
- _deferred: computed(function() {
- Ember.deprecate('Usage of Ember.DeferredMixin or Ember.Deferred is deprecated.', this._suppressDeferredDeprecation);
-
- return RSVP.defer('Ember: DeferredMixin - ' + this);
- })
- });
- });
-enifed("ember-runtime/mixins/enumerable",
- ["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/mixin","ember-metal/enumerable_utils","ember-metal/computed","ember-metal/property_events","ember-metal/events","ember-runtime/compare","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- // ..........................................................
- // HELPERS
- //
-
- var Ember = __dependency1__["default"];
- var get = __dependency2__.get;
- var set = __dependency3__.set;
- var apply = __dependency4__.apply;
- var Mixin = __dependency5__.Mixin;
- var required = __dependency5__.required;
- var aliasMethod = __dependency5__.aliasMethod;
- var indexOf = __dependency6__.indexOf;
- var computed = __dependency7__.computed;
- var propertyWillChange = __dependency8__.propertyWillChange;
- var propertyDidChange = __dependency8__.propertyDidChange;
- var addListener = __dependency9__.addListener;
- var removeListener = __dependency9__.removeListener;
- var sendEvent = __dependency9__.sendEvent;
- var hasListeners = __dependency9__.hasListeners;
- var compare = __dependency10__["default"];
-
- var a_slice = Array.prototype.slice;
-
- var contexts = [];
-
- function popCtx() {
- return contexts.length === 0 ? {} : contexts.pop();
- }
-
- function pushCtx(ctx) {
- contexts.push(ctx);
- return null;
- }
-
- function iter(key, value) {
- var valueProvided = arguments.length === 2;
-
- function i(item) {
- var cur = get(item, key);
- return valueProvided ? value === cur : !!cur;
- }
-
- return i;
- }
-
- /**
- This mixin defines the common interface implemented by enumerable objects
- in Ember. Most of these methods follow the standard Array iteration
- API defined up to JavaScript 1.8 (excluding language-specific features that
- cannot be emulated in older versions of JavaScript).
-
- This mixin is applied automatically to the Array class on page load, so you
- can use any of these methods on simple arrays. If Array already implements
- one of these methods, the mixin will not override them.
-
- ## Writing Your Own Enumerable
-
- To make your own custom class enumerable, you need two items:
-
- 1. You must have a length property. This property should change whenever
- the number of items in your enumerable object changes. If you use this
- with an `Ember.Object` subclass, you should be sure to change the length
- property using `set().`
-
- 2. You must implement `nextObject().` See documentation.
-
- Once you have these two methods implemented, apply the `Ember.Enumerable` mixin
- to your class and you will be able to enumerate the contents of your object
- like any other collection.
-
- ## Using Ember Enumeration with Other Libraries
-
- Many other libraries provide some kind of iterator or enumeration like
- facility. This is often where the most common API conflicts occur.
- Ember's API is designed to be as friendly as possible with other
- libraries by implementing only methods that mostly correspond to the
- JavaScript 1.8 API.
-
- @class Enumerable
- @namespace Ember
- @since Ember 0.9
- */
- __exports__["default"] = Mixin.create({
-
- /**
- Implement this method to make your class enumerable.
-
- This method will be call repeatedly during enumeration. The index value
- will always begin with 0 and increment monotonically. You don't have to
- rely on the index value to determine what object to return, but you should
- always check the value and start from the beginning when you see the
- requested index is 0.
-
- The `previousObject` is the object that was returned from the last call
- to `nextObject` for the current iteration. This is a useful way to
- manage iteration if you are tracing a linked list, for example.
-
- Finally the context parameter will always contain a hash you can use as
- a "scratchpad" to maintain any other state you need in order to iterate
- properly. The context object is reused and is not reset between
- iterations so make sure you setup the context with a fresh state whenever
- the index parameter is 0.
-
- Generally iterators will continue to call `nextObject` until the index
- reaches the your current length-1. If you run out of data before this
- time for some reason, you should simply return undefined.
-
- The default implementation of this method simply looks up the index.
- This works great on any Array-like objects.
-
- @method nextObject
- @param {Number} index the current index of the iteration
- @param {Object} previousObject the value returned by the last call to
- `nextObject`.
- @param {Object} context a context object you can use to maintain state.
- @return {Object} the next object in the iteration or undefined
- */
- nextObject: required(Function),
-
- /**
- Helper method returns the first object from a collection. This is usually
- used by bindings and other parts of the framework to extract a single
- object if the enumerable contains only one item.
-
- If you override this method, you should implement it so that it will
- always return the same value each time it is called. If your enumerable
- contains only one object, this method should always return that object.
- If your enumerable is empty, this method should return `undefined`.
-
- ```javascript
- var arr = ['a', 'b', 'c'];
- arr.get('firstObject'); // 'a'
-
- var arr = [];
- arr.get('firstObject'); // undefined
- ```
-
- @property firstObject
- @return {Object} the object or undefined
- */
- firstObject: computed('[]', function() {
- if (get(this, 'length') === 0) {
- return undefined;
- }
-
- // handle generic enumerables
- var context = popCtx();
- var ret = this.nextObject(0, null, context);
-
- pushCtx(context);
-
- return ret;
- }),
-
- /**
- Helper method returns the last object from a collection. If your enumerable
- contains only one object, this method should always return that object.
- If your enumerable is empty, this method should return `undefined`.
-
- ```javascript
- var arr = ['a', 'b', 'c'];
- arr.get('lastObject'); // 'c'
-
- var arr = [];
- arr.get('lastObject'); // undefined
- ```
-
- @property lastObject
- @return {Object} the last object or undefined
- */
- lastObject: computed('[]', function() {
- var len = get(this, 'length');
-
- if (len === 0) {
- return undefined;
- }
-
- var context = popCtx();
- var idx = 0;
- var last = null;
- var cur;
-
- do {
- last = cur;
- cur = this.nextObject(idx++, last, context);
- } while (cur !== undefined);
-
- pushCtx(context);
-
- return last;
- }),
-
- /**
- Returns `true` if the passed object can be found in the receiver. The
- default version will iterate through the enumerable until the object
- is found. You may want to override this with a more efficient version.
-
- ```javascript
- var arr = ['a', 'b', 'c'];
-
- arr.contains('a'); // true
- arr.contains('z'); // false
- ```
-
- @method contains
- @param {Object} obj The object to search for.
- @return {Boolean} `true` if object is found in enumerable.
- */
- contains: function(obj) {
- var found = this.find(function(item) {
- return item === obj;
- });
-
- return found !== undefined;
- },
-
- /**
- Iterates through the enumerable, calling the passed function on each
- item. This method corresponds to the `forEach()` method defined in
- JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- @method forEach
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Object} receiver
- */
- forEach: function(callback, target) {
- if (typeof callback !== 'function') {
- throw new TypeError();
- }
-
- var context = popCtx();
- var len = get(this, 'length');
- var last = null;
-
- if (target === undefined) {
- target = null;
- }
-
- for(var idx = 0; idx < len; idx++) {
- var next = this.nextObject(idx, last, context) ;
- callback.call(target, next, idx, this);
- last = next ;
- }
-
- last = null ;
- context = pushCtx(context);
-
- return this ;
- },
-
- /**
- Alias for `mapBy`
-
- @method getEach
- @param {String} key name of the property
- @return {Array} The mapped array.
- */
- getEach: function(key) {
- return this.mapBy(key);
- },
-
- /**
- Sets the value on the named property for each member. This is more
- efficient than using other methods defined on this helper. If the object
- implements Ember.Observable, the value will be changed to `set(),` otherwise
- it will be set directly. `null` objects are skipped.
-
- @method setEach
- @param {String} key The key to set
- @param {Object} value The object to set
- @return {Object} receiver
- */
- setEach: function(key, value) {
- return this.forEach(function(item) {
- set(item, key, value);
- });
- },
-
- /**
- Maps all of the items in the enumeration to another value, returning
- a new array. This method corresponds to `map()` defined in JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return the mapped value.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- @method map
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Array} The mapped array.
- */
- map: function(callback, target) {
- var ret = Ember.A();
-
- this.forEach(function(x, idx, i) {
- ret[idx] = callback.call(target, x, idx,i);
- });
-
- return ret ;
- },
-
- /**
- Similar to map, this specialized function returns the value of the named
- property on all items in the enumeration.
-
- @method mapBy
- @param {String} key name of the property
- @return {Array} The mapped array.
- */
- mapBy: function(key) {
- return this.map(function(next) {
- return get(next, key);
- });
- },
-
- /**
- Similar to map, this specialized function returns the value of the named
- property on all items in the enumeration.
-
- @method mapProperty
- @param {String} key name of the property
- @return {Array} The mapped array.
- @deprecated Use `mapBy` instead
- */
-
- mapProperty: aliasMethod('mapBy'),
-
- /**
- Returns an array with all of the items in the enumeration that the passed
- function returns true for. This method corresponds to `filter()` defined in
- JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return `true` to include the item in the results, `false`
- otherwise.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- @method filter
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Array} A filtered array.
- */
- filter: function(callback, target) {
- var ret = Ember.A();
-
- this.forEach(function(x, idx, i) {
- if (callback.call(target, x, idx, i)) {
- ret.push(x);
- }
- });
-
- return ret ;
- },
-
- /**
- Returns an array with all of the items in the enumeration where the passed
- function returns false for. This method is the inverse of filter().
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - *item* is the current item in the iteration.
- - *index* is the current index in the iteration
- - *enumerable* is the enumerable object itself.
-
- It should return the a falsey value to include the item in the results.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as "this" on the context. This is a good way
- to give your iterator function access to the current object.
-
- @method reject
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Array} A rejected array.
- */
- reject: function(callback, target) {
- return this.filter(function() {
- return !(apply(target, callback, arguments));
- });
- },
-
- /**
- Returns an array with just the items with the matched property. You
- can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to `true`.
-
- @method filterBy
- @param {String} key the property to test
- @param {*} [value] optional value to test against.
- @return {Array} filtered array
- */
- filterBy: function(key, value) {
- return this.filter(apply(this, iter, arguments));
- },
-
- /**
- Returns an array with just the items with the matched property. You
- can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to `true`.
-
- @method filterProperty
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Array} filtered array
- @deprecated Use `filterBy` instead
- */
- filterProperty: aliasMethod('filterBy'),
-
- /**
- Returns an array with the items that do not have truthy values for
- key. You can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to false.
-
- @method rejectBy
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Array} rejected array
- */
- rejectBy: function(key, value) {
- var exactValue = function(item) {
- return get(item, key) === value;
- };
-
- var hasValue = function(item) {
- return !!get(item, key);
- };
-
- var use = (arguments.length === 2 ? exactValue : hasValue);
-
- return this.reject(use);
- },
-
- /**
- Returns an array with the items that do not have truthy values for
- key. You can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to false.
-
- @method rejectProperty
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Array} rejected array
- @deprecated Use `rejectBy` instead
- */
- rejectProperty: aliasMethod('rejectBy'),
-
- /**
- Returns the first item in the array for which the callback returns true.
- This method works similar to the `filter()` method defined in JavaScript 1.6
- except that it will stop working on the array once a match is found.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return the `true` to include the item in the results, `false`
- otherwise.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- @method find
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Object} Found item or `undefined`.
- */
- find: function(callback, target) {
- var len = get(this, 'length');
-
- if (target === undefined) {
- target = null;
- }
-
- var context = popCtx();
- var found = false;
- var last = null;
- var next, ret;
-
- for(var idx = 0; idx < len && !found; idx++) {
- next = this.nextObject(idx, last, context);
-
- if (found = callback.call(target, next, idx, this)) {
- ret = next;
- }
-
- last = next;
- }
-
- next = last = null;
- context = pushCtx(context);
-
- return ret;
- },
-
- /**
- Returns the first item with a property matching the passed value. You
- can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to `true`.
-
- This method works much like the more generic `find()` method.
-
- @method findBy
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Object} found item or `undefined`
- */
- findBy: function(key, value) {
- return this.find(apply(this, iter, arguments));
- },
-
- /**
- Returns the first item with a property matching the passed value. You
- can pass an optional second argument with the target value. Otherwise
- this will match any property that evaluates to `true`.
-
- This method works much like the more generic `find()` method.
-
- @method findProperty
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Object} found item or `undefined`
- @deprecated Use `findBy` instead
- */
- findProperty: aliasMethod('findBy'),
-
- /**
- Returns `true` if the passed function returns true for every item in the
- enumeration. This corresponds with the `every()` method in JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return the `true` or `false`.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- Example Usage:
-
- ```javascript
- if (people.every(isEngineer)) {
- Paychecks.addBigBonus();
- }
- ```
-
- @method every
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Boolean}
- */
- every: function(callback, target) {
- return !this.find(function(x, idx, i) {
- return !callback.call(target, x, idx, i);
- });
- },
-
- /**
- @method everyBy
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @deprecated Use `isEvery` instead
- @return {Boolean}
- */
- everyBy: aliasMethod('isEvery'),
-
- /**
- @method everyProperty
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @deprecated Use `isEvery` instead
- @return {Boolean}
- */
- everyProperty: aliasMethod('isEvery'),
-
- /**
- Returns `true` if the passed property resolves to `true` for all items in
- the enumerable. This method is often simpler/faster than using a callback.
-
- @method isEvery
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Boolean}
- @since 1.3.0
- */
- isEvery: function(key, value) {
- return this.every(apply(this, iter, arguments));
- },
-
- /**
- Returns `true` if the passed function returns true for any item in the
- enumeration. This corresponds with the `some()` method in JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return the `true` to include the item in the results, `false`
- otherwise.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- Usage Example:
-
- ```javascript
- if (people.any(isManager)) {
- Paychecks.addBiggerBonus();
- }
- ```
-
- @method any
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Boolean} `true` if the passed function returns `true` for any item
- */
- any: function(callback, target) {
- var len = get(this, 'length');
- var context = popCtx();
- var found = false;
- var last = null;
- var next, idx;
-
- if (target === undefined) {
- target = null;
- }
-
- for (idx = 0; idx < len && !found; idx++) {
- next = this.nextObject(idx, last, context);
- found = callback.call(target, next, idx, this);
- last = next;
- }
-
- next = last = null;
- context = pushCtx(context);
- return found;
- },
-
- /**
- Returns `true` if the passed function returns true for any item in the
- enumeration. This corresponds with the `some()` method in JavaScript 1.6.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(item, index, enumerable);
- ```
-
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- It should return the `true` to include the item in the results, `false`
- otherwise.
-
- Note that in addition to a callback, you can also pass an optional target
- object that will be set as `this` on the context. This is a good way
- to give your iterator function access to the current object.
-
- Usage Example:
-
- ```javascript
- if (people.some(isManager)) {
- Paychecks.addBiggerBonus();
- }
- ```
-
- @method some
- @param {Function} callback The callback to execute
- @param {Object} [target] The target object to use
- @return {Boolean} `true` if the passed function returns `true` for any item
- @deprecated Use `any` instead
- */
- some: aliasMethod('any'),
-
- /**
- Returns `true` if the passed property resolves to `true` for any item in
- the enumerable. This method is often simpler/faster than using a callback.
-
- @method isAny
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Boolean} `true` if the passed function returns `true` for any item
- @since 1.3.0
- */
- isAny: function(key, value) {
- return this.any(apply(this, iter, arguments));
- },
-
- /**
- @method anyBy
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Boolean} `true` if the passed function returns `true` for any item
- @deprecated Use `isAny` instead
- */
- anyBy: aliasMethod('isAny'),
-
- /**
- @method someProperty
- @param {String} key the property to test
- @param {String} [value] optional value to test against.
- @return {Boolean} `true` if the passed function returns `true` for any item
- @deprecated Use `isAny` instead
- */
- someProperty: aliasMethod('isAny'),
-
- /**
- This will combine the values of the enumerator into a single value. It
- is a useful way to collect a summary value from an enumeration. This
- corresponds to the `reduce()` method defined in JavaScript 1.8.
-
- The callback method you provide should have the following signature (all
- parameters are optional):
-
- ```javascript
- function(previousValue, item, index, enumerable);
- ```
-
- - `previousValue` is the value returned by the last call to the iterator.
- - `item` is the current item in the iteration.
- - `index` is the current index in the iteration.
- - `enumerable` is the enumerable object itself.
-
- Return the new cumulative value.
-
- In addition to the callback you can also pass an `initialValue`. An error
- will be raised if you do not pass an initial value and the enumerator is
- empty.
-
- Note that unlike the other methods, this method does not allow you to
- pass a target object to set as this for the callback. It's part of the
- spec. Sorry.
-
- @method reduce
- @param {Function} callback The callback to execute
- @param {Object} initialValue Initial value for the reduce
- @param {String} reducerProperty internal use only.
- @return {Object} The reduced value.
- */
- reduce: function(callback, initialValue, reducerProperty) {
- if (typeof callback !== 'function') {
- throw new TypeError();
- }
-
- var ret = initialValue;
-
- this.forEach(function(item, i) {
- ret = callback(ret, item, i, this, reducerProperty);
- }, this);
-
- return ret;
- },
-
- /**
- Invokes the named method on every object in the receiver that
- implements it. This method corresponds to the implementation in
- Prototype 1.6.
-
- @method invoke
- @param {String} methodName the name of the method
- @param {Object...} args optional arguments to pass as well.
- @return {Array} return values from calling invoke.
- */
- invoke: function(methodName) {
- var ret = Ember.A();
- var args;
-
- if (arguments.length > 1) {
- args = a_slice.call(arguments, 1);
- }
-
- this.forEach(function(x, idx) {
- var method = x && x[methodName];
-
- if ('function' === typeof method) {
- ret[idx] = args ? apply(x, method, args) : x[methodName]();
- }
- }, this);
-
- return ret;
- },
-
- /**
- Simply converts the enumerable into a genuine array. The order is not
- guaranteed. Corresponds to the method implemented by Prototype.
-
- @method toArray
- @return {Array} the enumerable as an array.
- */
- toArray: function() {
- var ret = Ember.A();
-
- this.forEach(function(o, idx) {
- ret[idx] = o;
- });
-
- return ret;
- },
-
- /**
- Returns a copy of the array with all `null` and `undefined` elements removed.
-
- ```javascript
- var arr = ['a', null, 'c', undefined];
- arr.compact(); // ['a', 'c']
- ```
-
- @method compact
- @return {Array} the array without null and undefined elements.
- */
- compact: function() {
- return this.filter(function(value) {
- return value != null;
- });
- },
-
- /**
- Returns a new enumerable that excludes the passed value. The default
- implementation returns an array regardless of the receiver type unless
- the receiver does not contain the value.
-
- ```javascript
- var arr = ['a', 'b', 'a', 'c'];
- arr.without('a'); // ['b', 'c']
- ```
-
- @method without
- @param {Object} value
- @return {Ember.Enumerable}
- */
- without: function(value) {
- if (!this.contains(value)) {
- return this; // nothing to do
- }
-
- var ret = Ember.A();
-
- this.forEach(function(k) {
- if (k !== value) {
- ret[ret.length] = k;
- }
- });
-
- return ret;
- },
-
- /**
- Returns a new enumerable that contains only unique values. The default
- implementation returns an array regardless of the receiver type.
-
- ```javascript
- var arr = ['a', 'a', 'b', 'b'];
- arr.uniq(); // ['a', 'b']
- ```
-
- This only works on primitive data types, e.g. Strings, Numbers, etc.
-
- @method uniq
- @return {Ember.Enumerable}
- */
- uniq: function() {
- var ret = Ember.A();
-
- this.forEach(function(k) {
- if (indexOf(ret, k) < 0) {
- ret.push(k);
- }
- });
-
- return ret;
- },
-
- /**
- This property will trigger anytime the enumerable's content changes.
- You can observe this property to be notified of changes to the enumerables
- content.
-
- For plain enumerables, this property is read only. `Array` overrides
- this method.
-
- @property []
- @type Array
- @return this
- */
- '[]': computed(function(key, value) {
- return this;
- }),
-
- // ..........................................................
- // ENUMERABLE OBSERVERS
- //
-
- /**
- Registers an enumerable observer. Must implement `Ember.EnumerableObserver`
- mixin.
-
- @method addEnumerableObserver
- @param {Object} target
- @param {Hash} [opts]
- @return this
- */
- addEnumerableObserver: function(target, opts) {
- var willChange = (opts && opts.willChange) || 'enumerableWillChange';
- var didChange = (opts && opts.didChange) || 'enumerableDidChange';
- var hasObservers = get(this, 'hasEnumerableObservers');
-
- if (!hasObservers) {
- propertyWillChange(this, 'hasEnumerableObservers');
- }
-
- addListener(this, '@enumerable:before', target, willChange);
- addListener(this, '@enumerable:change', target, didChange);
-
- if (!hasObservers) {
- propertyDidChange(this, 'hasEnumerableObservers');
- }
-
- return this;
- },
-
- /**
- Removes a registered enumerable observer.
-
- @method removeEnumerableObserver
- @param {Object} target
- @param {Hash} [opts]
- @return this
- */
- removeEnumerableObserver: function(target, opts) {
- var willChange = (opts && opts.willChange) || 'enumerableWillChange';
- var didChange = (opts && opts.didChange) || 'enumerableDidChange';
- var hasObservers = get(this, 'hasEnumerableObservers');
-
- if (hasObservers) {
- propertyWillChange(this, 'hasEnumerableObservers');
- }
-
- removeListener(this, '@enumerable:before', target, willChange);
- removeListener(this, '@enumerable:change', target, didChange);
-
- if (hasObservers) {
- propertyDidChange(this, 'hasEnumerableObservers');
- }
-
- return this;
- },
-
- /**
- Becomes true whenever the array currently has observers watching changes
- on the array.
-
- @property hasEnumerableObservers
- @type Boolean
- */
- hasEnumerableObservers: computed(function() {
- return hasListeners(this, '@enumerable:change') || hasListeners(this, '@enumerable:before');
- }),
-
-
- /**
- Invoke this method just before the contents of your enumerable will
- change. You can either omit the parameters completely or pass the objects
- to be removed or added if available or just a count.
-
- @method enumerableContentWillChange
- @param {Ember.Enumerable|Number} removing An enumerable of the objects to
- be removed or the number of items to be removed.
- @param {Ember.Enumerable|Number} adding An enumerable of the objects to be
- added or the number of items to be added.
- @chainable
- */
- enumerableContentWillChange: function(removing, adding) {
- var removeCnt, addCnt, hasDelta;
-
- if ('number' === typeof removing) {
- removeCnt = removing;
- } else if (removing) {
- removeCnt = get(removing, 'length');
- } else {
- removeCnt = removing = -1;
- }
-
- if ('number' === typeof adding) {
- addCnt = adding;
- } else if (adding) {
- addCnt = get(adding,'length');
- } else {
- addCnt = adding = -1;
- }
-
- hasDelta = addCnt < 0 || removeCnt < 0 || addCnt - removeCnt !== 0;
-
- if (removing === -1) {
- removing = null;
- }
-
- if (adding === -1) {
- adding = null;
- }
-
- propertyWillChange(this, '[]');
-
- if (hasDelta) {
- propertyWillChange(this, 'length');
- }
-
- sendEvent(this, '@enumerable:before', [this, removing, adding]);
-
- return this;
- },
-
- /**
- Invoke this method when the contents of your enumerable has changed.
- This will notify any observers watching for content changes. If you are
- implementing an ordered enumerable (such as an array), also pass the
- start and end values where the content changed so that it can be used to
- notify range observers.
-
- @method enumerableContentDidChange
- @param {Ember.Enumerable|Number} removing An enumerable of the objects to
- be removed or the number of items to be removed.
- @param {Ember.Enumerable|Number} adding An enumerable of the objects to
- be added or the number of items to be added.
- @chainable
- */
- enumerableContentDidChange: function(removing, adding) {
- var removeCnt, addCnt, hasDelta;
-
- if ('number' === typeof removing) {
- removeCnt = removing;
- } else if (removing) {
- removeCnt = get(removing, 'length');
- } else {
- removeCnt = removing = -1;
- }
-
- if ('number' === typeof adding) {
- addCnt = adding;
- } else if (adding) {
- addCnt = get(adding, 'length');
- } else {
- addCnt = adding = -1;
- }
-
- hasDelta = addCnt < 0 || removeCnt < 0 || addCnt - removeCnt !== 0;
-
- if (removing === -1) {
- removing = null;
- }
-
- if (adding === -1) {
- adding = null;
- }
-
- sendEvent(this, '@enumerable:change', [this, removing, adding]);
-
- if (hasDelta) {
- propertyDidChange(this, 'length');
- }
-
- propertyDidChange(this, '[]');
-
- return this ;
- },
-
- /**
- Converts the enumerable into an array and sorts by the keys
- specified in the argument.
-
- You may provide multiple arguments to sort by multiple properties.
-
- @method sortBy
- @param {String} property name(s) to sort on
- @return {Array} The sorted array.
- @since 1.2.0
- */
- sortBy: function() {
- var sortKeys = arguments;
-
- return this.toArray().sort(function(a, b){
- for(var i = 0; i < sortKeys.length; i++) {
- var key = sortKeys[i];
- var propA = get(a, key);
- var propB = get(b, key);
- // return 1 or -1 else continue to the next sortKey
- var compareValue = compare(propA, propB);
-
- if (compareValue) {
- return compareValue;
- }
- }
- return 0;
- });
- }
- });
- });
-enifed("ember-runtime/mixins/evented",
- ["ember-metal/mixin","ember-metal/events","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Mixin = __dependency1__.Mixin;
- var addListener = __dependency2__.addListener;
- var removeListener = __dependency2__.removeListener;
- var hasListeners = __dependency2__.hasListeners;
- var sendEvent = __dependency2__.sendEvent;
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- This mixin allows for Ember objects to subscribe to and emit events.
-
- ```javascript
- App.Person = Ember.Object.extend(Ember.Evented, {
- greet: function() {
- // ...
- this.trigger('greet');
- }
- });
-
- var person = App.Person.create();
-
- person.on('greet', function() {
- console.log('Our person has greeted');
- });
-
- person.greet();
-
- // outputs: 'Our person has greeted'
- ```
-
- You can also chain multiple event subscriptions:
-
- ```javascript
- person.on('greet', function() {
- console.log('Our person has greeted');
- }).one('greet', function() {
- console.log('Offer one-time special');
- }).off('event', this, forgetThis);
- ```
-
- @class Evented
- @namespace Ember
- */
- __exports__["default"] = Mixin.create({
-
- /**
- Subscribes to a named event with given function.
-
- ```javascript
- person.on('didLoad', function() {
- // fired once the person has loaded
- });
- ```
-
- An optional target can be passed in as the 2nd argument that will
- be set as the "this" for the callback. This is a good way to give your
- function access to the object triggering the event. When the target
- parameter is used the callback becomes the third argument.
-
- @method on
- @param {String} name The name of the event
- @param {Object} [target] The "this" binding for the callback
- @param {Function} method The callback to execute
- @return this
- */
- on: function(name, target, method) {
- addListener(this, name, target, method);
- return this;
- },
-
- /**
- Subscribes a function to a named event and then cancels the subscription
- after the first time the event is triggered. It is good to use ``one`` when
- you only care about the first time an event has taken place.
-
- This function takes an optional 2nd argument that will become the "this"
- value for the callback. If this argument is passed then the 3rd argument
- becomes the function.
-
- @method one
- @param {String} name The name of the event
- @param {Object} [target] The "this" binding for the callback
- @param {Function} method The callback to execute
- @return this
- */
- one: function(name, target, method) {
- if (!method) {
- method = target;
- target = null;
- }
-
- addListener(this, name, target, method, true);
- return this;
- },
-
- /**
- Triggers a named event for the object. Any additional arguments
- will be passed as parameters to the functions that are subscribed to the
- event.
-
- ```javascript
- person.on('didEat', function(food) {
- console.log('person ate some ' + food);
- });
-
- person.trigger('didEat', 'broccoli');
-
- // outputs: person ate some broccoli
- ```
- @method trigger
- @param {String} name The name of the event
- @param {Object...} args Optional arguments to pass on
- */
- trigger: function(name) {
- var length = arguments.length;
- var args = new Array(length - 1);
-
- for (var i = 1; i < length; i++) {
- args[i - 1] = arguments[i];
- }
-
- sendEvent(this, name, args);
- },
-
- /**
- Cancels subscription for given name, target, and method.
-
- @method off
- @param {String} name The name of the event
- @param {Object} target The target of the subscription
- @param {Function} method The function of the subscription
- @return this
- */
- off: function(name, target, method) {
- removeListener(this, name, target, method);
- return this;
- },
-
- /**
- Checks to see if object has any subscriptions for named event.
-
- @method has
- @param {String} name The name of the event
- @return {Boolean} does the object have a subscription for event
- */
- has: function(name) {
- return hasListeners(this, name);
- }
- });
- });
-enifed("ember-runtime/mixins/freezable",
- ["ember-metal/mixin","ember-metal/property_get","ember-metal/property_set","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Mixin = __dependency1__.Mixin;
- var get = __dependency2__.get;
- var set = __dependency3__.set;
-
- /**
- The `Ember.Freezable` mixin implements some basic methods for marking an
- object as frozen. Once an object is frozen it should be read only. No changes
- may be made the internal state of the object.
-
- ## Enforcement
-
- To fully support freezing in your subclass, you must include this mixin and
- override any method that might alter any property on the object to instead
- raise an exception. You can check the state of an object by checking the
- `isFrozen` property.
-
- Although future versions of JavaScript may support language-level freezing
- object objects, that is not the case today. Even if an object is freezable,
- it is still technically possible to modify the object, even though it could
- break other parts of your application that do not expect a frozen object to
- change. It is, therefore, very important that you always respect the
- `isFrozen` property on all freezable objects.
-
- ## Example Usage
-
- The example below shows a simple object that implement the `Ember.Freezable`
- protocol.
-
- ```javascript
- Contact = Ember.Object.extend(Ember.Freezable, {
- firstName: null,
- lastName: null,
-
- // swaps the names
- swapNames: function() {
- if (this.get('isFrozen')) throw Ember.FROZEN_ERROR;
- var tmp = this.get('firstName');
- this.set('firstName', this.get('lastName'));
- this.set('lastName', tmp);
- return this;
- }
-
- });
-
- c = Contact.create({ firstName: "John", lastName: "Doe" });
- c.swapNames(); // returns c
- c.freeze();
- c.swapNames(); // EXCEPTION
- ```
-
- ## Copying
-
- Usually the `Ember.Freezable` protocol is implemented in cooperation with the
- `Ember.Copyable` protocol, which defines a `frozenCopy()` method that will
- return a frozen object, if the object implements this method as well.
-
- @class Freezable
- @namespace Ember
- @since Ember 0.9
- */
- var Freezable = Mixin.create({
-
- /**
- Set to `true` when the object is frozen. Use this property to detect
- whether your object is frozen or not.
-
- @property isFrozen
- @type Boolean
- */
- isFrozen: false,
-
- /**
- Freezes the object. Once this method has been called the object should
- no longer allow any properties to be edited.
-
- @method freeze
- @return {Object} receiver
- */
- freeze: function() {
- if (get(this, 'isFrozen')) return this;
- set(this, 'isFrozen', true);
- return this;
- }
-
- });
- __exports__.Freezable = Freezable;
- var FROZEN_ERROR = "Frozen object cannot be modified.";
- __exports__.FROZEN_ERROR = FROZEN_ERROR;
- });
-enifed("ember-runtime/mixins/mutable_array",
- ["ember-metal/property_get","ember-metal/utils","ember-metal/error","ember-metal/mixin","ember-runtime/mixins/array","ember-runtime/mixins/mutable_enumerable","ember-runtime/mixins/enumerable","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
-
- // require('ember-runtime/mixins/array');
- // require('ember-runtime/mixins/mutable_enumerable');
-
- // ..........................................................
- // CONSTANTS
- //
-
- var OUT_OF_RANGE_EXCEPTION = "Index out of range";
- var EMPTY = [];
-
- // ..........................................................
- // HELPERS
- //
-
- var get = __dependency1__.get;
- var isArray = __dependency2__.isArray;
- var EmberError = __dependency3__["default"];
- var Mixin = __dependency4__.Mixin;
- var required = __dependency4__.required;
- var EmberArray = __dependency5__["default"];
- var MutableEnumerable = __dependency6__["default"];
- var Enumerable = __dependency7__["default"];
- /**
- This mixin defines the API for modifying array-like objects. These methods
- can be applied only to a collection that keeps its items in an ordered set.
- It builds upon the Array mixin and adds methods to modify the array.
- Concrete implementations of this class include ArrayProxy and ArrayController.
-
- It is important to use the methods in this class to modify arrays so that
- changes are observable. This allows the binding system in Ember to function
- correctly.
-
-
- Note that an Array can change even if it does not implement this mixin.
- For example, one might implement a SparseArray that cannot be directly
- modified, but if its underlying enumerable changes, it will change also.
-
- @class MutableArray
- @namespace Ember
- @uses Ember.Array
- @uses Ember.MutableEnumerable
- */
- __exports__["default"] = Mixin.create(EmberArray, MutableEnumerable, {
-
- /**
- __Required.__ You must implement this method to apply this mixin.
-
- This is one of the primitives you must implement to support `Ember.Array`.
- You should replace amt objects started at idx with the objects in the
- passed array. You should also call `this.enumerableContentDidChange()`
-
- @method replace
- @param {Number} idx Starting index in the array to replace. If
- idx >= length, then append to the end of the array.
- @param {Number} amt Number of elements that should be removed from
- the array, starting at *idx*.
- @param {Array} objects An array of zero or more objects that should be
- inserted into the array at *idx*
- */
- replace: required(),
-
- /**
- Remove all elements from the array. This is useful if you
- want to reuse an existing array without having to recreate it.
-
- ```javascript
- var colors = ["red", "green", "blue"];
- color.length(); // 3
- colors.clear(); // []
- colors.length(); // 0
- ```
-
- @method clear
- @return {Ember.Array} An empty Array.
- */
- clear: function () {
- var len = get(this, 'length');
- if (len === 0) return this;
- this.replace(0, len, EMPTY);
- return this;
- },
-
- /**
- This will use the primitive `replace()` method to insert an object at the
- specified index.
-
- ```javascript
- var colors = ["red", "green", "blue"];
- colors.insertAt(2, "yellow"); // ["red", "green", "yellow", "blue"]
- colors.insertAt(5, "orange"); // Error: Index out of range
- ```
-
- @method insertAt
- @param {Number} idx index of insert the object at.
- @param {Object} object object to insert
- @return {Ember.Array} receiver
- */
- insertAt: function(idx, object) {
- if (idx > get(this, 'length')) throw new EmberError(OUT_OF_RANGE_EXCEPTION);
- this.replace(idx, 0, [object]);
- return this;
- },
-
- /**
- Remove an object at the specified index using the `replace()` primitive
- method. You can pass either a single index, or a start and a length.
-
- If you pass a start and length that is beyond the
- length this method will throw an `OUT_OF_RANGE_EXCEPTION`.
-
- ```javascript
- var colors = ["red", "green", "blue", "yellow", "orange"];
- colors.removeAt(0); // ["green", "blue", "yellow", "orange"]
- colors.removeAt(2, 2); // ["green", "blue"]
- colors.removeAt(4, 2); // Error: Index out of range
- ```
-
- @method removeAt
- @param {Number} start index, start of range
- @param {Number} len length of passing range
- @return {Ember.Array} receiver
- */
- removeAt: function(start, len) {
- if ('number' === typeof start) {
-
- if ((start < 0) || (start >= get(this, 'length'))) {
- throw new EmberError(OUT_OF_RANGE_EXCEPTION);
- }
-
- // fast case
- if (len === undefined) len = 1;
- this.replace(start, len, EMPTY);
- }
-
- return this;
- },
-
- /**
- Push the object onto the end of the array. Works just like `push()` but it
- is KVO-compliant.
-
- ```javascript
- var colors = ["red", "green"];
- colors.pushObject("black"); // ["red", "green", "black"]
- colors.pushObject(["yellow"]); // ["red", "green", ["yellow"]]
- ```
-
- @method pushObject
- @param {*} obj object to push
- @return object same object passed as a param
- */
- pushObject: function(obj) {
- this.insertAt(get(this, 'length'), obj);
- return obj;
- },
-
- /**
- Add the objects in the passed numerable to the end of the array. Defers
- notifying observers of the change until all objects are added.
-
- ```javascript
- var colors = ["red"];
- colors.pushObjects(["yellow", "orange"]); // ["red", "yellow", "orange"]
- ```
-
- @method pushObjects
- @param {Ember.Enumerable} objects the objects to add
- @return {Ember.Array} receiver
- */
- pushObjects: function(objects) {
- if (!(Enumerable.detect(objects) || isArray(objects))) {
- throw new TypeError("Must pass Ember.Enumerable to Ember.MutableArray#pushObjects");
- }
- this.replace(get(this, 'length'), 0, objects);
- return this;
- },
-
- /**
- Pop object from array or nil if none are left. Works just like `pop()` but
- it is KVO-compliant.
-
- ```javascript
- var colors = ["red", "green", "blue"];
- colors.popObject(); // "blue"
- console.log(colors); // ["red", "green"]
- ```
-
- @method popObject
- @return object
- */
- popObject: function() {
- var len = get(this, 'length');
- if (len === 0) return null;
-
- var ret = this.objectAt(len-1);
- this.removeAt(len-1, 1);
- return ret;
- },
-
- /**
- Shift an object from start of array or nil if none are left. Works just
- like `shift()` but it is KVO-compliant.
-
- ```javascript
- var colors = ["red", "green", "blue"];
- colors.shiftObject(); // "red"
- console.log(colors); // ["green", "blue"]
- ```
-
- @method shiftObject
- @return object
- */
- shiftObject: function() {
- if (get(this, 'length') === 0) return null;
- var ret = this.objectAt(0);
- this.removeAt(0);
- return ret;
- },
-
- /**
- Unshift an object to start of array. Works just like `unshift()` but it is
- KVO-compliant.
-
- ```javascript
- var colors = ["red"];
- colors.unshiftObject("yellow"); // ["yellow", "red"]
- colors.unshiftObject(["black"]); // [["black"], "yellow", "red"]
- ```
-
- @method unshiftObject
- @param {*} obj object to unshift
- @return object same object passed as a param
- */
- unshiftObject: function(obj) {
- this.insertAt(0, obj);
- return obj;
- },
-
- /**
- Adds the named objects to the beginning of the array. Defers notifying
- observers until all objects have been added.
-
- ```javascript
- var colors = ["red"];
- colors.unshiftObjects(["black", "white"]); // ["black", "white", "red"]
- colors.unshiftObjects("yellow"); // Type Error: 'undefined' is not a function
- ```
-
- @method unshiftObjects
- @param {Ember.Enumerable} objects the objects to add
- @return {Ember.Array} receiver
- */
- unshiftObjects: function(objects) {
- this.replace(0, 0, objects);
- return this;
- },
-
- /**
- Reverse objects in the array. Works just like `reverse()` but it is
- KVO-compliant.
-
- @method reverseObjects
- @return {Ember.Array} receiver
- */
- reverseObjects: function() {
- var len = get(this, 'length');
- if (len === 0) return this;
- var objects = this.toArray().reverse();
- this.replace(0, len, objects);
- return this;
- },
-
- /**
- Replace all the receiver's content with content of the argument.
- If argument is an empty array receiver will be cleared.
-
- ```javascript
- var colors = ["red", "green", "blue"];
- colors.setObjects(["black", "white"]); // ["black", "white"]
- colors.setObjects([]); // []
- ```
-
- @method setObjects
- @param {Ember.Array} objects array whose content will be used for replacing
- the content of the receiver
- @return {Ember.Array} receiver with the new content
- */
- setObjects: function(objects) {
- if (objects.length === 0) return this.clear();
-
- var len = get(this, 'length');
- this.replace(0, len, objects);
- return this;
- },
-
- // ..........................................................
- // IMPLEMENT Ember.MutableEnumerable
- //
-
- /**
- Remove all occurrences of an object in the array.
-
- ```javascript
- var cities = ["Chicago", "Berlin", "Lima", "Chicago"];
- cities.removeObject("Chicago"); // ["Berlin", "Lima"]
- cities.removeObject("Lima"); // ["Berlin"]
- cities.removeObject("Tokyo") // ["Berlin"]
- ```
-
- @method removeObject
- @param {*} obj object to remove
- @return {Ember.Array} receiver
- */
- removeObject: function(obj) {
- var loc = get(this, 'length') || 0;
- while(--loc >= 0) {
- var curObject = this.objectAt(loc);
- if (curObject === obj) this.removeAt(loc);
- }
- return this;
- },
-
- /**
- Push the object onto the end of the array if it is not already
- present in the array.
-
- ```javascript
- var cities = ["Chicago", "Berlin"];
- cities.addObject("Lima"); // ["Chicago", "Berlin", "Lima"]
- cities.addObject("Berlin"); // ["Chicago", "Berlin", "Lima"]
- ```
-
- @method addObject
- @param {*} obj object to add, if not already present
- @return {Ember.Array} receiver
- */
- addObject: function(obj) {
- if (!this.contains(obj)) this.pushObject(obj);
- return this;
- }
-
- });
- });
-enifed("ember-runtime/mixins/mutable_enumerable",
- ["ember-metal/enumerable_utils","ember-runtime/mixins/enumerable","ember-metal/mixin","ember-metal/property_events","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- var forEach = __dependency1__.forEach;
- var Enumerable = __dependency2__["default"];
- var Mixin = __dependency3__.Mixin;
- var required = __dependency3__.required;
- var beginPropertyChanges = __dependency4__.beginPropertyChanges;
- var endPropertyChanges = __dependency4__.endPropertyChanges;
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- /**
- This mixin defines the API for modifying generic enumerables. These methods
- can be applied to an object regardless of whether it is ordered or
- unordered.
-
- Note that an Enumerable can change even if it does not implement this mixin.
- For example, a MappedEnumerable cannot be directly modified but if its
- underlying enumerable changes, it will change also.
-
- ## Adding Objects
-
- To add an object to an enumerable, use the `addObject()` method. This
- method will only add the object to the enumerable if the object is not
- already present and is of a type supported by the enumerable.
-
- ```javascript
- set.addObject(contact);
- ```
-
- ## Removing Objects
-
- To remove an object from an enumerable, use the `removeObject()` method. This
- will only remove the object if it is present in the enumerable, otherwise
- this method has no effect.
-
- ```javascript
- set.removeObject(contact);
- ```
-
- ## Implementing In Your Own Code
-
- If you are implementing an object and want to support this API, just include
- this mixin in your class and implement the required methods. In your unit
- tests, be sure to apply the Ember.MutableEnumerableTests to your object.
-
- @class MutableEnumerable
- @namespace Ember
- @uses Ember.Enumerable
- */
- __exports__["default"] = Mixin.create(Enumerable, {
-
- /**
- __Required.__ You must implement this method to apply this mixin.
-
- Attempts to add the passed object to the receiver if the object is not
- already present in the collection. If the object is present, this method
- has no effect.
-
- If the passed object is of a type not supported by the receiver,
- then this method should raise an exception.
-
- @method addObject
- @param {Object} object The object to add to the enumerable.
- @return {Object} the passed object
- */
- addObject: required(Function),
-
- /**
- Adds each object in the passed enumerable to the receiver.
-
- @method addObjects
- @param {Ember.Enumerable} objects the objects to add.
- @return {Object} receiver
- */
- addObjects: function(objects) {
- beginPropertyChanges(this);
- forEach(objects, function(obj) { this.addObject(obj); }, this);
- endPropertyChanges(this);
- return this;
- },
-
- /**
- __Required.__ You must implement this method to apply this mixin.
-
- Attempts to remove the passed object from the receiver collection if the
- object is present in the collection. If the object is not present,
- this method has no effect.
-
- If the passed object is of a type not supported by the receiver,
- then this method should raise an exception.
-
- @method removeObject
- @param {Object} object The object to remove from the enumerable.
- @return {Object} the passed object
- */
- removeObject: required(Function),
-
-
- /**
- Removes each object in the passed enumerable from the receiver.
-
- @method removeObjects
- @param {Ember.Enumerable} objects the objects to remove
- @return {Object} receiver
- */
- removeObjects: function(objects) {
- beginPropertyChanges(this);
- for (var i = objects.length - 1; i >= 0; i--) {
- this.removeObject(objects[i]);
- }
- endPropertyChanges(this);
- return this;
- }
- });
- });
-enifed("ember-runtime/mixins/observable",
- ["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/get_properties","ember-metal/set_properties","ember-metal/mixin","ember-metal/events","ember-metal/property_events","ember-metal/observer","ember-metal/computed","ember-metal/is_none","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
- var Ember = __dependency1__["default"];
- // Ember.assert
-
- var get = __dependency2__.get;
- var getWithDefault = __dependency2__.getWithDefault;
- var set = __dependency3__.set;
- var apply = __dependency4__.apply;
- var getProperties = __dependency5__["default"];
- var setProperties = __dependency6__["default"];
- var Mixin = __dependency7__.Mixin;
- var hasListeners = __dependency8__.hasListeners;
- var beginPropertyChanges = __dependency9__.beginPropertyChanges;
- var propertyWillChange = __dependency9__.propertyWillChange;
- var propertyDidChange = __dependency9__.propertyDidChange;
- var endPropertyChanges = __dependency9__.endPropertyChanges;
- var addObserver = __dependency10__.addObserver;
- var addBeforeObserver = __dependency10__.addBeforeObserver;
- var removeObserver = __dependency10__.removeObserver;
- var observersFor = __dependency10__.observersFor;
- var cacheFor = __dependency11__.cacheFor;
- var isNone = __dependency12__["default"];
-
-
- var slice = Array.prototype.slice;
- /**
- ## Overview
-
- This mixin provides properties and property observing functionality, core
- features of the Ember object model.
-
- Properties and observers allow one object to observe changes to a
- property on another object. This is one of the fundamental ways that
- models, controllers and views communicate with each other in an Ember
- application.
-
- Any object that has this mixin applied can be used in observer
- operations. That includes `Ember.Object` and most objects you will
- interact with as you write your Ember application.
-
- Note that you will not generally apply this mixin to classes yourself,
- but you will use the features provided by this module frequently, so it
- is important to understand how to use it.
-
- ## Using `get()` and `set()`
-
- Because of Ember's support for bindings and observers, you will always
- access properties using the get method, and set properties using the
- set method. This allows the observing objects to be notified and
- computed properties to be handled properly.
-
- More documentation about `get` and `set` are below.
-
- ## Observing Property Changes
-
- You typically observe property changes simply by adding the `observes`
- call to the end of your method declarations in classes that you write.
- For example:
-
- ```javascript
- Ember.Object.extend({
- valueObserver: function() {
- // Executes whenever the "value" property changes
- }.observes('value')
- });
- ```
-
- Although this is the most common way to add an observer, this capability
- is actually built into the `Ember.Object` class on top of two methods
- defined in this mixin: `addObserver` and `removeObserver`. You can use
- these two methods to add and remove observers yourself if you need to
- do so at runtime.
-
- To add an observer for a property, call:
-
- ```javascript
- object.addObserver('propertyKey', targetObject, targetAction)
- ```
-
- This will call the `targetAction` method on the `targetObject` whenever
- the value of the `propertyKey` changes.
-
- Note that if `propertyKey` is a computed property, the observer will be
- called when any of the property dependencies are changed, even if the
- resulting value of the computed property is unchanged. This is necessary
- because computed properties are not computed until `get` is called.
-
- @class Observable
- @namespace Ember
- */
- __exports__["default"] = Mixin.create({
-
- /**
- Retrieves the value of a property from the object.
-
- This method is usually similar to using `object[keyName]` or `object.keyName`,
- however it supports both computed properties and the unknownProperty
- handler.
-
- Because `get` unifies the syntax for accessing all these kinds
- of properties, it can make many refactorings easier, such as replacing a
- simple property with a computed property, or vice versa.
-
- ### Computed Properties
-
- Computed properties are methods defined with the `property` modifier
- declared at the end, such as:
-
- ```javascript
- fullName: function() {
- return this.get('firstName') + ' ' + this.get('lastName');
- }.property('firstName', 'lastName')
- ```
-
- When you call `get` on a computed property, the function will be
- called and the return value will be returned instead of the function
- itself.
-
- ### Unknown Properties
-
- Likewise, if you try to call `get` on a property whose value is
- `undefined`, the `unknownProperty()` method will be called on the object.
- If this method returns any value other than `undefined`, it will be returned
- instead. This allows you to implement "virtual" properties that are
- not defined upfront.
-
- @method get
- @param {String} keyName The property to retrieve
- @return {Object} The property value or undefined.
- */
- get: function(keyName) {
- return get(this, keyName);
- },
-
- /**
- To get the values of multiple properties at once, call `getProperties`
- with a list of strings or an array:
-
- ```javascript
- record.getProperties('firstName', 'lastName', 'zipCode');
- // { firstName: 'John', lastName: 'Doe', zipCode: '10011' }
- ```
-
- is equivalent to:
-
- ```javascript
- record.getProperties(['firstName', 'lastName', 'zipCode']);
- // { firstName: 'John', lastName: 'Doe', zipCode: '10011' }
- ```
-
- @method getProperties
- @param {String...|Array} list of keys to get
- @return {Hash}
- */
- getProperties: function() {
- return apply(null, getProperties, [this].concat(slice.call(arguments)));
- },
-
- /**
- Sets the provided key or path to the value.
-
- This method is generally very similar to calling `object[key] = value` or
- `object.key = value`, except that it provides support for computed
- properties, the `setUnknownProperty()` method and property observers.
-
- ### Computed Properties
-
- If you try to set a value on a key that has a computed property handler
- defined (see the `get()` method for an example), then `set()` will call
- that method, passing both the value and key instead of simply changing
- the value itself. This is useful for those times when you need to
- implement a property that is composed of one or more member
- properties.
-
- ### Unknown Properties
-
- If you try to set a value on a key that is undefined in the target
- object, then the `setUnknownProperty()` handler will be called instead. This
- gives you an opportunity to implement complex "virtual" properties that
- are not predefined on the object. If `setUnknownProperty()` returns
- undefined, then `set()` will simply set the value on the object.
-
- ### Property Observers
-
- In addition to changing the property, `set()` will also register a property
- change with the object. Unless you have placed this call inside of a
- `beginPropertyChanges()` and `endPropertyChanges(),` any "local" observers
- (i.e. observer methods declared on the same object), will be called
- immediately. Any "remote" observers (i.e. observer methods declared on
- another object) will be placed in a queue and called at a later time in a
- coalesced manner.
-
- ### Chaining
-
- In addition to property changes, `set()` returns the value of the object
- itself so you can do chaining like this:
-
- ```javascript
- record.set('firstName', 'Charles').set('lastName', 'Jolley');
- ```
-
- @method set
- @param {String} keyName The property to set
- @param {Object} value The value to set or `null`.
- @return {Ember.Observable}
- */
- set: function(keyName, value) {
- set(this, keyName, value);
- return this;
- },
-
-
- /**
- Sets a list of properties at once. These properties are set inside
- a single `beginPropertyChanges` and `endPropertyChanges` batch, so
- observers will be buffered.
-
- ```javascript
- record.setProperties({ firstName: 'Charles', lastName: 'Jolley' });
- ```
-
- @method setProperties
- @param {Hash} hash the hash of keys and values to set
- @return {Ember.Observable}
- */
- setProperties: function(hash) {
- return setProperties(this, hash);
- },
-
- /**
- Begins a grouping of property changes.
-
- You can use this method to group property changes so that notifications
- will not be sent until the changes are finished. If you plan to make a
- large number of changes to an object at one time, you should call this
- method at the beginning of the changes to begin deferring change
- notifications. When you are done making changes, call
- `endPropertyChanges()` to deliver the deferred change notifications and end
- deferring.
-
- @method beginPropertyChanges
- @return {Ember.Observable}
- */
- beginPropertyChanges: function() {
- beginPropertyChanges();
- return this;
- },
-
- /**
- Ends a grouping of property changes.
-
- You can use this method to group property changes so that notifications
- will not be sent until the changes are finished. If you plan to make a
- large number of changes to an object at one time, you should call
- `beginPropertyChanges()` at the beginning of the changes to defer change
- notifications. When you are done making changes, call this method to
- deliver the deferred change notifications and end deferring.
-
- @method endPropertyChanges
- @return {Ember.Observable}
- */
- endPropertyChanges: function() {
- endPropertyChanges();
- return this;
- },
-
- /**
- Notify the observer system that a property is about to change.
-
- Sometimes you need to change a value directly or indirectly without
- actually calling `get()` or `set()` on it. In this case, you can use this
- method and `propertyDidChange()` instead. Calling these two methods
- together will notify all observers that the property has potentially
- changed value.
-
- Note that you must always call `propertyWillChange` and `propertyDidChange`
- as a pair. If you do not, it may get the property change groups out of
- order and cause notifications to be delivered more often than you would
- like.
-
- @method propertyWillChange
- @param {String} keyName The property key that is about to change.
- @return {Ember.Observable}
- */
- propertyWillChange: function(keyName) {
- propertyWillChange(this, keyName);
- return this;
- },
-
- /**
- Notify the observer system that a property has just changed.
-
- Sometimes you need to change a value directly or indirectly without
- actually calling `get()` or `set()` on it. In this case, you can use this
- method and `propertyWillChange()` instead. Calling these two methods
- together will notify all observers that the property has potentially
- changed value.
-
- Note that you must always call `propertyWillChange` and `propertyDidChange`
- as a pair. If you do not, it may get the property change groups out of
- order and cause notifications to be delivered more often than you would
- like.
-
- @method propertyDidChange
- @param {String} keyName The property key that has just changed.
- @return {Ember.Observable}
- */
- propertyDidChange: function(keyName) {
- propertyDidChange(this, keyName);
- return this;
- },
-
- /**
- Convenience method to call `propertyWillChange` and `propertyDidChange` in
- succession.
-
- @method notifyPropertyChange
- @param {String} keyName The property key to be notified about.
- @return {Ember.Observable}
- */
- notifyPropertyChange: function(keyName) {
- this.propertyWillChange(keyName);
- this.propertyDidChange(keyName);
- return this;
- },
-
- addBeforeObserver: function(key, target, method) {
- addBeforeObserver(this, key, target, method);
- },
-
- /**
- Adds an observer on a property.
-
- This is the core method used to register an observer for a property.
-
- Once you call this method, any time the key's value is set, your observer
- will be notified. Note that the observers are triggered any time the
- value is set, regardless of whether it has actually changed. Your
- observer should be prepared to handle that.
-
- You can also pass an optional context parameter to this method. The
- context will be passed to your observer method whenever it is triggered.
- Note that if you add the same target/method pair on a key multiple times
- with different context parameters, your observer will only be called once
- with the last context you passed.
-
- ### Observer Methods
-
- Observer methods you pass should generally have the following signature if
- you do not pass a `context` parameter:
-
- ```javascript
- fooDidChange: function(sender, key, value, rev) { };
- ```
-
- The sender is the object that changed. The key is the property that
- changes. The value property is currently reserved and unused. The rev
- is the last property revision of the object when it changed, which you can
- use to detect if the key value has really changed or not.
-
- If you pass a `context` parameter, the context will be passed before the
- revision like so:
-
- ```javascript
- fooDidChange: function(sender, key, value, context, rev) { };
- ```
-
- Usually you will not need the value, context or revision parameters at
- the end. In this case, it is common to write observer methods that take
- only a sender and key value as parameters or, if you aren't interested in
- any of these values, to write an observer that has no parameters at all.
-
- @method addObserver
- @param {String} key The key to observer
- @param {Object} target The target object to invoke
- @param {String|Function} method The method to invoke.
- */
- addObserver: function(key, target, method) {
- addObserver(this, key, target, method);
- },
-
- /**
- Remove an observer you have previously registered on this object. Pass
- the same key, target, and method you passed to `addObserver()` and your
- target will no longer receive notifications.
-
- @method removeObserver
- @param {String} key The key to observer
- @param {Object} target The target object to invoke
- @param {String|Function} method The method to invoke.
- */
- removeObserver: function(key, target, method) {
- removeObserver(this, key, target, method);
- },
-
- /**
- Returns `true` if the object currently has observers registered for a
- particular key. You can use this method to potentially defer performing
- an expensive action until someone begins observing a particular property
- on the object.
-
- @method hasObserverFor
- @param {String} key Key to check
- @return {Boolean}
- */
- hasObserverFor: function(key) {
- return hasListeners(this, key+':change');
- },
-
- /**
- Retrieves the value of a property, or a default value in the case that the
- property returns `undefined`.
-
- ```javascript
- person.getWithDefault('lastName', 'Doe');
- ```
-
- @method getWithDefault
- @param {String} keyName The name of the property to retrieve
- @param {Object} defaultValue The value to return if the property value is undefined
- @return {Object} The property value or the defaultValue.
- */
- getWithDefault: function(keyName, defaultValue) {
- return getWithDefault(this, keyName, defaultValue);
- },
-
- /**
- Set the value of a property to the current value plus some amount.
-
- ```javascript
- person.incrementProperty('age');
- team.incrementProperty('score', 2);
- ```
-
- @method incrementProperty
- @param {String} keyName The name of the property to increment
- @param {Number} increment The amount to increment by. Defaults to 1
- @return {Number} The new property value
- */
- incrementProperty: function(keyName, increment) {
- if (isNone(increment)) { increment = 1; }
- Ember.assert("Must pass a numeric value to incrementProperty", (!isNaN(parseFloat(increment)) && isFinite(increment)));
- set(this, keyName, (parseFloat(get(this, keyName)) || 0) + increment);
- return get(this, keyName);
- },
-
- /**
- Set the value of a property to the current value minus some amount.
-
- ```javascript
- player.decrementProperty('lives');
- orc.decrementProperty('health', 5);
- ```
-
- @method decrementProperty
- @param {String} keyName The name of the property to decrement
- @param {Number} decrement The amount to decrement by. Defaults to 1
- @return {Number} The new property value
- */
- decrementProperty: function(keyName, decrement) {
- if (isNone(decrement)) { decrement = 1; }
- Ember.assert("Must pass a numeric value to decrementProperty", (!isNaN(parseFloat(decrement)) && isFinite(decrement)));
- set(this, keyName, (get(this, keyName) || 0) - decrement);
- return get(this, keyName);
- },
-
- /**
- Set the value of a boolean property to the opposite of it's
- current value.
-
- ```javascript
- starship.toggleProperty('warpDriveEngaged');
- ```
-
- @method toggleProperty
- @param {String} keyName The name of the property to toggle
- @return {Object} The new property value
- */
- toggleProperty: function(keyName) {
- set(this, keyName, !get(this, keyName));
- return get(this, keyName);
- },
-
- /**
- Returns the cached value of a computed property, if it exists.
- This allows you to inspect the value of a computed property
- without accidentally invoking it if it is intended to be
- generated lazily.
-
- @method cacheFor
- @param {String} keyName
- @return {Object} The cached value of the computed property, if any
- */
- cacheFor: function(keyName) {
- return cacheFor(this, keyName);
- },
-
- // intended for debugging purposes
- observersForKey: function(keyName) {
- return observersFor(this, keyName);
- }
- });
- });
-enifed("ember-runtime/mixins/promise_proxy",
- ["ember-metal/property_get","ember-metal/set_properties","ember-metal/computed","ember-metal/mixin","ember-metal/error","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __exports__) {
- "use strict";
- var get = __dependency1__.get;
- var setProperties = __dependency2__["default"];
- var computed = __dependency3__.computed;
- var Mixin = __dependency4__.Mixin;
- var EmberError = __dependency5__["default"];
-
- var not = computed.not;
- var or = computed.or;
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- function tap(proxy, promise) {
- setProperties(proxy, {
- isFulfilled: false,
- isRejected: false
- });
-
- return promise.then(function(value) {
- setProperties(proxy, {
- content: value,
- isFulfilled: true
- });
- return value;
- }, function(reason) {
- setProperties(proxy, {
- reason: reason,
- isRejected: true
- });
- throw reason;
- }, "Ember: PromiseProxy");
- }
-
- /**
- A low level mixin making ObjectProxy, ObjectController or ArrayController's promise aware.
-
- ```javascript
- var ObjectPromiseController = Ember.ObjectController.extend(Ember.PromiseProxyMixin);
-
- var controller = ObjectPromiseController.create({
- promise: $.getJSON('/some/remote/data.json')
- });
-
- controller.then(function(json){
- // the json
- }, function(reason) {
- // the reason why you have no json
- });
- ```
-
- the controller has bindable attributes which
- track the promises life cycle
-
- ```javascript
- controller.get('isPending') //=> true
- controller.get('isSettled') //=> false
- controller.get('isRejected') //=> false
- controller.get('isFulfilled') //=> false
- ```
-
- When the the $.getJSON completes, and the promise is fulfilled
- with json, the life cycle attributes will update accordingly.
-
- ```javascript
- controller.get('isPending') //=> false
- controller.get('isSettled') //=> true
- controller.get('isRejected') //=> false
- controller.get('isFulfilled') //=> true
- ```
-
- As the controller is an ObjectController, and the json now its content,
- all the json properties will be available directly from the controller.
-
- ```javascript
- // Assuming the following json:
- {
- firstName: 'Stefan',
- lastName: 'Penner'
- }
-
- // both properties will accessible on the controller
- controller.get('firstName') //=> 'Stefan'
- controller.get('lastName') //=> 'Penner'
- ```
-
- If the controller is backing a template, the attributes are
- bindable from within that template
-
- ```handlebars
- {{#if isPending}}
- loading...
- {{else}}
- firstName: {{firstName}}
- lastName: {{lastName}}
- {{/if}}
- ```
- @class Ember.PromiseProxyMixin
- */
- __exports__["default"] = Mixin.create({
- /**
- If the proxied promise is rejected this will contain the reason
- provided.
-
- @property reason
- @default null
- */
- reason: null,
-
- /**
- Once the proxied promise has settled this will become `false`.
-
- @property isPending
- @default true
- */
- isPending: not('isSettled').readOnly(),
-
- /**
- Once the proxied promise has settled this will become `true`.
-
- @property isSettled
- @default false
- */
- isSettled: or('isRejected', 'isFulfilled').readOnly(),
-
- /**
- Will become `true` if the proxied promise is rejected.
-
- @property isRejected
- @default false
- */
- isRejected: false,
-
- /**
- Will become `true` if the proxied promise is fulfilled.
-
- @property isFulfilled
- @default false
- */
- isFulfilled: false,
-
- /**
- The promise whose fulfillment value is being proxied by this object.
-
- This property must be specified upon creation, and should not be
- changed once created.
-
- Example:
-
- ```javascript
- Ember.ObjectController.extend(Ember.PromiseProxyMixin).create({
- promise:
- });
- ```
-
- @property promise
- */
- promise: computed(function(key, promise) {
- if (arguments.length === 2) {
- return tap(this, promise);
- } else {
- throw new EmberError("PromiseProxy's promise must be set");
- }
- }),
-
- /**
- An alias to the proxied promise's `then`.
-
- See RSVP.Promise.then.
-
- @method then
- @param {Function} callback
- @return {RSVP.Promise}
- */
- then: promiseAlias('then'),
-
- /**
- An alias to the proxied promise's `catch`.
-
- See RSVP.Promise.catch.
-
- @method catch
- @param {Function} callback
- @return {RSVP.Promise}
- @since 1.3.0
- */
- 'catch': promiseAlias('catch'),
-
- /**
- An alias to the proxied promise's `finally`.
-
- See RSVP.Promise.finally.
-
- @method finally
- @param {Function} callback
- @return {RSVP.Promise}
- @since 1.3.0
- */
- 'finally': promiseAlias('finally')
-
- });
-
- function promiseAlias(name) {
- return function () {
- var promise = get(this, 'promise');
- return promise[name].apply(promise, arguments);
- };
- }
- });
-enifed("ember-runtime/mixins/sortable",
- ["ember-metal/core","ember-metal/property_get","ember-metal/enumerable_utils","ember-metal/mixin","ember-runtime/mixins/mutable_enumerable","ember-runtime/compare","ember-metal/observer","ember-metal/computed","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.assert, Ember.A
-
- var get = __dependency2__.get;
- var forEach = __dependency3__.forEach;
- var Mixin = __dependency4__.Mixin;
- var MutableEnumerable = __dependency5__["default"];
- var compare = __dependency6__["default"];
- var addObserver = __dependency7__.addObserver;
- var removeObserver = __dependency7__.removeObserver;
- var computed = __dependency8__.computed;
- var beforeObserver = __dependency4__.beforeObserver;
- var observer = __dependency4__.observer;
- //ES6TODO: should we access these directly from their package or from how their exposed in ember-metal?
-
- /**
- `Ember.SortableMixin` provides a standard interface for array proxies
- to specify a sort order and maintain this sorting when objects are added,
- removed, or updated without changing the implicit order of their underlying
- model array:
-
- ```javascript
- songs = [
- {trackNumber: 4, title: 'Ob-La-Di, Ob-La-Da'},
- {trackNumber: 2, title: 'Back in the U.S.S.R.'},
- {trackNumber: 3, title: 'Glass Onion'},
- ];
-
- songsController = Ember.ArrayController.create({
- model: songs,
- sortProperties: ['trackNumber'],
- sortAscending: true
- });
-
- songsController.get('firstObject'); // {trackNumber: 2, title: 'Back in the U.S.S.R.'}
-
- songsController.addObject({trackNumber: 1, title: 'Dear Prudence'});
- songsController.get('firstObject'); // {trackNumber: 1, title: 'Dear Prudence'}
- ```
-
- If you add or remove the properties to sort by or change the sort direction the model
- sort order will be automatically updated.
-
- ```javascript
- songsController.set('sortProperties', ['title']);
- songsController.get('firstObject'); // {trackNumber: 2, title: 'Back in the U.S.S.R.'}
-
- songsController.toggleProperty('sortAscending');
- songsController.get('firstObject'); // {trackNumber: 4, title: 'Ob-La-Di, Ob-La-Da'}
- ```
-
- `SortableMixin` works by sorting the `arrangedContent` array, which is the array that
- `ArrayProxy` displays. Due to the fact that the underlying 'content' array is not changed, that
- array will not display the sorted list:
-
- ```javascript
- songsController.get('content').get('firstObject'); // Returns the unsorted original content
- songsController.get('firstObject'); // Returns the sorted content.
- ```
-
- Although the sorted content can also be accessed through the `arrangedContent` property,
- it is preferable to use the proxied class and not the `arrangedContent` array directly.
-
- @class SortableMixin
- @namespace Ember
- @uses Ember.MutableEnumerable
- */
- __exports__["default"] = Mixin.create(MutableEnumerable, {
-
- /**
- Specifies which properties dictate the `arrangedContent`'s sort order.
-
- When specifying multiple properties the sorting will use properties
- from the `sortProperties` array prioritized from first to last.
-
- @property {Array} sortProperties
- */
- sortProperties: null,
-
- /**
- Specifies the `arrangedContent`'s sort direction.
- Sorts the content in ascending order by default. Set to `false` to
- use descending order.
-
- @property {Boolean} sortAscending
- @default true
- */
- sortAscending: true,
-
- /**
- The function used to compare two values. You can override this if you
- want to do custom comparisons. Functions must be of the type expected by
- Array#sort, i.e.,
-
- * return 0 if the two parameters are equal,
- * return a negative value if the first parameter is smaller than the second or
- * return a positive value otherwise:
-
- ```javascript
- function(x, y) { // These are assumed to be integers
- if (x === y)
- return 0;
- return x < y ? -1 : 1;
- }
- ```
-
- @property sortFunction
- @type {Function}
- @default Ember.compare
- */
- sortFunction: compare,
-
- orderBy: function(item1, item2) {
- var result = 0;
- var sortProperties = get(this, 'sortProperties');
- var sortAscending = get(this, 'sortAscending');
- var sortFunction = get(this, 'sortFunction');
-
- Ember.assert("you need to define `sortProperties`", !!sortProperties);
-
- forEach(sortProperties, function(propertyName) {
- if (result === 0) {
- result = sortFunction.call(this, get(item1, propertyName), get(item2, propertyName));
- if ((result !== 0) && !sortAscending) {
- result = (-1) * result;
- }
- }
- }, this);
-
- return result;
- },
-
- destroy: function() {
- var content = get(this, 'content');
- var sortProperties = get(this, 'sortProperties');
-
- if (content && sortProperties) {
- forEach(content, function(item) {
- forEach(sortProperties, function(sortProperty) {
- removeObserver(item, sortProperty, this, 'contentItemSortPropertyDidChange');
- }, this);
- }, this);
- }
-
- return this._super();
- },
-
- isSorted: computed.notEmpty('sortProperties'),
-
- /**
- Overrides the default `arrangedContent` from `ArrayProxy` in order to sort by `sortFunction`.
- Also sets up observers for each `sortProperty` on each item in the content Array.
-
- @property arrangedContent
- */
- arrangedContent: computed('content', 'sortProperties.@each', function(key, value) {
- var content = get(this, 'content');
- var isSorted = get(this, 'isSorted');
- var sortProperties = get(this, 'sortProperties');
- var self = this;
-
- if (content && isSorted) {
- content = content.slice();
- content.sort(function(item1, item2) {
- return self.orderBy(item1, item2);
- });
- forEach(content, function(item) {
- forEach(sortProperties, function(sortProperty) {
- addObserver(item, sortProperty, this, 'contentItemSortPropertyDidChange');
- }, this);
- }, this);
- return Ember.A(content);
- }
-
- return content;
- }),
-
- _contentWillChange: beforeObserver('content', function() {
- var content = get(this, 'content');
- var sortProperties = get(this, 'sortProperties');
-
- if (content && sortProperties) {
- forEach(content, function(item) {
- forEach(sortProperties, function(sortProperty) {
- removeObserver(item, sortProperty, this, 'contentItemSortPropertyDidChange');
- }, this);
- }, this);
- }
-
- this._super();
- }),
-
- sortPropertiesWillChange: beforeObserver('sortProperties', function() {
- this._lastSortAscending = undefined;
- }),
-
- sortPropertiesDidChange: observer('sortProperties', function() {
- this._lastSortAscending = undefined;
- }),
-
- sortAscendingWillChange: beforeObserver('sortAscending', function() {
- this._lastSortAscending = get(this, 'sortAscending');
- }),
-
- sortAscendingDidChange: observer('sortAscending', function() {
- if (this._lastSortAscending !== undefined && get(this, 'sortAscending') !== this._lastSortAscending) {
- var arrangedContent = get(this, 'arrangedContent');
- arrangedContent.reverseObjects();
- }
- }),
-
- contentArrayWillChange: function(array, idx, removedCount, addedCount) {
- var isSorted = get(this, 'isSorted');
-
- if (isSorted) {
- var arrangedContent = get(this, 'arrangedContent');
- var removedObjects = array.slice(idx, idx+removedCount);
- var sortProperties = get(this, 'sortProperties');
-
- forEach(removedObjects, function(item) {
- arrangedContent.removeObject(item);
-
- forEach(sortProperties, function(sortProperty) {
- removeObserver(item, sortProperty, this, 'contentItemSortPropertyDidChange');
- }, this);
- }, this);
- }
-
- return this._super(array, idx, removedCount, addedCount);
- },
-
- contentArrayDidChange: function(array, idx, removedCount, addedCount) {
- var isSorted = get(this, 'isSorted');
- var sortProperties = get(this, 'sortProperties');
-
- if (isSorted) {
- var addedObjects = array.slice(idx, idx+addedCount);
-
- forEach(addedObjects, function(item) {
- this.insertItemSorted(item);
-
- forEach(sortProperties, function(sortProperty) {
- addObserver(item, sortProperty, this, 'contentItemSortPropertyDidChange');
- }, this);
- }, this);
- }
-
- return this._super(array, idx, removedCount, addedCount);
- },
-
- insertItemSorted: function(item) {
- var arrangedContent = get(this, 'arrangedContent');
- var length = get(arrangedContent, 'length');
-
- var idx = this._binarySearch(item, 0, length);
- arrangedContent.insertAt(idx, item);
- },
-
- contentItemSortPropertyDidChange: function(item) {
- var arrangedContent = get(this, 'arrangedContent');
- var oldIndex = arrangedContent.indexOf(item);
- var leftItem = arrangedContent.objectAt(oldIndex - 1);
- var rightItem = arrangedContent.objectAt(oldIndex + 1);
- var leftResult = leftItem && this.orderBy(item, leftItem);
- var rightResult = rightItem && this.orderBy(item, rightItem);
-
- if (leftResult < 0 || rightResult > 0) {
- arrangedContent.removeObject(item);
- this.insertItemSorted(item);
- }
- },
-
- _binarySearch: function(item, low, high) {
- var mid, midItem, res, arrangedContent;
-
- if (low === high) {
- return low;
- }
-
- arrangedContent = get(this, 'arrangedContent');
-
- mid = low + Math.floor((high - low) / 2);
- midItem = arrangedContent.objectAt(mid);
-
- res = this.orderBy(midItem, item);
-
- if (res < 0) {
- return this._binarySearch(item, mid+1, high);
- } else if (res > 0) {
- return this._binarySearch(item, low, mid);
- }
-
- return mid;
- }
- });
- });
-enifed("ember-runtime/mixins/target_action_support",
- ["ember-metal/core","ember-metal/property_get","ember-metal/utils","ember-metal/mixin","ember-metal/computed","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
- var Ember = __dependency1__["default"];
- // Ember.lookup, Ember.assert
-
- var get = __dependency2__.get;
- var typeOf = __dependency3__.typeOf;
- var Mixin = __dependency4__.Mixin;
- var computed = __dependency5__.computed;
-
- /**
- `Ember.TargetActionSupport` is a mixin that can be included in a class
- to add a `triggerAction` method with semantics similar to the Handlebars
- `{{action}}` helper. In normal Ember usage, the `{{action}}` helper is
- usually the best choice. This mixin is most often useful when you are
- doing more complex event handling in View objects.
-
- See also `Ember.ViewTargetActionSupport`, which has
- view-aware defaults for target and actionContext.
-
- @class TargetActionSupport
- @namespace Ember
- @extends Ember.Mixin
- */
- var TargetActionSupport = Mixin.create({
- target: null,
- action: null,
- actionContext: null,
-
- targetObject: computed(function() {
- var target = get(this, 'target');
-
- if (typeOf(target) === "string") {
- var value = get(this, target);
- if (value === undefined) { value = get(Ember.lookup, target); }
- return value;
- } else {
- return target;
- }
- }).property('target'),
-
- actionContextObject: computed(function() {
- var actionContext = get(this, 'actionContext');
-
- if (typeOf(actionContext) === "string") {
- var value = get(this, actionContext);
- if (value === undefined) { value = get(Ember.lookup, actionContext); }
- return value;
- } else {
- return actionContext;
- }
- }).property('actionContext'),
-
- /**
- Send an `action` with an `actionContext` to a `target`. The action, actionContext
- and target will be retrieved from properties of the object. For example:
-
- ```javascript
- App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
- target: Ember.computed.alias('controller'),
- action: 'save',
- actionContext: Ember.computed.alias('context'),
- click: function() {
- this.triggerAction(); // Sends the `save` action, along with the current context
- // to the current controller
- }
- });
- ```
-
- The `target`, `action`, and `actionContext` can be provided as properties of
- an optional object argument to `triggerAction` as well.
-
- ```javascript
- App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
- click: function() {
- this.triggerAction({
- action: 'save',
- target: this.get('controller'),
- actionContext: this.get('context')
- }); // Sends the `save` action, along with the current context
- // to the current controller
- }
- });
- ```
-
- The `actionContext` defaults to the object you are mixing `TargetActionSupport` into.
- But `target` and `action` must be specified either as properties or with the argument
- to `triggerAction`, or a combination:
-
- ```javascript
- App.SaveButtonView = Ember.View.extend(Ember.TargetActionSupport, {
- target: Ember.computed.alias('controller'),
- click: function() {
- this.triggerAction({
- action: 'save'
- }); // Sends the `save` action, along with a reference to `this`,
- // to the current controller
- }
- });
- ```
-
- @method triggerAction
- @param opts {Hash} (optional, with the optional keys action, target and/or actionContext)
- @return {Boolean} true if the action was sent successfully and did not return false
- */
- triggerAction: function(opts) {
- opts = opts || {};
- var action = opts.action || get(this, 'action');
- var target = opts.target || get(this, 'targetObject');
- var actionContext = opts.actionContext;
-
- function args(options, actionName) {
- var ret = [];
- if (actionName) { ret.push(actionName); }
-
- return ret.concat(options);
- }
-
- if (typeof actionContext === 'undefined') {
- actionContext = get(this, 'actionContextObject') || this;
- }
-
- if (target && action) {
- var ret;
-
- if (target.send) {
- ret = target.send.apply(target, args(actionContext, action));
- } else {
- Ember.assert("The action '" + action + "' did not exist on " + target, typeof target[action] === 'function');
- ret = target[action].apply(target, args(actionContext));
- }
-
- if (ret !== false) ret = true;
-
- return ret;
- } else {
- return false;
- }
- }
- });
-
- __exports__["default"] = TargetActionSupport;
- });
-enifed("ember-runtime/system/application",
- ["ember-runtime/system/namespace","exports"],
- function(__dependency1__, __exports__) {
- "use strict";
- var Namespace = __dependency1__["default"];
-
- __exports__["default"] = Namespace.extend();
- });
-enifed("ember-runtime/system/array_proxy",
- ["ember-metal/core","ember-metal/property_get","ember-metal/utils","ember-metal/computed","ember-metal/mixin","ember-metal/property_events","ember-metal/error","ember-runtime/system/object","ember-runtime/mixins/mutable_array","ember-runtime/mixins/enumerable","ember-runtime/system/string","ember-metal/alias","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.K, Ember.assert
- var get = __dependency2__.get;
- var isArray = __dependency3__.isArray;
- var apply = __dependency3__.apply;
- var computed = __dependency4__.computed;
- var beforeObserver = __dependency5__.beforeObserver;
- var observer = __dependency5__.observer;
- var beginPropertyChanges = __dependency6__.beginPropertyChanges;
- var endPropertyChanges = __dependency6__.endPropertyChanges;
- var EmberError = __dependency7__["default"];
- var EmberObject = __dependency8__["default"];
- var MutableArray = __dependency9__["default"];
- var Enumerable = __dependency10__["default"];
- var fmt = __dependency11__.fmt;
- var alias = __dependency12__["default"];
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var OUT_OF_RANGE_EXCEPTION = "Index out of range";
- var EMPTY = [];
- var K = Ember.K;
-
- /**
- An ArrayProxy wraps any other object that implements `Ember.Array` and/or
- `Ember.MutableArray,` forwarding all requests. This makes it very useful for
- a number of binding use cases or other cases where being able to swap
- out the underlying array is useful.
-
- A simple example of usage:
-
- ```javascript
- var pets = ['dog', 'cat', 'fish'];
- var ap = Ember.ArrayProxy.create({ content: Ember.A(pets) });
-
- ap.get('firstObject'); // 'dog'
- ap.set('content', ['amoeba', 'paramecium']);
- ap.get('firstObject'); // 'amoeba'
- ```
-
- This class can also be useful as a layer to transform the contents of
- an array, as they are accessed. This can be done by overriding
- `objectAtContent`:
-
- ```javascript
- var pets = ['dog', 'cat', 'fish'];
- var ap = Ember.ArrayProxy.create({
- content: Ember.A(pets),
- objectAtContent: function(idx) {
- return this.get('content').objectAt(idx).toUpperCase();
- }
- });
-
- ap.get('firstObject'); // . 'DOG'
- ```
-
- @class ArrayProxy
- @namespace Ember
- @extends Ember.Object
- @uses Ember.MutableArray
- */
- var ArrayProxy = EmberObject.extend(MutableArray, {
-
- /**
- The content array. Must be an object that implements `Ember.Array` and/or
- `Ember.MutableArray.`
-
- @property content
- @type Ember.Array
- */
- content: null,
-
- /**
- The array that the proxy pretends to be. In the default `ArrayProxy`
- implementation, this and `content` are the same. Subclasses of `ArrayProxy`
- can override this property to provide things like sorting and filtering.
-
- @property arrangedContent
- */
- arrangedContent: alias('content'),
-
- /**
- Should actually retrieve the object at the specified index from the
- content. You can override this method in subclasses to transform the
- content item to something new.
-
- This method will only be called if content is non-`null`.
-
- @method objectAtContent
- @param {Number} idx The index to retrieve.
- @return {Object} the value or undefined if none found
- */
- objectAtContent: function(idx) {
- return get(this, 'arrangedContent').objectAt(idx);
- },
-
- /**
- Should actually replace the specified objects on the content array.
- You can override this method in subclasses to transform the content item
- into something new.
-
- This method will only be called if content is non-`null`.
-
- @method replaceContent
- @param {Number} idx The starting index
- @param {Number} amt The number of items to remove from the content.
- @param {Array} objects Optional array of objects to insert or null if no
- objects.
- @return {void}
- */
- replaceContent: function(idx, amt, objects) {
- get(this, 'content').replace(idx, amt, objects);
- },
-
- /**
- Invoked when the content property is about to change. Notifies observers that the
- entire array content will change.
-
- @private
- @method _contentWillChange
- */
- _contentWillChange: beforeObserver('content', function() {
- this._teardownContent();
- }),
-
- _teardownContent: function() {
- var content = get(this, 'content');
-
- if (content) {
- content.removeArrayObserver(this, {
- willChange: 'contentArrayWillChange',
- didChange: 'contentArrayDidChange'
- });
- }
- },
-
- /**
- Override to implement content array `willChange` observer.
-
- @method contentArrayWillChange
-
- @param {Ember.Array} contentArray the content array
- @param {Number} start starting index of the change
- @param {Number} removeCount count of items removed
- @param {Number} addCount count of items added
-
- */
- contentArrayWillChange: K,
- /**
- Override to implement content array `didChange` observer.
-
- @method contentArrayDidChange
-
- @param {Ember.Array} contentArray the content array
- @param {Number} start starting index of the change
- @param {Number} removeCount count of items removed
- @param {Number} addCount count of items added
- */
- contentArrayDidChange: K,
-
- /**
- Invoked when the content property changes. Notifies observers that the
- entire array content has changed.
-
- @private
- @method _contentDidChange
- */
- _contentDidChange: observer('content', function() {
- var content = get(this, 'content');
-
- Ember.assert("Can't set ArrayProxy's content to itself", content !== this);
-
- this._setupContent();
- }),
-
- _setupContent: function() {
- var content = get(this, 'content');
-
- if (content) {
- Ember.assert(fmt('ArrayProxy expects an Array or ' +
- 'Ember.ArrayProxy, but you passed %@', [typeof content]),
- isArray(content) || content.isDestroyed);
-
- content.addArrayObserver(this, {
- willChange: 'contentArrayWillChange',
- didChange: 'contentArrayDidChange'
- });
- }
- },
-
- _arrangedContentWillChange: beforeObserver('arrangedContent', function() {
- var arrangedContent = get(this, 'arrangedContent');
- var len = arrangedContent ? get(arrangedContent, 'length') : 0;
-
- this.arrangedContentArrayWillChange(this, 0, len, undefined);
- this.arrangedContentWillChange(this);
-
- this._teardownArrangedContent(arrangedContent);
- }),
-
- _arrangedContentDidChange: observer('arrangedContent', function() {
- var arrangedContent = get(this, 'arrangedContent');
- var len = arrangedContent ? get(arrangedContent, 'length') : 0;
-
- Ember.assert("Can't set ArrayProxy's content to itself", arrangedContent !== this);
-
- this._setupArrangedContent();
-
- this.arrangedContentDidChange(this);
- this.arrangedContentArrayDidChange(this, 0, undefined, len);
- }),
-
- _setupArrangedContent: function() {
- var arrangedContent = get(this, 'arrangedContent');
-
- if (arrangedContent) {
- Ember.assert(fmt('ArrayProxy expects an Array or ' +
- 'Ember.ArrayProxy, but you passed %@', [typeof arrangedContent]),
- isArray(arrangedContent) || arrangedContent.isDestroyed);
-
- arrangedContent.addArrayObserver(this, {
- willChange: 'arrangedContentArrayWillChange',
- didChange: 'arrangedContentArrayDidChange'
- });
- }
- },
-
- _teardownArrangedContent: function() {
- var arrangedContent = get(this, 'arrangedContent');
-
- if (arrangedContent) {
- arrangedContent.removeArrayObserver(this, {
- willChange: 'arrangedContentArrayWillChange',
- didChange: 'arrangedContentArrayDidChange'
- });
- }
- },
-
- arrangedContentWillChange: K,
- arrangedContentDidChange: K,
-
- objectAt: function(idx) {
- return get(this, 'content') && this.objectAtContent(idx);
- },
-
- length: computed(function() {
- var arrangedContent = get(this, 'arrangedContent');
- return arrangedContent ? get(arrangedContent, 'length') : 0;
- // No dependencies since Enumerable notifies length of change
- }),
-
- _replace: function(idx, amt, objects) {
- var content = get(this, 'content');
- Ember.assert('The content property of '+ this.constructor + ' should be set before modifying it', content);
- if (content) this.replaceContent(idx, amt, objects);
- return this;
- },
-
- replace: function() {
- if (get(this, 'arrangedContent') === get(this, 'content')) {
- apply(this, this._replace, arguments);
- } else {
- throw new EmberError("Using replace on an arranged ArrayProxy is not allowed.");
- }
- },
-
- _insertAt: function(idx, object) {
- if (idx > get(this, 'content.length')) throw new EmberError(OUT_OF_RANGE_EXCEPTION);
- this._replace(idx, 0, [object]);
- return this;
- },
-
- insertAt: function(idx, object) {
- if (get(this, 'arrangedContent') === get(this, 'content')) {
- return this._insertAt(idx, object);
- } else {
- throw new EmberError("Using insertAt on an arranged ArrayProxy is not allowed.");
- }
- },
-
- removeAt: function(start, len) {
- if ('number' === typeof start) {
- var content = get(this, 'content');
- var arrangedContent = get(this, 'arrangedContent');
- var indices = [];
- var i;
-
- if ((start < 0) || (start >= get(this, 'length'))) {
- throw new EmberError(OUT_OF_RANGE_EXCEPTION);
- }
-
- if (len === undefined) len = 1;
-
- // Get a list of indices in original content to remove
- for (i=start; i 0 &&
- indexOf(concatenatedProperties, keyName) >= 0) {
- var baseValue = this[keyName];
-
- if (baseValue) {
- if ('function' === typeof baseValue.concat) {
- value = baseValue.concat(value);
- } else {
- value = makeArray(baseValue).concat(value);
- }
- } else {
- value = makeArray(value);
- }
- }
-
- if (desc) {
- desc.set(this, keyName, value);
- } else {
- if (typeof this.setUnknownProperty === 'function' && !(keyName in this)) {
- this.setUnknownProperty(keyName, value);
- } else {
-
- if (hasPropertyAccessors) {
- defineProperty(this, keyName, null, value); // setup mandatory setter
- } else {
- this[keyName] = value;
- }
- }
- }
- }
- }
- }
- finishPartial(this, m);
- var length = arguments.length;
- var args = new Array(length);
- for (var x = 0; x < length; x++) {
- args[x] = arguments[x];
- }
- apply(this, this.init, args);
- m.proto = proto;
- finishChains(this);
- sendEvent(this, "init");
- };
-
- Class.toString = Mixin.prototype.toString;
- Class.willReopen = function() {
- if (wasApplied) {
- Class.PrototypeMixin = Mixin.create(Class.PrototypeMixin);
- }
-
- wasApplied = false;
- };
- Class._initMixins = function(args) { initMixins = args; };
- Class._initProperties = function(args) { initProperties = args; };
-
- Class.proto = function() {
- var superclass = Class.superclass;
- if (superclass) { superclass.proto(); }
-
- if (!wasApplied) {
- wasApplied = true;
- Class.PrototypeMixin.applyPartial(Class.prototype);
- }
-
- return this.prototype;
- };
-
- return Class;
-
- }
-
- /**
- @class CoreObject
- @namespace Ember
- */
- var CoreObject = makeCtor();
- CoreObject.toString = function() { return "Ember.CoreObject"; };
- CoreObject.PrototypeMixin = Mixin.create({
- reopen: function() {
- var length = arguments.length;
- var args = new Array(length);
- for (var i = 0; i < length; i++) {
- args[i] = arguments[i];
- }
- applyMixin(this, args, true);
- return this;
- },
-
- /**
- An overridable method called when objects are instantiated. By default,
- does nothing unless it is overridden during class definition.
-
- Example:
-
- ```javascript
- App.Person = Ember.Object.extend({
- init: function() {
- alert('Name is ' + this.get('name'));
- }
- });
-
- var steve = App.Person.create({
- name: "Steve"
- });
-
- // alerts 'Name is Steve'.
- ```
-
- NOTE: If you do override `init` for a framework class like `Ember.View` or
- `Ember.ArrayController`, be sure to call `this._super()` in your
- `init` declaration! If you don't, Ember may not have an opportunity to
- do important setup work, and you'll see strange behavior in your
- application.
-
- @method init
- */
- init: function() {},
-
- /**
- Defines the properties that will be concatenated from the superclass
- (instead of overridden).
-
- By default, when you extend an Ember class a property defined in
- the subclass overrides a property with the same name that is defined
- in the superclass. However, there are some cases where it is preferable
- to build up a property's value by combining the superclass' property
- value with the subclass' value. An example of this in use within Ember
- is the `classNames` property of `Ember.View`.
-
- Here is some sample code showing the difference between a concatenated
- property and a normal one:
-
- ```javascript
- App.BarView = Ember.View.extend({
- someNonConcatenatedProperty: ['bar'],
- classNames: ['bar']
- });
-
- App.FooBarView = App.BarView.extend({
- someNonConcatenatedProperty: ['foo'],
- classNames: ['foo']
- });
-
- var fooBarView = App.FooBarView.create();
- fooBarView.get('someNonConcatenatedProperty'); // ['foo']
- fooBarView.get('classNames'); // ['ember-view', 'bar', 'foo']
- ```
-
- This behavior extends to object creation as well. Continuing the
- above example:
-
- ```javascript
- var view = App.FooBarView.create({
- someNonConcatenatedProperty: ['baz'],
- classNames: ['baz']
- })
- view.get('someNonConcatenatedProperty'); // ['baz']
- view.get('classNames'); // ['ember-view', 'bar', 'foo', 'baz']
- ```
- Adding a single property that is not an array will just add it in the array:
-
- ```javascript
- var view = App.FooBarView.create({
- classNames: 'baz'
- })
- view.get('classNames'); // ['ember-view', 'bar', 'foo', 'baz']
- ```
-
- Using the `concatenatedProperties` property, we can tell to Ember that mix
- the content of the properties.
-
- In `Ember.View` the `classNameBindings` and `attributeBindings` properties
- are also concatenated, in addition to `classNames`.
-
- This feature is available for you to use throughout the Ember object model,
- although typical app developers are likely to use it infrequently. Since
- it changes expectations about behavior of properties, you should properly
- document its usage in each individual concatenated property (to not
- mislead your users to think they can override the property in a subclass).
-
- @property concatenatedProperties
- @type Array
- @default null
- */
- concatenatedProperties: null,
-
- /**
- Destroyed object property flag.
-
- if this property is `true` the observers and bindings were already
- removed by the effect of calling the `destroy()` method.
-
- @property isDestroyed
- @default false
- */
- isDestroyed: false,
-
- /**
- Destruction scheduled flag. The `destroy()` method has been called.
-
- The object stays intact until the end of the run loop at which point
- the `isDestroyed` flag is set.
-
- @property isDestroying
- @default false
- */
- isDestroying: false,
-
- /**
- Destroys an object by setting the `isDestroyed` flag and removing its
- metadata, which effectively destroys observers and bindings.
-
- If you try to set a property on a destroyed object, an exception will be
- raised.
-
- Note that destruction is scheduled for the end of the run loop and does not
- happen immediately. It will set an isDestroying flag immediately.
-
- @method destroy
- @return {Ember.Object} receiver
- */
- destroy: function() {
- if (this.isDestroying) { return; }
- this.isDestroying = true;
-
- schedule('actions', this, this.willDestroy);
- schedule('destroy', this, this._scheduledDestroy);
- return this;
- },
-
- /**
- Override to implement teardown.
-
- @method willDestroy
- */
- willDestroy: K,
-
- /**
- Invoked by the run loop to actually destroy the object. This is
- scheduled for execution by the `destroy` method.
-
- @private
- @method _scheduledDestroy
- */
- _scheduledDestroy: function() {
- if (this.isDestroyed) { return; }
- destroy(this);
- this.isDestroyed = true;
- },
-
- bind: function(to, from) {
- if (!(from instanceof Binding)) { from = Binding.from(from); }
- from.to(to).connect(this);
- return from;
- },
-
- /**
- Returns a string representation which attempts to provide more information
- than Javascript's `toString` typically does, in a generic way for all Ember
- objects.
-
- ```javascript
- App.Person = Em.Object.extend()
- person = App.Person.create()
- person.toString() //=> ""
- ```
-
- If the object's class is not defined on an Ember namespace, it will
- indicate it is a subclass of the registered superclass:
-
- ```javascript
- Student = App.Person.extend()
- student = Student.create()
- student.toString() //=> "<(subclass of App.Person):ember1025>"
- ```
-
- If the method `toStringExtension` is defined, its return value will be
- included in the output.
-
- ```javascript
- App.Teacher = App.Person.extend({
- toStringExtension: function() {
- return this.get('fullName');
- }
- });
- teacher = App.Teacher.create()
- teacher.toString(); //=> ""
- ```
-
- @method toString
- @return {String} string representation
- */
- toString: function toString() {
- var hasToStringExtension = typeof this.toStringExtension === 'function';
- var extension = hasToStringExtension ? ":" + this.toStringExtension() : '';
- var ret = '<'+this.constructor.toString()+':'+guidFor(this)+extension+'>';
-
- this.toString = makeToString(ret);
- return ret;
- }
- });
-
- CoreObject.PrototypeMixin.ownerConstructor = CoreObject;
-
- function makeToString(ret) {
- return function() { return ret; };
- }
-
- if (Ember.config.overridePrototypeMixin) {
- Ember.config.overridePrototypeMixin(CoreObject.PrototypeMixin);
- }
-
- CoreObject.__super__ = null;
-
- var ClassMixinProps = {
-
- ClassMixin: required(),
-
- PrototypeMixin: required(),
-
- isClass: true,
-
- isMethod: false,
-
- /**
- Creates a new subclass.
-
- ```javascript
- App.Person = Ember.Object.extend({
- say: function(thing) {
- alert(thing);
- }
- });
- ```
-
- This defines a new subclass of Ember.Object: `App.Person`. It contains one method: `say()`.
-
- You can also create a subclass from any existing class by calling its `extend()` method. For example, you might want to create a subclass of Ember's built-in `Ember.View` class:
-
- ```javascript
- App.PersonView = Ember.View.extend({
- tagName: 'li',
- classNameBindings: ['isAdministrator']
- });
- ```
-
- When defining a subclass, you can override methods but still access the implementation of your parent class by calling the special `_super()` method:
-
- ```javascript
- App.Person = Ember.Object.extend({
- say: function(thing) {
- var name = this.get('name');
- alert(name + ' says: ' + thing);
- }
- });
-
- App.Soldier = App.Person.extend({
- say: function(thing) {
- this._super(thing + ", sir!");
- },
- march: function(numberOfHours) {
- alert(this.get('name') + ' marches for ' + numberOfHours + ' hours.')
- }
- });
-
- var yehuda = App.Soldier.create({
- name: "Yehuda Katz"
- });
-
- yehuda.say("Yes"); // alerts "Yehuda Katz says: Yes, sir!"
- ```
-
- The `create()` on line #17 creates an *instance* of the `App.Soldier` class. The `extend()` on line #8 creates a *subclass* of `App.Person`. Any instance of the `App.Person` class will *not* have the `march()` method.
-
- You can also pass `Mixin` classes to add additional properties to the subclass.
-
- ```javascript
- App.Person = Ember.Object.extend({
- say: function(thing) {
- alert(this.get('name') + ' says: ' + thing);
- }
- });
-
- App.SingingMixin = Mixin.create({
- sing: function(thing){
- alert(this.get('name') + ' sings: la la la ' + thing);
- }
- });
-
- App.BroadwayStar = App.Person.extend(App.SingingMixin, {
- dance: function() {
- alert(this.get('name') + ' dances: tap tap tap tap ');
- }
- });
- ```
-
- The `App.BroadwayStar` class contains three methods: `say()`, `sing()`, and `dance()`.
-
- @method extend
- @static
-
- @param {Mixin} [mixins]* One or more Mixin classes
- @param {Object} [arguments]* Object containing values to use within the new class
- */
- extend: function extend() {
- var Class = makeCtor();
- var proto;
- Class.ClassMixin = Mixin.create(this.ClassMixin);
- Class.PrototypeMixin = Mixin.create(this.PrototypeMixin);
-
- Class.ClassMixin.ownerConstructor = Class;
- Class.PrototypeMixin.ownerConstructor = Class;
-
- reopen.apply(Class.PrototypeMixin, arguments);
-
- Class.superclass = this;
- Class.__super__ = this.prototype;
-
- proto = Class.prototype = o_create(this.prototype);
- proto.constructor = Class;
- generateGuid(proto);
- meta(proto).proto = proto; // this will disable observers on prototype
-
- Class.ClassMixin.apply(Class);
- return Class;
- },
-
- /**
- Equivalent to doing `extend(arguments).create()`.
- If possible use the normal `create` method instead.
-
- @method createWithMixins
- @static
- @param [arguments]*
- */
- createWithMixins: function() {
- var C = this;
- var l= arguments.length;
- if (l > 0) {
- var args = new Array(l);
- for (var i = 0; i < l; i++) {
- args[i] = arguments[i];
- }
- this._initMixins(args);
- }
- return new C();
- },
-
- /**
- Creates an instance of a class. Accepts either no arguments, or an object
- containing values to initialize the newly instantiated object with.
-
- ```javascript
- App.Person = Ember.Object.extend({
- helloWorld: function() {
- alert("Hi, my name is " + this.get('name'));
- }
- });
-
- var tom = App.Person.create({
- name: 'Tom Dale'
- });
-
- tom.helloWorld(); // alerts "Hi, my name is Tom Dale".
- ```
-
- `create` will call the `init` function if defined during
- `Ember.AnyObject.extend`
-
- If no arguments are passed to `create`, it will not set values to the new
- instance during initialization:
-
- ```javascript
- var noName = App.Person.create();
- noName.helloWorld(); // alerts undefined
- ```
-
- NOTE: For performance reasons, you cannot declare methods or computed
- properties during `create`. You should instead declare methods and computed
- properties when using `extend` or use the `createWithMixins` shorthand.
-
- @method create
- @static
- @param [arguments]*
- */
- create: function() {
- var C = this;
- var l = arguments.length;
- if (l > 0) {
- var args = new Array(l);
- for (var i = 0; i < l; i++) {
- args[i] = arguments[i];
- }
- this._initProperties(args);
- }
- return new C();
- },
-
- /**
- Augments a constructor's prototype with additional
- properties and functions:
-
- ```javascript
- MyObject = Ember.Object.extend({
- name: 'an object'
- });
-
- o = MyObject.create();
- o.get('name'); // 'an object'
-
- MyObject.reopen({
- say: function(msg){
- console.log(msg);
- }
- })
-
- o2 = MyObject.create();
- o2.say("hello"); // logs "hello"
-
- o.say("goodbye"); // logs "goodbye"
- ```
-
- To add functions and properties to the constructor itself,
- see `reopenClass`
-
- @method reopen
- */
- reopen: function() {
- this.willReopen();
-
- var l = arguments.length;
- var args = new Array(l);
- if (l > 0) {
- for (var i = 0; i < l; i++) {
- args[i] = arguments[i];
- }
- }
-
- apply(this.PrototypeMixin, reopen, args);
- return this;
- },
-
- /**
- Augments a constructor's own properties and functions:
-
- ```javascript
- MyObject = Ember.Object.extend({
- name: 'an object'
- });
-
- MyObject.reopenClass({
- canBuild: false
- });
-
- MyObject.canBuild; // false
- o = MyObject.create();
- ```
-
- In other words, this creates static properties and functions for the class. These are only available on the class
- and not on any instance of that class.
-
- ```javascript
- App.Person = Ember.Object.extend({
- name : "",
- sayHello : function(){
- alert("Hello. My name is " + this.get('name'));
- }
- });
-
- App.Person.reopenClass({
- species : "Homo sapiens",
- createPerson: function(newPersonsName){
- return App.Person.create({
- name:newPersonsName
- });
- }
- });
-
- var tom = App.Person.create({
- name : "Tom Dale"
- });
- var yehuda = App.Person.createPerson("Yehuda Katz");
-
- tom.sayHello(); // "Hello. My name is Tom Dale"
- yehuda.sayHello(); // "Hello. My name is Yehuda Katz"
- alert(App.Person.species); // "Homo sapiens"
- ```
-
- Note that `species` and `createPerson` are *not* valid on the `tom` and `yehuda`
- variables. They are only valid on `App.Person`.
-
- To add functions and properties to instances of
- a constructor by extending the constructor's prototype
- see `reopen`
-
- @method reopenClass
- */
- reopenClass: function() {
- var l = arguments.length;
- var args = new Array(l);
- if (l > 0) {
- for (var i = 0; i < l; i++) {
- args[i] = arguments[i];
- }
- }
-
- apply(this.ClassMixin, reopen, args);
- applyMixin(this, arguments, false);
- return this;
- },
-
- detect: function(obj) {
- if ('function' !== typeof obj) { return false; }
- while(obj) {
- if (obj===this) { return true; }
- obj = obj.superclass;
- }
- return false;
- },
-
- detectInstance: function(obj) {
- return obj instanceof this;
- },
-
- /**
- In some cases, you may want to annotate computed properties with additional
- metadata about how they function or what values they operate on. For
- example, computed property functions may close over variables that are then
- no longer available for introspection.
-
- You can pass a hash of these values to a computed property like this:
-
- ```javascript
- person: function() {
- var personId = this.get('personId');
- return App.Person.create({ id: personId });
- }.property().meta({ type: App.Person })
- ```
-
- Once you've done this, you can retrieve the values saved to the computed
- property from your class like this:
-
- ```javascript
- MyClass.metaForProperty('person');
- ```
-
- This will return the original hash that was passed to `meta()`.
-
- @method metaForProperty
- @param key {String} property name
- */
- metaForProperty: function(key) {
- var meta = this.proto()['__ember_meta__'];
- var desc = meta && meta.descs[key];
-
- Ember.assert("metaForProperty() could not find a computed property with key '"+key+"'.", !!desc && desc instanceof ComputedProperty);
- return desc._meta || {};
- },
-
- _computedProperties: computed(function() {
- hasCachedComputedProperties = true;
- var proto = this.proto();
- var descs = meta(proto).descs;
- var property;
- var properties = [];
-
- for (var name in descs) {
- property = descs[name];
-
- if (property instanceof ComputedProperty) {
- properties.push({
- name: name,
- meta: property._meta
- });
- }
- }
- return properties;
- }).readOnly(),
-
- /**
- Iterate over each computed property for the class, passing its name
- and any associated metadata (see `metaForProperty`) to the callback.
-
- @method eachComputedProperty
- @param {Function} callback
- @param {Object} binding
- */
- eachComputedProperty: function(callback, binding) {
- var property, name;
- var empty = {};
-
- var properties = get(this, '_computedProperties');
-
- for (var i = 0, length = properties.length; i < length; i++) {
- property = properties[i];
- name = property.name;
- callback.call(binding || this, property.name, property.meta || empty);
- }
- }
- };
-
-
- var ClassMixin = Mixin.create(ClassMixinProps);
-
- ClassMixin.ownerConstructor = CoreObject;
-
- if (Ember.config.overrideClassMixin) {
- Ember.config.overrideClassMixin(ClassMixin);
- }
-
- CoreObject.ClassMixin = ClassMixin;
-
- ClassMixin.apply(CoreObject);
-
- CoreObject.reopen({
- didDefineProperty: function(proto, key, value) {
- if (hasCachedComputedProperties === false) { return; }
- if (value instanceof Ember.ComputedProperty) {
- var cache = Ember.meta(this.constructor).cache;
-
- if (cache._computedProperties !== undefined) {
- cache._computedProperties = undefined;
- }
- }
- }
- });
-
- __exports__["default"] = CoreObject;
- });
-enifed("ember-runtime/system/deferred",
- ["ember-metal/core","ember-runtime/mixins/deferred","ember-runtime/system/object","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var DeferredMixin = __dependency2__["default"];
- var EmberObject = __dependency3__["default"];
-
- var Deferred = EmberObject.extend(DeferredMixin, {
- init: function() {
- Ember.deprecate('Usage of Ember.Deferred is deprecated.');
- this._super();
- }
- });
-
- Deferred.reopenClass({
- promise: function(callback, binding) {
- var deferred = Deferred.create();
- callback.call(binding, deferred);
- return deferred;
- }
- });
-
- __exports__["default"] = Deferred;
- });
-enifed("ember-runtime/system/each_proxy",
- ["ember-metal/core","ember-metal/property_get","ember-metal/utils","ember-metal/enumerable_utils","ember-metal/array","ember-runtime/mixins/array","ember-runtime/system/object","ember-metal/computed","ember-metal/observer","ember-metal/events","ember-metal/properties","ember-metal/property_events","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.assert
-
- var get = __dependency2__.get;
- var guidFor = __dependency3__.guidFor;
- var forEach = __dependency4__.forEach;
- var indexOf = __dependency5__.indexOf;
- var EmberArray = __dependency6__["default"];
- // ES6TODO: WAT? Circular dep?
- var EmberObject = __dependency7__["default"];
- var computed = __dependency8__.computed;
- var addObserver = __dependency9__.addObserver;
- var addBeforeObserver = __dependency9__.addBeforeObserver;
- var removeBeforeObserver = __dependency9__.removeBeforeObserver;
- var removeObserver = __dependency9__.removeObserver;
- var typeOf = __dependency3__.typeOf;
- var watchedEvents = __dependency10__.watchedEvents;
- var defineProperty = __dependency11__.defineProperty;
- var beginPropertyChanges = __dependency12__.beginPropertyChanges;
- var propertyDidChange = __dependency12__.propertyDidChange;
- var propertyWillChange = __dependency12__.propertyWillChange;
- var endPropertyChanges = __dependency12__.endPropertyChanges;
- var changeProperties = __dependency12__.changeProperties;
-
- var EachArray = EmberObject.extend(EmberArray, {
-
- init: function(content, keyName, owner) {
- this._super();
- this._keyName = keyName;
- this._owner = owner;
- this._content = content;
- },
-
- objectAt: function(idx) {
- var item = this._content.objectAt(idx);
- return item && get(item, this._keyName);
- },
-
- length: computed(function() {
- var content = this._content;
- return content ? get(content, 'length') : 0;
- })
-
- });
-
- var IS_OBSERVER = /^.+:(before|change)$/;
-
- function addObserverForContentKey(content, keyName, proxy, idx, loc) {
- var objects = proxy._objects;
- var guid;
- if (!objects) objects = proxy._objects = {};
-
- while(--loc>=idx) {
- var item = content.objectAt(loc);
- if (item) {
- Ember.assert('When using @each to observe the array ' + content + ', the array must return an object', typeOf(item) === 'instance' || typeOf(item) === 'object');
- addBeforeObserver(item, keyName, proxy, 'contentKeyWillChange');
- addObserver(item, keyName, proxy, 'contentKeyDidChange');
-
- // keep track of the index each item was found at so we can map
- // it back when the obj changes.
- guid = guidFor(item);
- if (!objects[guid]) objects[guid] = [];
- objects[guid].push(loc);
- }
- }
- }
-
- function removeObserverForContentKey(content, keyName, proxy, idx, loc) {
- var objects = proxy._objects;
- if (!objects) objects = proxy._objects = {};
- var indicies, guid;
-
- while(--loc>=idx) {
- var item = content.objectAt(loc);
- if (item) {
- removeBeforeObserver(item, keyName, proxy, 'contentKeyWillChange');
- removeObserver(item, keyName, proxy, 'contentKeyDidChange');
-
- guid = guidFor(item);
- indicies = objects[guid];
- indicies[indexOf.call(indicies, loc)] = null;
- }
- }
- }
-
- /**
- This is the object instance returned when you get the `@each` property on an
- array. It uses the unknownProperty handler to automatically create
- EachArray instances for property names.
-
- @private
- @class EachProxy
- @namespace Ember
- @extends Ember.Object
- */
- var EachProxy = EmberObject.extend({
-
- init: function(content) {
- this._super();
- this._content = content;
- content.addArrayObserver(this);
-
- // in case someone is already observing some keys make sure they are
- // added
- forEach(watchedEvents(this), function(eventName) {
- this.didAddListener(eventName);
- }, this);
- },
-
- /**
- You can directly access mapped properties by simply requesting them.
- The `unknownProperty` handler will generate an EachArray of each item.
-
- @method unknownProperty
- @param keyName {String}
- @param value {*}
- */
- unknownProperty: function(keyName, value) {
- var ret;
- ret = new EachArray(this._content, keyName, this);
- defineProperty(this, keyName, null, ret);
- this.beginObservingContentKey(keyName);
- return ret;
- },
-
- // ..........................................................
- // ARRAY CHANGES
- // Invokes whenever the content array itself changes.
-
- arrayWillChange: function(content, idx, removedCnt, addedCnt) {
- var keys = this._keys;
- var key, lim;
-
- lim = removedCnt>0 ? idx+removedCnt : -1;
- beginPropertyChanges(this);
-
- for(key in keys) {
- if (!keys.hasOwnProperty(key)) { continue; }
-
- if (lim>0) { removeObserverForContentKey(content, key, this, idx, lim); }
-
- propertyWillChange(this, key);
- }
-
- propertyWillChange(this._content, '@each');
- endPropertyChanges(this);
- },
-
- arrayDidChange: function(content, idx, removedCnt, addedCnt) {
- var keys = this._keys;
- var lim;
-
- lim = addedCnt>0 ? idx+addedCnt : -1;
- changeProperties(function() {
- for(var key in keys) {
- if (!keys.hasOwnProperty(key)) { continue; }
-
- if (lim>0) { addObserverForContentKey(content, key, this, idx, lim); }
-
- propertyDidChange(this, key);
- }
-
- propertyDidChange(this._content, '@each');
- }, this);
- },
-
- // ..........................................................
- // LISTEN FOR NEW OBSERVERS AND OTHER EVENT LISTENERS
- // Start monitoring keys based on who is listening...
-
- didAddListener: function(eventName) {
- if (IS_OBSERVER.test(eventName)) {
- this.beginObservingContentKey(eventName.slice(0, -7));
- }
- },
-
- didRemoveListener: function(eventName) {
- if (IS_OBSERVER.test(eventName)) {
- this.stopObservingContentKey(eventName.slice(0, -7));
- }
- },
-
- // ..........................................................
- // CONTENT KEY OBSERVING
- // Actual watch keys on the source content.
-
- beginObservingContentKey: function(keyName) {
- var keys = this._keys;
- if (!keys) keys = this._keys = {};
- if (!keys[keyName]) {
- keys[keyName] = 1;
- var content = this._content;
- var len = get(content, 'length');
-
- addObserverForContentKey(content, keyName, this, 0, len);
- } else {
- keys[keyName]++;
- }
- },
-
- stopObservingContentKey: function(keyName) {
- var keys = this._keys;
- if (keys && (keys[keyName]>0) && (--keys[keyName]<=0)) {
- var content = this._content;
- var len = get(content, 'length');
-
- removeObserverForContentKey(content, keyName, this, 0, len);
- }
- },
-
- contentKeyWillChange: function(obj, keyName) {
- propertyWillChange(this, keyName);
- },
-
- contentKeyDidChange: function(obj, keyName) {
- propertyDidChange(this, keyName);
- }
- });
-
- __exports__.EachArray = EachArray;
- __exports__.EachProxy = EachProxy;
- });
-enifed("ember-runtime/system/lazy_load",
- ["ember-metal/core","ember-metal/array","ember-runtime/system/native_array","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- /*globals CustomEvent */
-
- var Ember = __dependency1__["default"];
- // Ember.ENV.EMBER_LOAD_HOOKS
- var forEach = __dependency2__.forEach;
- // make sure Ember.A is setup.
-
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var loadHooks = Ember.ENV.EMBER_LOAD_HOOKS || {};
- var loaded = {};
-
- /**
- Detects when a specific package of Ember (e.g. 'Ember.Handlebars')
- has fully loaded and is available for extension.
-
- The provided `callback` will be called with the `name` passed
- resolved from a string into the object:
-
- ``` javascript
- Ember.onLoad('Ember.Handlebars' function(hbars) {
- hbars.registerHelper(...);
- });
- ```
-
- @method onLoad
- @for Ember
- @param name {String} name of hook
- @param callback {Function} callback to be called
- */
- function onLoad(name, callback) {
- var object;
-
- loadHooks[name] = loadHooks[name] || Ember.A();
- loadHooks[name].pushObject(callback);
-
- if (object = loaded[name]) {
- callback(object);
- }
- }
-
- __exports__.onLoad = onLoad;/**
- Called when an Ember.js package (e.g Ember.Handlebars) has finished
- loading. Triggers any callbacks registered for this event.
-
- @method runLoadHooks
- @for Ember
- @param name {String} name of hook
- @param object {Object} object to pass to callbacks
- */
- function runLoadHooks(name, object) {
- loaded[name] = object;
-
- if (typeof window === 'object' && typeof window.dispatchEvent === 'function' && typeof CustomEvent === "function") {
- var event = new CustomEvent(name, {detail: object, name: name});
- window.dispatchEvent(event);
- }
-
- if (loadHooks[name]) {
- forEach.call(loadHooks[name], function(callback) {
- callback(object);
- });
- }
- }
-
- __exports__.runLoadHooks = runLoadHooks;
- });
-enifed("ember-runtime/system/namespace",
- ["ember-metal/core","ember-metal/property_get","ember-metal/array","ember-metal/utils","ember-metal/mixin","ember-runtime/system/object","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- // Ember.lookup, Ember.BOOTED, Ember.deprecate, Ember.NAME_KEY, Ember.anyUnprocessedMixins
- var Ember = __dependency1__["default"];
- var get = __dependency2__.get;
- var indexOf = __dependency3__.indexOf;
- var GUID_KEY = __dependency4__.GUID_KEY;
- var guidFor = __dependency4__.guidFor;
- var Mixin = __dependency5__.Mixin;
-
- var EmberObject = __dependency6__["default"];
-
- /**
- A Namespace is an object usually used to contain other objects or methods
- such as an application or framework. Create a namespace anytime you want
- to define one of these new containers.
-
- # Example Usage
-
- ```javascript
- MyFramework = Ember.Namespace.create({
- VERSION: '1.0.0'
- });
- ```
-
- @class Namespace
- @namespace Ember
- @extends Ember.Object
- */
- var Namespace = EmberObject.extend({
- isNamespace: true,
-
- init: function() {
- Namespace.NAMESPACES.push(this);
- Namespace.PROCESSED = false;
- },
-
- toString: function() {
- var name = get(this, 'name') || get(this, 'modulePrefix');
- if (name) { return name; }
-
- findNamespaces();
- return this[NAME_KEY];
- },
-
- nameClasses: function() {
- processNamespace([this.toString()], this, {});
- },
-
- destroy: function() {
- var namespaces = Namespace.NAMESPACES;
- var toString = this.toString();
-
- if (toString) {
- Ember.lookup[toString] = undefined;
- delete Namespace.NAMESPACES_BY_ID[toString];
- }
- namespaces.splice(indexOf.call(namespaces, this), 1);
- this._super();
- }
- });
-
- Namespace.reopenClass({
- NAMESPACES: [Ember],
- NAMESPACES_BY_ID: {},
- PROCESSED: false,
- processAll: processAllNamespaces,
- byName: function(name) {
- if (!Ember.BOOTED) {
- processAllNamespaces();
- }
-
- return NAMESPACES_BY_ID[name];
- }
- });
-
- var NAMESPACES_BY_ID = Namespace.NAMESPACES_BY_ID;
-
- var hasOwnProp = ({}).hasOwnProperty;
-
- function processNamespace(paths, root, seen) {
- var idx = paths.length;
-
- NAMESPACES_BY_ID[paths.join('.')] = root;
-
- // Loop over all of the keys in the namespace, looking for classes
- for(var key in root) {
- if (!hasOwnProp.call(root, key)) { continue; }
- var obj = root[key];
-
- // If we are processing the `Ember` namespace, for example, the
- // `paths` will start with `["Ember"]`. Every iteration through
- // the loop will update the **second** element of this list with
- // the key, so processing `Ember.View` will make the Array
- // `['Ember', 'View']`.
- paths[idx] = key;
-
- // If we have found an unprocessed class
- if (obj && obj.toString === classToString) {
- // Replace the class' `toString` with the dot-separated path
- // and set its `NAME_KEY`
- obj.toString = makeToString(paths.join('.'));
- obj[NAME_KEY] = paths.join('.');
-
- // Support nested namespaces
- } else if (obj && obj.isNamespace) {
- // Skip aliased namespaces
- if (seen[guidFor(obj)]) { continue; }
- seen[guidFor(obj)] = true;
-
- // Process the child namespace
- processNamespace(paths, obj, seen);
- }
- }
-
- paths.length = idx; // cut out last item
- }
-
- var STARTS_WITH_UPPERCASE = /^[A-Z]/;
-
- function tryIsNamespace(lookup, prop) {
- try {
- var obj = lookup[prop];
- return obj && obj.isNamespace && obj;
- } catch (e) {
- // continue
- }
- }
-
- function findNamespaces() {
- var lookup = Ember.lookup;
- var obj;
-
- if (Namespace.PROCESSED) { return; }
-
- for (var prop in lookup) {
- // Only process entities that start with uppercase A-Z
- if (!STARTS_WITH_UPPERCASE.test(prop)) { continue; }
-
- // Unfortunately, some versions of IE don't support window.hasOwnProperty
- if (lookup.hasOwnProperty && !lookup.hasOwnProperty(prop)) { continue; }
-
- // At times we are not allowed to access certain properties for security reasons.
- // There are also times where even if we can access them, we are not allowed to access their properties.
- obj = tryIsNamespace(lookup, prop);
- if (obj) {
- obj[NAME_KEY] = prop;
- }
- }
- }
-
- var NAME_KEY = Ember.NAME_KEY = GUID_KEY + '_name';
-
- function superClassString(mixin) {
- var superclass = mixin.superclass;
- if (superclass) {
- if (superclass[NAME_KEY]) { return superclass[NAME_KEY]; }
- else { return superClassString(superclass); }
- } else {
- return;
- }
- }
-
- function classToString() {
- if (!Ember.BOOTED && !this[NAME_KEY]) {
- processAllNamespaces();
- }
-
- var ret;
-
- if (this[NAME_KEY]) {
- ret = this[NAME_KEY];
- } else if (this._toString) {
- ret = this._toString;
- } else {
- var str = superClassString(this);
- if (str) {
- ret = "(subclass of " + str + ")";
- } else {
- ret = "(unknown mixin)";
- }
- this.toString = makeToString(ret);
- }
-
- return ret;
- }
-
- function processAllNamespaces() {
- var unprocessedNamespaces = !Namespace.PROCESSED;
- var unprocessedMixins = Ember.anyUnprocessedMixins;
-
- if (unprocessedNamespaces) {
- findNamespaces();
- Namespace.PROCESSED = true;
- }
-
- if (unprocessedNamespaces || unprocessedMixins) {
- var namespaces = Namespace.NAMESPACES;
- var namespace;
-
- for (var i=0, l=namespaces.length; i 0) {
- NativeArray = NativeArray.without.apply(NativeArray, ignore);
- }
-
- /**
- Creates an `Ember.NativeArray` from an Array like object.
- Does not modify the original object. Ember.A is not needed if
- `Ember.EXTEND_PROTOTYPES` is `true` (the default value). However,
- it is recommended that you use Ember.A when creating addons for
- ember or when you can not guarantee that `Ember.EXTEND_PROTOTYPES`
- will be `true`.
-
- Example
-
- ```js
- var Pagination = Ember.CollectionView.extend({
- tagName: 'ul',
- classNames: ['pagination'],
-
- init: function() {
- this._super();
- if (!this.get('content')) {
- this.set('content', Ember.A());
- }
- }
- });
- ```
-
- @method A
- @for Ember
- @return {Ember.NativeArray}
- */
- var A = function(arr) {
- if (arr === undefined) { arr = []; }
- return EmberArray.detect(arr) ? arr : NativeArray.apply(arr);
- };
-
- /**
- Activates the mixin on the Array.prototype if not already applied. Calling
- this method more than once is safe. This will be called when ember is loaded
- unless you have `Ember.EXTEND_PROTOTYPES` or `Ember.EXTEND_PROTOTYPES.Array`
- set to `false`.
-
- Example
-
- ```js
- if (Ember.EXTEND_PROTOTYPES === true || Ember.EXTEND_PROTOTYPES.Array) {
- Ember.NativeArray.activate();
- }
- ```
-
- @method activate
- @for Ember.NativeArray
- @static
- @return {void}
- */
- NativeArray.activate = function() {
- NativeArray.apply(Array.prototype);
-
- A = function(arr) { return arr || []; };
- };
-
- if (Ember.EXTEND_PROTOTYPES === true || Ember.EXTEND_PROTOTYPES.Array) {
- NativeArray.activate();
- }
-
- Ember.A = A; // ES6TODO: Setting A onto the object returned by ember-metal/core to avoid circles
- __exports__.A = A;
- __exports__.NativeArray = NativeArray;
- __exports__["default"] = NativeArray;
- });
-enifed("ember-runtime/system/object",
- ["ember-metal/core","ember-runtime/system/core_object","ember-runtime/mixins/observable","ember-runtime/inject","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
-
- var Ember = __dependency1__["default"];
- // Ember.assert
- var CoreObject = __dependency2__["default"];
- var Observable = __dependency3__["default"];
- var validatePropertyInjections = __dependency4__.validatePropertyInjections;
-
- /**
- `Ember.Object` is the main base class for all Ember objects. It is a subclass
- of `Ember.CoreObject` with the `Ember.Observable` mixin applied. For details,
- see the documentation for each of these.
-
- @class Object
- @namespace Ember
- @extends Ember.CoreObject
- @uses Ember.Observable
- */
- var EmberObject = CoreObject.extend(Observable);
- EmberObject.toString = function() {
- return "Ember.Object";
- };
-
- function injectedPropertyAssertion(props) {
- // Injection validations are a debugging aid only, so ensure that they are
- // not performed in production builds by invoking from an assertion
- Ember.assert("Injected properties are invalid", validatePropertyInjections(this.constructor, props));
- }
-
-
- __exports__["default"] = EmberObject;
- });
-enifed("ember-runtime/system/object_proxy",
- ["ember-runtime/system/object","ember-runtime/mixins/-proxy","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var EmberObject = __dependency1__["default"];
- var _ProxyMixin = __dependency2__["default"];
-
- /**
- `Ember.ObjectProxy` forwards all properties not defined by the proxy itself
- to a proxied `content` object.
-
- ```javascript
- object = Ember.Object.create({
- name: 'Foo'
- });
-
- proxy = Ember.ObjectProxy.create({
- content: object
- });
-
- // Access and change existing properties
- proxy.get('name') // 'Foo'
- proxy.set('name', 'Bar');
- object.get('name') // 'Bar'
-
- // Create new 'description' property on `object`
- proxy.set('description', 'Foo is a whizboo baz');
- object.get('description') // 'Foo is a whizboo baz'
- ```
-
- While `content` is unset, setting a property to be delegated will throw an
- Error.
-
- ```javascript
- proxy = Ember.ObjectProxy.create({
- content: null,
- flag: null
- });
- proxy.set('flag', true);
- proxy.get('flag'); // true
- proxy.get('foo'); // undefined
- proxy.set('foo', 'data'); // throws Error
- ```
-
- Delegated properties can be bound to and will change when content is updated.
-
- Computed properties on the proxy itself can depend on delegated properties.
-
- ```javascript
- ProxyWithComputedProperty = Ember.ObjectProxy.extend({
- fullName: function () {
- var firstName = this.get('firstName'),
- lastName = this.get('lastName');
- if (firstName && lastName) {
- return firstName + ' ' + lastName;
- }
- return firstName || lastName;
- }.property('firstName', 'lastName')
- });
-
- proxy = ProxyWithComputedProperty.create();
-
- proxy.get('fullName'); // undefined
- proxy.set('content', {
- firstName: 'Tom', lastName: 'Dale'
- }); // triggers property change for fullName on proxy
-
- proxy.get('fullName'); // 'Tom Dale'
- ```
-
- @class ObjectProxy
- @namespace Ember
- @extends Ember.Object
- @extends Ember._ProxyMixin
- */
-
- __exports__["default"] = EmberObject.extend(_ProxyMixin);
- });
-enifed("ember-runtime/system/service",
- ["ember-runtime/system/object","ember-runtime/inject","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Object = __dependency1__["default"];
- var createInjectionHelper = __dependency2__.createInjectionHelper;
-
- var Service;
-
-
- __exports__["default"] = Service;
- });
-enifed("ember-runtime/system/set",
- ["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/utils","ember-metal/is_none","ember-runtime/system/string","ember-runtime/system/core_object","ember-runtime/mixins/mutable_enumerable","ember-runtime/mixins/enumerable","ember-runtime/mixins/copyable","ember-runtime/mixins/freezable","ember-metal/error","ember-metal/property_events","ember-metal/mixin","ember-metal/computed","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __dependency13__, __dependency14__, __dependency15__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
- var Ember = __dependency1__["default"];
- // Ember.isNone, Ember.A
-
- var get = __dependency2__.get;
- var set = __dependency3__.set;
- var guidFor = __dependency4__.guidFor;
- var isNone = __dependency5__["default"];
- var fmt = __dependency6__.fmt;
- var CoreObject = __dependency7__["default"];
- var MutableEnumerable = __dependency8__["default"];
- var Enumerable = __dependency9__["default"];
- var Copyable = __dependency10__["default"];
- var Freezable = __dependency11__.Freezable;
- var FROZEN_ERROR = __dependency11__.FROZEN_ERROR;
- var EmberError = __dependency12__["default"];
- var propertyWillChange = __dependency13__.propertyWillChange;
- var propertyDidChange = __dependency13__.propertyDidChange;
- var aliasMethod = __dependency14__.aliasMethod;
- var computed = __dependency15__.computed;
-
- /**
- An unordered collection of objects.
-
- A Set works a bit like an array except that its items are not ordered. You
- can create a set to efficiently test for membership for an object. You can
- also iterate through a set just like an array, even accessing objects by
- index, however there is no guarantee as to their order.
-
- All Sets are observable via the Enumerable Observer API - which works
- on any enumerable object including both Sets and Arrays.
-
- ## Creating a Set
-
- You can create a set like you would most objects using
- `new Ember.Set()`. Most new sets you create will be empty, but you can
- also initialize the set with some content by passing an array or other
- enumerable of objects to the constructor.
-
- Finally, you can pass in an existing set and the set will be copied. You
- can also create a copy of a set by calling `Ember.Set#copy()`.
-
- ```javascript
- // creates a new empty set
- var foundNames = new Ember.Set();
-
- // creates a set with four names in it.
- var names = new Ember.Set(["Charles", "Tom", "Juan", "Alex"]); // :P
-
- // creates a copy of the names set.
- var namesCopy = new Ember.Set(names);
-
- // same as above.
- var anotherNamesCopy = names.copy();
- ```
-
- ## Adding/Removing Objects
-
- You generally add or remove objects from a set using `add()` or
- `remove()`. You can add any type of object including primitives such as
- numbers, strings, and booleans.
-
- Unlike arrays, objects can only exist one time in a set. If you call `add()`
- on a set with the same object multiple times, the object will only be added
- once. Likewise, calling `remove()` with the same object multiple times will
- remove the object the first time and have no effect on future calls until
- you add the object to the set again.
-
- NOTE: You cannot add/remove `null` or `undefined` to a set. Any attempt to do
- so will be ignored.
-
- In addition to add/remove you can also call `push()`/`pop()`. Push behaves
- just like `add()` but `pop()`, unlike `remove()` will pick an arbitrary
- object, remove it and return it. This is a good way to use a set as a job
- queue when you don't care which order the jobs are executed in.
-
- ## Testing for an Object
-
- To test for an object's presence in a set you simply call
- `Ember.Set#contains()`.
-
- ## Observing changes
-
- When using `Ember.Set`, you can observe the `"[]"` property to be
- alerted whenever the content changes. You can also add an enumerable
- observer to the set to be notified of specific objects that are added and
- removed from the set. See [Ember.Enumerable](/api/classes/Ember.Enumerable.html)
- for more information on enumerables.
-
- This is often unhelpful. If you are filtering sets of objects, for instance,
- it is very inefficient to re-filter all of the items each time the set
- changes. It would be better if you could just adjust the filtered set based
- on what was changed on the original set. The same issue applies to merging
- sets, as well.
-
- ## Other Methods
-
- `Ember.Set` primary implements other mixin APIs. For a complete reference
- on the methods you will use with `Ember.Set`, please consult these mixins.
- The most useful ones will be `Ember.Enumerable` and
- `Ember.MutableEnumerable` which implement most of the common iterator
- methods you are used to on Array.
-
- Note that you can also use the `Ember.Copyable` and `Ember.Freezable`
- APIs on `Ember.Set` as well. Once a set is frozen it can no longer be
- modified. The benefit of this is that when you call `frozenCopy()` on it,
- Ember will avoid making copies of the set. This allows you to write
- code that can know with certainty when the underlying set data will or
- will not be modified.
-
- @class Set
- @namespace Ember
- @extends Ember.CoreObject
- @uses Ember.MutableEnumerable
- @uses Ember.Copyable
- @uses Ember.Freezable
- @since Ember 0.9
- @deprecated
- */
- __exports__["default"] = CoreObject.extend(MutableEnumerable, Copyable, Freezable, {
-
- // ..........................................................
- // IMPLEMENT ENUMERABLE APIS
- //
-
- /**
- This property will change as the number of objects in the set changes.
-
- @property length
- @type number
- @default 0
- */
- length: 0,
-
- /**
- Clears the set. This is useful if you want to reuse an existing set
- without having to recreate it.
-
- ```javascript
- var colors = new Ember.Set(["red", "green", "blue"]);
- colors.length; // 3
- colors.clear();
- colors.length; // 0
- ```
-
- @method clear
- @return {Ember.Set} An empty Set
- */
- clear: function() {
- if (this.isFrozen) { throw new EmberError(FROZEN_ERROR); }
-
- var len = get(this, 'length');
- if (len === 0) { return this; }
-
- var guid;
-
- this.enumerableContentWillChange(len, 0);
- propertyWillChange(this, 'firstObject');
- propertyWillChange(this, 'lastObject');
-
- for (var i=0; i < len; i++) {
- guid = guidFor(this[i]);
- delete this[guid];
- delete this[i];
- }
-
- set(this, 'length', 0);
-
- propertyDidChange(this, 'firstObject');
- propertyDidChange(this, 'lastObject');
- this.enumerableContentDidChange(len, 0);
-
- return this;
- },
-
- /**
- Returns true if the passed object is also an enumerable that contains the
- same objects as the receiver.
-
- ```javascript
- var colors = ["red", "green", "blue"],
- same_colors = new Ember.Set(colors);
-
- same_colors.isEqual(colors); // true
- same_colors.isEqual(["purple", "brown"]); // false
- ```
-
- @method isEqual
- @param {Ember.Set} obj the other object.
- @return {Boolean}
- */
- isEqual: function(obj) {
- // fail fast
- if (!Enumerable.detect(obj)) return false;
-
- var loc = get(this, 'length');
- if (get(obj, 'length') !== loc) return false;
-
- while(--loc >= 0) {
- if (!obj.contains(this[loc])) return false;
- }
-
- return true;
- },
-
- /**
- Adds an object to the set. Only non-`null` objects can be added to a set
- and those can only be added once. If the object is already in the set or
- the passed value is null this method will have no effect.
-
- This is an alias for `Ember.MutableEnumerable.addObject()`.
-
- ```javascript
- var colors = new Ember.Set();
- colors.add("blue"); // ["blue"]
- colors.add("blue"); // ["blue"]
- colors.add("red"); // ["blue", "red"]
- colors.add(null); // ["blue", "red"]
- colors.add(undefined); // ["blue", "red"]
- ```
-
- @method add
- @param {Object} obj The object to add.
- @return {Ember.Set} The set itself.
- */
- add: aliasMethod('addObject'),
-
- /**
- Removes the object from the set if it is found. If you pass a `null` value
- or an object that is already not in the set, this method will have no
- effect. This is an alias for `Ember.MutableEnumerable.removeObject()`.
-
- ```javascript
- var colors = new Ember.Set(["red", "green", "blue"]);
- colors.remove("red"); // ["blue", "green"]
- colors.remove("purple"); // ["blue", "green"]
- colors.remove(null); // ["blue", "green"]
- ```
-
- @method remove
- @param {Object} obj The object to remove
- @return {Ember.Set} The set itself.
- */
- remove: aliasMethod('removeObject'),
-
- /**
- Removes the last element from the set and returns it, or `null` if it's empty.
-
- ```javascript
- var colors = new Ember.Set(["green", "blue"]);
- colors.pop(); // "blue"
- colors.pop(); // "green"
- colors.pop(); // null
- ```
-
- @method pop
- @return {Object} The removed object from the set or null.
- */
- pop: function() {
- if (get(this, 'isFrozen')) throw new EmberError(FROZEN_ERROR);
- var obj = this.length > 0 ? this[this.length-1] : null;
- this.remove(obj);
- return obj;
- },
-
- /**
- Inserts the given object on to the end of the set. It returns
- the set itself.
-
- This is an alias for `Ember.MutableEnumerable.addObject()`.
-
- ```javascript
- var colors = new Ember.Set();
- colors.push("red"); // ["red"]
- colors.push("green"); // ["red", "green"]
- colors.push("blue"); // ["red", "green", "blue"]
- ```
-
- @method push
- @return {Ember.Set} The set itself.
- */
- push: aliasMethod('addObject'),
-
- /**
- Removes the last element from the set and returns it, or `null` if it's empty.
-
- This is an alias for `Ember.Set.pop()`.
-
- ```javascript
- var colors = new Ember.Set(["green", "blue"]);
- colors.shift(); // "blue"
- colors.shift(); // "green"
- colors.shift(); // null
- ```
-
- @method shift
- @return {Object} The removed object from the set or null.
- */
- shift: aliasMethod('pop'),
-
- /**
- Inserts the given object on to the end of the set. It returns
- the set itself.
-
- This is an alias of `Ember.Set.push()`
-
- ```javascript
- var colors = new Ember.Set();
- colors.unshift("red"); // ["red"]
- colors.unshift("green"); // ["red", "green"]
- colors.unshift("blue"); // ["red", "green", "blue"]
- ```
-
- @method unshift
- @return {Ember.Set} The set itself.
- */
- unshift: aliasMethod('push'),
-
- /**
- Adds each object in the passed enumerable to the set.
-
- This is an alias of `Ember.MutableEnumerable.addObjects()`
-
- ```javascript
- var colors = new Ember.Set();
- colors.addEach(["red", "green", "blue"]); // ["red", "green", "blue"]
- ```
-
- @method addEach
- @param {Ember.Enumerable} objects the objects to add.
- @return {Ember.Set} The set itself.
- */
- addEach: aliasMethod('addObjects'),
-
- /**
- Removes each object in the passed enumerable to the set.
-
- This is an alias of `Ember.MutableEnumerable.removeObjects()`
-
- ```javascript
- var colors = new Ember.Set(["red", "green", "blue"]);
- colors.removeEach(["red", "blue"]); // ["green"]
- ```
-
- @method removeEach
- @param {Ember.Enumerable} objects the objects to remove.
- @return {Ember.Set} The set itself.
- */
- removeEach: aliasMethod('removeObjects'),
-
- // ..........................................................
- // PRIVATE ENUMERABLE SUPPORT
- //
-
- init: function(items) {
- Ember.deprecate('Ember.Set is deprecated and will be removed in a future release.');
- this._super();
- if (items) this.addObjects(items);
- },
-
- // implement Ember.Enumerable
- nextObject: function(idx) {
- return this[idx];
- },
-
- // more optimized version
- firstObject: computed(function() {
- return this.length > 0 ? this[0] : undefined;
- }),
-
- // more optimized version
- lastObject: computed(function() {
- return this.length > 0 ? this[this.length-1] : undefined;
- }),
-
- // implements Ember.MutableEnumerable
- addObject: function(obj) {
- if (get(this, 'isFrozen')) throw new EmberError(FROZEN_ERROR);
- if (isNone(obj)) return this; // nothing to do
-
- var guid = guidFor(obj);
- var idx = this[guid];
- var len = get(this, 'length');
- var added;
-
- if (idx>=0 && idx=0 && idx=0;
- },
-
- copy: function() {
- var C = this.constructor, ret = new C(), loc = get(this, 'length');
- set(ret, 'length', loc);
- while(--loc>=0) {
- ret[loc] = this[loc];
- ret[guidFor(this[loc])] = loc;
- }
- return ret;
- },
-
- toString: function() {
- var len = this.length, idx, array = [];
- for(idx = 0; idx < len; idx++) {
- array[idx] = this[idx];
- }
- return fmt("Ember.Set<%@>", [array.join(',')]);
- }
- });
- });
-enifed("ember-runtime/system/string",
- ["ember-metal/core","ember-metal/utils","ember-metal/cache","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-runtime
- */
- var Ember = __dependency1__["default"];
- // Ember.STRINGS, Ember.FEATURES
- var isArray = __dependency2__.isArray;
- var emberInspect = __dependency2__.inspect;
-
- var Cache = __dependency3__["default"];
-
- var STRING_DASHERIZE_REGEXP = (/[ _]/g);
-
- var STRING_DASHERIZE_CACHE = new Cache(1000, function(key) {
- return decamelize(key).replace(STRING_DASHERIZE_REGEXP, '-');
- });
-
- var CAMELIZE_CACHE = new Cache(1000, function(key) {
- return key.replace(STRING_CAMELIZE_REGEXP, function(match, separator, chr) {
- return chr ? chr.toUpperCase() : '';
- }).replace(/^([A-Z])/, function(match, separator, chr) {
- return match.toLowerCase();
- });
- });
-
- var CLASSIFY_CACHE = new Cache(1000, function(str) {
- var parts = str.split(".");
- var out = [];
-
- for (var i=0, l=parts.length; i 2) {
- cachedFormats = new Array(arguments.length - 1);
-
- for (var i = 1, l = arguments.length; i < l; i++) {
- cachedFormats[i - 1] = arguments[i];
- }
- }
-
- // first, replace any ORDERED replacements.
- var idx = 0; // the current index for non-numerical replacements
- return str.replace(/%@([0-9]+)?/g, function(s, argIndex) {
- argIndex = (argIndex) ? parseInt(argIndex, 10) - 1 : idx++;
- s = cachedFormats[argIndex];
- return (s === null) ? '(null)' : (s === undefined) ? '' : emberInspect(s);
- });
- }
-
- function loc(str, formats) {
- if (!isArray(formats) || arguments.length > 2) {
- formats = Array.prototype.slice.call(arguments, 1);
- }
-
- str = Ember.STRINGS[str] || str;
- return fmt(str, formats);
- }
-
- function w(str) {
- return str.split(/\s+/);
- }
-
- function decamelize(str) {
- return DECAMELIZE_CACHE.get(str);
- }
-
- function dasherize(str) {
- return STRING_DASHERIZE_CACHE.get(str);
- }
-
- function camelize(str) {
- return CAMELIZE_CACHE.get(str);
- }
-
- function classify(str) {
- return CLASSIFY_CACHE.get(str);
- }
-
- function underscore(str) {
- return UNDERSCORE_CACHE.get(str);
- }
-
- function capitalize(str) {
- return CAPITALIZE_CACHE.get(str);
- }
-
- /**
- Defines the hash of localized strings for the current language. Used by
- the `Ember.String.loc()` helper. To localize, add string values to this
- hash.
-
- @property STRINGS
- @for Ember
- @type Hash
- */
- Ember.STRINGS = {};
-
- /**
- Defines string helper methods including string formatting and localization.
- Unless `Ember.EXTEND_PROTOTYPES.String` is `false` these methods will also be
- added to the `String.prototype` as well.
-
- @class String
- @namespace Ember
- @static
- */
- __exports__["default"] = {
- /**
- Apply formatting options to the string. This will look for occurrences
- of "%@" in your string and substitute them with the arguments you pass into
- this method. If you want to control the specific order of replacement,
- you can add a number after the key as well to indicate which argument
- you want to insert.
-
- Ordered insertions are most useful when building loc strings where values
- you need to insert may appear in different orders.
-
- ```javascript
- "Hello %@ %@".fmt('John', 'Doe'); // "Hello John Doe"
- "Hello %@2, %@1".fmt('John', 'Doe'); // "Hello Doe, John"
- ```
-
- @method fmt
- @param {String} str The string to format
- @param {Array} formats An array of parameters to interpolate into string.
- @return {String} formatted string
- */
- fmt: fmt,
-
- /**
- Formats the passed string, but first looks up the string in the localized
- strings hash. This is a convenient way to localize text. See
- `Ember.String.fmt()` for more information on formatting.
-
- Note that it is traditional but not required to prefix localized string
- keys with an underscore or other character so you can easily identify
- localized strings.
-
- ```javascript
- Ember.STRINGS = {
- '_Hello World': 'Bonjour le monde',
- '_Hello %@ %@': 'Bonjour %@ %@'
- };
-
- Ember.String.loc("_Hello World"); // 'Bonjour le monde';
- Ember.String.loc("_Hello %@ %@", ["John", "Smith"]); // "Bonjour John Smith";
- ```
-
- @method loc
- @param {String} str The string to format
- @param {Array} formats Optional array of parameters to interpolate into string.
- @return {String} formatted string
- */
- loc: loc,
-
- /**
- Splits a string into separate units separated by spaces, eliminating any
- empty strings in the process. This is a convenience method for split that
- is mostly useful when applied to the `String.prototype`.
-
- ```javascript
- Ember.String.w("alpha beta gamma").forEach(function(key) {
- console.log(key);
- });
-
- // > alpha
- // > beta
- // > gamma
- ```
-
- @method w
- @param {String} str The string to split
- @return {Array} array containing the split strings
- */
- w: w,
-
- /**
- Converts a camelized string into all lower case separated by underscores.
-
- ```javascript
- 'innerHTML'.decamelize(); // 'inner_html'
- 'action_name'.decamelize(); // 'action_name'
- 'css-class-name'.decamelize(); // 'css-class-name'
- 'my favorite items'.decamelize(); // 'my favorite items'
- ```
-
- @method decamelize
- @param {String} str The string to decamelize.
- @return {String} the decamelized string.
- */
- decamelize: decamelize,
-
- /**
- Replaces underscores, spaces, or camelCase with dashes.
-
- ```javascript
- 'innerHTML'.dasherize(); // 'inner-html'
- 'action_name'.dasherize(); // 'action-name'
- 'css-class-name'.dasherize(); // 'css-class-name'
- 'my favorite items'.dasherize(); // 'my-favorite-items'
- ```
-
- @method dasherize
- @param {String} str The string to dasherize.
- @return {String} the dasherized string.
- */
- dasherize: dasherize,
-
- /**
- Returns the lowerCamelCase form of a string.
-
- ```javascript
- 'innerHTML'.camelize(); // 'innerHTML'
- 'action_name'.camelize(); // 'actionName'
- 'css-class-name'.camelize(); // 'cssClassName'
- 'my favorite items'.camelize(); // 'myFavoriteItems'
- 'My Favorite Items'.camelize(); // 'myFavoriteItems'
- ```
-
- @method camelize
- @param {String} str The string to camelize.
- @return {String} the camelized string.
- */
- camelize: camelize,
-
- /**
- Returns the UpperCamelCase form of a string.
-
- ```javascript
- 'innerHTML'.classify(); // 'InnerHTML'
- 'action_name'.classify(); // 'ActionName'
- 'css-class-name'.classify(); // 'CssClassName'
- 'my favorite items'.classify(); // 'MyFavoriteItems'
- ```
-
- @method classify
- @param {String} str the string to classify
- @return {String} the classified string
- */
- classify: classify,
-
- /**
- More general than decamelize. Returns the lower\_case\_and\_underscored
- form of a string.
-
- ```javascript
- 'innerHTML'.underscore(); // 'inner_html'
- 'action_name'.underscore(); // 'action_name'
- 'css-class-name'.underscore(); // 'css_class_name'
- 'my favorite items'.underscore(); // 'my_favorite_items'
- ```
-
- @method underscore
- @param {String} str The string to underscore.
- @return {String} the underscored string.
- */
- underscore: underscore,
-
- /**
- Returns the Capitalized form of a string
-
- ```javascript
- 'innerHTML'.capitalize() // 'InnerHTML'
- 'action_name'.capitalize() // 'Action_name'
- 'css-class-name'.capitalize() // 'Css-class-name'
- 'my favorite items'.capitalize() // 'My favorite items'
- ```
-
- @method capitalize
- @param {String} str The string to capitalize.
- @return {String} The capitalized string.
- */
- capitalize: capitalize
- };
-
- __exports__.fmt = fmt;
- __exports__.loc = loc;
- __exports__.w = w;
- __exports__.decamelize = decamelize;
- __exports__.dasherize = dasherize;
- __exports__.camelize = camelize;
- __exports__.classify = classify;
- __exports__.underscore = underscore;
- __exports__.capitalize = capitalize;
- });
-enifed("ember-runtime/system/subarray",
- ["ember-metal/error","ember-metal/enumerable_utils","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var EmberError = __dependency1__["default"];
- var EnumerableUtils = __dependency2__["default"];
-
- var RETAIN = 'r';
- var FILTER = 'f';
-
- function Operation(type, count) {
- this.type = type;
- this.count = count;
- }
-
- __exports__["default"] = SubArray;
-
- /**
- An `Ember.SubArray` tracks an array in a way similar to, but more specialized
- than, `Ember.TrackedArray`. It is useful for keeping track of the indexes of
- items within a filtered array.
-
- @class SubArray
- @namespace Ember
- */
- function SubArray (length) {
- if (arguments.length < 1) { length = 0; }
-
- if (length > 0) {
- this._operations = [new Operation(RETAIN, length)];
- } else {
- this._operations = [];
- }
- }
-
-
- SubArray.prototype = {
- /**
- Track that an item was added to the tracked array.
-
- @method addItem
-
- @param {Number} index The index of the item in the tracked array.
- @param {Boolean} match `true` iff the item is included in the subarray.
-
- @return {number} The index of the item in the subarray.
- */
- addItem: function(index, match) {
- var returnValue = -1;
- var itemType = match ? RETAIN : FILTER;
- var self = this;
-
- this._findOperation(index, function(operation, operationIndex, rangeStart, rangeEnd, seenInSubArray) {
- var newOperation, splitOperation;
-
- if (itemType === operation.type) {
- ++operation.count;
- } else if (index === rangeStart) {
- // insert to the left of `operation`
- self._operations.splice(operationIndex, 0, new Operation(itemType, 1));
- } else {
- newOperation = new Operation(itemType, 1);
- splitOperation = new Operation(operation.type, rangeEnd - index + 1);
- operation.count = index - rangeStart;
-
- self._operations.splice(operationIndex + 1, 0, newOperation, splitOperation);
- }
-
- if (match) {
- if (operation.type === RETAIN) {
- returnValue = seenInSubArray + (index - rangeStart);
- } else {
- returnValue = seenInSubArray;
- }
- }
-
- self._composeAt(operationIndex);
- }, function(seenInSubArray) {
- self._operations.push(new Operation(itemType, 1));
-
- if (match) {
- returnValue = seenInSubArray;
- }
-
- self._composeAt(self._operations.length-1);
- });
-
- return returnValue;
- },
-
- /**
- Track that an item was removed from the tracked array.
-
- @method removeItem
-
- @param {Number} index The index of the item in the tracked array.
-
- @return {number} The index of the item in the subarray, or `-1` if the item
- was not in the subarray.
- */
- removeItem: function(index) {
- var returnValue = -1;
- var self = this;
-
- this._findOperation(index, function (operation, operationIndex, rangeStart, rangeEnd, seenInSubArray) {
- if (operation.type === RETAIN) {
- returnValue = seenInSubArray + (index - rangeStart);
- }
-
- if (operation.count > 1) {
- --operation.count;
- } else {
- self._operations.splice(operationIndex, 1);
- self._composeAt(operationIndex);
- }
- }, function() {
- throw new EmberError("Can't remove an item that has never been added.");
- });
-
- return returnValue;
- },
-
-
- _findOperation: function (index, foundCallback, notFoundCallback) {
- var seenInSubArray = 0;
- var operationIndex, len, operation, rangeStart, rangeEnd;
-
- // OPTIMIZE: change to balanced tree
- // find leftmost operation to the right of `index`
- for (operationIndex = rangeStart = 0, len = this._operations.length; operationIndex < len; rangeStart = rangeEnd + 1, ++operationIndex) {
- operation = this._operations[operationIndex];
- rangeEnd = rangeStart + operation.count - 1;
-
- if (index >= rangeStart && index <= rangeEnd) {
- foundCallback(operation, operationIndex, rangeStart, rangeEnd, seenInSubArray);
- return;
- } else if (operation.type === RETAIN) {
- seenInSubArray += operation.count;
- }
- }
-
- notFoundCallback(seenInSubArray);
- },
-
- _composeAt: function(index) {
- var op = this._operations[index];
- var otherOp;
-
- if (!op) {
- // Composing out of bounds is a no-op, as when removing the last operation
- // in the list.
- return;
- }
-
- if (index > 0) {
- otherOp = this._operations[index-1];
- if (otherOp.type === op.type) {
- op.count += otherOp.count;
- this._operations.splice(index-1, 1);
- --index;
- }
- }
-
- if (index < this._operations.length-1) {
- otherOp = this._operations[index+1];
- if (otherOp.type === op.type) {
- op.count += otherOp.count;
- this._operations.splice(index+1, 1);
- }
- }
- },
-
- toString: function () {
- var str = "";
- EnumerableUtils.forEach(this._operations, function (operation) {
- str += " " + operation.type + ":" + operation.count;
- });
- return str.substring(1);
- }
- };
- });
-enifed("ember-runtime/system/tracked_array",
- ["ember-metal/property_get","ember-metal/enumerable_utils","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var get = __dependency1__.get;
- var forEach = __dependency2__.forEach;
-
- var RETAIN = 'r';
- var INSERT = 'i';
- var DELETE = 'd';
-
- __exports__["default"] = TrackedArray;
-
- /**
- An `Ember.TrackedArray` tracks array operations. It's useful when you want to
- lazily compute the indexes of items in an array after they've been shifted by
- subsequent operations.
-
- @class TrackedArray
- @namespace Ember
- @param {Array} [items=[]] The array to be tracked. This is used just to get
- the initial items for the starting state of retain:n.
- */
- function TrackedArray(items) {
- if (arguments.length < 1) { items = []; }
-
- var length = get(items, 'length');
-
- if (length) {
- this._operations = [new ArrayOperation(RETAIN, length, items)];
- } else {
- this._operations = [];
- }
- }
-
- TrackedArray.RETAIN = RETAIN;
- TrackedArray.INSERT = INSERT;
- TrackedArray.DELETE = DELETE;
-
- TrackedArray.prototype = {
-
- /**
- Track that `newItems` were added to the tracked array at `index`.
-
- @method addItems
- @param index
- @param newItems
- */
- addItems: function (index, newItems) {
- var count = get(newItems, 'length');
- if (count < 1) { return; }
-
- var match = this._findArrayOperation(index);
- var arrayOperation = match.operation;
- var arrayOperationIndex = match.index;
- var arrayOperationRangeStart = match.rangeStart;
- var composeIndex, newArrayOperation;
-
- newArrayOperation = new ArrayOperation(INSERT, count, newItems);
-
- if (arrayOperation) {
- if (!match.split) {
- // insert left of arrayOperation
- this._operations.splice(arrayOperationIndex, 0, newArrayOperation);
- composeIndex = arrayOperationIndex;
- } else {
- this._split(arrayOperationIndex, index - arrayOperationRangeStart, newArrayOperation);
- composeIndex = arrayOperationIndex + 1;
- }
- } else {
- // insert at end
- this._operations.push(newArrayOperation);
- composeIndex = arrayOperationIndex;
- }
-
- this._composeInsert(composeIndex);
- },
-
- /**
- Track that `count` items were removed at `index`.
-
- @method removeItems
- @param index
- @param count
- */
- removeItems: function (index, count) {
- if (count < 1) { return; }
-
- var match = this._findArrayOperation(index);
- var arrayOperationIndex = match.index;
- var arrayOperationRangeStart = match.rangeStart;
- var newArrayOperation, composeIndex;
-
- newArrayOperation = new ArrayOperation(DELETE, count);
- if (!match.split) {
- // insert left of arrayOperation
- this._operations.splice(arrayOperationIndex, 0, newArrayOperation);
- composeIndex = arrayOperationIndex;
- } else {
- this._split(arrayOperationIndex, index - arrayOperationRangeStart, newArrayOperation);
- composeIndex = arrayOperationIndex + 1;
- }
-
- return this._composeDelete(composeIndex);
- },
-
- /**
- Apply all operations, reducing them to retain:n, for `n`, the number of
- items in the array.
-
- `callback` will be called for each operation and will be passed the following arguments:
-
- * {array} items The items for the given operation
- * {number} offset The computed offset of the items, ie the index in the
- array of the first item for this operation.
- * {string} operation The type of the operation. One of
- `Ember.TrackedArray.{RETAIN, DELETE, INSERT}`
-
- @method apply
- @param {Function} callback
- */
- apply: function (callback) {
- var items = [];
- var offset = 0;
-
- forEach(this._operations, function (arrayOperation, operationIndex) {
- callback(arrayOperation.items, offset, arrayOperation.type, operationIndex);
-
- if (arrayOperation.type !== DELETE) {
- offset += arrayOperation.count;
- items = items.concat(arrayOperation.items);
- }
- });
-
- this._operations = [new ArrayOperation(RETAIN, items.length, items)];
- },
-
- /**
- Return an `ArrayOperationMatch` for the operation that contains the item at `index`.
-
- @method _findArrayOperation
-
- @param {Number} index the index of the item whose operation information
- should be returned.
- @private
- */
- _findArrayOperation: function (index) {
- var split = false;
- var arrayOperationIndex, arrayOperation,
- arrayOperationRangeStart, arrayOperationRangeEnd,
- len;
-
- // OPTIMIZE: we could search these faster if we kept a balanced tree.
- // find leftmost arrayOperation to the right of `index`
- for (arrayOperationIndex = arrayOperationRangeStart = 0, len = this._operations.length; arrayOperationIndex < len; ++arrayOperationIndex) {
- arrayOperation = this._operations[arrayOperationIndex];
-
- if (arrayOperation.type === DELETE) { continue; }
-
- arrayOperationRangeEnd = arrayOperationRangeStart + arrayOperation.count - 1;
-
- if (index === arrayOperationRangeStart) {
- break;
- } else if (index > arrayOperationRangeStart && index <= arrayOperationRangeEnd) {
- split = true;
- break;
- } else {
- arrayOperationRangeStart = arrayOperationRangeEnd + 1;
- }
- }
-
- return new ArrayOperationMatch(arrayOperation, arrayOperationIndex, split, arrayOperationRangeStart);
- },
-
- _split: function (arrayOperationIndex, splitIndex, newArrayOperation) {
- var arrayOperation = this._operations[arrayOperationIndex];
- var splitItems = arrayOperation.items.slice(splitIndex);
- var splitArrayOperation = new ArrayOperation(arrayOperation.type, splitItems.length, splitItems);
-
- // truncate LHS
- arrayOperation.count = splitIndex;
- arrayOperation.items = arrayOperation.items.slice(0, splitIndex);
-
- this._operations.splice(arrayOperationIndex + 1, 0, newArrayOperation, splitArrayOperation);
- },
-
- // see SubArray for a better implementation.
- _composeInsert: function (index) {
- var newArrayOperation = this._operations[index];
- var leftArrayOperation = this._operations[index-1]; // may be undefined
- var rightArrayOperation = this._operations[index+1]; // may be undefined
- var leftOp = leftArrayOperation && leftArrayOperation.type;
- var rightOp = rightArrayOperation && rightArrayOperation.type;
-
- if (leftOp === INSERT) {
- // merge left
- leftArrayOperation.count += newArrayOperation.count;
- leftArrayOperation.items = leftArrayOperation.items.concat(newArrayOperation.items);
-
- if (rightOp === INSERT) {
- // also merge right (we have split an insert with an insert)
- leftArrayOperation.count += rightArrayOperation.count;
- leftArrayOperation.items = leftArrayOperation.items.concat(rightArrayOperation.items);
- this._operations.splice(index, 2);
- } else {
- // only merge left
- this._operations.splice(index, 1);
- }
- } else if (rightOp === INSERT) {
- // merge right
- newArrayOperation.count += rightArrayOperation.count;
- newArrayOperation.items = newArrayOperation.items.concat(rightArrayOperation.items);
- this._operations.splice(index + 1, 1);
- }
- },
-
- _composeDelete: function (index) {
- var arrayOperation = this._operations[index];
- var deletesToGo = arrayOperation.count;
- var leftArrayOperation = this._operations[index-1]; // may be undefined
- var leftOp = leftArrayOperation && leftArrayOperation.type;
- var nextArrayOperation;
- var nextOp;
- var nextCount;
- var removeNewAndNextOp = false;
- var removedItems = [];
-
- if (leftOp === DELETE) {
- arrayOperation = leftArrayOperation;
- index -= 1;
- }
-
- for (var i = index + 1; deletesToGo > 0; ++i) {
- nextArrayOperation = this._operations[i];
- nextOp = nextArrayOperation.type;
- nextCount = nextArrayOperation.count;
-
- if (nextOp === DELETE) {
- arrayOperation.count += nextCount;
- continue;
- }
-
- if (nextCount > deletesToGo) {
- // d:2 {r,i}:5 we reduce the retain or insert, but it stays
- removedItems = removedItems.concat(nextArrayOperation.items.splice(0, deletesToGo));
- nextArrayOperation.count -= deletesToGo;
-
- // In the case where we truncate the last arrayOperation, we don't need to
- // remove it; also the deletesToGo reduction is not the entirety of
- // nextCount
- i -= 1;
- nextCount = deletesToGo;
-
- deletesToGo = 0;
- } else {
- if (nextCount === deletesToGo) {
- // Handle edge case of d:2 i:2 in which case both operations go away
- // during composition.
- removeNewAndNextOp = true;
- }
- removedItems = removedItems.concat(nextArrayOperation.items);
- deletesToGo -= nextCount;
- }
-
- if (nextOp === INSERT) {
- // d:2 i:3 will result in delete going away
- arrayOperation.count -= nextCount;
- }
- }
-
- if (arrayOperation.count > 0) {
- // compose our new delete with possibly several operations to the right of
- // disparate types
- this._operations.splice(index+1, i-1-index);
- } else {
- // The delete operation can go away; it has merely reduced some other
- // operation, as in d:3 i:4; it may also have eliminated that operation,
- // as in d:3 i:3.
- this._operations.splice(index, removeNewAndNextOp ? 2 : 1);
- }
-
- return removedItems;
- },
-
- toString: function () {
- var str = "";
- forEach(this._operations, function (operation) {
- str += " " + operation.type + ":" + operation.count;
- });
- return str.substring(1);
- }
- };
-
- /**
- Internal data structure to represent an array operation.
-
- @method ArrayOperation
- @private
- @param {String} type The type of the operation. One of
- `Ember.TrackedArray.{RETAIN, INSERT, DELETE}`
- @param {Number} count The number of items in this operation.
- @param {Array} items The items of the operation, if included. RETAIN and
- INSERT include their items, DELETE does not.
- */
- function ArrayOperation (operation, count, items) {
- this.type = operation; // RETAIN | INSERT | DELETE
- this.count = count;
- this.items = items;
- }
-
- /**
- Internal data structure used to include information when looking up operations
- by item index.
-
- @method ArrayOperationMatch
- @private
- @param {ArrayOperation} operation
- @param {Number} index The index of `operation` in the array of operations.
- @param {Boolean} split Whether or not the item index searched for would
- require a split for a new operation type.
- @param {Number} rangeStart The index of the first item in the operation,
- with respect to the tracked array. The index of the last item can be computed
- from `rangeStart` and `operation.count`.
- */
- function ArrayOperationMatch(operation, index, split, rangeStart) {
- this.operation = operation;
- this.index = index;
- this.split = split;
- this.rangeStart = rangeStart;
- }
- });
-enifed("ember-testing",
- ["ember-metal/core","ember-testing/initializers","ember-testing/support","ember-testing/setup_for_testing","ember-testing/test","ember-testing/adapters/adapter","ember-testing/adapters/qunit","ember-testing/helpers"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__) {
- "use strict";
- var Ember = __dependency1__["default"];
-
- // to setup initializer
- // to handle various edge cases
-
- var setupForTesting = __dependency4__["default"];
- var Test = __dependency5__["default"];
- var Adapter = __dependency6__["default"];
- var QUnitAdapter = __dependency7__["default"];
- // adds helpers to helpers object in Test
-
- /**
- Ember Testing
-
- @module ember
- @submodule ember-testing
- @requires ember-application
- */
-
- Ember.Test = Test;
- Ember.Test.Adapter = Adapter;
- Ember.Test.QUnitAdapter = QUnitAdapter;
- Ember.setupForTesting = setupForTesting;
- });
-enifed("ember-testing/adapters/adapter",
- ["ember-metal/core","ember-runtime/system/object","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.K
- var EmberObject = __dependency2__["default"];
-
- /**
- @module ember
- @submodule ember-testing
- */
-
- /**
- The primary purpose of this class is to create hooks that can be implemented
- by an adapter for various test frameworks.
-
- @class Adapter
- @namespace Ember.Test
- */
- var Adapter = EmberObject.extend({
- /**
- This callback will be called whenever an async operation is about to start.
-
- Override this to call your framework's methods that handle async
- operations.
-
- @public
- @method asyncStart
- */
- asyncStart: Ember.K,
-
- /**
- This callback will be called whenever an async operation has completed.
-
- @public
- @method asyncEnd
- */
- asyncEnd: Ember.K,
-
- /**
- Override this method with your testing framework's false assertion.
- This function is called whenever an exception occurs causing the testing
- promise to fail.
-
- QUnit example:
-
- ```javascript
- exception: function(error) {
- ok(false, error);
- };
- ```
-
- @public
- @method exception
- @param {String} error The exception to be raised.
- */
- exception: function(error) {
- throw error;
- }
- });
-
- __exports__["default"] = Adapter;
- });
-enifed("ember-testing/adapters/qunit",
- ["ember-testing/adapters/adapter","ember-metal/utils","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Adapter = __dependency1__["default"];
- var inspect = __dependency2__.inspect;
-
- /**
- This class implements the methods defined by Ember.Test.Adapter for the
- QUnit testing framework.
-
- @class QUnitAdapter
- @namespace Ember.Test
- @extends Ember.Test.Adapter
- */
- __exports__["default"] = Adapter.extend({
- asyncStart: function() {
- QUnit.stop();
- },
- asyncEnd: function() {
- QUnit.start();
- },
- exception: function(error) {
- ok(false, inspect(error));
- }
- });
- });
-enifed("ember-testing/helpers",
- ["ember-metal/property_get","ember-metal/error","ember-metal/run_loop","ember-views/system/jquery","ember-testing/test"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__) {
- "use strict";
- var get = __dependency1__.get;
- var EmberError = __dependency2__["default"];
- var run = __dependency3__["default"];
- var jQuery = __dependency4__["default"];
- var Test = __dependency5__["default"];
-
- /**
- * @module ember
- * @submodule ember-testing
- */
-
- var helper = Test.registerHelper;
- var asyncHelper = Test.registerAsyncHelper;
- var countAsync = 0;
-
- function currentRouteName(app){
- var appController = app.__container__.lookup('controller:application');
-
- return get(appController, 'currentRouteName');
- }
-
- function currentPath(app){
- var appController = app.__container__.lookup('controller:application');
-
- return get(appController, 'currentPath');
- }
-
- function currentURL(app){
- var router = app.__container__.lookup('router:main');
-
- return get(router, 'location').getURL();
- }
-
- function pauseTest(){
- Test.adapter.asyncStart();
- return new Ember.RSVP.Promise(function(){ }, 'TestAdapter paused promise');
- }
-
- function visit(app, url) {
- var router = app.__container__.lookup('router:main');
- router.location.setURL(url);
-
- if (app._readinessDeferrals > 0) {
- router['initialURL'] = url;
- run(app, 'advanceReadiness');
- delete router['initialURL'];
- } else {
- run(app, app.handleURL, url);
- }
-
- return app.testHelpers.wait();
- }
-
- function click(app, selector, context) {
- var $el = app.testHelpers.findWithAssert(selector, context);
- run($el, 'mousedown');
-
- if ($el.is(':input')) {
- var type = $el.prop('type');
- if (type !== 'checkbox' && type !== 'radio' && type !== 'hidden') {
- run($el, function(){
- // Firefox does not trigger the `focusin` event if the window
- // does not have focus. If the document doesn't have focus just
- // use trigger('focusin') instead.
- if (!document.hasFocus || document.hasFocus()) {
- this.focus();
- } else {
- this.trigger('focusin');
- }
- });
- }
- }
-
- run($el, 'mouseup');
- run($el, 'click');
-
- return app.testHelpers.wait();
- }
-
- function triggerEvent(app, selector, contextOrType, typeOrOptions, possibleOptions){
- var arity = arguments.length;
- var context, type, options;
-
- if (arity === 3) {
- // context and options are optional, so this is
- // app, selector, type
- context = null;
- type = contextOrType;
- options = {};
- } else if (arity === 4) {
- // context and options are optional, so this is
- if (typeof typeOrOptions === "object") { // either
- // app, selector, type, options
- context = null;
- type = contextOrType;
- options = typeOrOptions;
- } else { // or
- // app, selector, context, type
- context = contextOrType;
- type = typeOrOptions;
- options = {};
- }
- } else {
- context = contextOrType;
- type = typeOrOptions;
- options = possibleOptions;
- }
-
- var $el = app.testHelpers.findWithAssert(selector, context);
-
- var event = jQuery.Event(type, options);
-
- run($el, 'trigger', event);
-
- return app.testHelpers.wait();
- }
-
- function keyEvent(app, selector, contextOrType, typeOrKeyCode, keyCode) {
- var context, type;
-
- if (typeof keyCode === 'undefined') {
- context = null;
- keyCode = typeOrKeyCode;
- type = contextOrType;
- } else {
- context = contextOrType;
- type = typeOrKeyCode;
- }
-
- return app.testHelpers.triggerEvent(selector, context, type, { keyCode: keyCode, which: keyCode });
- }
-
- function fillIn(app, selector, contextOrText, text) {
- var $el, context;
- if (typeof text === 'undefined') {
- text = contextOrText;
- } else {
- context = contextOrText;
- }
- $el = app.testHelpers.findWithAssert(selector, context);
- run(function() {
- $el.val(text).change();
- });
- return app.testHelpers.wait();
- }
-
- function findWithAssert(app, selector, context) {
- var $el = app.testHelpers.find(selector, context);
- if ($el.length === 0) {
- throw new EmberError("Element " + selector + " not found.");
- }
- return $el;
- }
-
- function find(app, selector, context) {
- var $el;
- context = context || get(app, 'rootElement');
- $el = app.$(selector, context);
-
- return $el;
- }
-
- function andThen(app, callback) {
- return app.testHelpers.wait(callback(app));
- }
-
- function wait(app, value) {
- return Test.promise(function(resolve) {
- // If this is the first async promise, kick off the async test
- if (++countAsync === 1) {
- Test.adapter.asyncStart();
- }
-
- // Every 10ms, poll for the async thing to have finished
- var watcher = setInterval(function() {
- // 1. If the router is loading, keep polling
- var routerIsLoading = !!app.__container__.lookup('router:main').router.activeTransition;
- if (routerIsLoading) { return; }
-
- // 2. If there are pending Ajax requests, keep polling
- if (Test.pendingAjaxRequests) { return; }
-
- // 3. If there are scheduled timers or we are inside of a run loop, keep polling
- if (run.hasScheduledTimers() || run.currentRunLoop) { return; }
- if (Test.waiters && Test.waiters.any(function(waiter) {
- var context = waiter[0];
- var callback = waiter[1];
- return !callback.call(context);
- })) { return; }
- // Stop polling
- clearInterval(watcher);
-
- // If this is the last async promise, end the async test
- if (--countAsync === 0) {
- Test.adapter.asyncEnd();
- }
-
- // Synchronously resolve the promise
- run(null, resolve, value);
- }, 10);
- });
-
- }
-
-
- /**
- * Loads a route, sets up any controllers, and renders any templates associated
- * with the route as though a real user had triggered the route change while
- * using your app.
- *
- * Example:
- *
- * ```javascript
- * visit('posts/index').then(function() {
- * // assert something
- * });
- * ```
- *
- * @method visit
- * @param {String} url the name of the route
- * @return {RSVP.Promise}
- */
- asyncHelper('visit', visit);
-
- /**
- * Clicks an element and triggers any actions triggered by the element's `click`
- * event.
- *
- * Example:
- *
- * ```javascript
- * click('.some-jQuery-selector').then(function() {
- * // assert something
- * });
- * ```
- *
- * @method click
- * @param {String} selector jQuery selector for finding element on the DOM
- * @return {RSVP.Promise}
- */
- asyncHelper('click', click);
-
- /**
- * Simulates a key event, e.g. `keypress`, `keydown`, `keyup` with the desired keyCode
- *
- * Example:
- *
- * ```javascript
- * keyEvent('.some-jQuery-selector', 'keypress', 13).then(function() {
- * // assert something
- * });
- * ```
- *
- * @method keyEvent
- * @param {String} selector jQuery selector for finding element on the DOM
- * @param {String} type the type of key event, e.g. `keypress`, `keydown`, `keyup`
- * @param {Number} keyCode the keyCode of the simulated key event
- * @return {RSVP.Promise}
- * @since 1.5.0
- */
- asyncHelper('keyEvent', keyEvent);
-
- /**
- * Fills in an input element with some text.
- *
- * Example:
- *
- * ```javascript
- * fillIn('#email', 'you@example.com').then(function() {
- * // assert something
- * });
- * ```
- *
- * @method fillIn
- * @param {String} selector jQuery selector finding an input element on the DOM
- * to fill text with
- * @param {String} text text to place inside the input element
- * @return {RSVP.Promise}
- */
- asyncHelper('fillIn', fillIn);
-
- /**
- * Finds an element in the context of the app's container element. A simple alias
- * for `app.$(selector)`.
- *
- * Example:
- *
- * ```javascript
- * var $el = find('.my-selector');
- * ```
- *
- * @method find
- * @param {String} selector jQuery string selector for element lookup
- * @return {Object} jQuery object representing the results of the query
- */
- helper('find', find);
-
- /**
- * Like `find`, but throws an error if the element selector returns no results.
- *
- * Example:
- *
- * ```javascript
- * var $el = findWithAssert('.doesnt-exist'); // throws error
- * ```
- *
- * @method findWithAssert
- * @param {String} selector jQuery selector string for finding an element within
- * the DOM
- * @return {Object} jQuery object representing the results of the query
- * @throws {Error} throws error if jQuery object returned has a length of 0
- */
- helper('findWithAssert', findWithAssert);
-
- /**
- Causes the run loop to process any pending events. This is used to ensure that
- any async operations from other helpers (or your assertions) have been processed.
-
- This is most often used as the return value for the helper functions (see 'click',
- 'fillIn','visit',etc).
-
- Example:
-
- ```javascript
- Ember.Test.registerAsyncHelper('loginUser', function(app, username, password) {
- visit('secured/path/here')
- .fillIn('#username', username)
- .fillIn('#password', password)
- .click('.submit')
-
- return app.testHelpers.wait();
- });
-
- @method wait
- @param {Object} value The value to be returned.
- @return {RSVP.Promise}
- */
- asyncHelper('wait', wait);
- asyncHelper('andThen', andThen);
-
-
- /**
- Returns the currently active route name.
-
- Example:
-
- ```javascript
- function validateRouteName(){
- equal(currentRouteName(), 'some.path', "correct route was transitioned into.");
- }
-
- visit('/some/path').then(validateRouteName)
- ```
-
- @method currentRouteName
- @return {Object} The name of the currently active route.
- @since 1.5.0
- */
- helper('currentRouteName', currentRouteName);
-
- /**
- Returns the current path.
-
- Example:
-
- ```javascript
- function validateURL(){
- equal(currentPath(), 'some.path.index', "correct path was transitioned into.");
- }
-
- click('#some-link-id').then(validateURL);
- ```
-
- @method currentPath
- @return {Object} The currently active path.
- @since 1.5.0
- */
- helper('currentPath', currentPath);
-
- /**
- Returns the current URL.
-
- Example:
-
- ```javascript
- function validateURL(){
- equal(currentURL(), '/some/path', "correct URL was transitioned into.");
- }
-
- click('#some-link-id').then(validateURL);
- ```
-
- @method currentURL
- @return {Object} The currently active URL.
- @since 1.5.0
- */
- helper('currentURL', currentURL);
-
-
- /**
- Pauses the current test - this is useful for debugging while testing or for test-driving.
- It allows you to inspect the state of your application at any point.
-
- Example (The test will pause before clicking the button):
-
- ```javascript
- visit('/')
- return pauseTest();
-
- click('.btn');
- ```
-
- @method pauseTest
- @return {Object} A promise that will never resolve
- */
- helper('pauseTest', pauseTest);
-
-
- /**
- Triggers the given DOM event on the element identified by the provided selector.
-
- Example:
-
- ```javascript
- triggerEvent('#some-elem-id', 'blur');
- ```
-
- This is actually used internally by the `keyEvent` helper like so:
-
- ```javascript
- triggerEvent('#some-elem-id', 'keypress', { keyCode: 13 });
- ```
-
- @method triggerEvent
- @param {String} selector jQuery selector for finding element on the DOM
- @param {String} [context] jQuery selector that will limit the selector
- argument to find only within the context's children
- @param {String} type The event type to be triggered.
- @param {Object} [options] The options to be passed to jQuery.Event.
- @return {RSVP.Promise}
- @since 1.5.0
- */
- asyncHelper('triggerEvent', triggerEvent);
- });
-enifed("ember-testing/initializers",
- ["ember-runtime/system/lazy_load"],
- function(__dependency1__) {
- "use strict";
- var onLoad = __dependency1__.onLoad;
-
- var name = 'deferReadiness in `testing` mode';
-
- onLoad('Ember.Application', function(Application) {
- if (!Application.initializers[name]) {
- Application.initializer({
- name: name,
-
- initialize: function(container, application){
- if (application.testing) {
- application.deferReadiness();
- }
- }
- });
- }
- });
- });
-enifed("ember-testing/setup_for_testing",
- ["ember-metal/core","ember-testing/adapters/qunit","ember-views/system/jquery","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // import Test from "ember-testing/test"; // ES6TODO: fix when cycles are supported
- var QUnitAdapter = __dependency2__["default"];
- var jQuery = __dependency3__["default"];
-
- var Test, requests;
-
- function incrementAjaxPendingRequests(_, xhr){
- requests.push(xhr);
- Test.pendingAjaxRequests = requests.length;
- }
-
- function decrementAjaxPendingRequests(_, xhr){
- for (var i=0;i')
- .css({ position: 'absolute', left: '-1000px', top: '-1000px' })
- .appendTo('body')
- .on('click', handler)
- .trigger('click')
- .remove();
- }
-
- $(function() {
- /*
- Determine whether a checkbox checked using jQuery's "click" method will have
- the correct value for its checked property.
-
- If we determine that the current jQuery version exhibits this behavior,
- patch it to work correctly as in the commit for the actual fix:
- https://github.com/jquery/jquery/commit/1fb2f92.
- */
- testCheckboxClick(function() {
- if (!this.checked && !$.event.special.click) {
- $.event.special.click = {
- // For checkbox, fire native event so checked state will be right
- trigger: function() {
- if ($.nodeName( this, "input" ) && this.type === "checkbox" && this.click) {
- this.click();
- return false;
- }
- }
- };
- }
- });
-
- // Try again to verify that the patch took effect or blow up.
- testCheckboxClick(function() {
- Ember.warn("clicked checkboxes should be checked! the jQuery patch didn't work", this.checked);
- });
- });
- });
-enifed("ember-testing/test",
- ["ember-metal/core","ember-metal/run_loop","ember-metal/platform","ember-runtime/compare","ember-runtime/ext/rsvp","ember-testing/setup_for_testing","ember-application/system/application","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var emberRun = __dependency2__["default"];
- var create = __dependency3__.create;
- var compare = __dependency4__["default"];
- var RSVP = __dependency5__["default"];
- var setupForTesting = __dependency6__["default"];
- var EmberApplication = __dependency7__["default"];
-
- /**
- @module ember
- @submodule ember-testing
- */
- var slice = [].slice;
- var helpers = {};
- var injectHelpersCallbacks = [];
-
- /**
- This is a container for an assortment of testing related functionality:
-
- * Choose your default test adapter (for your framework of choice).
- * Register/Unregister additional test helpers.
- * Setup callbacks to be fired when the test helpers are injected into
- your application.
-
- @class Test
- @namespace Ember
- */
- var Test = {
- /**
- Hash containing all known test helpers.
-
- @property _helpers
- @private
- @since 1.7.0
- */
- _helpers: helpers,
-
- /**
- `registerHelper` is used to register a test helper that will be injected
- when `App.injectTestHelpers` is called.
-
- The helper method will always be called with the current Application as
- the first parameter.
-
- For example:
-
- ```javascript
- Ember.Test.registerHelper('boot', function(app) {
- Ember.run(app, app.advanceReadiness);
- });
- ```
-
- This helper can later be called without arguments because it will be
- called with `app` as the first parameter.
-
- ```javascript
- App = Ember.Application.create();
- App.injectTestHelpers();
- boot();
- ```
-
- @public
- @method registerHelper
- @param {String} name The name of the helper method to add.
- @param {Function} helperMethod
- @param options {Object}
- */
- registerHelper: function(name, helperMethod) {
- helpers[name] = {
- method: helperMethod,
- meta: { wait: false }
- };
- },
-
- /**
- `registerAsyncHelper` is used to register an async test helper that will be injected
- when `App.injectTestHelpers` is called.
-
- The helper method will always be called with the current Application as
- the first parameter.
-
- For example:
-
- ```javascript
- Ember.Test.registerAsyncHelper('boot', function(app) {
- Ember.run(app, app.advanceReadiness);
- });
- ```
-
- The advantage of an async helper is that it will not run
- until the last async helper has completed. All async helpers
- after it will wait for it complete before running.
-
-
- For example:
-
- ```javascript
- Ember.Test.registerAsyncHelper('deletePost', function(app, postId) {
- click('.delete-' + postId);
- });
-
- // ... in your test
- visit('/post/2');
- deletePost(2);
- visit('/post/3');
- deletePost(3);
- ```
-
- @public
- @method registerAsyncHelper
- @param {String} name The name of the helper method to add.
- @param {Function} helperMethod
- @since 1.2.0
- */
- registerAsyncHelper: function(name, helperMethod) {
- helpers[name] = {
- method: helperMethod,
- meta: { wait: true }
- };
- },
-
- /**
- Remove a previously added helper method.
-
- Example:
-
- ```javascript
- Ember.Test.unregisterHelper('wait');
- ```
-
- @public
- @method unregisterHelper
- @param {String} name The helper to remove.
- */
- unregisterHelper: function(name) {
- delete helpers[name];
- delete Test.Promise.prototype[name];
- },
-
- /**
- Used to register callbacks to be fired whenever `App.injectTestHelpers`
- is called.
-
- The callback will receive the current application as an argument.
-
- Example:
-
- ```javascript
- Ember.Test.onInjectHelpers(function() {
- Ember.$(document).ajaxSend(function() {
- Test.pendingAjaxRequests++;
- });
-
- Ember.$(document).ajaxComplete(function() {
- Test.pendingAjaxRequests--;
- });
- });
- ```
-
- @public
- @method onInjectHelpers
- @param {Function} callback The function to be called.
- */
- onInjectHelpers: function(callback) {
- injectHelpersCallbacks.push(callback);
- },
-
- /**
- This returns a thenable tailored for testing. It catches failed
- `onSuccess` callbacks and invokes the `Ember.Test.adapter.exception`
- callback in the last chained then.
-
- This method should be returned by async helpers such as `wait`.
-
- @public
- @method promise
- @param {Function} resolver The function used to resolve the promise.
- */
- promise: function(resolver) {
- return new Test.Promise(resolver);
- },
-
- /**
- Used to allow ember-testing to communicate with a specific testing
- framework.
-
- You can manually set it before calling `App.setupForTesting()`.
-
- Example:
-
- ```javascript
- Ember.Test.adapter = MyCustomAdapter.create()
- ```
-
- If you do not set it, ember-testing will default to `Ember.Test.QUnitAdapter`.
-
- @public
- @property adapter
- @type {Class} The adapter to be used.
- @default Ember.Test.QUnitAdapter
- */
- adapter: null,
-
- /**
- Replacement for `Ember.RSVP.resolve`
- The only difference is this uses
- an instance of `Ember.Test.Promise`
-
- @public
- @method resolve
- @param {Mixed} The value to resolve
- @since 1.2.0
- */
- resolve: function(val) {
- return Test.promise(function(resolve) {
- return resolve(val);
- });
- },
-
- /**
- This allows ember-testing to play nicely with other asynchronous
- events, such as an application that is waiting for a CSS3
- transition or an IndexDB transaction.
-
- For example:
-
- ```javascript
- Ember.Test.registerWaiter(function() {
- return myPendingTransactions() == 0;
- });
- ```
- The `context` argument allows you to optionally specify the `this`
- with which your callback will be invoked.
-
- For example:
-
- ```javascript
- Ember.Test.registerWaiter(MyDB, MyDB.hasPendingTransactions);
- ```
-
- @public
- @method registerWaiter
- @param {Object} context (optional)
- @param {Function} callback
- @since 1.2.0
- */
- registerWaiter: function(context, callback) {
- if (arguments.length === 1) {
- callback = context;
- context = null;
- }
- if (!this.waiters) {
- this.waiters = Ember.A();
- }
- this.waiters.push([context, callback]);
- },
- /**
- `unregisterWaiter` is used to unregister a callback that was
- registered with `registerWaiter`.
-
- @public
- @method unregisterWaiter
- @param {Object} context (optional)
- @param {Function} callback
- @since 1.2.0
- */
- unregisterWaiter: function(context, callback) {
- var pair;
- if (!this.waiters) { return; }
- if (arguments.length === 1) {
- callback = context;
- context = null;
- }
- pair = [context, callback];
- this.waiters = Ember.A(this.waiters.filter(function(elt) {
- return compare(elt, pair)!==0;
- }));
- }
- };
-
- function helper(app, name) {
- var fn = helpers[name].method;
- var meta = helpers[name].meta;
-
- return function() {
- var args = slice.call(arguments);
- var lastPromise = Test.lastPromise;
-
- args.unshift(app);
-
- // some helpers are not async and
- // need to return a value immediately.
- // example: `find`
- if (!meta.wait) {
- return fn.apply(app, args);
- }
-
- if (!lastPromise) {
- // It's the first async helper in current context
- lastPromise = fn.apply(app, args);
- } else {
- // wait for last helper's promise to resolve
- // and then execute
- run(function() {
- lastPromise = Test.resolve(lastPromise).then(function() {
- return fn.apply(app, args);
- });
- });
- }
-
- return lastPromise;
- };
- }
-
- function run(fn) {
- if (!emberRun.currentRunLoop) {
- emberRun(fn);
- } else {
- fn();
- }
- }
-
- EmberApplication.reopen({
- /**
- This property contains the testing helpers for the current application. These
- are created once you call `injectTestHelpers` on your `Ember.Application`
- instance. The included helpers are also available on the `window` object by
- default, but can be used from this object on the individual application also.
-
- @property testHelpers
- @type {Object}
- @default {}
- */
- testHelpers: {},
-
- /**
- This property will contain the original methods that were registered
- on the `helperContainer` before `injectTestHelpers` is called.
-
- When `removeTestHelpers` is called, these methods are restored to the
- `helperContainer`.
-
- @property originalMethods
- @type {Object}
- @default {}
- @private
- @since 1.3.0
- */
- originalMethods: {},
-
-
- /**
- This property indicates whether or not this application is currently in
- testing mode. This is set when `setupForTesting` is called on the current
- application.
-
- @property testing
- @type {Boolean}
- @default false
- @since 1.3.0
- */
- testing: false,
-
- /**
- This hook defers the readiness of the application, so that you can start
- the app when your tests are ready to run. It also sets the router's
- location to 'none', so that the window's location will not be modified
- (preventing both accidental leaking of state between tests and interference
- with your testing framework).
-
- Example:
-
- ```
- App.setupForTesting();
- ```
-
- @method setupForTesting
- */
- setupForTesting: function() {
- setupForTesting();
-
- this.testing = true;
-
- this.Router.reopen({
- location: 'none'
- });
- },
-
- /**
- This will be used as the container to inject the test helpers into. By
- default the helpers are injected into `window`.
-
- @property helperContainer
- @type {Object} The object to be used for test helpers.
- @default window
- @since 1.2.0
- */
- helperContainer: window,
-
- /**
- This injects the test helpers into the `helperContainer` object. If an object is provided
- it will be used as the helperContainer. If `helperContainer` is not set it will default
- to `window`. If a function of the same name has already been defined it will be cached
- (so that it can be reset if the helper is removed with `unregisterHelper` or
- `removeTestHelpers`).
-
- Any callbacks registered with `onInjectHelpers` will be called once the
- helpers have been injected.
-
- Example:
- ```
- App.injectTestHelpers();
- ```
-
- @method injectTestHelpers
- */
- injectTestHelpers: function(helperContainer) {
- if (helperContainer) { this.helperContainer = helperContainer; }
-
- this.testHelpers = {};
- for (var name in helpers) {
- this.originalMethods[name] = this.helperContainer[name];
- this.testHelpers[name] = this.helperContainer[name] = helper(this, name);
- protoWrap(Test.Promise.prototype, name, helper(this, name), helpers[name].meta.wait);
- }
-
- for(var i = 0, l = injectHelpersCallbacks.length; i < l; i++) {
- injectHelpersCallbacks[i](this);
- }
- },
-
- /**
- This removes all helpers that have been registered, and resets and functions
- that were overridden by the helpers.
-
- Example:
-
- ```javascript
- App.removeTestHelpers();
- ```
-
- @public
- @method removeTestHelpers
- */
- removeTestHelpers: function() {
- for (var name in helpers) {
- this.helperContainer[name] = this.originalMethods[name];
- delete this.testHelpers[name];
- delete this.originalMethods[name];
- }
- }
- });
-
- // This method is no longer needed
- // But still here for backwards compatibility
- // of helper chaining
- function protoWrap(proto, name, callback, isAsync) {
- proto[name] = function() {
- var args = arguments;
- if (isAsync) {
- return callback.apply(this, args);
- } else {
- return this.then(function() {
- return callback.apply(this, args);
- });
- }
- };
- }
-
- Test.Promise = function() {
- RSVP.Promise.apply(this, arguments);
- Test.lastPromise = this;
- };
-
- Test.Promise.prototype = create(RSVP.Promise.prototype);
- Test.Promise.prototype.constructor = Test.Promise;
-
- // Patch `then` to isolate async methods
- // specifically `Ember.Test.lastPromise`
- var originalThen = RSVP.Promise.prototype.then;
- Test.Promise.prototype.then = function(onSuccess, onFailure) {
- return originalThen.call(this, function(val) {
- return isolate(onSuccess, val);
- }, onFailure);
- };
-
- // This method isolates nested async methods
- // so that they don't conflict with other last promises.
- //
- // 1. Set `Ember.Test.lastPromise` to null
- // 2. Invoke method
- // 3. Return the last promise created during method
- // 4. Restore `Ember.Test.lastPromise` to original value
- function isolate(fn, val) {
- var value, lastPromise;
-
- // Reset lastPromise for nested helpers
- Test.lastPromise = null;
-
- value = fn(val);
-
- lastPromise = Test.lastPromise;
-
- // If the method returned a promise
- // return that promise. If not,
- // return the last async helper's promise
- if ((value && (value instanceof Test.Promise)) || !lastPromise) {
- return value;
- } else {
- run(function() {
- lastPromise = Test.resolve(lastPromise).then(function() {
- return value;
- });
- });
- return lastPromise;
- }
- }
-
- __exports__["default"] = Test;
- });
-enifed("ember-views",
- ["ember-runtime","ember-views/system/jquery","ember-views/system/utils","ember-views/system/render_buffer","ember-views/system/ext","ember-views/views/states","ember-views/views/core_view","ember-views/views/view","ember-views/views/container_view","ember-views/views/collection_view","ember-views/views/component","ember-views/system/event_dispatcher","ember-views/mixins/view_target_action_support","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __dependency13__, __exports__) {
- "use strict";
- /**
- Ember Views
-
- @module ember
- @submodule ember-views
- @requires ember-runtime
- @main ember-views
- */
-
- // BEGIN IMPORTS
- var Ember = __dependency1__["default"];
- var jQuery = __dependency2__["default"];
- var isSimpleClick = __dependency3__.isSimpleClick;
- var getViewClientRects = __dependency3__.getViewClientRects;
- var getViewBoundingClientRect = __dependency3__.getViewBoundingClientRect;
- var RenderBuffer = __dependency4__["default"];
- // for the side effect of extending Ember.run.queues
- var cloneStates = __dependency6__.cloneStates;
- var states = __dependency6__.states;
-
- var CoreView = __dependency7__["default"];
- var View = __dependency8__["default"];
- var ContainerView = __dependency9__["default"];
- var CollectionView = __dependency10__["default"];
- var Component = __dependency11__["default"];
-
- var EventDispatcher = __dependency12__["default"];
- var ViewTargetActionSupport = __dependency13__["default"];
- // END IMPORTS
-
- /**
- Alias for jQuery
-
- @method $
- @for Ember
- */
-
- // BEGIN EXPORTS
- Ember.$ = jQuery;
-
- Ember.ViewTargetActionSupport = ViewTargetActionSupport;
- Ember.RenderBuffer = RenderBuffer;
-
- var ViewUtils = Ember.ViewUtils = {};
- ViewUtils.isSimpleClick = isSimpleClick;
- ViewUtils.getViewClientRects = getViewClientRects;
- ViewUtils.getViewBoundingClientRect = getViewBoundingClientRect;
-
- Ember.CoreView = CoreView;
- Ember.View = View;
- Ember.View.states = states;
- Ember.View.cloneStates = cloneStates;
-
- Ember.ContainerView = ContainerView;
- Ember.CollectionView = CollectionView;
- Ember.Component = Component;
- Ember.EventDispatcher = EventDispatcher;
- // END EXPORTS
-
- __exports__["default"] = Ember;
- });
-enifed("ember-views/mixins/component_template_deprecation",
- ["ember-metal/core","ember-metal/property_get","ember-metal/mixin","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.deprecate
- var get = __dependency2__.get;
- var Mixin = __dependency3__.Mixin;
-
- /**
- The ComponentTemplateDeprecation mixin is used to provide a useful
- deprecation warning when using either `template` or `templateName` with
- a component. The `template` and `templateName` properties specified at
- extend time are moved to `layout` and `layoutName` respectively.
-
- `Ember.ComponentTemplateDeprecation` is used internally by Ember in
- `Ember.Component`.
-
- @class ComponentTemplateDeprecation
- @namespace Ember
- */
- __exports__["default"] = Mixin.create({
- /**
- @private
-
- Moves `templateName` to `layoutName` and `template` to `layout` at extend
- time if a layout is not also specified.
-
- Note that this currently modifies the mixin themselves, which is technically
- dubious but is practically of little consequence. This may change in the
- future.
-
- @method willMergeMixin
- @since 1.4.0
- */
- willMergeMixin: function(props) {
- // must call _super here to ensure that the ActionHandler
- // mixin is setup properly (moves actions -> _actions)
- //
- // Calling super is only OK here since we KNOW that
- // there is another Mixin loaded first.
- this._super.apply(this, arguments);
-
- var deprecatedProperty, replacementProperty;
- var layoutSpecified = (props.layoutName || props.layout || get(this, 'layoutName'));
-
- if (props.templateName && !layoutSpecified) {
- deprecatedProperty = 'templateName';
- replacementProperty = 'layoutName';
-
- props.layoutName = props.templateName;
- delete props['templateName'];
- }
-
- if (props.template && !layoutSpecified) {
- deprecatedProperty = 'template';
- replacementProperty = 'layout';
-
- props.layout = props.template;
- delete props['template'];
- }
-
- if (deprecatedProperty) {
- Ember.deprecate('Do not specify ' + deprecatedProperty + ' on a Component, use ' + replacementProperty + ' instead.', false);
- }
- }
- });
- });
-enifed("ember-views/mixins/view_target_action_support",
- ["ember-metal/mixin","ember-runtime/mixins/target_action_support","ember-metal/alias","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __exports__) {
- "use strict";
- var Mixin = __dependency1__.Mixin;
- var TargetActionSupport = __dependency2__["default"];
- var alias = __dependency3__["default"];
-
- /**
- `Ember.ViewTargetActionSupport` is a mixin that can be included in a
- view class to add a `triggerAction` method with semantics similar to
- the Handlebars `{{action}}` helper. It provides intelligent defaults
- for the action's target: the view's controller; and the context that is
- sent with the action: the view's context.
-
- Note: In normal Ember usage, the `{{action}}` helper is usually the best
- choice. This mixin is most often useful when you are doing more complex
- event handling in custom View subclasses.
-
- For example:
-
- ```javascript
- App.SaveButtonView = Ember.View.extend(Ember.ViewTargetActionSupport, {
- action: 'save',
- click: function() {
- this.triggerAction(); // Sends the `save` action, along with the current context
- // to the current controller
- }
- });
- ```
-
- The `action` can be provided as properties of an optional object argument
- to `triggerAction` as well.
-
- ```javascript
- App.SaveButtonView = Ember.View.extend(Ember.ViewTargetActionSupport, {
- click: function() {
- this.triggerAction({
- action: 'save'
- }); // Sends the `save` action, along with the current context
- // to the current controller
- }
- });
- ```
-
- @class ViewTargetActionSupport
- @namespace Ember
- @extends Ember.TargetActionSupport
- */
- __exports__["default"] = Mixin.create(TargetActionSupport, {
- /**
- @property target
- */
- target: alias('controller'),
- /**
- @property actionContext
- */
- actionContext: alias('context')
- });
- });
-enifed("ember-views/streams/context_stream",
- ["ember-metal/core","ember-metal/merge","ember-metal/platform","ember-metal/path_cache","ember-metal/streams/stream","ember-metal/streams/simple","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
-
- var merge = __dependency2__["default"];
- var create = __dependency3__.create;
- var isGlobal = __dependency4__.isGlobal;
- var Stream = __dependency5__["default"];
- var SimpleStream = __dependency6__["default"];
-
- function ContextStream(view) {
- Ember.assert("ContextStream error: the argument is not a view", view && view.isView);
- this.view = view;
- }
-
- ContextStream.prototype = create(Stream.prototype);
-
- merge(ContextStream.prototype, {
- value: function() {},
-
- _makeChildStream: function(key, _fullPath) {
- var stream;
-
- if (key === '' || key === 'this') {
- stream = this.view._baseContext;
- } else if (isGlobal(key) && Ember.lookup[key]) {
- Ember.deprecate("Global lookup of " + _fullPath + " from a Handlebars template is deprecated.");
- stream = new SimpleStream(Ember.lookup[key]);
- stream._isGlobal = true;
- } else if (key in this.view._keywords) {
- stream = new SimpleStream(this.view._keywords[key]);
- } else {
- stream = new SimpleStream(this.view._baseContext.get(key));
- }
-
- stream._isRoot = true;
-
- if (key === 'controller') {
- stream._isController = true;
- }
-
- return stream;
- }
- });
-
- __exports__["default"] = ContextStream;
- });
-enifed("ember-views/streams/key_stream",
- ["ember-metal/core","ember-metal/merge","ember-metal/platform","ember-metal/property_get","ember-metal/property_set","ember-metal/observer","ember-metal/streams/stream","ember-metal/streams/read","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
-
- var merge = __dependency2__["default"];
- var create = __dependency3__.create;
- var get = __dependency4__.get;
- var set = __dependency5__.set;
- var addObserver = __dependency6__.addObserver;
- var removeObserver = __dependency6__.removeObserver;
- var Stream = __dependency7__["default"];
- var read = __dependency8__.read;
-
- function KeyStream(source, key) {
- Ember.assert("KeyStream error: key must be a non-empty string", typeof key === 'string' && key.length > 0);
- Ember.assert("KeyStream error: key must not have a '.'", key.indexOf('.') === -1);
-
- this.source = source;
- this.obj = undefined;
- this.key = key;
-
- if (source && source.isStream) {
- source.subscribe(this._didChange, this);
- }
- }
-
- KeyStream.prototype = create(Stream.prototype);
-
- merge(KeyStream.prototype, {
- valueFn: function() {
- var prevObj = this.obj;
- var nextObj = read(this.source);
-
- if (nextObj !== prevObj) {
- if (prevObj && typeof prevObj === 'object') {
- removeObserver(prevObj, this.key, this, this._didChange);
- }
-
- if (nextObj && typeof nextObj === 'object') {
- addObserver(nextObj, this.key, this, this._didChange);
- }
-
- this.obj = nextObj;
- }
-
- if (nextObj) {
- return get(nextObj, this.key);
- }
- },
-
- setValue: function(value) {
- if (this.obj) {
- set(this.obj, this.key, value);
- }
- },
-
- setSource: function(nextSource) {
- Ember.assert("KeyStream error: source must be an object", typeof nextSource === 'object');
-
- var prevSource = this.source;
-
- if (nextSource !== prevSource) {
- if (prevSource && prevSource.isStream) {
- prevSource.unsubscribe(this._didChange, this);
- }
-
- if (nextSource && nextSource.isStream) {
- nextSource.subscribe(this._didChange, this);
- }
-
- this.source = nextSource;
- this.notify();
- }
- },
-
- _didChange: function() {
- this.notify();
- },
-
- destroy: function() {
- if (this.source && this.source.isStream) {
- this.source.unsubscribe(this._didChange, this);
- }
-
- if (this.obj && typeof this.obj === 'object') {
- removeObserver(this.obj, this.key, this, this._didChange);
- }
-
- this.source = undefined;
- this.obj = undefined;
-
- Stream.prototype.destroy.call(this);
- }
- });
-
- __exports__["default"] = KeyStream;
-
- // The transpiler does not resolve cycles, so we export
- // the `_makeChildStream` method onto `Stream` here.
-
- Stream.prototype._makeChildStream = function(key) {
- return new KeyStream(this, key);
- };
- });
-enifed("ember-views/streams/read",
- ["ember-metal/core","ember-metal/property_get","ember-metal/path_cache","ember-runtime/system/string","ember-metal/streams/read","ember-views/views/view","ember-runtime/mixins/controller","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- var get = __dependency2__.get;
- var isGlobal = __dependency3__.isGlobal;
- var fmt = __dependency4__.fmt;
- var read = __dependency5__.read;
- var View = __dependency6__["default"];
- var ControllerMixin = __dependency7__["default"];
-
- function readViewFactory(object, container) {
- var value = read(object);
- var viewClass;
-
- if (typeof value === 'string') {
- if (isGlobal(value)) {
- viewClass = get(null, value);
- Ember.deprecate('Resolved the view "'+value+'" on the global context. Pass a view name to be looked up on the container instead, such as {{view "select"}}. http://emberjs.com/guides/deprecations#toc_global-lookup-of-views', !viewClass);
- } else {
- Ember.assert("View requires a container to resolve views not passed in through the context", !!container);
- viewClass = container.lookupFactory('view:'+value);
- }
- } else {
- viewClass = value;
- }
-
- Ember.assert(fmt(value+" must be a subclass or an instance of Ember.View, not %@", [viewClass]), View.detect(viewClass) || View.detectInstance(viewClass)
- );
-
- return viewClass;
- }
-
- __exports__.readViewFactory = readViewFactory;function readUnwrappedModel(object) {
- if (object && object.isStream) {
- var result = object.value();
-
- // If the path is exactly `controller` then we don't unwrap it.
- if (!object._isController) {
- while (ControllerMixin.detect(result)) {
- result = get(result, 'model');
- }
- }
-
- return result;
- } else {
- return object;
- }
- }
-
- __exports__.readUnwrappedModel = readUnwrappedModel;
- });
-enifed("ember-views/system/action_manager",
- ["exports"],
- function(__exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-views
- */
-
- function ActionManager() {}
-
- /**
- Global action id hash.
-
- @private
- @property registeredActions
- @type Object
- */
- ActionManager.registeredActions = {};
-
- __exports__["default"] = ActionManager;
- });
-enifed("ember-views/system/event_dispatcher",
- ["ember-metal/core","ember-metal/property_get","ember-metal/property_set","ember-metal/is_none","ember-metal/run_loop","ember-metal/utils","ember-runtime/system/string","ember-runtime/system/object","ember-views/system/jquery","ember-views/system/action_manager","ember-views/views/view","ember-metal/merge","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__, __dependency9__, __dependency10__, __dependency11__, __dependency12__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-views
- */
- var Ember = __dependency1__["default"];
- // Ember.assert
-
- var get = __dependency2__.get;
- var set = __dependency3__.set;
- var isNone = __dependency4__["default"];
- var run = __dependency5__["default"];
- var typeOf = __dependency6__.typeOf;
- var fmt = __dependency7__.fmt;
- var EmberObject = __dependency8__["default"];
- var jQuery = __dependency9__["default"];
- var ActionManager = __dependency10__["default"];
- var View = __dependency11__["default"];
- var merge = __dependency12__["default"];
-
- //ES6TODO:
- // find a better way to do Ember.View.views without global state
-
- /**
- `Ember.EventDispatcher` handles delegating browser events to their
- corresponding `Ember.Views.` For example, when you click on a view,
- `Ember.EventDispatcher` ensures that that view's `mouseDown` method gets
- called.
-
- @class EventDispatcher
- @namespace Ember
- @private
- @extends Ember.Object
- */
- __exports__["default"] = EmberObject.extend({
-
- /**
- The set of events names (and associated handler function names) to be setup
- and dispatched by the `EventDispatcher`. Custom events can added to this list at setup
- time, generally via the `Ember.Application.customEvents` hash. Only override this
- default set to prevent the EventDispatcher from listening on some events all together.
-
- This set will be modified by `setup` to also include any events added at that time.
-
- @property events
- @type Object
- */
- events: {
- touchstart : 'touchStart',
- touchmove : 'touchMove',
- touchend : 'touchEnd',
- touchcancel : 'touchCancel',
- keydown : 'keyDown',
- keyup : 'keyUp',
- keypress : 'keyPress',
- mousedown : 'mouseDown',
- mouseup : 'mouseUp',
- contextmenu : 'contextMenu',
- click : 'click',
- dblclick : 'doubleClick',
- mousemove : 'mouseMove',
- focusin : 'focusIn',
- focusout : 'focusOut',
- mouseenter : 'mouseEnter',
- mouseleave : 'mouseLeave',
- submit : 'submit',
- input : 'input',
- change : 'change',
- dragstart : 'dragStart',
- drag : 'drag',
- dragenter : 'dragEnter',
- dragleave : 'dragLeave',
- dragover : 'dragOver',
- drop : 'drop',
- dragend : 'dragEnd'
- },
-
- /**
- The root DOM element to which event listeners should be attached. Event
- listeners will be attached to the document unless this is overridden.
-
- Can be specified as a DOMElement or a selector string.
-
- The default body is a string since this may be evaluated before document.body
- exists in the DOM.
-
- @private
- @property rootElement
- @type DOMElement
- @default 'body'
- */
- rootElement: 'body',
-
- /**
- It enables events to be dispatched to the view's `eventManager.` When present,
- this object takes precedence over handling of events on the view itself.
-
- Note that most Ember applications do not use this feature. If your app also
- does not use it, consider setting this property to false to gain some performance
- improvement by allowing the EventDispatcher to skip the search for the
- `eventManager` on the view tree.
-
- ```javascript
- var EventDispatcher = Em.EventDispatcher.extend({
- events: {
- click : 'click',
- focusin : 'focusIn',
- focusout : 'focusOut',
- change : 'change'
- },
- canDispatchToEventManager: false
- });
- container.register('event_dispatcher:main', EventDispatcher);
- ```
-
- @property canDispatchToEventManager
- @type boolean
- @default 'true'
- @since 1.7.0
- */
- canDispatchToEventManager: true,
-
- /**
- Sets up event listeners for standard browser events.
-
- This will be called after the browser sends a `DOMContentReady` event. By
- default, it will set up all of the listeners on the document body. If you
- would like to register the listeners on a different element, set the event
- dispatcher's `root` property.
-
- @private
- @method setup
- @param addedEvents {Hash}
- */
- setup: function(addedEvents, rootElement) {
- var event, events = get(this, 'events');
-
- merge(events, addedEvents || {});
-
- if (!isNone(rootElement)) {
- set(this, 'rootElement', rootElement);
- }
-
- rootElement = jQuery(get(this, 'rootElement'));
-
- Ember.assert(fmt('You cannot use the same root element (%@) multiple times in an Ember.Application', [rootElement.selector || rootElement[0].tagName]), !rootElement.is('.ember-application'));
- Ember.assert('You cannot make a new Ember.Application using a root element that is a descendent of an existing Ember.Application', !rootElement.closest('.ember-application').length);
- Ember.assert('You cannot make a new Ember.Application using a root element that is an ancestor of an existing Ember.Application', !rootElement.find('.ember-application').length);
-
- rootElement.addClass('ember-application');
-
- Ember.assert('Unable to add "ember-application" class to rootElement. Make sure you set rootElement to the body or an element in the body.', rootElement.is('.ember-application'));
-
- for (event in events) {
- if (events.hasOwnProperty(event)) {
- this.setupHandler(rootElement, event, events[event]);
- }
- }
- },
-
- /**
- Registers an event listener on the rootElement. If the given event is
- triggered, the provided event handler will be triggered on the target view.
-
- If the target view does not implement the event handler, or if the handler
- returns `false`, the parent view will be called. The event will continue to
- bubble to each successive parent view until it reaches the top.
-
- @private
- @method setupHandler
- @param {Element} rootElement
- @param {String} event the browser-originated event to listen to
- @param {String} eventName the name of the method to call on the view
- */
- setupHandler: function(rootElement, event, eventName) {
- var self = this;
-
- rootElement.on(event + '.ember', '.ember-view', function(evt, triggeringManager) {
- var view = View.views[this.id];
- var result = true;
-
- var manager = self.canDispatchToEventManager ? self._findNearestEventManager(view, eventName) : null;
-
- if (manager && manager !== triggeringManager) {
- result = self._dispatchEvent(manager, evt, eventName, view);
- } else if (view) {
- result = self._bubbleEvent(view, evt, eventName);
- }
-
- return result;
- });
-
- rootElement.on(event + '.ember', '[data-ember-action]', function(evt) {
- var actionId = jQuery(evt.currentTarget).attr('data-ember-action');
- var action = ActionManager.registeredActions[actionId];
-
- // We have to check for action here since in some cases, jQuery will trigger
- // an event on `removeChild` (i.e. focusout) after we've already torn down the
- // action handlers for the view.
- if (action && action.eventName === eventName) {
- return action.handler(evt);
- }
- });
- },
-
- _findNearestEventManager: function(view, eventName) {
- var manager = null;
-
- while (view) {
- manager = get(view, 'eventManager');
- if (manager && manager[eventName]) { break; }
-
- view = get(view, 'parentView');
- }
-
- return manager;
- },
-
- _dispatchEvent: function(object, evt, eventName, view) {
- var result = true;
-
- var handler = object[eventName];
- if (typeOf(handler) === 'function') {
- result = run(object, handler, evt, view);
- // Do not preventDefault in eventManagers.
- evt.stopPropagation();
- }
- else {
- result = this._bubbleEvent(view, evt, eventName);
- }
-
- return result;
- },
-
- _bubbleEvent: function(view, evt, eventName) {
- return run.join(view, view.handleEvent, eventName, evt);
- },
-
- destroy: function() {
- var rootElement = get(this, 'rootElement');
- jQuery(rootElement).off('.ember', '**').removeClass('ember-application');
- return this._super();
- },
-
- toString: function() {
- return '(EventDispatcher)';
- }
- });
- });
-enifed("ember-views/system/ext",
- ["ember-metal/run_loop"],
- function(__dependency1__) {
- "use strict";
- /**
- @module ember
- @submodule ember-views
- */
-
- var run = __dependency1__["default"];
-
- // Add a new named queue for rendering views that happens
- // after bindings have synced, and a queue for scheduling actions
- // that that should occur after view rendering.
- run._addQueue('render', 'actions');
- run._addQueue('afterRender', 'render');
- });
-enifed("ember-views/system/jquery",
- ["ember-metal/core","ember-metal/enumerable_utils","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Ember = __dependency1__["default"];
- // Ember.assert
-
- // ES6TODO: the functions on EnumerableUtils need their own exports
- var forEach = __dependency2__.forEach;
-
- /**
- Ember Views
-
- @module ember
- @submodule ember-views
- @requires ember-runtime
- @main ember-views
- */
-
- var jQuery = (Ember.imports && Ember.imports.jQuery) || (this && this.jQuery);
- if (!jQuery && typeof eriuqer === 'function') {
- jQuery = eriuqer('jquery');
- }
-
- Ember.assert("Ember Views require jQuery between 1.7 and 2.1", jQuery &&
- (jQuery().jquery.match(/^((1\.(7|8|9|10|11))|(2\.(0|1)))(\.\d+)?(pre|rc\d?)?/) ||
- Ember.ENV.FORCE_JQUERY));
-
- /**
- @module ember
- @submodule ember-views
- */
- if (jQuery) {
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#dndevents
- var dragEvents = [
- 'dragstart',
- 'drag',
- 'dragenter',
- 'dragleave',
- 'dragover',
- 'drop',
- 'dragend'
- ];
-
- // Copies the `dataTransfer` property from a browser event object onto the
- // jQuery event object for the specified events
- forEach(dragEvents, function(eventName) {
- jQuery.event.fixHooks[eventName] = {
- props: ['dataTransfer']
- };
- });
- }
-
- __exports__["default"] = jQuery;
- });
-enifed("ember-views/system/render_buffer",
- ["ember-views/system/jquery","morph","ember-metal/core","ember-metal/platform","exports"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __exports__) {
- "use strict";
- /**
- @module ember
- @submodule ember-views
- */
-
- var jQuery = __dependency1__["default"];
- var DOMHelper = __dependency2__.DOMHelper;
- var Ember = __dependency3__["default"];
- var create = __dependency4__.create;
-
- // The HTML spec allows for "omitted start tags". These tags are optional
- // when their intended child is the first thing in the parent tag. For
- // example, this is a tbody start tag:
- //
- //
- //
- //
- //
- // The tbody may be omitted, and the browser will accept and render:
- //
- //
- //
- //
- // However, the omitted start tag will still be added to the DOM. Here
- // we test the string and context to see if the browser is about to
- // perform this cleanup, but with a special allowance for disregarding
- //
- ```
-
- And associate it by name using a view's `templateName` property:
-
- ```javascript
- AView = Ember.View.extend({
- templateName: 'some-template'
- });
- ```
-
- If you have nested resources, your Handlebars template will look like this:
-
- ```html
-
- ```
-
- And `templateName` property:
-
- ```javascript
- AView = Ember.View.extend({
- templateName: 'posts/new'
- });
- ```
-
- Using a value for `templateName` that does not have a Handlebars template
- with a matching `data-template-name` attribute will throw an error.
-
- For views classes that may have a template later defined (e.g. as the block
- portion of a `{{view}}` Handlebars helper call in another template or in
- a subclass), you can provide a `defaultTemplate` property set to compiled
- template function. If a template is not later provided for the view instance
- the `defaultTemplate` value will be used:
-
- ```javascript
- AView = Ember.View.extend({
- defaultTemplate: Ember.Handlebars.compile('I was the default'),
- template: null,
- templateName: null
- });
- ```
-
- Will result in instances with an HTML representation of:
-
- ```html
- I was the default
- ```
-
- If a `template` or `templateName` is provided it will take precedence over
- `defaultTemplate`:
-
- ```javascript
- AView = Ember.View.extend({
- defaultTemplate: Ember.Handlebars.compile('I was the default')
- });
-
- aView = AView.create({
- template: Ember.Handlebars.compile('I was the template, not default')
- });
- ```
-
- Will result in the following HTML representation when rendered:
-
- ```html
- I was the template, not default
- ```
-
- ## View Context
-
- The default context of the compiled template is the view's controller:
-
- ```javascript
- AView = Ember.View.extend({
- template: Ember.Handlebars.compile('Hello {{excitedGreeting}}')
- });
-
- aController = Ember.Object.create({
- firstName: 'Barry',
- excitedGreeting: function() {
- return this.get("content.firstName") + "!!!"
- }.property()
- });
-
- aView = AView.create({
- controller: aController
- });
- ```
-
- Will result in an HTML representation of:
-
- ```html
- Hello Barry!!!
- ```
-
- A context can also be explicitly supplied through the view's `context`
- property. If the view has neither `context` nor `controller` properties, the
- `parentView`'s context will be used.
-
- ## Layouts
-
- Views can have a secondary template that wraps their main template. Like
- primary templates, layouts can be any function that accepts an optional
- context parameter and returns a string of HTML that will be inserted inside
- view's tag. Views whose HTML element is self closing (e.g. ``)
- cannot have a layout and this property will be ignored.
-
- Most typically in Ember a layout will be a compiled `Ember.Handlebars`
- template.
-
- A view's layout can be set directly with the `layout` property or reference
- an existing Handlebars template by name with the `layoutName` property.
-
- A template used as a layout must contain a single use of the Handlebars
- `{{yield}}` helper. The HTML contents of a view's rendered `template` will be
- inserted at this location:
-
- ```javascript
- AViewWithLayout = Ember.View.extend({
- layout: Ember.Handlebars.compile("{{yield}}"),
- template: Ember.Handlebars.compile("I got wrapped")
- });
- ```
-
- Will result in view instances with an HTML representation of:
-
- ```html
-
-
- I got wrapped
-
-
- ```
-
- See [Ember.Handlebars.helpers.yield](/api/classes/Ember.Handlebars.helpers.html#method_yield)
- for more information.
-
- ## Responding to Browser Events
-
- Views can respond to user-initiated events in one of three ways: method
- implementation, through an event manager, and through `{{action}}` helper use
- in their template or layout.
-
- ### Method Implementation
-
- Views can respond to user-initiated events by implementing a method that
- matches the event name. A `jQuery.Event` object will be passed as the
- argument to this method.
-
- ```javascript
- AView = Ember.View.extend({
- click: function(event) {
- // will be called when when an instance's
- // rendered element is clicked
- }
- });
- ```
-
- ### Event Managers
-
- Views can define an object as their `eventManager` property. This object can
- then implement methods that match the desired event names. Matching events
- that occur on the view's rendered HTML or the rendered HTML of any of its DOM
- descendants will trigger this method. A `jQuery.Event` object will be passed
- as the first argument to the method and an `Ember.View` object as the
- second. The `Ember.View` will be the view whose rendered HTML was interacted
- with. This may be the view with the `eventManager` property or one of its
- descendent views.
-
- ```javascript
- AView = Ember.View.extend({
- eventManager: Ember.Object.create({
- doubleClick: function(event, view) {
- // will be called when when an instance's
- // rendered element or any rendering
- // of this views's descendent
- // elements is clicked
- }
- })
- });
- ```
-
- An event defined for an event manager takes precedence over events of the
- same name handled through methods on the view.
-
- ```javascript
- AView = Ember.View.extend({
- mouseEnter: function(event) {
- // will never trigger.
- },
- eventManager: Ember.Object.create({
- mouseEnter: function(event, view) {
- // takes precedence over AView#mouseEnter
- }
- })
- });
- ```
-
- Similarly a view's event manager will take precedence for events of any views
- rendered as a descendent. A method name that matches an event name will not
- be called if the view instance was rendered inside the HTML representation of
- a view that has an `eventManager` property defined that handles events of the
- name. Events not handled by the event manager will still trigger method calls
- on the descendent.
-
- ```javascript
- var App = Ember.Application.create();
- App.OuterView = Ember.View.extend({
- template: Ember.Handlebars.compile("outer {{#view 'inner'}}inner{{/view}} outer"),
- eventManager: Ember.Object.create({
- mouseEnter: function(event, view) {
- // view might be instance of either
- // OuterView or InnerView depending on
- // where on the page the user interaction occured
- }
- })
- });
-
- App.InnerView = Ember.View.extend({
- click: function(event) {
- // will be called if rendered inside
- // an OuterView because OuterView's
- // eventManager doesn't handle click events
- },
- mouseEnter: function(event) {
- // will never be called if rendered inside
- // an OuterView.
- }
- });
- ```
-
- ### Handlebars `{{action}}` Helper
-
- See [Handlebars.helpers.action](/api/classes/Ember.Handlebars.helpers.html#method_action).
-
- ### Event Names
-
- All of the event handling approaches described above respond to the same set
- of events. The names of the built-in events are listed below. (The hash of
- built-in events exists in `Ember.EventDispatcher`.) Additional, custom events
- can be registered by using `Ember.Application.customEvents`.
-
- Touch events:
-
- * `touchStart`
- * `touchMove`
- * `touchEnd`
- * `touchCancel`
-
- Keyboard events
-
- * `keyDown`
- * `keyUp`
- * `keyPress`
-
- Mouse events
-
- * `mouseDown`
- * `mouseUp`
- * `contextMenu`
- * `click`
- * `doubleClick`
- * `mouseMove`
- * `focusIn`
- * `focusOut`
- * `mouseEnter`
- * `mouseLeave`
-
- Form events:
-
- * `submit`
- * `change`
- * `focusIn`
- * `focusOut`
- * `input`
-
- HTML5 drag and drop events:
-
- * `dragStart`
- * `drag`
- * `dragEnter`
- * `dragLeave`
- * `dragOver`
- * `dragEnd`
- * `drop`
-
- ## Handlebars `{{view}}` Helper
-
- Other `Ember.View` instances can be included as part of a view's template by
- using the `{{view}}` Handlebars helper. See [Ember.Handlebars.helpers.view](/api/classes/Ember.Handlebars.helpers.html#method_view)
- for additional information.
-
- @class View
- @namespace Ember
- @extends Ember.CoreView
- */
- var View = CoreView.extend({
-
- concatenatedProperties: ['classNames', 'classNameBindings', 'attributeBindings'],
-
- /**
- @property isView
- @type Boolean
- @default true
- @static
- */
- isView: true,
-
- // ..........................................................
- // TEMPLATE SUPPORT
- //
-
- /**
- The name of the template to lookup if no template is provided.
-
- By default `Ember.View` will lookup a template with this name in
- `Ember.TEMPLATES` (a shared global object).
-
- @property templateName
- @type String
- @default null
- */
- templateName: null,
-
- /**
- The name of the layout to lookup if no layout is provided.
-
- By default `Ember.View` will lookup a template with this name in
- `Ember.TEMPLATES` (a shared global object).
-
- @property layoutName
- @type String
- @default null
- */
- layoutName: null,
-
- /**
- Used to identify this view during debugging
-
- @property instrumentDisplay
- @type String
- */
- instrumentDisplay: computed(function() {
- if (this.helperName) {
- return '{{' + this.helperName + '}}';
- }
- }),
-
- /**
- The template used to render the view. This should be a function that
- accepts an optional context parameter and returns a string of HTML that
- will be inserted into the DOM relative to its parent view.
-
- In general, you should set the `templateName` property instead of setting
- the template yourself.
-
- @property template
- @type Function
- */
- template: computed('templateName', function(key, value) {
- if (value !== undefined) { return value; }
-
- var templateName = get(this, 'templateName');
- var template = this.templateForName(templateName, 'template');
-
- Ember.assert("You specified the templateName " + templateName + " for " + this + ", but it did not exist.", !templateName || template);
-
- return template || get(this, 'defaultTemplate');
- }),
-
- /**
- The controller managing this view. If this property is set, it will be
- made available for use by the template.
-
- @property controller
- @type Object
- */
- controller: computed('_parentView', function(key) {
- var parentView = get(this, '_parentView');
- return parentView ? get(parentView, 'controller') : null;
- }),
-
- /**
- A view may contain a layout. A layout is a regular template but
- supersedes the `template` property during rendering. It is the
- responsibility of the layout template to retrieve the `template`
- property from the view (or alternatively, call `Handlebars.helpers.yield`,
- `{{yield}}`) to render it in the correct location.
-
- This is useful for a view that has a shared wrapper, but which delegates
- the rendering of the contents of the wrapper to the `template` property
- on a subclass.
-
- @property layout
- @type Function
- */
- layout: computed(function(key) {
- var layoutName = get(this, 'layoutName');
- var layout = this.templateForName(layoutName, 'layout');
-
- Ember.assert("You specified the layoutName " + layoutName + " for " + this + ", but it did not exist.", !layoutName || layout);
-
- return layout || get(this, 'defaultLayout');
- }).property('layoutName'),
-
- _yield: function(context, options) {
- var template = get(this, 'template');
- if (template) { template(context, options); }
- },
-
- templateForName: function(name, type) {
- if (!name) { return; }
- Ember.assert("templateNames are not allowed to contain periods: "+name, name.indexOf('.') === -1);
-
- if (!this.container) {
- throw new EmberError('Container was not found when looking up a views template. ' +
- 'This is most likely due to manually instantiating an Ember.View. ' +
- 'See: http://git.io/EKPpnA');
- }
-
- return this.container.lookup('template:' + name);
- },
-
- /**
- The object from which templates should access properties.
-
- This object will be passed to the template function each time the render
- method is called, but it is up to the individual function to decide what
- to do with it.
-
- By default, this will be the view's controller.
-
- @property context
- @type Object
- */
- context: computed(function(key, value) {
- if (arguments.length === 2) {
- set(this, '_context', value);
- return value;
- } else {
- return get(this, '_context');
- }
- })["volatile"](),
-
- /**
- Private copy of the view's template context. This can be set directly
- by Handlebars without triggering the observer that causes the view
- to be re-rendered.
-
- The context of a view is looked up as follows:
-
- 1. Supplied context (usually by Handlebars)
- 2. Specified controller
- 3. `parentView`'s context (for a child of a ContainerView)
-
- The code in Handlebars that overrides the `_context` property first
- checks to see whether the view has a specified controller. This is
- something of a hack and should be revisited.
-
- @property _context
- @private
- */
- _context: computed(function(key) {
- var parentView, controller;
-
- if (controller = get(this, 'controller')) {
- return controller;
- }
-
- parentView = this._parentView;
- if (parentView) {
- return get(parentView, '_context');
- }
-
- return null;
- }),
-
- /**
- If a value that affects template rendering changes, the view should be
- re-rendered to reflect the new value.
-
- @method _contextDidChange
- @private
- */
- _contextDidChange: observer('context', function() {
- this.rerender();
- }),
-
- /**
- If `false`, the view will appear hidden in DOM.
-
- @property isVisible
- @type Boolean
- @default null
- */
- isVisible: true,
-
- /**
- Array of child views. You should never edit this array directly.
- Instead, use `appendChild` and `removeFromParent`.
-
- @property childViews
- @type Array
- @default []
- @private
- */
- childViews: childViewsProperty,
-
- _childViews: EMPTY_ARRAY,
-
- // When it's a virtual view, we need to notify the parent that their
- // childViews will change.
- _childViewsWillChange: beforeObserver('childViews', function() {
- if (this.isVirtual) {
- var parentView = get(this, 'parentView');
- if (parentView) { propertyWillChange(parentView, 'childViews'); }
- }
- }),
-
- // When it's a virtual view, we need to notify the parent that their
- // childViews did change.
- _childViewsDidChange: observer('childViews', function() {
- if (this.isVirtual) {
- var parentView = get(this, 'parentView');
- if (parentView) { propertyDidChange(parentView, 'childViews'); }
- }
- }),
-
- /**
- Return the nearest ancestor that is an instance of the provided
- class.
-
- @method nearestInstanceOf
- @param {Class} klass Subclass of Ember.View (or Ember.View itself)
- @return Ember.View
- @deprecated
- */
- nearestInstanceOf: function(klass) {
- Ember.deprecate("nearestInstanceOf is deprecated and will be removed from future releases. Use nearestOfType.");
- var view = get(this, 'parentView');
-
- while (view) {
- if (view instanceof klass) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor that is an instance of the provided
- class or mixin.
-
- @method nearestOfType
- @param {Class,Mixin} klass Subclass of Ember.View (or Ember.View itself),
- or an instance of Ember.Mixin.
- @return Ember.View
- */
- nearestOfType: function(klass) {
- var view = get(this, 'parentView');
- var isOfType = klass instanceof Mixin ?
- function(view) { return klass.detect(view); } :
- function(view) { return klass.detect(view.constructor); };
-
- while (view) {
- if (isOfType(view)) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor that has a given property.
-
- @method nearestWithProperty
- @param {String} property A property name
- @return Ember.View
- */
- nearestWithProperty: function(property) {
- var view = get(this, 'parentView');
-
- while (view) {
- if (property in view) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor whose parent is an instance of
- `klass`.
-
- @method nearestChildOf
- @param {Class} klass Subclass of Ember.View (or Ember.View itself)
- @return Ember.View
- */
- nearestChildOf: function(klass) {
- var view = get(this, 'parentView');
-
- while (view) {
- if (get(view, 'parentView') instanceof klass) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- When the parent view changes, recursively invalidate `controller`
-
- @method _parentViewDidChange
- @private
- */
- _parentViewDidChange: observer('_parentView', function() {
- if (this.isDestroying) { return; }
-
- this._setupKeywords();
- this.trigger('parentViewDidChange');
-
- if (get(this, 'parentView.controller') && !get(this, 'controller')) {
- this.notifyPropertyChange('controller');
- }
- }),
-
- _controllerDidChange: observer('controller', function() {
- if (this.isDestroying) { return; }
-
- this.rerender();
-
- this.forEachChildView(function(view) {
- view.propertyDidChange('controller');
- });
- }),
-
- _setupKeywords: function() {
- var keywords = this._keywords;
- var contextView = this._contextView || this._parentView;
-
- if (contextView) {
- var parentKeywords = contextView._keywords;
-
- keywords.view.setSource(this.isVirtual ? parentKeywords.view : this);
-
- for (var name in parentKeywords) {
- if (keywords[name]) continue;
- keywords[name] = parentKeywords[name];
- }
- } else {
- keywords.view.setSource(this.isVirtual ? null : this);
- }
- },
-
- /**
- Called on your view when it should push strings of HTML into a
- `Ember.RenderBuffer`. Most users will want to override the `template`
- or `templateName` properties instead of this method.
-
- By default, `Ember.View` will look for a function in the `template`
- property and invoke it with the value of `context`. The value of
- `context` will be the view's controller unless you override it.
-
- @method render
- @param {Ember.RenderBuffer} buffer The render buffer
- */
- render: function(buffer) {
- // If this view has a layout, it is the responsibility of the
- // the layout to render the view's template. Otherwise, render the template
- // directly.
- var template = get(this, 'layout') || get(this, 'template');
-
- if (template) {
- var context = get(this, 'context');
- var output;
-
- var data = {
- view: this,
- buffer: buffer,
- isRenderData: true
- };
-
- // Invoke the template with the provided template context, which
- // is the view's controller by default. A hash of data is also passed that provides
- // the template with access to the view and render buffer.
-
- Ember.assert('template must be a function. Did you mean to call Ember.Handlebars.compile("...") or specify templateName instead?', typeof template === 'function');
- // The template should write directly to the render buffer instead
- // of returning a string.
- output = template(context, { data: data });
-
- // If the template returned a string instead of writing to the buffer,
- // push the string onto the buffer.
- if (output !== undefined) { buffer.push(output); }
- }
- },
-
- /**
- Renders the view again. This will work regardless of whether the
- view is already in the DOM or not. If the view is in the DOM, the
- rendering process will be deferred to give bindings a chance
- to synchronize.
-
- If children were added during the rendering process using `appendChild`,
- `rerender` will remove them, because they will be added again
- if needed by the next `render`.
-
- In general, if the display of your view changes, you should modify
- the DOM element directly instead of manually calling `rerender`, which can
- be slow.
-
- @method rerender
- */
- rerender: function() {
- return this.currentState.rerender(this);
- },
-
- /**
- Iterates over the view's `classNameBindings` array, inserts the value
- of the specified property into the `classNames` array, then creates an
- observer to update the view's element if the bound property ever changes
- in the future.
-
- @method _applyClassNameBindings
- @private
- */
- _applyClassNameBindings: function(classBindings) {
- var classNames = this.classNames;
- var elem, newClass, dasherizedClass;
-
- // Loop through all of the configured bindings. These will be either
- // property names ('isUrgent') or property paths relative to the view
- // ('content.isUrgent')
- forEach(classBindings, function(binding) {
-
- var parsedPath;
-
- if (typeof binding === 'string') {
- Ember.assert("classNameBindings must not have spaces in them. Multiple class name bindings can be provided as elements of an array, e.g. ['foo', ':bar']", binding.indexOf(' ') === -1);
- parsedPath = View._parsePropertyPath(binding);
- if (parsedPath.path === '') {
- parsedPath.stream = new SimpleStream(true);
- } else {
- parsedPath.stream = this.getStream('_view.' + parsedPath.path);
- }
- } else {
- parsedPath = binding;
- }
-
- // Variable in which the old class value is saved. The observer function
- // closes over this variable, so it knows which string to remove when
- // the property changes.
- var oldClass;
-
- // Set up an observer on the context. If the property changes, toggle the
- // class name.
- var observer = this._wrapAsScheduled(function() {
- // Get the current value of the property
- newClass = this._classStringForProperty(parsedPath);
- elem = this.$();
-
- // If we had previously added a class to the element, remove it.
- if (oldClass) {
- elem.removeClass(oldClass);
- // Also remove from classNames so that if the view gets rerendered,
- // the class doesn't get added back to the DOM.
- classNames.removeObject(oldClass);
- }
-
- // If necessary, add a new class. Make sure we keep track of it so
- // it can be removed in the future.
- if (newClass) {
- elem.addClass(newClass);
- oldClass = newClass;
- } else {
- oldClass = null;
- }
- });
-
- // Get the class name for the property at its current value
- dasherizedClass = this._classStringForProperty(parsedPath);
-
- if (dasherizedClass) {
- // Ensure that it gets into the classNames array
- // so it is displayed when we render.
- addObject(classNames, dasherizedClass);
-
- // Save a reference to the class name so we can remove it
- // if the observer fires. Remember that this variable has
- // been closed over by the observer.
- oldClass = dasherizedClass;
- }
-
- parsedPath.stream.subscribe(observer, this);
- // Remove className so when the view is rerendered,
- // the className is added based on binding reevaluation
- this.one('willClearRender', function() {
- if (oldClass) {
- classNames.removeObject(oldClass);
- oldClass = null;
- }
- });
-
- }, this);
- },
-
- _unspecifiedAttributeBindings: null,
-
- /**
- Iterates through the view's attribute bindings, sets up observers for each,
- then applies the current value of the attributes to the passed render buffer.
-
- @method _applyAttributeBindings
- @param {Ember.RenderBuffer} buffer
- @private
- */
- _applyAttributeBindings: function(buffer, attributeBindings) {
- var attributeValue;
- var unspecifiedAttributeBindings = this._unspecifiedAttributeBindings = this._unspecifiedAttributeBindings || {};
-
- forEach(attributeBindings, function(binding) {
- var split = binding.split(':');
- var property = split[0];
- var attributeName = split[1] || property;
-
- Ember.assert('You cannot use class as an attributeBinding, use classNameBindings instead.', attributeName !== 'class');
-
- if (property in this) {
- this._setupAttributeBindingObservation(property, attributeName);
-
- // Determine the current value and add it to the render buffer
- // if necessary.
- attributeValue = get(this, property);
- View.applyAttributeBindings(buffer, attributeName, attributeValue);
- } else {
- unspecifiedAttributeBindings[property] = attributeName;
- }
- }, this);
-
- // Lazily setup setUnknownProperty after attributeBindings are initially applied
- this.setUnknownProperty = this._setUnknownProperty;
- },
-
- _setupAttributeBindingObservation: function(property, attributeName) {
- var attributeValue, elem;
-
- // Create an observer to add/remove/change the attribute if the
- // JavaScript property changes.
- var observer = function() {
- elem = this.$();
-
- attributeValue = get(this, property);
-
- View.applyAttributeBindings(elem, attributeName, attributeValue);
- };
-
- this.registerObserver(this, property, observer);
- },
-
- /**
- We're using setUnknownProperty as a hook to setup attributeBinding observers for
- properties that aren't defined on a view at initialization time.
-
- Note: setUnknownProperty will only be called once for each property.
-
- @method setUnknownProperty
- @param key
- @param value
- @private
- */
- setUnknownProperty: null, // Gets defined after initialization by _applyAttributeBindings
-
- _setUnknownProperty: function(key, value) {
- var attributeName = this._unspecifiedAttributeBindings && this._unspecifiedAttributeBindings[key];
- if (attributeName) {
- this._setupAttributeBindingObservation(key, attributeName);
- }
-
- defineProperty(this, key);
- return set(this, key, value);
- },
-
- /**
- Given a property name, returns a dasherized version of that
- property name if the property evaluates to a non-falsy value.
-
- For example, if the view has property `isUrgent` that evaluates to true,
- passing `isUrgent` to this method will return `"is-urgent"`.
-
- @method _classStringForProperty
- @param property
- @private
- */
- _classStringForProperty: function(parsedPath) {
- return View._classStringForValue(parsedPath.path, parsedPath.stream.value(), parsedPath.className, parsedPath.falsyClassName);
- },
-
- // ..........................................................
- // ELEMENT SUPPORT
- //
-
- /**
- Returns the current DOM element for the view.
-
- @property element
- @type DOMElement
- */
- element: null,
-
- /**
- Returns a jQuery object for this view's element. If you pass in a selector
- string, this method will return a jQuery object, using the current element
- as its buffer.
-
- For example, calling `view.$('li')` will return a jQuery object containing
- all of the `li` elements inside the DOM element of this view.
-
- @method $
- @param {String} [selector] a jQuery-compatible selector string
- @return {jQuery} the jQuery object for the DOM node
- */
- $: function(sel) {
- return this.currentState.$(this, sel);
- },
-
- mutateChildViews: function(callback) {
- var childViews = this._childViews;
- var idx = childViews.length;
- var view;
-
- while(--idx >= 0) {
- view = childViews[idx];
- callback(this, view, idx);
- }
-
- return this;
- },
-
- forEachChildView: function(callback) {
- var childViews = this._childViews;
-
- if (!childViews) { return this; }
-
- var len = childViews.length;
- var view, idx;
-
- for (idx = 0; idx < len; idx++) {
- view = childViews[idx];
- callback(view);
- }
-
- return this;
- },
-
- /**
- Appends the view's element to the specified parent element.
-
- If the view does not have an HTML representation yet, `createElement()`
- will be called automatically.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the given element until all bindings have
- finished synchronizing.
-
- This is not typically a function that you will need to call directly when
- building your application. You might consider using `Ember.ContainerView`
- instead. If you do need to use `appendTo`, be sure that the target element
- you are providing is associated with an `Ember.Application` and does not
- have an ancestor element that is associated with an Ember view.
-
- @method appendTo
- @param {String|DOMElement|jQuery} A selector, element, HTML string, or jQuery object
- @return {Ember.View} receiver
- */
- appendTo: function(selector) {
- var target = jQuery(selector);
-
- Ember.assert("You tried to append to (" + selector + ") but that isn't in the DOM", target.length > 0);
- Ember.assert("You cannot append to an existing Ember.View. Consider using Ember.ContainerView instead.", !target.is('.ember-view') && !target.parents().is('.ember-view'));
-
- this.constructor.renderer.appendTo(this, target[0]);
-
- return this;
- },
-
- /**
- Replaces the content of the specified parent element with this view's
- element. If the view does not have an HTML representation yet,
- `createElement()` will be called automatically.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the given element until all bindings have
- finished synchronizing
-
- @method replaceIn
- @param {String|DOMElement|jQuery} target A selector, element, HTML string, or jQuery object
- @return {Ember.View} received
- */
- replaceIn: function(selector) {
- var target = jQuery(selector);
-
- Ember.assert("You tried to replace in (" + selector + ") but that isn't in the DOM", target.length > 0);
- Ember.assert("You cannot replace an existing Ember.View. Consider using Ember.ContainerView instead.", !target.is('.ember-view') && !target.parents().is('.ember-view'));
-
- this.constructor.renderer.replaceIn(this, target[0]);
-
- return this;
- },
-
- /**
- Appends the view's element to the document body. If the view does
- not have an HTML representation yet, `createElement()` will be called
- automatically.
-
- If your application uses the `rootElement` property, you must append
- the view within that element. Rendering views outside of the `rootElement`
- is not supported.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the document body until all bindings have
- finished synchronizing.
-
- @method append
- @return {Ember.View} receiver
- */
- append: function() {
- return this.appendTo(document.body);
- },
-
- /**
- Removes the view's element from the element to which it is attached.
-
- @method remove
- @return {Ember.View} receiver
- */
- remove: function() {
- // What we should really do here is wait until the end of the run loop
- // to determine if the element has been re-appended to a different
- // element.
- // In the interim, we will just re-render if that happens. It is more
- // important than elements get garbage collected.
- if (!this.removedFromDOM) { this.destroyElement(); }
- },
-
- /**
- The HTML `id` of the view's element in the DOM. You can provide this
- value yourself but it must be unique (just as in HTML):
-
- ```handlebars
- {{my-component elementId="a-really-cool-id"}}
- ```
-
- If not manually set a default value will be provided by the framework.
-
- Once rendered an element's `elementId` is considered immutable and you
- should never change it.
-
- @property elementId
- @type String
- */
- elementId: null,
-
- /**
- Attempts to discover the element in the parent element. The default
- implementation looks for an element with an ID of `elementId` (or the
- view's guid if `elementId` is null). You can override this method to
- provide your own form of lookup. For example, if you want to discover your
- element using a CSS class name instead of an ID.
-
- @method findElementInParentElement
- @param {DOMElement} parentElement The parent's DOM element
- @return {DOMElement} The discovered element
- */
- findElementInParentElement: function(parentElem) {
- var id = "#" + this.elementId;
- return jQuery(id)[0] || jQuery(id, parentElem)[0];
- },
-
- /**
- Creates a DOM representation of the view and all of its child views by
- recursively calling the `render()` method.
-
- After the element has been inserted into the DOM, `didInsertElement` will
- be called on this view and all of its child views.
-
- @method createElement
- @return {Ember.View} receiver
- */
- createElement: function() {
- if (this.element) { return this; }
-
- this._didCreateElementWithoutMorph = true;
- this.constructor.renderer.renderTree(this);
-
- return this;
- },
-
- /**
- Called when a view is going to insert an element into the DOM.
-
- @event willInsertElement
- */
- willInsertElement: Ember.K,
-
- /**
- Called when the element of the view has been inserted into the DOM
- or after the view was re-rendered. Override this function to do any
- set up that requires an element in the document body.
-
- When a view has children, didInsertElement will be called on the
- child view(s) first, bubbling upwards through the hierarchy.
-
- @event didInsertElement
- */
- didInsertElement: Ember.K,
-
- /**
- Called when the view is about to rerender, but before anything has
- been torn down. This is a good opportunity to tear down any manual
- observers you have installed based on the DOM state
-
- @event willClearRender
- */
- willClearRender: Ember.K,
-
- /**
- Destroys any existing element along with the element for any child views
- as well. If the view does not currently have a element, then this method
- will do nothing.
-
- If you implement `willDestroyElement()` on your view, then this method will
- be invoked on your view before your element is destroyed to give you a
- chance to clean up any event handlers, etc.
-
- If you write a `willDestroyElement()` handler, you can assume that your
- `didInsertElement()` handler was called earlier for the same element.
-
- You should not call or override this method yourself, but you may
- want to implement the above callbacks.
-
- @method destroyElement
- @return {Ember.View} receiver
- */
- destroyElement: function() {
- return this.currentState.destroyElement(this);
- },
-
- /**
- Called when the element of the view is going to be destroyed. Override
- this function to do any teardown that requires an element, like removing
- event listeners.
-
- Please note: any property changes made during this event will have no
- effect on object observers.
-
- @event willDestroyElement
- */
- willDestroyElement: Ember.K,
-
- /**
- Called when the parentView property has changed.
-
- @event parentViewDidChange
- */
- parentViewDidChange: Ember.K,
-
- instrumentName: 'view',
-
- instrumentDetails: function(hash) {
- hash.template = get(this, 'templateName');
- this._super(hash);
- },
-
- beforeRender: function(buffer) {},
-
- afterRender: function(buffer) {},
-
- applyAttributesToBuffer: function(buffer) {
- // Creates observers for all registered class name and attribute bindings,
- // then adds them to the element.
- var classNameBindings = get(this, 'classNameBindings');
- if (classNameBindings.length) {
- this._applyClassNameBindings(classNameBindings);
- }
-
- // Pass the render buffer so the method can apply attributes directly.
- // This isn't needed for class name bindings because they use the
- // existing classNames infrastructure.
- var attributeBindings = get(this, 'attributeBindings');
- if (attributeBindings.length) {
- this._applyAttributeBindings(buffer, attributeBindings);
- }
-
- buffer.setClasses(this.classNames);
- buffer.id(this.elementId);
-
- var role = get(this, 'ariaRole');
- if (role) {
- buffer.attr('role', role);
- }
-
- if (get(this, 'isVisible') === false) {
- buffer.style('display', 'none');
- }
- },
-
- // ..........................................................
- // STANDARD RENDER PROPERTIES
- //
-
- /**
- Tag name for the view's outer element. The tag name is only used when an
- element is first created. If you change the `tagName` for an element, you
- must destroy and recreate the view element.
-
- By default, the render buffer will use a `` tag for views.
-
- @property tagName
- @type String
- @default null
- */
-
- // We leave this null by default so we can tell the difference between
- // the default case and a user-specified tag.
- tagName: null,
-
- /**
- The WAI-ARIA role of the control represented by this view. For example, a
- button may have a role of type 'button', or a pane may have a role of
- type 'alertdialog'. This property is used by assistive software to help
- visually challenged users navigate rich web applications.
-
- The full list of valid WAI-ARIA roles is available at:
- [http://www.w3.org/TR/wai-aria/roles#roles_categorization](http://www.w3.org/TR/wai-aria/roles#roles_categorization)
-
- @property ariaRole
- @type String
- @default null
- */
- ariaRole: null,
-
- /**
- Standard CSS class names to apply to the view's outer element. This
- property automatically inherits any class names defined by the view's
- superclasses as well.
-
- @property classNames
- @type Array
- @default ['ember-view']
- */
- classNames: ['ember-view'],
-
- /**
- A list of properties of the view to apply as class names. If the property
- is a string value, the value of that string will be applied as a class
- name.
-
- ```javascript
- // Applies the 'high' class to the view element
- Ember.View.extend({
- classNameBindings: ['priority']
- priority: 'high'
- });
- ```
-
- If the value of the property is a Boolean, the name of that property is
- added as a dasherized class name.
-
- ```javascript
- // Applies the 'is-urgent' class to the view element
- Ember.View.extend({
- classNameBindings: ['isUrgent']
- isUrgent: true
- });
- ```
-
- If you would prefer to use a custom value instead of the dasherized
- property name, you can pass a binding like this:
-
- ```javascript
- // Applies the 'urgent' class to the view element
- Ember.View.extend({
- classNameBindings: ['isUrgent:urgent']
- isUrgent: true
- });
- ```
-
- This list of properties is inherited from the view's superclasses as well.
-
- @property classNameBindings
- @type Array
- @default []
- */
- classNameBindings: EMPTY_ARRAY,
-
- /**
- A list of properties of the view to apply as attributes. If the property is
- a string value, the value of that string will be applied as the attribute.
-
- ```javascript
- // Applies the type attribute to the element
- // with the value "button", like
- Ember.View.extend({
- attributeBindings: ['type'],
- type: 'button'
- });
- ```
-
- If the value of the property is a Boolean, the name of that property is
- added as an attribute.
-
- ```javascript
- // Renders something like
- Ember.View.extend({
- attributeBindings: ['enabled'],
- enabled: true
- });
- ```
-
- @property attributeBindings
- */
- attributeBindings: EMPTY_ARRAY,
-
- // .......................................................
- // CORE DISPLAY METHODS
- //
-
- /**
- Setup a view, but do not finish waking it up.
-
- * configure `childViews`
- * register the view with the global views hash, which is used for event
- dispatch
-
- @method init
- @private
- */
- init: function() {
- if (!this.isVirtual && !this.elementId) {
- this.elementId = guidFor(this);
- }
-
- this._super();
-
- // setup child views. be sure to clone the child views array first
- this._childViews = this._childViews.slice();
- this._baseContext = undefined;
- this._contextStream = undefined;
- this._streamBindings = undefined;
-
- if (!this._keywords) {
- this._keywords = create(null);
- }
- this._keywords.view = new SimpleStream();
- this._keywords._view = this;
- this._keywords.controller = new KeyStream(this, 'controller');
- this._setupKeywords();
-
- Ember.assert("Only arrays are allowed for 'classNameBindings'", typeOf(this.classNameBindings) === 'array');
- this.classNameBindings = emberA(this.classNameBindings.slice());
-
- Ember.assert("Only arrays are allowed for 'classNames'", typeOf(this.classNames) === 'array');
- this.classNames = emberA(this.classNames.slice());
- },
-
- appendChild: function(view, options) {
- return this.currentState.appendChild(this, view, options);
- },
-
- /**
- Removes the child view from the parent view.
-
- @method removeChild
- @param {Ember.View} view
- @return {Ember.View} receiver
- */
- removeChild: function(view) {
- // If we're destroying, the entire subtree will be
- // freed, and the DOM will be handled separately,
- // so no need to mess with childViews.
- if (this.isDestroying) { return; }
-
- // update parent node
- set(view, '_parentView', null);
-
- // remove view from childViews array.
- var childViews = this._childViews;
-
- removeObject(childViews, view);
-
- this.propertyDidChange('childViews'); // HUH?! what happened to will change?
-
- return this;
- },
-
- /**
- Removes all children from the `parentView`.
-
- @method removeAllChildren
- @return {Ember.View} receiver
- */
- removeAllChildren: function() {
- return this.mutateChildViews(function(parentView, view) {
- parentView.removeChild(view);
- });
- },
-
- destroyAllChildren: function() {
- return this.mutateChildViews(function(parentView, view) {
- view.destroy();
- });
- },
-
- /**
- Removes the view from its `parentView`, if one is found. Otherwise
- does nothing.
-
- @method removeFromParent
- @return {Ember.View} receiver
- */
- removeFromParent: function() {
- var parent = this._parentView;
-
- // Remove DOM element from parent
- this.remove();
-
- if (parent) { parent.removeChild(this); }
- return this;
- },
-
- /**
- You must call `destroy` on a view to destroy the view (and all of its
- child views). This will remove the view from any parent node, then make
- sure that the DOM element managed by the view can be released by the
- memory manager.
-
- @method destroy
- */
- destroy: function() {
- // get parentView before calling super because it'll be destroyed
- var nonVirtualParentView = get(this, 'parentView');
- var viewName = this.viewName;
-
- if (!this._super()) { return; }
-
- // remove from non-virtual parent view if viewName was specified
- if (viewName && nonVirtualParentView) {
- nonVirtualParentView.set(viewName, null);
- }
-
- return this;
- },
-
- /**
- Instantiates a view to be added to the childViews array during view
- initialization. You generally will not call this method directly unless
- you are overriding `createChildViews()`. Note that this method will
- automatically configure the correct settings on the new view instance to
- act as a child of the parent.
-
- @method createChildView
- @param {Class|String} viewClass
- @param {Hash} [attrs] Attributes to add
- @return {Ember.View} new instance
- */
- createChildView: function(view, attrs) {
- if (!view) {
- throw new TypeError("createChildViews first argument must exist");
- }
-
- if (view.isView && view._parentView === this && view.container === this.container) {
- return view;
- }
-
- attrs = attrs || {};
- attrs._parentView = this;
-
- if (CoreView.detect(view)) {
- attrs.templateData = attrs.templateData || get(this, 'templateData');
-
- attrs.container = this.container;
- view = view.create(attrs);
-
- // don't set the property on a virtual view, as they are invisible to
- // consumers of the view API
- if (view.viewName) {
- set(get(this, 'concreteView'), view.viewName, view);
- }
- } else if ('string' === typeof view) {
- var fullName = 'view:' + view;
- var ViewKlass = this.container.lookupFactory(fullName);
-
- Ember.assert("Could not find view: '" + fullName + "'", !!ViewKlass);
-
- attrs.templateData = get(this, 'templateData');
- view = ViewKlass.create(attrs);
- } else {
- Ember.assert('You must pass instance or subclass of View', view.isView);
- attrs.container = this.container;
-
- if (!get(view, 'templateData')) {
- attrs.templateData = get(this, 'templateData');
- }
-
- setProperties(view, attrs);
-
- }
-
- return view;
- },
-
- becameVisible: Ember.K,
- becameHidden: Ember.K,
-
- /**
- When the view's `isVisible` property changes, toggle the visibility
- element of the actual DOM element.
-
- @method _isVisibleDidChange
- @private
- */
- _isVisibleDidChange: observer('isVisible', function() {
- if (this._isVisible === get(this, 'isVisible')) { return ; }
- run.scheduleOnce('render', this, this._toggleVisibility);
- }),
-
- _toggleVisibility: function() {
- var $el = this.$();
- var isVisible = get(this, 'isVisible');
-
- if (this._isVisible === isVisible) { return ; }
-
- // It's important to keep these in sync, even if we don't yet have
- // an element in the DOM to manipulate:
- this._isVisible = isVisible;
-
- if (!$el) { return; }
-
- $el.toggle(isVisible);
-
- if (this._isAncestorHidden()) { return; }
-
- if (isVisible) {
- this._notifyBecameVisible();
- } else {
- this._notifyBecameHidden();
- }
- },
-
- _notifyBecameVisible: function() {
- this.trigger('becameVisible');
-
- this.forEachChildView(function(view) {
- var isVisible = get(view, 'isVisible');
-
- if (isVisible || isVisible === null) {
- view._notifyBecameVisible();
- }
- });
- },
-
- _notifyBecameHidden: function() {
- this.trigger('becameHidden');
- this.forEachChildView(function(view) {
- var isVisible = get(view, 'isVisible');
-
- if (isVisible || isVisible === null) {
- view._notifyBecameHidden();
- }
- });
- },
-
- _isAncestorHidden: function() {
- var parent = get(this, 'parentView');
-
- while (parent) {
- if (get(parent, 'isVisible') === false) { return true; }
-
- parent = get(parent, 'parentView');
- }
-
- return false;
- },
- transitionTo: function(state, children) {
- Ember.deprecate("Ember.View#transitionTo has been deprecated, it is for internal use only");
- this._transitionTo(state, children);
- },
- _transitionTo: function(state, children) {
- var priorState = this.currentState;
- var currentState = this.currentState = this._states[state];
- this._state = state;
-
- if (priorState && priorState.exit) { priorState.exit(this); }
- if (currentState.enter) { currentState.enter(this); }
- },
-
- // .......................................................
- // EVENT HANDLING
- //
-
- /**
- Handle events from `Ember.EventDispatcher`
-
- @method handleEvent
- @param eventName {String}
- @param evt {Event}
- @private
- */
- handleEvent: function(eventName, evt) {
- return this.currentState.handleEvent(this, eventName, evt);
- },
-
- registerObserver: function(root, path, target, observer) {
- if (!observer && 'function' === typeof target) {
- observer = target;
- target = null;
- }
-
- if (!root || typeof root !== 'object') {
- return;
- }
-
- var scheduledObserver = this._wrapAsScheduled(observer);
-
- addObserver(root, path, target, scheduledObserver);
-
- this.one('willClearRender', function() {
- removeObserver(root, path, target, scheduledObserver);
- });
- },
-
- _wrapAsScheduled: function(fn) {
- var view = this;
- var stateCheckedFn = function() {
- view.currentState.invokeObserver(this, fn);
- };
- var scheduledFn = function() {
- run.scheduleOnce('render', this, stateCheckedFn);
- };
- return scheduledFn;
- },
-
- getStream: function(path) {
- return this._getContextStream().get(path);
- },
-
- _getBindingForStream: function(path) {
- if (this._streamBindings === undefined) {
- this._streamBindings = create(null);
- this.one('willDestroyElement', this, this._destroyStreamBindings);
- }
-
- if (this._streamBindings[path] !== undefined) {
- return this._streamBindings[path];
- } else {
- var stream = this._getContextStream().get(path);
- return this._streamBindings[path] = new StreamBinding(stream);
- }
- },
-
- _destroyStreamBindings: function() {
- var streamBindings = this._streamBindings;
- for (var path in streamBindings) {
- streamBindings[path].destroy();
- }
- this._streamBindings = undefined;
- },
-
- _getContextStream: function() {
- if (this._contextStream === undefined) {
- this._baseContext = new KeyStream(this, 'context');
- this._contextStream = new ContextStream(this);
- this.one('willDestroyElement', this, this._destroyContextStream);
- }
-
- return this._contextStream;
- },
-
- _destroyContextStream: function() {
- this._baseContext.destroy();
- this._baseContext = undefined;
- this._contextStream.destroy();
- this._contextStream = undefined;
- },
-
- _unsubscribeFromStreamBindings: function() {
- for (var key in this._streamBindingSubscriptions) {
- var streamBinding = this[key + 'Binding'];
- var callback = this._streamBindingSubscriptions[key];
- streamBinding.unsubscribe(callback);
- }
- }
- });
-
- deprecateProperty(View.prototype, 'state', '_state');
- deprecateProperty(View.prototype, 'states', '_states');
-
- /*
- Describe how the specified actions should behave in the various
- states that a view can exist in. Possible states:
-
- * preRender: when a view is first instantiated, and after its
- element was destroyed, it is in the preRender state
- * inBuffer: once a view has been rendered, but before it has
- been inserted into the DOM, it is in the inBuffer state
- * hasElement: the DOM representation of the view is created,
- and is ready to be inserted
- * inDOM: once a view has been inserted into the DOM it is in
- the inDOM state. A view spends the vast majority of its
- existence in this state.
- * destroyed: once a view has been destroyed (using the destroy
- method), it is in this state. No further actions can be invoked
- on a destroyed view.
- */
-
- // in the destroyed state, everything is illegal
-
- // before rendering has begun, all legal manipulations are noops.
-
- // inside the buffer, legal manipulations are done on the buffer
-
- // once the view has been inserted into the DOM, legal manipulations
- // are done on the DOM element.
-
- View.reopenClass({
-
- /**
- Parse a path and return an object which holds the parsed properties.
-
- For example a path like "content.isEnabled:enabled:disabled" will return the
- following object:
-
- ```javascript
- {
- path: "content.isEnabled",
- className: "enabled",
- falsyClassName: "disabled",
- classNames: ":enabled:disabled"
- }
- ```
-
- @method _parsePropertyPath
- @static
- @private
- */
- _parsePropertyPath: function(path) {
- var split = path.split(':');
- var propertyPath = split[0];
- var classNames = "";
- var className, falsyClassName;
-
- // check if the property is defined as prop:class or prop:trueClass:falseClass
- if (split.length > 1) {
- className = split[1];
- if (split.length === 3) { falsyClassName = split[2]; }
-
- classNames = ':' + className;
- if (falsyClassName) { classNames += ":" + falsyClassName; }
- }
-
- return {
- stream: undefined,
- path: propertyPath,
- classNames: classNames,
- className: (className === '') ? undefined : className,
- falsyClassName: falsyClassName
- };
- },
-
- /**
- Get the class name for a given value, based on the path, optional
- `className` and optional `falsyClassName`.
-
- - if a `className` or `falsyClassName` has been specified:
- - if the value is truthy and `className` has been specified,
- `className` is returned
- - if the value is falsy and `falsyClassName` has been specified,
- `falsyClassName` is returned
- - otherwise `null` is returned
- - if the value is `true`, the dasherized last part of the supplied path
- is returned
- - if the value is not `false`, `undefined` or `null`, the `value`
- is returned
- - if none of the above rules apply, `null` is returned
-
- @method _classStringForValue
- @param path
- @param val
- @param className
- @param falsyClassName
- @static
- @private
- */
- _classStringForValue: function(path, val, className, falsyClassName) {
- if(isArray(val)) {
- val = get(val, 'length') !== 0;
- }
-
- // When using the colon syntax, evaluate the truthiness or falsiness
- // of the value to determine which className to return
- if (className || falsyClassName) {
- if (className && !!val) {
- return className;
-
- } else if (falsyClassName && !val) {
- return falsyClassName;
-
- } else {
- return null;
- }
-
- // If value is a Boolean and true, return the dasherized property
- // name.
- } else if (val === true) {
- // Normalize property path to be suitable for use
- // as a class name. For exaple, content.foo.barBaz
- // becomes bar-baz.
- var parts = path.split('.');
- return dasherize(parts[parts.length-1]);
-
- // If the value is not false, undefined, or null, return the current
- // value of the property.
- } else if (val !== false && val != null) {
- return val;
-
- // Nothing to display. Return null so that the old class is removed
- // but no new class is added.
- } else {
- return null;
- }
- }
- });
-
- var mutation = EmberObject.extend(Evented).create();
- // TODO MOVE TO RENDERER HOOKS
- View.addMutationListener = function(callback) {
- mutation.on('change', callback);
- };
-
- View.removeMutationListener = function(callback) {
- mutation.off('change', callback);
- };
-
- View.notifyMutationListeners = function() {
- mutation.trigger('change');
- };
-
- /**
- Global views hash
-
- @property views
- @static
- @type Hash
- */
- View.views = {};
-
- // If someone overrides the child views computed property when
- // defining their class, we want to be able to process the user's
- // supplied childViews and then restore the original computed property
- // at view initialization time. This happens in Ember.ContainerView's init
- // method.
- View.childViewsProperty = childViewsProperty;
-
- View.applyAttributeBindings = function(elem, name, initialValue) {
- var value = sanitizeAttributeValue(elem[0], name, initialValue);
- var type = typeOf(value);
-
- // if this changes, also change the logic in ember-handlebars/lib/helpers/binding.js
- if (name !== 'value' && (type === 'string' || (type === 'number' && !isNaN(value)))) {
- if (value !== elem.attr(name)) {
- elem.attr(name, value);
- }
- } else if (name === 'value' || type === 'boolean') {
- if (isNone(value) || value === false) {
- // `null`, `undefined` or `false` should remove attribute
- elem.removeAttr(name);
- // In IE8 `prop` couldn't remove attribute when name is `required`.
- if (name === 'required') {
- elem.removeProp(name);
- } else {
- elem.prop(name, '');
- }
- } else if (value !== elem.prop(name)) {
- // value should always be properties
- elem.prop(name, value);
- }
- } else if (!value) {
- elem.removeAttr(name);
- }
- };
-
- __exports__["default"] = View;
- });
-enifed("ember",
- ["ember-metal","ember-runtime","ember-handlebars","ember-views","ember-routing","ember-routing-handlebars","ember-application","ember-extension-support"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__) {
- "use strict";
- /* global navigator */
- // require the main entry points for each of these packages
- // this is so that the global exports occur properly
-
- // do this to ensure that Ember.Test is defined properly on the global
- // if it is present.
- if (Ember.__loader.registry['ember-testing']) {
- requireModule('ember-testing');
- }
-
- /**
- Ember
-
- @module ember
- */
-
- Ember.deprecate('Usage of Ember is deprecated for Internet Explorer 6 and 7, support will be removed in the next major version.', !navigator.userAgent.match(/MSIE [67]/));
- });
-enifed("morph",
- ["./morph/morph","./morph/dom-helper","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Morph = __dependency1__["default"];
- var Morph;
- __exports__.Morph = Morph;
- var DOMHelper = __dependency2__["default"];
- var DOMHelper;
- __exports__.DOMHelper = DOMHelper;
- });
-enifed("morph/dom-helper",
- ["../morph/morph","./dom-helper/build-html-dom","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Morph = __dependency1__["default"];
- var buildHTMLDOM = __dependency2__.buildHTMLDOM;
- var svgNamespace = __dependency2__.svgNamespace;
- var svgHTMLIntegrationPoints = __dependency2__.svgHTMLIntegrationPoints;
-
- var deletesBlankTextNodes = (function(){
- var element = document.createElement('div');
- element.appendChild( document.createTextNode('') );
- var clonedElement = element.cloneNode(true);
- return clonedElement.childNodes.length === 0;
- })();
-
- var ignoresCheckedAttribute = (function(){
- var element = document.createElement('input');
- element.setAttribute('checked', 'checked');
- var clonedElement = element.cloneNode(false);
- return !clonedElement.checked;
- })();
-
- function isSVG(ns){
- return ns === svgNamespace;
- }
-
- // This is not the namespace of the element, but of
- // the elements inside that elements.
- function interiorNamespace(element){
- if (
- element &&
- element.namespaceURI === svgNamespace &&
- !svgHTMLIntegrationPoints[element.tagName]
- ) {
- return svgNamespace;
- } else {
- return null;
- }
- }
-
- // The HTML spec allows for "omitted start tags". These tags are optional
- // when their intended child is the first thing in the parent tag. For
- // example, this is a tbody start tag:
- //
- //
- //
- //
- //
- // The tbody may be omitted, and the browser will accept and render:
- //
- //
- //
- //
- // However, the omitted start tag will still be added to the DOM. Here
- // we test the string and context to see if the browser is about to
- // perform this cleanup.
- //
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#optional-tags
- // describes which tags are omittable. The spec for tbody and colgroup
- // explains this behavior:
- //
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/tables.html#the-tbody-element
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/tables.html#the-colgroup-element
- //
-
- var omittedStartTagChildTest = /<([\w:]+)/;
- function detectOmittedStartTag(string, contextualElement){
- // Omitted start tags are only inside table tags.
- if (contextualElement.tagName === 'TABLE') {
- var omittedStartTagChildMatch = omittedStartTagChildTest.exec(string);
- if (omittedStartTagChildMatch) {
- var omittedStartTagChild = omittedStartTagChildMatch[1];
- // It is already asserted that the contextual element is a table
- // and not the proper start tag. Just see if a tag was omitted.
- return omittedStartTagChild === 'tr' ||
- omittedStartTagChild === 'col';
- }
- }
- }
-
- function buildSVGDOM(html, dom){
- var div = dom.document.createElement('div');
- div.innerHTML = '';
- return div.firstChild.childNodes;
- }
-
- /*
- * A class wrapping DOM functions to address environment compatibility,
- * namespaces, contextual elements for morph un-escaped content
- * insertion.
- *
- * When entering a template, a DOMHelper should be passed:
- *
- * template(context, { hooks: hooks, dom: new DOMHelper() });
- *
- * TODO: support foreignObject as a passed contextual element. It has
- * a namespace (svg) that does not match its internal namespace
- * (xhtml).
- *
- * @class DOMHelper
- * @constructor
- * @param {HTMLDocument} _document The document DOM methods are proxied to
- */
- function DOMHelper(_document){
- this.document = _document || window.document;
- this.namespace = null;
- }
-
- var prototype = DOMHelper.prototype;
- prototype.constructor = DOMHelper;
-
- prototype.insertBefore = function(element, childElement, referenceChild) {
- return element.insertBefore(childElement, referenceChild);
- };
-
- prototype.appendChild = function(element, childElement) {
- return element.appendChild(childElement);
- };
-
- prototype.appendText = function(element, text) {
- return element.appendChild(this.document.createTextNode(text));
- };
-
- prototype.setAttribute = function(element, name, value) {
- element.setAttribute(name, value);
- };
-
- if (document.createElementNS) {
- // Only opt into namespace detection if a contextualElement
- // is passed.
- prototype.createElement = function(tagName, contextualElement) {
- var namespace = this.namespace;
- if (contextualElement) {
- if (tagName === 'svg') {
- namespace = svgNamespace;
- } else {
- namespace = interiorNamespace(contextualElement);
- }
- }
- if (namespace) {
- return this.document.createElementNS(namespace, tagName);
- } else {
- return this.document.createElement(tagName);
- }
- };
- } else {
- prototype.createElement = function(tagName) {
- return this.document.createElement(tagName);
- };
- }
-
- prototype.setNamespace = function(ns) {
- this.namespace = ns;
- };
-
- prototype.detectNamespace = function(element) {
- this.namespace = interiorNamespace(element);
- };
-
- prototype.createDocumentFragment = function(){
- return this.document.createDocumentFragment();
- };
-
- prototype.createTextNode = function(text){
- return this.document.createTextNode(text);
- };
-
- prototype.repairClonedNode = function(element, blankChildTextNodes, isChecked){
- if (deletesBlankTextNodes && blankChildTextNodes.length > 0) {
- for (var i=0, len=blankChildTextNodes.length;i]*selected/;
- detectAutoSelectedOption = function detectAutoSelectedOption(select, option, html) { //jshint ignore:line
- return select.selectedIndex === 0 &&
- !detectAutoSelectedOptionRegex.test(html);
- };
- } else {
- detectAutoSelectedOption = function detectAutoSelectedOption(select, option, html) { //jshint ignore:line
- var selectedAttribute = option.getAttribute('selected');
- return select.selectedIndex === 0 && (
- selectedAttribute === null ||
- ( selectedAttribute !== '' && selectedAttribute.toLowerCase() !== 'selected' )
- );
- };
- }
-
- // IE 9 and earlier don't allow us to set innerHTML on col, colgroup, frameset,
- // html, style, table, tbody, tfoot, thead, title, tr. Detect this and add
- // them to an initial list of corrected tags.
- //
- // Here we are only dealing with the ones which can have child nodes.
- //
- var tagNamesRequiringInnerHTMLFix, tableNeedsInnerHTMLFix;
- var tableInnerHTMLTestElement = document.createElement('table');
- try {
- tableInnerHTMLTestElement.innerHTML = '';
- } catch (e) {
- } finally {
- tableNeedsInnerHTMLFix = (tableInnerHTMLTestElement.childNodes.length === 0);
- }
- if (tableNeedsInnerHTMLFix) {
- tagNamesRequiringInnerHTMLFix = {
- colgroup: ['table'],
- table: [],
- tbody: ['table'],
- tfoot: ['table'],
- thead: ['table'],
- tr: ['table', 'tbody']
- };
- }
-
- // IE 8 doesn't allow setting innerHTML on a select tag. Detect this and
- // add it to the list of corrected tags.
- //
- var selectInnerHTMLTestElement = document.createElement('select');
- selectInnerHTMLTestElement.innerHTML = ' ';
- if (selectInnerHTMLTestElement) {
- tagNamesRequiringInnerHTMLFix = tagNamesRequiringInnerHTMLFix || {};
- tagNamesRequiringInnerHTMLFix.select = [];
- }
-
- function scriptSafeInnerHTML(element, html) {
- // without a leading text node, IE will drop a leading script tag.
- html = ''+html;
-
- element.innerHTML = html;
-
- var nodes = element.childNodes;
-
- // Look for to remove it.
- var shyElement = nodes[0];
- while (shyElement.nodeType === 1 && !shyElement.nodeName) {
- shyElement = shyElement.firstChild;
- }
- // At this point it's the actual unicode character.
- if (shyElement.nodeType === 3 && shyElement.nodeValue.charAt(0) === "\u00AD") {
- var newValue = shyElement.nodeValue.slice(1);
- if (newValue.length) {
- shyElement.nodeValue = shyElement.nodeValue.slice(1);
- } else {
- shyElement.parentNode.removeChild(shyElement);
- }
- }
-
- return nodes;
- }
-
- function buildDOMWithFix(html, contextualElement){
- var tagName = contextualElement.tagName;
-
- // Firefox versions < 11 do not have support for element.outerHTML.
- var outerHTML = contextualElement.outerHTML || new XMLSerializer().serializeToString(contextualElement);
- if (!outerHTML) {
- throw "Can't set innerHTML on "+tagName+" in this browser";
- }
-
- var wrappingTags = tagNamesRequiringInnerHTMLFix[tagName.toLowerCase()];
- var startTag = outerHTML.match(new RegExp("<"+tagName+"([^>]*)>", 'i'))[0];
- var endTag = ''+tagName+'>';
-
- var wrappedHTML = [startTag, html, endTag];
-
- var i = wrappingTags.length;
- var wrappedDepth = 1 + i;
- while(i--) {
- wrappedHTML.unshift('<'+wrappingTags[i]+'>');
- wrappedHTML.push(''+wrappingTags[i]+'>');
- }
-
- var wrapper = document.createElement('div');
- scriptSafeInnerHTML(wrapper, wrappedHTML.join(''));
- var element = wrapper;
- while (wrappedDepth--) {
- element = element.firstChild;
- while (element && element.nodeType !== 1) {
- element = element.nextSibling;
- }
- }
- while (element && element.tagName !== tagName) {
- element = element.nextSibling;
- }
- return element ? element.childNodes : [];
- }
-
- var buildDOM;
- if (needsShy) {
- buildDOM = function buildDOM(html, contextualElement, dom){
- contextualElement = dom.cloneNode(contextualElement, false);
- scriptSafeInnerHTML(contextualElement, html);
- return contextualElement.childNodes;
- };
- } else {
- buildDOM = function buildDOM(html, contextualElement, dom){
- contextualElement = dom.cloneNode(contextualElement, false);
- contextualElement.innerHTML = html;
- return contextualElement.childNodes;
- };
- }
-
- var buildIESafeDOM;
- if (tagNamesRequiringInnerHTMLFix || movesWhitespace) {
- buildIESafeDOM = function buildIESafeDOM(html, contextualElement, dom) {
- // Make a list of the leading text on script nodes. Include
- // script tags without any whitespace for easier processing later.
- var spacesBefore = [];
- var spacesAfter = [];
- html = html.replace(/(\s*)(
- ```
-
- And associate it by name using a view's `templateName` property:
-
- ```javascript
- AView = Ember.View.extend({
- templateName: 'some-template'
- });
- ```
-
- If you have nested resources, your Handlebars template will look like this:
-
- ```html
-
- ```
-
- And `templateName` property:
-
- ```javascript
- AView = Ember.View.extend({
- templateName: 'posts/new'
- });
- ```
-
- Using a value for `templateName` that does not have a Handlebars template
- with a matching `data-template-name` attribute will throw an error.
-
- For views classes that may have a template later defined (e.g. as the block
- portion of a `{{view}}` Handlebars helper call in another template or in
- a subclass), you can provide a `defaultTemplate` property set to compiled
- template function. If a template is not later provided for the view instance
- the `defaultTemplate` value will be used:
-
- ```javascript
- AView = Ember.View.extend({
- defaultTemplate: Ember.Handlebars.compile('I was the default'),
- template: null,
- templateName: null
- });
- ```
-
- Will result in instances with an HTML representation of:
-
- ```html
- I was the default
- ```
-
- If a `template` or `templateName` is provided it will take precedence over
- `defaultTemplate`:
-
- ```javascript
- AView = Ember.View.extend({
- defaultTemplate: Ember.Handlebars.compile('I was the default')
- });
-
- aView = AView.create({
- template: Ember.Handlebars.compile('I was the template, not default')
- });
- ```
-
- Will result in the following HTML representation when rendered:
-
- ```html
- I was the template, not default
- ```
-
- ## View Context
-
- The default context of the compiled template is the view's controller:
-
- ```javascript
- AView = Ember.View.extend({
- template: Ember.Handlebars.compile('Hello {{excitedGreeting}}')
- });
-
- aController = Ember.Object.create({
- firstName: 'Barry',
- excitedGreeting: function() {
- return this.get("content.firstName") + "!!!"
- }.property()
- });
-
- aView = AView.create({
- controller: aController
- });
- ```
-
- Will result in an HTML representation of:
-
- ```html
- Hello Barry!!!
- ```
-
- A context can also be explicitly supplied through the view's `context`
- property. If the view has neither `context` nor `controller` properties, the
- `parentView`'s context will be used.
-
- ## Layouts
-
- Views can have a secondary template that wraps their main template. Like
- primary templates, layouts can be any function that accepts an optional
- context parameter and returns a string of HTML that will be inserted inside
- view's tag. Views whose HTML element is self closing (e.g. ``)
- cannot have a layout and this property will be ignored.
-
- Most typically in Ember a layout will be a compiled `Ember.Handlebars`
- template.
-
- A view's layout can be set directly with the `layout` property or reference
- an existing Handlebars template by name with the `layoutName` property.
-
- A template used as a layout must contain a single use of the Handlebars
- `{{yield}}` helper. The HTML contents of a view's rendered `template` will be
- inserted at this location:
-
- ```javascript
- AViewWithLayout = Ember.View.extend({
- layout: Ember.Handlebars.compile("{{yield}}"),
- template: Ember.Handlebars.compile("I got wrapped")
- });
- ```
-
- Will result in view instances with an HTML representation of:
-
- ```html
-
-
- I got wrapped
-
-
- ```
-
- See [Ember.Handlebars.helpers.yield](/api/classes/Ember.Handlebars.helpers.html#method_yield)
- for more information.
-
- ## Responding to Browser Events
-
- Views can respond to user-initiated events in one of three ways: method
- implementation, through an event manager, and through `{{action}}` helper use
- in their template or layout.
-
- ### Method Implementation
-
- Views can respond to user-initiated events by implementing a method that
- matches the event name. A `jQuery.Event` object will be passed as the
- argument to this method.
-
- ```javascript
- AView = Ember.View.extend({
- click: function(event) {
- // will be called when when an instance's
- // rendered element is clicked
- }
- });
- ```
-
- ### Event Managers
-
- Views can define an object as their `eventManager` property. This object can
- then implement methods that match the desired event names. Matching events
- that occur on the view's rendered HTML or the rendered HTML of any of its DOM
- descendants will trigger this method. A `jQuery.Event` object will be passed
- as the first argument to the method and an `Ember.View` object as the
- second. The `Ember.View` will be the view whose rendered HTML was interacted
- with. This may be the view with the `eventManager` property or one of its
- descendent views.
-
- ```javascript
- AView = Ember.View.extend({
- eventManager: Ember.Object.create({
- doubleClick: function(event, view) {
- // will be called when when an instance's
- // rendered element or any rendering
- // of this views's descendent
- // elements is clicked
- }
- })
- });
- ```
-
- An event defined for an event manager takes precedence over events of the
- same name handled through methods on the view.
-
- ```javascript
- AView = Ember.View.extend({
- mouseEnter: function(event) {
- // will never trigger.
- },
- eventManager: Ember.Object.create({
- mouseEnter: function(event, view) {
- // takes precedence over AView#mouseEnter
- }
- })
- });
- ```
-
- Similarly a view's event manager will take precedence for events of any views
- rendered as a descendent. A method name that matches an event name will not
- be called if the view instance was rendered inside the HTML representation of
- a view that has an `eventManager` property defined that handles events of the
- name. Events not handled by the event manager will still trigger method calls
- on the descendent.
-
- ```javascript
- var App = Ember.Application.create();
- App.OuterView = Ember.View.extend({
- template: Ember.Handlebars.compile("outer {{#view 'inner'}}inner{{/view}} outer"),
- eventManager: Ember.Object.create({
- mouseEnter: function(event, view) {
- // view might be instance of either
- // OuterView or InnerView depending on
- // where on the page the user interaction occured
- }
- })
- });
-
- App.InnerView = Ember.View.extend({
- click: function(event) {
- // will be called if rendered inside
- // an OuterView because OuterView's
- // eventManager doesn't handle click events
- },
- mouseEnter: function(event) {
- // will never be called if rendered inside
- // an OuterView.
- }
- });
- ```
-
- ### Handlebars `{{action}}` Helper
-
- See [Handlebars.helpers.action](/api/classes/Ember.Handlebars.helpers.html#method_action).
-
- ### Event Names
-
- All of the event handling approaches described above respond to the same set
- of events. The names of the built-in events are listed below. (The hash of
- built-in events exists in `Ember.EventDispatcher`.) Additional, custom events
- can be registered by using `Ember.Application.customEvents`.
-
- Touch events:
-
- * `touchStart`
- * `touchMove`
- * `touchEnd`
- * `touchCancel`
-
- Keyboard events
-
- * `keyDown`
- * `keyUp`
- * `keyPress`
-
- Mouse events
-
- * `mouseDown`
- * `mouseUp`
- * `contextMenu`
- * `click`
- * `doubleClick`
- * `mouseMove`
- * `focusIn`
- * `focusOut`
- * `mouseEnter`
- * `mouseLeave`
-
- Form events:
-
- * `submit`
- * `change`
- * `focusIn`
- * `focusOut`
- * `input`
-
- HTML5 drag and drop events:
-
- * `dragStart`
- * `drag`
- * `dragEnter`
- * `dragLeave`
- * `dragOver`
- * `dragEnd`
- * `drop`
-
- ## Handlebars `{{view}}` Helper
-
- Other `Ember.View` instances can be included as part of a view's template by
- using the `{{view}}` Handlebars helper. See [Ember.Handlebars.helpers.view](/api/classes/Ember.Handlebars.helpers.html#method_view)
- for additional information.
-
- @class View
- @namespace Ember
- @extends Ember.CoreView
- */
- var View = CoreView.extend({
-
- concatenatedProperties: ['classNames', 'classNameBindings', 'attributeBindings'],
-
- /**
- @property isView
- @type Boolean
- @default true
- @static
- */
- isView: true,
-
- // ..........................................................
- // TEMPLATE SUPPORT
- //
-
- /**
- The name of the template to lookup if no template is provided.
-
- By default `Ember.View` will lookup a template with this name in
- `Ember.TEMPLATES` (a shared global object).
-
- @property templateName
- @type String
- @default null
- */
- templateName: null,
-
- /**
- The name of the layout to lookup if no layout is provided.
-
- By default `Ember.View` will lookup a template with this name in
- `Ember.TEMPLATES` (a shared global object).
-
- @property layoutName
- @type String
- @default null
- */
- layoutName: null,
-
- /**
- Used to identify this view during debugging
-
- @property instrumentDisplay
- @type String
- */
- instrumentDisplay: computed(function() {
- if (this.helperName) {
- return '{{' + this.helperName + '}}';
- }
- }),
-
- /**
- The template used to render the view. This should be a function that
- accepts an optional context parameter and returns a string of HTML that
- will be inserted into the DOM relative to its parent view.
-
- In general, you should set the `templateName` property instead of setting
- the template yourself.
-
- @property template
- @type Function
- */
- template: computed('templateName', function(key, value) {
- if (value !== undefined) { return value; }
-
- var templateName = get(this, 'templateName');
- var template = this.templateForName(templateName, 'template');
-
-
- return template || get(this, 'defaultTemplate');
- }),
-
- /**
- The controller managing this view. If this property is set, it will be
- made available for use by the template.
-
- @property controller
- @type Object
- */
- controller: computed('_parentView', function(key) {
- var parentView = get(this, '_parentView');
- return parentView ? get(parentView, 'controller') : null;
- }),
-
- /**
- A view may contain a layout. A layout is a regular template but
- supersedes the `template` property during rendering. It is the
- responsibility of the layout template to retrieve the `template`
- property from the view (or alternatively, call `Handlebars.helpers.yield`,
- `{{yield}}`) to render it in the correct location.
-
- This is useful for a view that has a shared wrapper, but which delegates
- the rendering of the contents of the wrapper to the `template` property
- on a subclass.
-
- @property layout
- @type Function
- */
- layout: computed(function(key) {
- var layoutName = get(this, 'layoutName');
- var layout = this.templateForName(layoutName, 'layout');
-
-
- return layout || get(this, 'defaultLayout');
- }).property('layoutName'),
-
- _yield: function(context, options) {
- var template = get(this, 'template');
- if (template) { template(context, options); }
- },
-
- templateForName: function(name, type) {
- if (!name) { return; }
-
- if (!this.container) {
- throw new EmberError('Container was not found when looking up a views template. ' +
- 'This is most likely due to manually instantiating an Ember.View. ' +
- 'See: http://git.io/EKPpnA');
- }
-
- return this.container.lookup('template:' + name);
- },
-
- /**
- The object from which templates should access properties.
-
- This object will be passed to the template function each time the render
- method is called, but it is up to the individual function to decide what
- to do with it.
-
- By default, this will be the view's controller.
-
- @property context
- @type Object
- */
- context: computed(function(key, value) {
- if (arguments.length === 2) {
- set(this, '_context', value);
- return value;
- } else {
- return get(this, '_context');
- }
- })["volatile"](),
-
- /**
- Private copy of the view's template context. This can be set directly
- by Handlebars without triggering the observer that causes the view
- to be re-rendered.
-
- The context of a view is looked up as follows:
-
- 1. Supplied context (usually by Handlebars)
- 2. Specified controller
- 3. `parentView`'s context (for a child of a ContainerView)
-
- The code in Handlebars that overrides the `_context` property first
- checks to see whether the view has a specified controller. This is
- something of a hack and should be revisited.
-
- @property _context
- @private
- */
- _context: computed(function(key) {
- var parentView, controller;
-
- if (controller = get(this, 'controller')) {
- return controller;
- }
-
- parentView = this._parentView;
- if (parentView) {
- return get(parentView, '_context');
- }
-
- return null;
- }),
-
- /**
- If a value that affects template rendering changes, the view should be
- re-rendered to reflect the new value.
-
- @method _contextDidChange
- @private
- */
- _contextDidChange: observer('context', function() {
- this.rerender();
- }),
-
- /**
- If `false`, the view will appear hidden in DOM.
-
- @property isVisible
- @type Boolean
- @default null
- */
- isVisible: true,
-
- /**
- Array of child views. You should never edit this array directly.
- Instead, use `appendChild` and `removeFromParent`.
-
- @property childViews
- @type Array
- @default []
- @private
- */
- childViews: childViewsProperty,
-
- _childViews: EMPTY_ARRAY,
-
- // When it's a virtual view, we need to notify the parent that their
- // childViews will change.
- _childViewsWillChange: beforeObserver('childViews', function() {
- if (this.isVirtual) {
- var parentView = get(this, 'parentView');
- if (parentView) { propertyWillChange(parentView, 'childViews'); }
- }
- }),
-
- // When it's a virtual view, we need to notify the parent that their
- // childViews did change.
- _childViewsDidChange: observer('childViews', function() {
- if (this.isVirtual) {
- var parentView = get(this, 'parentView');
- if (parentView) { propertyDidChange(parentView, 'childViews'); }
- }
- }),
-
- /**
- Return the nearest ancestor that is an instance of the provided
- class.
-
- @method nearestInstanceOf
- @param {Class} klass Subclass of Ember.View (or Ember.View itself)
- @return Ember.View
- @deprecated
- */
- nearestInstanceOf: function(klass) {
- var view = get(this, 'parentView');
-
- while (view) {
- if (view instanceof klass) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor that is an instance of the provided
- class or mixin.
-
- @method nearestOfType
- @param {Class,Mixin} klass Subclass of Ember.View (or Ember.View itself),
- or an instance of Ember.Mixin.
- @return Ember.View
- */
- nearestOfType: function(klass) {
- var view = get(this, 'parentView');
- var isOfType = klass instanceof Mixin ?
- function(view) { return klass.detect(view); } :
- function(view) { return klass.detect(view.constructor); };
-
- while (view) {
- if (isOfType(view)) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor that has a given property.
-
- @method nearestWithProperty
- @param {String} property A property name
- @return Ember.View
- */
- nearestWithProperty: function(property) {
- var view = get(this, 'parentView');
-
- while (view) {
- if (property in view) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- Return the nearest ancestor whose parent is an instance of
- `klass`.
-
- @method nearestChildOf
- @param {Class} klass Subclass of Ember.View (or Ember.View itself)
- @return Ember.View
- */
- nearestChildOf: function(klass) {
- var view = get(this, 'parentView');
-
- while (view) {
- if (get(view, 'parentView') instanceof klass) { return view; }
- view = get(view, 'parentView');
- }
- },
-
- /**
- When the parent view changes, recursively invalidate `controller`
-
- @method _parentViewDidChange
- @private
- */
- _parentViewDidChange: observer('_parentView', function() {
- if (this.isDestroying) { return; }
-
- this._setupKeywords();
- this.trigger('parentViewDidChange');
-
- if (get(this, 'parentView.controller') && !get(this, 'controller')) {
- this.notifyPropertyChange('controller');
- }
- }),
-
- _controllerDidChange: observer('controller', function() {
- if (this.isDestroying) { return; }
-
- this.rerender();
-
- this.forEachChildView(function(view) {
- view.propertyDidChange('controller');
- });
- }),
-
- _setupKeywords: function() {
- var keywords = this._keywords;
- var contextView = this._contextView || this._parentView;
-
- if (contextView) {
- var parentKeywords = contextView._keywords;
-
- keywords.view.setSource(this.isVirtual ? parentKeywords.view : this);
-
- for (var name in parentKeywords) {
- if (keywords[name]) continue;
- keywords[name] = parentKeywords[name];
- }
- } else {
- keywords.view.setSource(this.isVirtual ? null : this);
- }
- },
-
- /**
- Called on your view when it should push strings of HTML into a
- `Ember.RenderBuffer`. Most users will want to override the `template`
- or `templateName` properties instead of this method.
-
- By default, `Ember.View` will look for a function in the `template`
- property and invoke it with the value of `context`. The value of
- `context` will be the view's controller unless you override it.
-
- @method render
- @param {Ember.RenderBuffer} buffer The render buffer
- */
- render: function(buffer) {
- // If this view has a layout, it is the responsibility of the
- // the layout to render the view's template. Otherwise, render the template
- // directly.
- var template = get(this, 'layout') || get(this, 'template');
-
- if (template) {
- var context = get(this, 'context');
- var output;
-
- var data = {
- view: this,
- buffer: buffer,
- isRenderData: true
- };
-
- // Invoke the template with the provided template context, which
- // is the view's controller by default. A hash of data is also passed that provides
- // the template with access to the view and render buffer.
-
- // The template should write directly to the render buffer instead
- // of returning a string.
- output = template(context, { data: data });
-
- // If the template returned a string instead of writing to the buffer,
- // push the string onto the buffer.
- if (output !== undefined) { buffer.push(output); }
- }
- },
-
- /**
- Renders the view again. This will work regardless of whether the
- view is already in the DOM or not. If the view is in the DOM, the
- rendering process will be deferred to give bindings a chance
- to synchronize.
-
- If children were added during the rendering process using `appendChild`,
- `rerender` will remove them, because they will be added again
- if needed by the next `render`.
-
- In general, if the display of your view changes, you should modify
- the DOM element directly instead of manually calling `rerender`, which can
- be slow.
-
- @method rerender
- */
- rerender: function() {
- return this.currentState.rerender(this);
- },
-
- /**
- Iterates over the view's `classNameBindings` array, inserts the value
- of the specified property into the `classNames` array, then creates an
- observer to update the view's element if the bound property ever changes
- in the future.
-
- @method _applyClassNameBindings
- @private
- */
- _applyClassNameBindings: function(classBindings) {
- var classNames = this.classNames;
- var elem, newClass, dasherizedClass;
-
- // Loop through all of the configured bindings. These will be either
- // property names ('isUrgent') or property paths relative to the view
- // ('content.isUrgent')
- forEach(classBindings, function(binding) {
-
- var parsedPath;
-
- if (typeof binding === 'string') {
- parsedPath = View._parsePropertyPath(binding);
- if (parsedPath.path === '') {
- parsedPath.stream = new SimpleStream(true);
- } else {
- parsedPath.stream = this.getStream('_view.' + parsedPath.path);
- }
- } else {
- parsedPath = binding;
- }
-
- // Variable in which the old class value is saved. The observer function
- // closes over this variable, so it knows which string to remove when
- // the property changes.
- var oldClass;
-
- // Set up an observer on the context. If the property changes, toggle the
- // class name.
- var observer = this._wrapAsScheduled(function() {
- // Get the current value of the property
- newClass = this._classStringForProperty(parsedPath);
- elem = this.$();
-
- // If we had previously added a class to the element, remove it.
- if (oldClass) {
- elem.removeClass(oldClass);
- // Also remove from classNames so that if the view gets rerendered,
- // the class doesn't get added back to the DOM.
- classNames.removeObject(oldClass);
- }
-
- // If necessary, add a new class. Make sure we keep track of it so
- // it can be removed in the future.
- if (newClass) {
- elem.addClass(newClass);
- oldClass = newClass;
- } else {
- oldClass = null;
- }
- });
-
- // Get the class name for the property at its current value
- dasherizedClass = this._classStringForProperty(parsedPath);
-
- if (dasherizedClass) {
- // Ensure that it gets into the classNames array
- // so it is displayed when we render.
- addObject(classNames, dasherizedClass);
-
- // Save a reference to the class name so we can remove it
- // if the observer fires. Remember that this variable has
- // been closed over by the observer.
- oldClass = dasherizedClass;
- }
-
- parsedPath.stream.subscribe(observer, this);
- // Remove className so when the view is rerendered,
- // the className is added based on binding reevaluation
- this.one('willClearRender', function() {
- if (oldClass) {
- classNames.removeObject(oldClass);
- oldClass = null;
- }
- });
-
- }, this);
- },
-
- _unspecifiedAttributeBindings: null,
-
- /**
- Iterates through the view's attribute bindings, sets up observers for each,
- then applies the current value of the attributes to the passed render buffer.
-
- @method _applyAttributeBindings
- @param {Ember.RenderBuffer} buffer
- @private
- */
- _applyAttributeBindings: function(buffer, attributeBindings) {
- var attributeValue;
- var unspecifiedAttributeBindings = this._unspecifiedAttributeBindings = this._unspecifiedAttributeBindings || {};
-
- forEach(attributeBindings, function(binding) {
- var split = binding.split(':');
- var property = split[0];
- var attributeName = split[1] || property;
-
-
- if (property in this) {
- this._setupAttributeBindingObservation(property, attributeName);
-
- // Determine the current value and add it to the render buffer
- // if necessary.
- attributeValue = get(this, property);
- View.applyAttributeBindings(buffer, attributeName, attributeValue);
- } else {
- unspecifiedAttributeBindings[property] = attributeName;
- }
- }, this);
-
- // Lazily setup setUnknownProperty after attributeBindings are initially applied
- this.setUnknownProperty = this._setUnknownProperty;
- },
-
- _setupAttributeBindingObservation: function(property, attributeName) {
- var attributeValue, elem;
-
- // Create an observer to add/remove/change the attribute if the
- // JavaScript property changes.
- var observer = function() {
- elem = this.$();
-
- attributeValue = get(this, property);
-
- View.applyAttributeBindings(elem, attributeName, attributeValue);
- };
-
- this.registerObserver(this, property, observer);
- },
-
- /**
- We're using setUnknownProperty as a hook to setup attributeBinding observers for
- properties that aren't defined on a view at initialization time.
-
- Note: setUnknownProperty will only be called once for each property.
-
- @method setUnknownProperty
- @param key
- @param value
- @private
- */
- setUnknownProperty: null, // Gets defined after initialization by _applyAttributeBindings
-
- _setUnknownProperty: function(key, value) {
- var attributeName = this._unspecifiedAttributeBindings && this._unspecifiedAttributeBindings[key];
- if (attributeName) {
- this._setupAttributeBindingObservation(key, attributeName);
- }
-
- defineProperty(this, key);
- return set(this, key, value);
- },
-
- /**
- Given a property name, returns a dasherized version of that
- property name if the property evaluates to a non-falsy value.
-
- For example, if the view has property `isUrgent` that evaluates to true,
- passing `isUrgent` to this method will return `"is-urgent"`.
-
- @method _classStringForProperty
- @param property
- @private
- */
- _classStringForProperty: function(parsedPath) {
- return View._classStringForValue(parsedPath.path, parsedPath.stream.value(), parsedPath.className, parsedPath.falsyClassName);
- },
-
- // ..........................................................
- // ELEMENT SUPPORT
- //
-
- /**
- Returns the current DOM element for the view.
-
- @property element
- @type DOMElement
- */
- element: null,
-
- /**
- Returns a jQuery object for this view's element. If you pass in a selector
- string, this method will return a jQuery object, using the current element
- as its buffer.
-
- For example, calling `view.$('li')` will return a jQuery object containing
- all of the `li` elements inside the DOM element of this view.
-
- @method $
- @param {String} [selector] a jQuery-compatible selector string
- @return {jQuery} the jQuery object for the DOM node
- */
- $: function(sel) {
- return this.currentState.$(this, sel);
- },
-
- mutateChildViews: function(callback) {
- var childViews = this._childViews;
- var idx = childViews.length;
- var view;
-
- while(--idx >= 0) {
- view = childViews[idx];
- callback(this, view, idx);
- }
-
- return this;
- },
-
- forEachChildView: function(callback) {
- var childViews = this._childViews;
-
- if (!childViews) { return this; }
-
- var len = childViews.length;
- var view, idx;
-
- for (idx = 0; idx < len; idx++) {
- view = childViews[idx];
- callback(view);
- }
-
- return this;
- },
-
- /**
- Appends the view's element to the specified parent element.
-
- If the view does not have an HTML representation yet, `createElement()`
- will be called automatically.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the given element until all bindings have
- finished synchronizing.
-
- This is not typically a function that you will need to call directly when
- building your application. You might consider using `Ember.ContainerView`
- instead. If you do need to use `appendTo`, be sure that the target element
- you are providing is associated with an `Ember.Application` and does not
- have an ancestor element that is associated with an Ember view.
-
- @method appendTo
- @param {String|DOMElement|jQuery} A selector, element, HTML string, or jQuery object
- @return {Ember.View} receiver
- */
- appendTo: function(selector) {
- var target = jQuery(selector);
-
-
- this.constructor.renderer.appendTo(this, target[0]);
-
- return this;
- },
-
- /**
- Replaces the content of the specified parent element with this view's
- element. If the view does not have an HTML representation yet,
- `createElement()` will be called automatically.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the given element until all bindings have
- finished synchronizing
-
- @method replaceIn
- @param {String|DOMElement|jQuery} target A selector, element, HTML string, or jQuery object
- @return {Ember.View} received
- */
- replaceIn: function(selector) {
- var target = jQuery(selector);
-
-
- this.constructor.renderer.replaceIn(this, target[0]);
-
- return this;
- },
-
- /**
- Appends the view's element to the document body. If the view does
- not have an HTML representation yet, `createElement()` will be called
- automatically.
-
- If your application uses the `rootElement` property, you must append
- the view within that element. Rendering views outside of the `rootElement`
- is not supported.
-
- Note that this method just schedules the view to be appended; the DOM
- element will not be appended to the document body until all bindings have
- finished synchronizing.
-
- @method append
- @return {Ember.View} receiver
- */
- append: function() {
- return this.appendTo(document.body);
- },
-
- /**
- Removes the view's element from the element to which it is attached.
-
- @method remove
- @return {Ember.View} receiver
- */
- remove: function() {
- // What we should really do here is wait until the end of the run loop
- // to determine if the element has been re-appended to a different
- // element.
- // In the interim, we will just re-render if that happens. It is more
- // important than elements get garbage collected.
- if (!this.removedFromDOM) { this.destroyElement(); }
- },
-
- /**
- The HTML `id` of the view's element in the DOM. You can provide this
- value yourself but it must be unique (just as in HTML):
-
- ```handlebars
- {{my-component elementId="a-really-cool-id"}}
- ```
-
- If not manually set a default value will be provided by the framework.
-
- Once rendered an element's `elementId` is considered immutable and you
- should never change it.
-
- @property elementId
- @type String
- */
- elementId: null,
-
- /**
- Attempts to discover the element in the parent element. The default
- implementation looks for an element with an ID of `elementId` (or the
- view's guid if `elementId` is null). You can override this method to
- provide your own form of lookup. For example, if you want to discover your
- element using a CSS class name instead of an ID.
-
- @method findElementInParentElement
- @param {DOMElement} parentElement The parent's DOM element
- @return {DOMElement} The discovered element
- */
- findElementInParentElement: function(parentElem) {
- var id = "#" + this.elementId;
- return jQuery(id)[0] || jQuery(id, parentElem)[0];
- },
-
- /**
- Creates a DOM representation of the view and all of its child views by
- recursively calling the `render()` method.
-
- After the element has been inserted into the DOM, `didInsertElement` will
- be called on this view and all of its child views.
-
- @method createElement
- @return {Ember.View} receiver
- */
- createElement: function() {
- if (this.element) { return this; }
-
- this._didCreateElementWithoutMorph = true;
- this.constructor.renderer.renderTree(this);
-
- return this;
- },
-
- /**
- Called when a view is going to insert an element into the DOM.
-
- @event willInsertElement
- */
- willInsertElement: Ember.K,
-
- /**
- Called when the element of the view has been inserted into the DOM
- or after the view was re-rendered. Override this function to do any
- set up that requires an element in the document body.
-
- When a view has children, didInsertElement will be called on the
- child view(s) first, bubbling upwards through the hierarchy.
-
- @event didInsertElement
- */
- didInsertElement: Ember.K,
-
- /**
- Called when the view is about to rerender, but before anything has
- been torn down. This is a good opportunity to tear down any manual
- observers you have installed based on the DOM state
-
- @event willClearRender
- */
- willClearRender: Ember.K,
-
- /**
- Destroys any existing element along with the element for any child views
- as well. If the view does not currently have a element, then this method
- will do nothing.
-
- If you implement `willDestroyElement()` on your view, then this method will
- be invoked on your view before your element is destroyed to give you a
- chance to clean up any event handlers, etc.
-
- If you write a `willDestroyElement()` handler, you can assume that your
- `didInsertElement()` handler was called earlier for the same element.
-
- You should not call or override this method yourself, but you may
- want to implement the above callbacks.
-
- @method destroyElement
- @return {Ember.View} receiver
- */
- destroyElement: function() {
- return this.currentState.destroyElement(this);
- },
-
- /**
- Called when the element of the view is going to be destroyed. Override
- this function to do any teardown that requires an element, like removing
- event listeners.
-
- Please note: any property changes made during this event will have no
- effect on object observers.
-
- @event willDestroyElement
- */
- willDestroyElement: Ember.K,
-
- /**
- Called when the parentView property has changed.
-
- @event parentViewDidChange
- */
- parentViewDidChange: Ember.K,
-
- instrumentName: 'view',
-
- instrumentDetails: function(hash) {
- hash.template = get(this, 'templateName');
- this._super(hash);
- },
-
- beforeRender: function(buffer) {},
-
- afterRender: function(buffer) {},
-
- applyAttributesToBuffer: function(buffer) {
- // Creates observers for all registered class name and attribute bindings,
- // then adds them to the element.
- var classNameBindings = get(this, 'classNameBindings');
- if (classNameBindings.length) {
- this._applyClassNameBindings(classNameBindings);
- }
-
- // Pass the render buffer so the method can apply attributes directly.
- // This isn't needed for class name bindings because they use the
- // existing classNames infrastructure.
- var attributeBindings = get(this, 'attributeBindings');
- if (attributeBindings.length) {
- this._applyAttributeBindings(buffer, attributeBindings);
- }
-
- buffer.setClasses(this.classNames);
- buffer.id(this.elementId);
-
- var role = get(this, 'ariaRole');
- if (role) {
- buffer.attr('role', role);
- }
-
- if (get(this, 'isVisible') === false) {
- buffer.style('display', 'none');
- }
- },
-
- // ..........................................................
- // STANDARD RENDER PROPERTIES
- //
-
- /**
- Tag name for the view's outer element. The tag name is only used when an
- element is first created. If you change the `tagName` for an element, you
- must destroy and recreate the view element.
-
- By default, the render buffer will use a `` tag for views.
-
- @property tagName
- @type String
- @default null
- */
-
- // We leave this null by default so we can tell the difference between
- // the default case and a user-specified tag.
- tagName: null,
-
- /**
- The WAI-ARIA role of the control represented by this view. For example, a
- button may have a role of type 'button', or a pane may have a role of
- type 'alertdialog'. This property is used by assistive software to help
- visually challenged users navigate rich web applications.
-
- The full list of valid WAI-ARIA roles is available at:
- [http://www.w3.org/TR/wai-aria/roles#roles_categorization](http://www.w3.org/TR/wai-aria/roles#roles_categorization)
-
- @property ariaRole
- @type String
- @default null
- */
- ariaRole: null,
-
- /**
- Standard CSS class names to apply to the view's outer element. This
- property automatically inherits any class names defined by the view's
- superclasses as well.
-
- @property classNames
- @type Array
- @default ['ember-view']
- */
- classNames: ['ember-view'],
-
- /**
- A list of properties of the view to apply as class names. If the property
- is a string value, the value of that string will be applied as a class
- name.
-
- ```javascript
- // Applies the 'high' class to the view element
- Ember.View.extend({
- classNameBindings: ['priority']
- priority: 'high'
- });
- ```
-
- If the value of the property is a Boolean, the name of that property is
- added as a dasherized class name.
-
- ```javascript
- // Applies the 'is-urgent' class to the view element
- Ember.View.extend({
- classNameBindings: ['isUrgent']
- isUrgent: true
- });
- ```
-
- If you would prefer to use a custom value instead of the dasherized
- property name, you can pass a binding like this:
-
- ```javascript
- // Applies the 'urgent' class to the view element
- Ember.View.extend({
- classNameBindings: ['isUrgent:urgent']
- isUrgent: true
- });
- ```
-
- This list of properties is inherited from the view's superclasses as well.
-
- @property classNameBindings
- @type Array
- @default []
- */
- classNameBindings: EMPTY_ARRAY,
-
- /**
- A list of properties of the view to apply as attributes. If the property is
- a string value, the value of that string will be applied as the attribute.
-
- ```javascript
- // Applies the type attribute to the element
- // with the value "button", like
- Ember.View.extend({
- attributeBindings: ['type'],
- type: 'button'
- });
- ```
-
- If the value of the property is a Boolean, the name of that property is
- added as an attribute.
-
- ```javascript
- // Renders something like
- Ember.View.extend({
- attributeBindings: ['enabled'],
- enabled: true
- });
- ```
-
- @property attributeBindings
- */
- attributeBindings: EMPTY_ARRAY,
-
- // .......................................................
- // CORE DISPLAY METHODS
- //
-
- /**
- Setup a view, but do not finish waking it up.
-
- * configure `childViews`
- * register the view with the global views hash, which is used for event
- dispatch
-
- @method init
- @private
- */
- init: function() {
- if (!this.isVirtual && !this.elementId) {
- this.elementId = guidFor(this);
- }
-
- this._super();
-
- // setup child views. be sure to clone the child views array first
- this._childViews = this._childViews.slice();
- this._baseContext = undefined;
- this._contextStream = undefined;
- this._streamBindings = undefined;
-
- if (!this._keywords) {
- this._keywords = create(null);
- }
- this._keywords.view = new SimpleStream();
- this._keywords._view = this;
- this._keywords.controller = new KeyStream(this, 'controller');
- this._setupKeywords();
-
- this.classNameBindings = emberA(this.classNameBindings.slice());
-
- this.classNames = emberA(this.classNames.slice());
- },
-
- appendChild: function(view, options) {
- return this.currentState.appendChild(this, view, options);
- },
-
- /**
- Removes the child view from the parent view.
-
- @method removeChild
- @param {Ember.View} view
- @return {Ember.View} receiver
- */
- removeChild: function(view) {
- // If we're destroying, the entire subtree will be
- // freed, and the DOM will be handled separately,
- // so no need to mess with childViews.
- if (this.isDestroying) { return; }
-
- // update parent node
- set(view, '_parentView', null);
-
- // remove view from childViews array.
- var childViews = this._childViews;
-
- removeObject(childViews, view);
-
- this.propertyDidChange('childViews'); // HUH?! what happened to will change?
-
- return this;
- },
-
- /**
- Removes all children from the `parentView`.
-
- @method removeAllChildren
- @return {Ember.View} receiver
- */
- removeAllChildren: function() {
- return this.mutateChildViews(function(parentView, view) {
- parentView.removeChild(view);
- });
- },
-
- destroyAllChildren: function() {
- return this.mutateChildViews(function(parentView, view) {
- view.destroy();
- });
- },
-
- /**
- Removes the view from its `parentView`, if one is found. Otherwise
- does nothing.
-
- @method removeFromParent
- @return {Ember.View} receiver
- */
- removeFromParent: function() {
- var parent = this._parentView;
-
- // Remove DOM element from parent
- this.remove();
-
- if (parent) { parent.removeChild(this); }
- return this;
- },
-
- /**
- You must call `destroy` on a view to destroy the view (and all of its
- child views). This will remove the view from any parent node, then make
- sure that the DOM element managed by the view can be released by the
- memory manager.
-
- @method destroy
- */
- destroy: function() {
- // get parentView before calling super because it'll be destroyed
- var nonVirtualParentView = get(this, 'parentView');
- var viewName = this.viewName;
-
- if (!this._super()) { return; }
-
- // remove from non-virtual parent view if viewName was specified
- if (viewName && nonVirtualParentView) {
- nonVirtualParentView.set(viewName, null);
- }
-
- return this;
- },
-
- /**
- Instantiates a view to be added to the childViews array during view
- initialization. You generally will not call this method directly unless
- you are overriding `createChildViews()`. Note that this method will
- automatically configure the correct settings on the new view instance to
- act as a child of the parent.
-
- @method createChildView
- @param {Class|String} viewClass
- @param {Hash} [attrs] Attributes to add
- @return {Ember.View} new instance
- */
- createChildView: function(view, attrs) {
- if (!view) {
- throw new TypeError("createChildViews first argument must exist");
- }
-
- if (view.isView && view._parentView === this && view.container === this.container) {
- return view;
- }
-
- attrs = attrs || {};
- attrs._parentView = this;
-
- if (CoreView.detect(view)) {
- attrs.templateData = attrs.templateData || get(this, 'templateData');
-
- attrs.container = this.container;
- view = view.create(attrs);
-
- // don't set the property on a virtual view, as they are invisible to
- // consumers of the view API
- if (view.viewName) {
- set(get(this, 'concreteView'), view.viewName, view);
- }
- } else if ('string' === typeof view) {
- var fullName = 'view:' + view;
- var ViewKlass = this.container.lookupFactory(fullName);
-
-
- attrs.templateData = get(this, 'templateData');
- view = ViewKlass.create(attrs);
- } else {
- attrs.container = this.container;
-
- if (!get(view, 'templateData')) {
- attrs.templateData = get(this, 'templateData');
- }
-
- setProperties(view, attrs);
-
- }
-
- return view;
- },
-
- becameVisible: Ember.K,
- becameHidden: Ember.K,
-
- /**
- When the view's `isVisible` property changes, toggle the visibility
- element of the actual DOM element.
-
- @method _isVisibleDidChange
- @private
- */
- _isVisibleDidChange: observer('isVisible', function() {
- if (this._isVisible === get(this, 'isVisible')) { return ; }
- run.scheduleOnce('render', this, this._toggleVisibility);
- }),
-
- _toggleVisibility: function() {
- var $el = this.$();
- var isVisible = get(this, 'isVisible');
-
- if (this._isVisible === isVisible) { return ; }
-
- // It's important to keep these in sync, even if we don't yet have
- // an element in the DOM to manipulate:
- this._isVisible = isVisible;
-
- if (!$el) { return; }
-
- $el.toggle(isVisible);
-
- if (this._isAncestorHidden()) { return; }
-
- if (isVisible) {
- this._notifyBecameVisible();
- } else {
- this._notifyBecameHidden();
- }
- },
-
- _notifyBecameVisible: function() {
- this.trigger('becameVisible');
-
- this.forEachChildView(function(view) {
- var isVisible = get(view, 'isVisible');
-
- if (isVisible || isVisible === null) {
- view._notifyBecameVisible();
- }
- });
- },
-
- _notifyBecameHidden: function() {
- this.trigger('becameHidden');
- this.forEachChildView(function(view) {
- var isVisible = get(view, 'isVisible');
-
- if (isVisible || isVisible === null) {
- view._notifyBecameHidden();
- }
- });
- },
-
- _isAncestorHidden: function() {
- var parent = get(this, 'parentView');
-
- while (parent) {
- if (get(parent, 'isVisible') === false) { return true; }
-
- parent = get(parent, 'parentView');
- }
-
- return false;
- },
- transitionTo: function(state, children) {
- this._transitionTo(state, children);
- },
- _transitionTo: function(state, children) {
- var priorState = this.currentState;
- var currentState = this.currentState = this._states[state];
- this._state = state;
-
- if (priorState && priorState.exit) { priorState.exit(this); }
- if (currentState.enter) { currentState.enter(this); }
- },
-
- // .......................................................
- // EVENT HANDLING
- //
-
- /**
- Handle events from `Ember.EventDispatcher`
-
- @method handleEvent
- @param eventName {String}
- @param evt {Event}
- @private
- */
- handleEvent: function(eventName, evt) {
- return this.currentState.handleEvent(this, eventName, evt);
- },
-
- registerObserver: function(root, path, target, observer) {
- if (!observer && 'function' === typeof target) {
- observer = target;
- target = null;
- }
-
- if (!root || typeof root !== 'object') {
- return;
- }
-
- var scheduledObserver = this._wrapAsScheduled(observer);
-
- addObserver(root, path, target, scheduledObserver);
-
- this.one('willClearRender', function() {
- removeObserver(root, path, target, scheduledObserver);
- });
- },
-
- _wrapAsScheduled: function(fn) {
- var view = this;
- var stateCheckedFn = function() {
- view.currentState.invokeObserver(this, fn);
- };
- var scheduledFn = function() {
- run.scheduleOnce('render', this, stateCheckedFn);
- };
- return scheduledFn;
- },
-
- getStream: function(path) {
- return this._getContextStream().get(path);
- },
-
- _getBindingForStream: function(path) {
- if (this._streamBindings === undefined) {
- this._streamBindings = create(null);
- this.one('willDestroyElement', this, this._destroyStreamBindings);
- }
-
- if (this._streamBindings[path] !== undefined) {
- return this._streamBindings[path];
- } else {
- var stream = this._getContextStream().get(path);
- return this._streamBindings[path] = new StreamBinding(stream);
- }
- },
-
- _destroyStreamBindings: function() {
- var streamBindings = this._streamBindings;
- for (var path in streamBindings) {
- streamBindings[path].destroy();
- }
- this._streamBindings = undefined;
- },
-
- _getContextStream: function() {
- if (this._contextStream === undefined) {
- this._baseContext = new KeyStream(this, 'context');
- this._contextStream = new ContextStream(this);
- this.one('willDestroyElement', this, this._destroyContextStream);
- }
-
- return this._contextStream;
- },
-
- _destroyContextStream: function() {
- this._baseContext.destroy();
- this._baseContext = undefined;
- this._contextStream.destroy();
- this._contextStream = undefined;
- },
-
- _unsubscribeFromStreamBindings: function() {
- for (var key in this._streamBindingSubscriptions) {
- var streamBinding = this[key + 'Binding'];
- var callback = this._streamBindingSubscriptions[key];
- streamBinding.unsubscribe(callback);
- }
- }
- });
-
- deprecateProperty(View.prototype, 'state', '_state');
- deprecateProperty(View.prototype, 'states', '_states');
-
- /*
- Describe how the specified actions should behave in the various
- states that a view can exist in. Possible states:
-
- * preRender: when a view is first instantiated, and after its
- element was destroyed, it is in the preRender state
- * inBuffer: once a view has been rendered, but before it has
- been inserted into the DOM, it is in the inBuffer state
- * hasElement: the DOM representation of the view is created,
- and is ready to be inserted
- * inDOM: once a view has been inserted into the DOM it is in
- the inDOM state. A view spends the vast majority of its
- existence in this state.
- * destroyed: once a view has been destroyed (using the destroy
- method), it is in this state. No further actions can be invoked
- on a destroyed view.
- */
-
- // in the destroyed state, everything is illegal
-
- // before rendering has begun, all legal manipulations are noops.
-
- // inside the buffer, legal manipulations are done on the buffer
-
- // once the view has been inserted into the DOM, legal manipulations
- // are done on the DOM element.
-
- View.reopenClass({
-
- /**
- Parse a path and return an object which holds the parsed properties.
-
- For example a path like "content.isEnabled:enabled:disabled" will return the
- following object:
-
- ```javascript
- {
- path: "content.isEnabled",
- className: "enabled",
- falsyClassName: "disabled",
- classNames: ":enabled:disabled"
- }
- ```
-
- @method _parsePropertyPath
- @static
- @private
- */
- _parsePropertyPath: function(path) {
- var split = path.split(':');
- var propertyPath = split[0];
- var classNames = "";
- var className, falsyClassName;
-
- // check if the property is defined as prop:class or prop:trueClass:falseClass
- if (split.length > 1) {
- className = split[1];
- if (split.length === 3) { falsyClassName = split[2]; }
-
- classNames = ':' + className;
- if (falsyClassName) { classNames += ":" + falsyClassName; }
- }
-
- return {
- stream: undefined,
- path: propertyPath,
- classNames: classNames,
- className: (className === '') ? undefined : className,
- falsyClassName: falsyClassName
- };
- },
-
- /**
- Get the class name for a given value, based on the path, optional
- `className` and optional `falsyClassName`.
-
- - if a `className` or `falsyClassName` has been specified:
- - if the value is truthy and `className` has been specified,
- `className` is returned
- - if the value is falsy and `falsyClassName` has been specified,
- `falsyClassName` is returned
- - otherwise `null` is returned
- - if the value is `true`, the dasherized last part of the supplied path
- is returned
- - if the value is not `false`, `undefined` or `null`, the `value`
- is returned
- - if none of the above rules apply, `null` is returned
-
- @method _classStringForValue
- @param path
- @param val
- @param className
- @param falsyClassName
- @static
- @private
- */
- _classStringForValue: function(path, val, className, falsyClassName) {
- if(isArray(val)) {
- val = get(val, 'length') !== 0;
- }
-
- // When using the colon syntax, evaluate the truthiness or falsiness
- // of the value to determine which className to return
- if (className || falsyClassName) {
- if (className && !!val) {
- return className;
-
- } else if (falsyClassName && !val) {
- return falsyClassName;
-
- } else {
- return null;
- }
-
- // If value is a Boolean and true, return the dasherized property
- // name.
- } else if (val === true) {
- // Normalize property path to be suitable for use
- // as a class name. For exaple, content.foo.barBaz
- // becomes bar-baz.
- var parts = path.split('.');
- return dasherize(parts[parts.length-1]);
-
- // If the value is not false, undefined, or null, return the current
- // value of the property.
- } else if (val !== false && val != null) {
- return val;
-
- // Nothing to display. Return null so that the old class is removed
- // but no new class is added.
- } else {
- return null;
- }
- }
- });
-
- var mutation = EmberObject.extend(Evented).create();
- // TODO MOVE TO RENDERER HOOKS
- View.addMutationListener = function(callback) {
- mutation.on('change', callback);
- };
-
- View.removeMutationListener = function(callback) {
- mutation.off('change', callback);
- };
-
- View.notifyMutationListeners = function() {
- mutation.trigger('change');
- };
-
- /**
- Global views hash
-
- @property views
- @static
- @type Hash
- */
- View.views = {};
-
- // If someone overrides the child views computed property when
- // defining their class, we want to be able to process the user's
- // supplied childViews and then restore the original computed property
- // at view initialization time. This happens in Ember.ContainerView's init
- // method.
- View.childViewsProperty = childViewsProperty;
-
- View.applyAttributeBindings = function(elem, name, initialValue) {
- var value = sanitizeAttributeValue(elem[0], name, initialValue);
- var type = typeOf(value);
-
- // if this changes, also change the logic in ember-handlebars/lib/helpers/binding.js
- if (name !== 'value' && (type === 'string' || (type === 'number' && !isNaN(value)))) {
- if (value !== elem.attr(name)) {
- elem.attr(name, value);
- }
- } else if (name === 'value' || type === 'boolean') {
- if (isNone(value) || value === false) {
- // `null`, `undefined` or `false` should remove attribute
- elem.removeAttr(name);
- // In IE8 `prop` couldn't remove attribute when name is `required`.
- if (name === 'required') {
- elem.removeProp(name);
- } else {
- elem.prop(name, '');
- }
- } else if (value !== elem.prop(name)) {
- // value should always be properties
- elem.prop(name, value);
- }
- } else if (!value) {
- elem.removeAttr(name);
- }
- };
-
- __exports__["default"] = View;
- });
-enifed("ember",
- ["ember-metal","ember-runtime","ember-handlebars","ember-views","ember-routing","ember-routing-handlebars","ember-application","ember-extension-support"],
- function(__dependency1__, __dependency2__, __dependency3__, __dependency4__, __dependency5__, __dependency6__, __dependency7__, __dependency8__) {
- "use strict";
- /* global navigator */
- // require the main entry points for each of these packages
- // this is so that the global exports occur properly
-
- // do this to ensure that Ember.Test is defined properly on the global
- // if it is present.
- if (Ember.__loader.registry['ember-testing']) {
- requireModule('ember-testing');
- }
-
- /**
- Ember
-
- @module ember
- */
-
- });
-enifed("morph",
- ["./morph/morph","./morph/dom-helper","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Morph = __dependency1__["default"];
- var Morph;
- __exports__.Morph = Morph;
- var DOMHelper = __dependency2__["default"];
- var DOMHelper;
- __exports__.DOMHelper = DOMHelper;
- });
-enifed("morph/dom-helper",
- ["../morph/morph","./dom-helper/build-html-dom","exports"],
- function(__dependency1__, __dependency2__, __exports__) {
- "use strict";
- var Morph = __dependency1__["default"];
- var buildHTMLDOM = __dependency2__.buildHTMLDOM;
- var svgNamespace = __dependency2__.svgNamespace;
- var svgHTMLIntegrationPoints = __dependency2__.svgHTMLIntegrationPoints;
-
- var deletesBlankTextNodes = (function(){
- var element = document.createElement('div');
- element.appendChild( document.createTextNode('') );
- var clonedElement = element.cloneNode(true);
- return clonedElement.childNodes.length === 0;
- })();
-
- var ignoresCheckedAttribute = (function(){
- var element = document.createElement('input');
- element.setAttribute('checked', 'checked');
- var clonedElement = element.cloneNode(false);
- return !clonedElement.checked;
- })();
-
- function isSVG(ns){
- return ns === svgNamespace;
- }
-
- // This is not the namespace of the element, but of
- // the elements inside that elements.
- function interiorNamespace(element){
- if (
- element &&
- element.namespaceURI === svgNamespace &&
- !svgHTMLIntegrationPoints[element.tagName]
- ) {
- return svgNamespace;
- } else {
- return null;
- }
- }
-
- // The HTML spec allows for "omitted start tags". These tags are optional
- // when their intended child is the first thing in the parent tag. For
- // example, this is a tbody start tag:
- //
- //
- //
- //
- //
- // The tbody may be omitted, and the browser will accept and render:
- //
- //
- //
- //
- // However, the omitted start tag will still be added to the DOM. Here
- // we test the string and context to see if the browser is about to
- // perform this cleanup.
- //
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#optional-tags
- // describes which tags are omittable. The spec for tbody and colgroup
- // explains this behavior:
- //
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/tables.html#the-tbody-element
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/tables.html#the-colgroup-element
- //
-
- var omittedStartTagChildTest = /<([\w:]+)/;
- function detectOmittedStartTag(string, contextualElement){
- // Omitted start tags are only inside table tags.
- if (contextualElement.tagName === 'TABLE') {
- var omittedStartTagChildMatch = omittedStartTagChildTest.exec(string);
- if (omittedStartTagChildMatch) {
- var omittedStartTagChild = omittedStartTagChildMatch[1];
- // It is already asserted that the contextual element is a table
- // and not the proper start tag. Just see if a tag was omitted.
- return omittedStartTagChild === 'tr' ||
- omittedStartTagChild === 'col';
- }
- }
- }
-
- function buildSVGDOM(html, dom){
- var div = dom.document.createElement('div');
- div.innerHTML = '';
- return div.firstChild.childNodes;
- }
-
- /*
- * A class wrapping DOM functions to address environment compatibility,
- * namespaces, contextual elements for morph un-escaped content
- * insertion.
- *
- * When entering a template, a DOMHelper should be passed:
- *
- * template(context, { hooks: hooks, dom: new DOMHelper() });
- *
- * TODO: support foreignObject as a passed contextual element. It has
- * a namespace (svg) that does not match its internal namespace
- * (xhtml).
- *
- * @class DOMHelper
- * @constructor
- * @param {HTMLDocument} _document The document DOM methods are proxied to
- */
- function DOMHelper(_document){
- this.document = _document || window.document;
- this.namespace = null;
- }
-
- var prototype = DOMHelper.prototype;
- prototype.constructor = DOMHelper;
-
- prototype.insertBefore = function(element, childElement, referenceChild) {
- return element.insertBefore(childElement, referenceChild);
- };
-
- prototype.appendChild = function(element, childElement) {
- return element.appendChild(childElement);
- };
-
- prototype.appendText = function(element, text) {
- return element.appendChild(this.document.createTextNode(text));
- };
-
- prototype.setAttribute = function(element, name, value) {
- element.setAttribute(name, value);
- };
-
- if (document.createElementNS) {
- // Only opt into namespace detection if a contextualElement
- // is passed.
- prototype.createElement = function(tagName, contextualElement) {
- var namespace = this.namespace;
- if (contextualElement) {
- if (tagName === 'svg') {
- namespace = svgNamespace;
- } else {
- namespace = interiorNamespace(contextualElement);
- }
- }
- if (namespace) {
- return this.document.createElementNS(namespace, tagName);
- } else {
- return this.document.createElement(tagName);
- }
- };
- } else {
- prototype.createElement = function(tagName) {
- return this.document.createElement(tagName);
- };
- }
-
- prototype.setNamespace = function(ns) {
- this.namespace = ns;
- };
-
- prototype.detectNamespace = function(element) {
- this.namespace = interiorNamespace(element);
- };
-
- prototype.createDocumentFragment = function(){
- return this.document.createDocumentFragment();
- };
-
- prototype.createTextNode = function(text){
- return this.document.createTextNode(text);
- };
-
- prototype.repairClonedNode = function(element, blankChildTextNodes, isChecked){
- if (deletesBlankTextNodes && blankChildTextNodes.length > 0) {
- for (var i=0, len=blankChildTextNodes.length;i]*selected/;
- detectAutoSelectedOption = function detectAutoSelectedOption(select, option, html) { //jshint ignore:line
- return select.selectedIndex === 0 &&
- !detectAutoSelectedOptionRegex.test(html);
- };
- } else {
- detectAutoSelectedOption = function detectAutoSelectedOption(select, option, html) { //jshint ignore:line
- var selectedAttribute = option.getAttribute('selected');
- return select.selectedIndex === 0 && (
- selectedAttribute === null ||
- ( selectedAttribute !== '' && selectedAttribute.toLowerCase() !== 'selected' )
- );
- };
- }
-
- // IE 9 and earlier don't allow us to set innerHTML on col, colgroup, frameset,
- // html, style, table, tbody, tfoot, thead, title, tr. Detect this and add
- // them to an initial list of corrected tags.
- //
- // Here we are only dealing with the ones which can have child nodes.
- //
- var tagNamesRequiringInnerHTMLFix, tableNeedsInnerHTMLFix;
- var tableInnerHTMLTestElement = document.createElement('table');
- try {
- tableInnerHTMLTestElement.innerHTML = '';
- } catch (e) {
- } finally {
- tableNeedsInnerHTMLFix = (tableInnerHTMLTestElement.childNodes.length === 0);
- }
- if (tableNeedsInnerHTMLFix) {
- tagNamesRequiringInnerHTMLFix = {
- colgroup: ['table'],
- table: [],
- tbody: ['table'],
- tfoot: ['table'],
- thead: ['table'],
- tr: ['table', 'tbody']
- };
- }
-
- // IE 8 doesn't allow setting innerHTML on a select tag. Detect this and
- // add it to the list of corrected tags.
- //
- var selectInnerHTMLTestElement = document.createElement('select');
- selectInnerHTMLTestElement.innerHTML = ' ';
- if (selectInnerHTMLTestElement) {
- tagNamesRequiringInnerHTMLFix = tagNamesRequiringInnerHTMLFix || {};
- tagNamesRequiringInnerHTMLFix.select = [];
- }
-
- function scriptSafeInnerHTML(element, html) {
- // without a leading text node, IE will drop a leading script tag.
- html = ''+html;
-
- element.innerHTML = html;
-
- var nodes = element.childNodes;
-
- // Look for to remove it.
- var shyElement = nodes[0];
- while (shyElement.nodeType === 1 && !shyElement.nodeName) {
- shyElement = shyElement.firstChild;
- }
- // At this point it's the actual unicode character.
- if (shyElement.nodeType === 3 && shyElement.nodeValue.charAt(0) === "\u00AD") {
- var newValue = shyElement.nodeValue.slice(1);
- if (newValue.length) {
- shyElement.nodeValue = shyElement.nodeValue.slice(1);
- } else {
- shyElement.parentNode.removeChild(shyElement);
- }
- }
-
- return nodes;
- }
-
- function buildDOMWithFix(html, contextualElement){
- var tagName = contextualElement.tagName;
-
- // Firefox versions < 11 do not have support for element.outerHTML.
- var outerHTML = contextualElement.outerHTML || new XMLSerializer().serializeToString(contextualElement);
- if (!outerHTML) {
- throw "Can't set innerHTML on "+tagName+" in this browser";
- }
-
- var wrappingTags = tagNamesRequiringInnerHTMLFix[tagName.toLowerCase()];
- var startTag = outerHTML.match(new RegExp("<"+tagName+"([^>]*)>", 'i'))[0];
- var endTag = ''+tagName+'>';
-
- var wrappedHTML = [startTag, html, endTag];
-
- var i = wrappingTags.length;
- var wrappedDepth = 1 + i;
- while(i--) {
- wrappedHTML.unshift('<'+wrappingTags[i]+'>');
- wrappedHTML.push(''+wrappingTags[i]+'>');
- }
-
- var wrapper = document.createElement('div');
- scriptSafeInnerHTML(wrapper, wrappedHTML.join(''));
- var element = wrapper;
- while (wrappedDepth--) {
- element = element.firstChild;
- while (element && element.nodeType !== 1) {
- element = element.nextSibling;
- }
- }
- while (element && element.tagName !== tagName) {
- element = element.nextSibling;
- }
- return element ? element.childNodes : [];
- }
-
- var buildDOM;
- if (needsShy) {
- buildDOM = function buildDOM(html, contextualElement, dom){
- contextualElement = dom.cloneNode(contextualElement, false);
- scriptSafeInnerHTML(contextualElement, html);
- return contextualElement.childNodes;
- };
- } else {
- buildDOM = function buildDOM(html, contextualElement, dom){
- contextualElement = dom.cloneNode(contextualElement, false);
- contextualElement.innerHTML = html;
- return contextualElement.childNodes;
- };
- }
-
- var buildIESafeDOM;
- if (tagNamesRequiringInnerHTMLFix || movesWhitespace) {
- buildIESafeDOM = function buildIESafeDOM(html, contextualElement, dom) {
- // Make a list of the leading text on script nodes. Include
- // script tags without any whitespace for easier processing later.
- var spacesBefore = [];
- var spacesAfter = [];
- html = html.replace(/(\s*)(
-
-
-
-
-
diff --git a/play/log.rb b/play/log.rb
deleted file mode 100644
index a9be5e59..00000000
--- a/play/log.rb
+++ /dev/null
@@ -1,77 +0,0 @@
-puts 'simulating git fetch (compressing objects)'
-1.upto(99) do |i|
- print "remote: Compressing objects: #{i.to_s.rjust(3)}% (1/34) \e[K\r"
-end
-print "remote: Compressing objects: 100% (1/1), done.\e[K\r\n"
-
-puts 'simulating git fetch (unpacking objects)'
-1.upto(99) do |i|
- print "remote: Unpacking objects: #{i.to_s.rjust(3)}% (1/43) \r"
-end
-print "remote: Unpacking objects: 100% (1/43) \r\n"
-puts
-
-puts 'progress on one same line (faster)'
-1.upto(200) do |i|
- print "#{i}|"; sleep(0.025)
-end
-
-puts; puts
-puts 'progress on one same line (slower)'
-1.upto(20) do |i|
- print "#{i}|"; sleep(0.5)
-end
-
-puts; puts
-puts 'separate lines (faster)'
-1.upto(100) do |i|
- puts "line #{i}"; sleep(0.025)
-end
-
-puts; puts
-puts 'separate lines (faster)'
-1.upto(20) do |i|
- puts "line #{i}"; sleep(0.5)
-end
-
-codes = {
- fmt: {
- nil => 'no format',
- 1 => 'bold',
- 3 => 'italic',
- 4 => 'underline',
- },
- fg: {
- nil => 'no foreground',
- 30 => 'fg-black',
- 33 => 'fg-yellow',
- 90 => 'fg-grey',
- },
- bg: {
- nil => 'no background',
- 40 => 'bg-black',
- 41 => 'bg-red',
- 42 => 'bg-green',
- 44 => 'bg-blue',
- 47 => 'bg-white'
- }
-}
-
-puts; puts
-puts 'ansi'
-
-order = [:bg, :fg, :fmt]
-keys = codes[order[0]].keys.product(codes[order[1]].keys).product(codes[order[2]].keys)
-string = keys.map do |keys|
- keys = keys.flatten
- next if keys[0] == keys[1]
- stuff = order.zip(keys)
- string = stuff.map { |type, key| codes[type][key] }.join(', ')
- format = stuff.map { |type, key| "\033[#{key}m" if key }.compact.join
- "#{format}#{string}\033[0m"
-end.compact.join("\n")
-
-string.scan(/.{1,50}/m).each do |chunk|
- print chunk
- sleep(0.1)
-end
diff --git a/play/log.ru b/play/log.ru
deleted file mode 100644
index 275e07c1..00000000
--- a/play/log.ru
+++ /dev/null
@@ -1,18 +0,0 @@
-require 'sinatra'
-
-set :server, :thin
-
-get '/' do
- File.read('play/log.html')
-end
-
-get '/log' do
- chars = (97..122).to_a
- stream do |out|
- 1.upto(10000) do
- out << chars[rand(chars.length)].chr
- out << ' ' if rand(5) == 1
- sleep 0.001
- end
- end
-end
diff --git a/public/colors.html b/public/colors.html
deleted file mode 100644
index e6b5e700..00000000
--- a/public/colors.html
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
- Travis CI - Color Palette
-
-
-
-
-
- -
-
- - gray 1
-
-
-
-
-
-
-
-
- -
-
- - gray 2
-
-
-
-
-
-
-
- -
-
- - blue
-
-
-
-
-
-
- -
-
- - yellow
-
-
-
-
-
-
- -
-
- - green
-
-
-
-
-
- -
-
- - red
-
-
-
-
-
-
-
-
-
-
diff --git a/public/crossdomain.xml b/public/crossdomain.xml
new file mode 100644
index 00000000..29a035d7
--- /dev/null
+++ b/public/crossdomain.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/images/dashboard/cal.svg b/public/images/dashboard/cal.svg
new file mode 100644
index 00000000..30f0454d
--- /dev/null
+++ b/public/images/dashboard/cal.svg
@@ -0,0 +1,22 @@
+
+
+
+
diff --git a/public/images/dashboard/footer-logo.svg b/public/images/dashboard/footer-logo.svg
new file mode 100644
index 00000000..22249b81
--- /dev/null
+++ b/public/images/dashboard/footer-logo.svg
@@ -0,0 +1,491 @@
+
+
+
+
diff --git a/public/images/dashboard/gravatar.png b/public/images/dashboard/gravatar.png
new file mode 100644
index 00000000..cabf8b18
Binary files /dev/null and b/public/images/dashboard/gravatar.png differ
diff --git a/public/images/dashboard/health-stats.svg b/public/images/dashboard/health-stats.svg
new file mode 100644
index 00000000..a45aecd1
--- /dev/null
+++ b/public/images/dashboard/health-stats.svg
@@ -0,0 +1,18 @@
+
+
+
+
diff --git a/public/images/dashboard/orgs-eurucamp.png b/public/images/dashboard/orgs-eurucamp.png
new file mode 100644
index 00000000..4e52ceb6
Binary files /dev/null and b/public/images/dashboard/orgs-eurucamp.png differ
diff --git a/public/images/dashboard/orgs-openkarma.png b/public/images/dashboard/orgs-openkarma.png
new file mode 100644
index 00000000..4e02f61c
Binary files /dev/null and b/public/images/dashboard/orgs-openkarma.png differ
diff --git a/public/images/dashboard/orgs-saltinejustine.png b/public/images/dashboard/orgs-saltinejustine.png
new file mode 100644
index 00000000..70870224
Binary files /dev/null and b/public/images/dashboard/orgs-saltinejustine.png differ
diff --git a/public/images/dashboard/orgs-travisci.png b/public/images/dashboard/orgs-travisci.png
new file mode 100644
index 00000000..64a2e7fc
Binary files /dev/null and b/public/images/dashboard/orgs-travisci.png differ
diff --git a/public/images/dashboard/private-icon.svg b/public/images/dashboard/private-icon.svg
new file mode 100644
index 00000000..2aafb6eb
--- /dev/null
+++ b/public/images/dashboard/private-icon.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/public/images/dashboard/search-icon.svg b/public/images/dashboard/search-icon.svg
new file mode 100644
index 00000000..c4dd1104
--- /dev/null
+++ b/public/images/dashboard/search-icon.svg
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/public/images/dashboard/star-off.svg b/public/images/dashboard/star-off.svg
new file mode 100644
index 00000000..c4254ca1
--- /dev/null
+++ b/public/images/dashboard/star-off.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/public/images/dashboard/star-on.svg b/public/images/dashboard/star-on.svg
new file mode 100644
index 00000000..c4821b5b
--- /dev/null
+++ b/public/images/dashboard/star-on.svg
@@ -0,0 +1,8 @@
+
+
+
+
diff --git a/public/images/dashboard/status-cancelled.svg b/public/images/dashboard/status-cancelled.svg
new file mode 100644
index 00000000..54c1aa35
--- /dev/null
+++ b/public/images/dashboard/status-cancelled.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/public/images/dashboard/status-errored.svg b/public/images/dashboard/status-errored.svg
new file mode 100644
index 00000000..90aada76
--- /dev/null
+++ b/public/images/dashboard/status-errored.svg
@@ -0,0 +1,10 @@
+
+
+
+
diff --git a/public/images/dashboard/status-failed.svg b/public/images/dashboard/status-failed.svg
new file mode 100644
index 00000000..dbda4c98
--- /dev/null
+++ b/public/images/dashboard/status-failed.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/public/images/dashboard/status-passed.svg b/public/images/dashboard/status-passed.svg
new file mode 100644
index 00000000..4d07dfe3
--- /dev/null
+++ b/public/images/dashboard/status-passed.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/public/images/dashboard/status-pending.svg b/public/images/dashboard/status-pending.svg
new file mode 100644
index 00000000..388d1801
--- /dev/null
+++ b/public/images/dashboard/status-pending.svg
@@ -0,0 +1,11 @@
+
+
+
+
diff --git a/public/images/dashboard/time.svg b/public/images/dashboard/time.svg
new file mode 100644
index 00000000..ef5f24fe
--- /dev/null
+++ b/public/images/dashboard/time.svg
@@ -0,0 +1,14 @@
+
+
+
+
diff --git a/assets/images/ui/travis-logo.svg b/public/images/dashboard/travis-logo.svg
similarity index 98%
rename from assets/images/ui/travis-logo.svg
rename to public/images/dashboard/travis-logo.svg
index 47b7e4c9..41ccb89a 100644
--- a/assets/images/ui/travis-logo.svg
+++ b/public/images/dashboard/travis-logo.svg
@@ -1,28 +1,28 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/emoji/+1.png b/public/images/emoji/+1.png
similarity index 100%
rename from assets/images/emoji/+1.png
rename to public/images/emoji/+1.png
diff --git a/assets/images/emoji/-1.png b/public/images/emoji/-1.png
similarity index 100%
rename from assets/images/emoji/-1.png
rename to public/images/emoji/-1.png
diff --git a/assets/images/emoji/0.png b/public/images/emoji/0.png
similarity index 100%
rename from assets/images/emoji/0.png
rename to public/images/emoji/0.png
diff --git a/assets/images/emoji/1.png b/public/images/emoji/1.png
similarity index 100%
rename from assets/images/emoji/1.png
rename to public/images/emoji/1.png
diff --git a/assets/images/emoji/100.png b/public/images/emoji/100.png
similarity index 100%
rename from assets/images/emoji/100.png
rename to public/images/emoji/100.png
diff --git a/assets/images/emoji/109.png b/public/images/emoji/109.png
similarity index 100%
rename from assets/images/emoji/109.png
rename to public/images/emoji/109.png
diff --git a/assets/images/emoji/1234.png b/public/images/emoji/1234.png
similarity index 100%
rename from assets/images/emoji/1234.png
rename to public/images/emoji/1234.png
diff --git a/assets/images/emoji/2.png b/public/images/emoji/2.png
similarity index 100%
rename from assets/images/emoji/2.png
rename to public/images/emoji/2.png
diff --git a/assets/images/emoji/3.png b/public/images/emoji/3.png
similarity index 100%
rename from assets/images/emoji/3.png
rename to public/images/emoji/3.png
diff --git a/assets/images/emoji/4.png b/public/images/emoji/4.png
similarity index 100%
rename from assets/images/emoji/4.png
rename to public/images/emoji/4.png
diff --git a/assets/images/emoji/5.png b/public/images/emoji/5.png
similarity index 100%
rename from assets/images/emoji/5.png
rename to public/images/emoji/5.png
diff --git a/assets/images/emoji/6.png b/public/images/emoji/6.png
similarity index 100%
rename from assets/images/emoji/6.png
rename to public/images/emoji/6.png
diff --git a/assets/images/emoji/7.png b/public/images/emoji/7.png
similarity index 100%
rename from assets/images/emoji/7.png
rename to public/images/emoji/7.png
diff --git a/assets/images/emoji/8.png b/public/images/emoji/8.png
similarity index 100%
rename from assets/images/emoji/8.png
rename to public/images/emoji/8.png
diff --git a/assets/images/emoji/8ball.png b/public/images/emoji/8ball.png
similarity index 100%
rename from assets/images/emoji/8ball.png
rename to public/images/emoji/8ball.png
diff --git a/assets/images/emoji/9.png b/public/images/emoji/9.png
similarity index 100%
rename from assets/images/emoji/9.png
rename to public/images/emoji/9.png
diff --git a/assets/images/emoji/a.png b/public/images/emoji/a.png
similarity index 100%
rename from assets/images/emoji/a.png
rename to public/images/emoji/a.png
diff --git a/assets/images/emoji/ab.png b/public/images/emoji/ab.png
similarity index 100%
rename from assets/images/emoji/ab.png
rename to public/images/emoji/ab.png
diff --git a/assets/images/emoji/abc.png b/public/images/emoji/abc.png
similarity index 100%
rename from assets/images/emoji/abc.png
rename to public/images/emoji/abc.png
diff --git a/assets/images/emoji/abcd.png b/public/images/emoji/abcd.png
similarity index 100%
rename from assets/images/emoji/abcd.png
rename to public/images/emoji/abcd.png
diff --git a/assets/images/emoji/accept.png b/public/images/emoji/accept.png
similarity index 100%
rename from assets/images/emoji/accept.png
rename to public/images/emoji/accept.png
diff --git a/assets/images/emoji/aerial_tramway.png b/public/images/emoji/aerial_tramway.png
similarity index 100%
rename from assets/images/emoji/aerial_tramway.png
rename to public/images/emoji/aerial_tramway.png
diff --git a/assets/images/emoji/airplane.png b/public/images/emoji/airplane.png
similarity index 100%
rename from assets/images/emoji/airplane.png
rename to public/images/emoji/airplane.png
diff --git a/assets/images/emoji/alarm_clock.png b/public/images/emoji/alarm_clock.png
similarity index 100%
rename from assets/images/emoji/alarm_clock.png
rename to public/images/emoji/alarm_clock.png
diff --git a/assets/images/emoji/alien.png b/public/images/emoji/alien.png
similarity index 100%
rename from assets/images/emoji/alien.png
rename to public/images/emoji/alien.png
diff --git a/assets/images/emoji/ambulance.png b/public/images/emoji/ambulance.png
similarity index 100%
rename from assets/images/emoji/ambulance.png
rename to public/images/emoji/ambulance.png
diff --git a/assets/images/emoji/anchor.png b/public/images/emoji/anchor.png
similarity index 100%
rename from assets/images/emoji/anchor.png
rename to public/images/emoji/anchor.png
diff --git a/assets/images/emoji/angel.png b/public/images/emoji/angel.png
similarity index 100%
rename from assets/images/emoji/angel.png
rename to public/images/emoji/angel.png
diff --git a/assets/images/emoji/anger.png b/public/images/emoji/anger.png
similarity index 100%
rename from assets/images/emoji/anger.png
rename to public/images/emoji/anger.png
diff --git a/assets/images/emoji/angry.png b/public/images/emoji/angry.png
similarity index 100%
rename from assets/images/emoji/angry.png
rename to public/images/emoji/angry.png
diff --git a/assets/images/emoji/anguished.png b/public/images/emoji/anguished.png
similarity index 100%
rename from assets/images/emoji/anguished.png
rename to public/images/emoji/anguished.png
diff --git a/assets/images/emoji/ant.png b/public/images/emoji/ant.png
similarity index 100%
rename from assets/images/emoji/ant.png
rename to public/images/emoji/ant.png
diff --git a/assets/images/emoji/apple.png b/public/images/emoji/apple.png
similarity index 100%
rename from assets/images/emoji/apple.png
rename to public/images/emoji/apple.png
diff --git a/assets/images/emoji/aquarius.png b/public/images/emoji/aquarius.png
similarity index 100%
rename from assets/images/emoji/aquarius.png
rename to public/images/emoji/aquarius.png
diff --git a/assets/images/emoji/aries.png b/public/images/emoji/aries.png
similarity index 100%
rename from assets/images/emoji/aries.png
rename to public/images/emoji/aries.png
diff --git a/assets/images/emoji/arrow_backward.png b/public/images/emoji/arrow_backward.png
similarity index 100%
rename from assets/images/emoji/arrow_backward.png
rename to public/images/emoji/arrow_backward.png
diff --git a/assets/images/emoji/arrow_double_down.png b/public/images/emoji/arrow_double_down.png
similarity index 100%
rename from assets/images/emoji/arrow_double_down.png
rename to public/images/emoji/arrow_double_down.png
diff --git a/assets/images/emoji/arrow_double_up.png b/public/images/emoji/arrow_double_up.png
similarity index 100%
rename from assets/images/emoji/arrow_double_up.png
rename to public/images/emoji/arrow_double_up.png
diff --git a/assets/images/emoji/arrow_down.png b/public/images/emoji/arrow_down.png
similarity index 100%
rename from assets/images/emoji/arrow_down.png
rename to public/images/emoji/arrow_down.png
diff --git a/assets/images/emoji/arrow_down_small.png b/public/images/emoji/arrow_down_small.png
similarity index 100%
rename from assets/images/emoji/arrow_down_small.png
rename to public/images/emoji/arrow_down_small.png
diff --git a/assets/images/emoji/arrow_forward.png b/public/images/emoji/arrow_forward.png
similarity index 100%
rename from assets/images/emoji/arrow_forward.png
rename to public/images/emoji/arrow_forward.png
diff --git a/assets/images/emoji/arrow_heading_down.png b/public/images/emoji/arrow_heading_down.png
similarity index 100%
rename from assets/images/emoji/arrow_heading_down.png
rename to public/images/emoji/arrow_heading_down.png
diff --git a/assets/images/emoji/arrow_heading_up.png b/public/images/emoji/arrow_heading_up.png
similarity index 100%
rename from assets/images/emoji/arrow_heading_up.png
rename to public/images/emoji/arrow_heading_up.png
diff --git a/assets/images/emoji/arrow_left.png b/public/images/emoji/arrow_left.png
similarity index 100%
rename from assets/images/emoji/arrow_left.png
rename to public/images/emoji/arrow_left.png
diff --git a/assets/images/emoji/arrow_lower_left.png b/public/images/emoji/arrow_lower_left.png
similarity index 100%
rename from assets/images/emoji/arrow_lower_left.png
rename to public/images/emoji/arrow_lower_left.png
diff --git a/assets/images/emoji/arrow_lower_right.png b/public/images/emoji/arrow_lower_right.png
similarity index 100%
rename from assets/images/emoji/arrow_lower_right.png
rename to public/images/emoji/arrow_lower_right.png
diff --git a/assets/images/emoji/arrow_right.png b/public/images/emoji/arrow_right.png
similarity index 100%
rename from assets/images/emoji/arrow_right.png
rename to public/images/emoji/arrow_right.png
diff --git a/assets/images/emoji/arrow_right_hook.png b/public/images/emoji/arrow_right_hook.png
similarity index 100%
rename from assets/images/emoji/arrow_right_hook.png
rename to public/images/emoji/arrow_right_hook.png
diff --git a/assets/images/emoji/arrow_up.png b/public/images/emoji/arrow_up.png
similarity index 100%
rename from assets/images/emoji/arrow_up.png
rename to public/images/emoji/arrow_up.png
diff --git a/assets/images/emoji/arrow_up_down.png b/public/images/emoji/arrow_up_down.png
similarity index 100%
rename from assets/images/emoji/arrow_up_down.png
rename to public/images/emoji/arrow_up_down.png
diff --git a/assets/images/emoji/arrow_up_small.png b/public/images/emoji/arrow_up_small.png
similarity index 100%
rename from assets/images/emoji/arrow_up_small.png
rename to public/images/emoji/arrow_up_small.png
diff --git a/assets/images/emoji/arrow_upper_left.png b/public/images/emoji/arrow_upper_left.png
similarity index 100%
rename from assets/images/emoji/arrow_upper_left.png
rename to public/images/emoji/arrow_upper_left.png
diff --git a/assets/images/emoji/arrow_upper_right.png b/public/images/emoji/arrow_upper_right.png
similarity index 100%
rename from assets/images/emoji/arrow_upper_right.png
rename to public/images/emoji/arrow_upper_right.png
diff --git a/assets/images/emoji/arrows_clockwise.png b/public/images/emoji/arrows_clockwise.png
similarity index 100%
rename from assets/images/emoji/arrows_clockwise.png
rename to public/images/emoji/arrows_clockwise.png
diff --git a/assets/images/emoji/arrows_counterclockwise.png b/public/images/emoji/arrows_counterclockwise.png
similarity index 100%
rename from assets/images/emoji/arrows_counterclockwise.png
rename to public/images/emoji/arrows_counterclockwise.png
diff --git a/assets/images/emoji/art.png b/public/images/emoji/art.png
similarity index 100%
rename from assets/images/emoji/art.png
rename to public/images/emoji/art.png
diff --git a/assets/images/emoji/articulated_lorry.png b/public/images/emoji/articulated_lorry.png
similarity index 100%
rename from assets/images/emoji/articulated_lorry.png
rename to public/images/emoji/articulated_lorry.png
diff --git a/assets/images/emoji/astonished.png b/public/images/emoji/astonished.png
similarity index 100%
rename from assets/images/emoji/astonished.png
rename to public/images/emoji/astonished.png
diff --git a/assets/images/emoji/atm.png b/public/images/emoji/atm.png
similarity index 100%
rename from assets/images/emoji/atm.png
rename to public/images/emoji/atm.png
diff --git a/assets/images/emoji/b.png b/public/images/emoji/b.png
similarity index 100%
rename from assets/images/emoji/b.png
rename to public/images/emoji/b.png
diff --git a/assets/images/emoji/baby.png b/public/images/emoji/baby.png
similarity index 100%
rename from assets/images/emoji/baby.png
rename to public/images/emoji/baby.png
diff --git a/assets/images/emoji/baby_bottle.png b/public/images/emoji/baby_bottle.png
similarity index 100%
rename from assets/images/emoji/baby_bottle.png
rename to public/images/emoji/baby_bottle.png
diff --git a/assets/images/emoji/baby_chick.png b/public/images/emoji/baby_chick.png
similarity index 100%
rename from assets/images/emoji/baby_chick.png
rename to public/images/emoji/baby_chick.png
diff --git a/assets/images/emoji/baby_symbol.png b/public/images/emoji/baby_symbol.png
similarity index 100%
rename from assets/images/emoji/baby_symbol.png
rename to public/images/emoji/baby_symbol.png
diff --git a/assets/images/emoji/baggage_claim.png b/public/images/emoji/baggage_claim.png
similarity index 100%
rename from assets/images/emoji/baggage_claim.png
rename to public/images/emoji/baggage_claim.png
diff --git a/assets/images/emoji/balloon.png b/public/images/emoji/balloon.png
similarity index 100%
rename from assets/images/emoji/balloon.png
rename to public/images/emoji/balloon.png
diff --git a/assets/images/emoji/ballot_box_with_check.png b/public/images/emoji/ballot_box_with_check.png
similarity index 100%
rename from assets/images/emoji/ballot_box_with_check.png
rename to public/images/emoji/ballot_box_with_check.png
diff --git a/assets/images/emoji/bamboo.png b/public/images/emoji/bamboo.png
similarity index 100%
rename from assets/images/emoji/bamboo.png
rename to public/images/emoji/bamboo.png
diff --git a/assets/images/emoji/banana.png b/public/images/emoji/banana.png
similarity index 100%
rename from assets/images/emoji/banana.png
rename to public/images/emoji/banana.png
diff --git a/assets/images/emoji/bangbang.png b/public/images/emoji/bangbang.png
similarity index 100%
rename from assets/images/emoji/bangbang.png
rename to public/images/emoji/bangbang.png
diff --git a/assets/images/emoji/bank.png b/public/images/emoji/bank.png
similarity index 100%
rename from assets/images/emoji/bank.png
rename to public/images/emoji/bank.png
diff --git a/assets/images/emoji/bar_chart.png b/public/images/emoji/bar_chart.png
similarity index 100%
rename from assets/images/emoji/bar_chart.png
rename to public/images/emoji/bar_chart.png
diff --git a/assets/images/emoji/barber.png b/public/images/emoji/barber.png
similarity index 100%
rename from assets/images/emoji/barber.png
rename to public/images/emoji/barber.png
diff --git a/assets/images/emoji/baseball.png b/public/images/emoji/baseball.png
similarity index 100%
rename from assets/images/emoji/baseball.png
rename to public/images/emoji/baseball.png
diff --git a/assets/images/emoji/basketball.png b/public/images/emoji/basketball.png
similarity index 100%
rename from assets/images/emoji/basketball.png
rename to public/images/emoji/basketball.png
diff --git a/assets/images/emoji/bath.png b/public/images/emoji/bath.png
similarity index 100%
rename from assets/images/emoji/bath.png
rename to public/images/emoji/bath.png
diff --git a/assets/images/emoji/bathtub.png b/public/images/emoji/bathtub.png
similarity index 100%
rename from assets/images/emoji/bathtub.png
rename to public/images/emoji/bathtub.png
diff --git a/assets/images/emoji/battery.png b/public/images/emoji/battery.png
similarity index 100%
rename from assets/images/emoji/battery.png
rename to public/images/emoji/battery.png
diff --git a/assets/images/emoji/bear.png b/public/images/emoji/bear.png
similarity index 100%
rename from assets/images/emoji/bear.png
rename to public/images/emoji/bear.png
diff --git a/assets/images/emoji/bee.png b/public/images/emoji/bee.png
similarity index 100%
rename from assets/images/emoji/bee.png
rename to public/images/emoji/bee.png
diff --git a/assets/images/emoji/beer.png b/public/images/emoji/beer.png
similarity index 100%
rename from assets/images/emoji/beer.png
rename to public/images/emoji/beer.png
diff --git a/assets/images/emoji/beers.png b/public/images/emoji/beers.png
similarity index 100%
rename from assets/images/emoji/beers.png
rename to public/images/emoji/beers.png
diff --git a/assets/images/emoji/beetle.png b/public/images/emoji/beetle.png
similarity index 100%
rename from assets/images/emoji/beetle.png
rename to public/images/emoji/beetle.png
diff --git a/assets/images/emoji/beginner.png b/public/images/emoji/beginner.png
similarity index 100%
rename from assets/images/emoji/beginner.png
rename to public/images/emoji/beginner.png
diff --git a/assets/images/emoji/bell.png b/public/images/emoji/bell.png
similarity index 100%
rename from assets/images/emoji/bell.png
rename to public/images/emoji/bell.png
diff --git a/assets/images/emoji/bento.png b/public/images/emoji/bento.png
similarity index 100%
rename from assets/images/emoji/bento.png
rename to public/images/emoji/bento.png
diff --git a/assets/images/emoji/bicyclist.png b/public/images/emoji/bicyclist.png
similarity index 100%
rename from assets/images/emoji/bicyclist.png
rename to public/images/emoji/bicyclist.png
diff --git a/assets/images/emoji/bike.png b/public/images/emoji/bike.png
similarity index 100%
rename from assets/images/emoji/bike.png
rename to public/images/emoji/bike.png
diff --git a/assets/images/emoji/bikini.png b/public/images/emoji/bikini.png
similarity index 100%
rename from assets/images/emoji/bikini.png
rename to public/images/emoji/bikini.png
diff --git a/assets/images/emoji/bird.png b/public/images/emoji/bird.png
similarity index 100%
rename from assets/images/emoji/bird.png
rename to public/images/emoji/bird.png
diff --git a/assets/images/emoji/birthday.png b/public/images/emoji/birthday.png
similarity index 100%
rename from assets/images/emoji/birthday.png
rename to public/images/emoji/birthday.png
diff --git a/assets/images/emoji/black_circle.png b/public/images/emoji/black_circle.png
similarity index 100%
rename from assets/images/emoji/black_circle.png
rename to public/images/emoji/black_circle.png
diff --git a/assets/images/emoji/black_joker.png b/public/images/emoji/black_joker.png
similarity index 100%
rename from assets/images/emoji/black_joker.png
rename to public/images/emoji/black_joker.png
diff --git a/assets/images/emoji/black_nib.png b/public/images/emoji/black_nib.png
similarity index 100%
rename from assets/images/emoji/black_nib.png
rename to public/images/emoji/black_nib.png
diff --git a/assets/images/emoji/black_square.png b/public/images/emoji/black_square.png
similarity index 100%
rename from assets/images/emoji/black_square.png
rename to public/images/emoji/black_square.png
diff --git a/assets/images/emoji/black_square_button.png b/public/images/emoji/black_square_button.png
similarity index 100%
rename from assets/images/emoji/black_square_button.png
rename to public/images/emoji/black_square_button.png
diff --git a/assets/images/emoji/blossom.png b/public/images/emoji/blossom.png
similarity index 100%
rename from assets/images/emoji/blossom.png
rename to public/images/emoji/blossom.png
diff --git a/assets/images/emoji/blowfish.png b/public/images/emoji/blowfish.png
similarity index 100%
rename from assets/images/emoji/blowfish.png
rename to public/images/emoji/blowfish.png
diff --git a/assets/images/emoji/blue_book.png b/public/images/emoji/blue_book.png
similarity index 100%
rename from assets/images/emoji/blue_book.png
rename to public/images/emoji/blue_book.png
diff --git a/assets/images/emoji/blue_car.png b/public/images/emoji/blue_car.png
similarity index 100%
rename from assets/images/emoji/blue_car.png
rename to public/images/emoji/blue_car.png
diff --git a/assets/images/emoji/blue_heart.png b/public/images/emoji/blue_heart.png
similarity index 100%
rename from assets/images/emoji/blue_heart.png
rename to public/images/emoji/blue_heart.png
diff --git a/assets/images/emoji/blush.png b/public/images/emoji/blush.png
similarity index 100%
rename from assets/images/emoji/blush.png
rename to public/images/emoji/blush.png
diff --git a/assets/images/emoji/boar.png b/public/images/emoji/boar.png
similarity index 100%
rename from assets/images/emoji/boar.png
rename to public/images/emoji/boar.png
diff --git a/assets/images/emoji/boat.png b/public/images/emoji/boat.png
similarity index 100%
rename from assets/images/emoji/boat.png
rename to public/images/emoji/boat.png
diff --git a/assets/images/emoji/bomb.png b/public/images/emoji/bomb.png
similarity index 100%
rename from assets/images/emoji/bomb.png
rename to public/images/emoji/bomb.png
diff --git a/assets/images/emoji/book.png b/public/images/emoji/book.png
similarity index 100%
rename from assets/images/emoji/book.png
rename to public/images/emoji/book.png
diff --git a/assets/images/emoji/bookmark.png b/public/images/emoji/bookmark.png
similarity index 100%
rename from assets/images/emoji/bookmark.png
rename to public/images/emoji/bookmark.png
diff --git a/assets/images/emoji/bookmark_tabs.png b/public/images/emoji/bookmark_tabs.png
similarity index 100%
rename from assets/images/emoji/bookmark_tabs.png
rename to public/images/emoji/bookmark_tabs.png
diff --git a/assets/images/emoji/books.png b/public/images/emoji/books.png
similarity index 100%
rename from assets/images/emoji/books.png
rename to public/images/emoji/books.png
diff --git a/assets/images/emoji/boom.png b/public/images/emoji/boom.png
similarity index 100%
rename from assets/images/emoji/boom.png
rename to public/images/emoji/boom.png
diff --git a/assets/images/emoji/boot.png b/public/images/emoji/boot.png
similarity index 100%
rename from assets/images/emoji/boot.png
rename to public/images/emoji/boot.png
diff --git a/assets/images/emoji/bouquet.png b/public/images/emoji/bouquet.png
similarity index 100%
rename from assets/images/emoji/bouquet.png
rename to public/images/emoji/bouquet.png
diff --git a/assets/images/emoji/bow.png b/public/images/emoji/bow.png
similarity index 100%
rename from assets/images/emoji/bow.png
rename to public/images/emoji/bow.png
diff --git a/assets/images/emoji/bowling.png b/public/images/emoji/bowling.png
similarity index 100%
rename from assets/images/emoji/bowling.png
rename to public/images/emoji/bowling.png
diff --git a/assets/images/emoji/bowtie.png b/public/images/emoji/bowtie.png
similarity index 100%
rename from assets/images/emoji/bowtie.png
rename to public/images/emoji/bowtie.png
diff --git a/assets/images/emoji/boy.png b/public/images/emoji/boy.png
similarity index 100%
rename from assets/images/emoji/boy.png
rename to public/images/emoji/boy.png
diff --git a/assets/images/emoji/bread.png b/public/images/emoji/bread.png
similarity index 100%
rename from assets/images/emoji/bread.png
rename to public/images/emoji/bread.png
diff --git a/assets/images/emoji/bride_with_veil.png b/public/images/emoji/bride_with_veil.png
similarity index 100%
rename from assets/images/emoji/bride_with_veil.png
rename to public/images/emoji/bride_with_veil.png
diff --git a/assets/images/emoji/bridge_at_night.png b/public/images/emoji/bridge_at_night.png
similarity index 100%
rename from assets/images/emoji/bridge_at_night.png
rename to public/images/emoji/bridge_at_night.png
diff --git a/assets/images/emoji/briefcase.png b/public/images/emoji/briefcase.png
similarity index 100%
rename from assets/images/emoji/briefcase.png
rename to public/images/emoji/briefcase.png
diff --git a/assets/images/emoji/broken_heart.png b/public/images/emoji/broken_heart.png
similarity index 100%
rename from assets/images/emoji/broken_heart.png
rename to public/images/emoji/broken_heart.png
diff --git a/assets/images/emoji/bug.png b/public/images/emoji/bug.png
similarity index 100%
rename from assets/images/emoji/bug.png
rename to public/images/emoji/bug.png
diff --git a/assets/images/emoji/bulb.png b/public/images/emoji/bulb.png
similarity index 100%
rename from assets/images/emoji/bulb.png
rename to public/images/emoji/bulb.png
diff --git a/assets/images/emoji/bullettrain_front.png b/public/images/emoji/bullettrain_front.png
similarity index 100%
rename from assets/images/emoji/bullettrain_front.png
rename to public/images/emoji/bullettrain_front.png
diff --git a/assets/images/emoji/bullettrain_side.png b/public/images/emoji/bullettrain_side.png
similarity index 100%
rename from assets/images/emoji/bullettrain_side.png
rename to public/images/emoji/bullettrain_side.png
diff --git a/assets/images/emoji/bus.png b/public/images/emoji/bus.png
similarity index 100%
rename from assets/images/emoji/bus.png
rename to public/images/emoji/bus.png
diff --git a/assets/images/emoji/busstop.png b/public/images/emoji/busstop.png
similarity index 100%
rename from assets/images/emoji/busstop.png
rename to public/images/emoji/busstop.png
diff --git a/assets/images/emoji/bust_in_silhouette.png b/public/images/emoji/bust_in_silhouette.png
similarity index 100%
rename from assets/images/emoji/bust_in_silhouette.png
rename to public/images/emoji/bust_in_silhouette.png
diff --git a/assets/images/emoji/busts_in_silhouette.png b/public/images/emoji/busts_in_silhouette.png
similarity index 100%
rename from assets/images/emoji/busts_in_silhouette.png
rename to public/images/emoji/busts_in_silhouette.png
diff --git a/assets/images/emoji/cactus.png b/public/images/emoji/cactus.png
similarity index 100%
rename from assets/images/emoji/cactus.png
rename to public/images/emoji/cactus.png
diff --git a/assets/images/emoji/cake.png b/public/images/emoji/cake.png
similarity index 100%
rename from assets/images/emoji/cake.png
rename to public/images/emoji/cake.png
diff --git a/assets/images/emoji/calendar.png b/public/images/emoji/calendar.png
similarity index 100%
rename from assets/images/emoji/calendar.png
rename to public/images/emoji/calendar.png
diff --git a/assets/images/emoji/calling.png b/public/images/emoji/calling.png
similarity index 100%
rename from assets/images/emoji/calling.png
rename to public/images/emoji/calling.png
diff --git a/assets/images/emoji/camel.png b/public/images/emoji/camel.png
similarity index 100%
rename from assets/images/emoji/camel.png
rename to public/images/emoji/camel.png
diff --git a/assets/images/emoji/camera.png b/public/images/emoji/camera.png
similarity index 100%
rename from assets/images/emoji/camera.png
rename to public/images/emoji/camera.png
diff --git a/assets/images/emoji/cancer.png b/public/images/emoji/cancer.png
similarity index 100%
rename from assets/images/emoji/cancer.png
rename to public/images/emoji/cancer.png
diff --git a/assets/images/emoji/candy.png b/public/images/emoji/candy.png
similarity index 100%
rename from assets/images/emoji/candy.png
rename to public/images/emoji/candy.png
diff --git a/assets/images/emoji/capital_abcd.png b/public/images/emoji/capital_abcd.png
similarity index 100%
rename from assets/images/emoji/capital_abcd.png
rename to public/images/emoji/capital_abcd.png
diff --git a/assets/images/emoji/capricorn.png b/public/images/emoji/capricorn.png
similarity index 100%
rename from assets/images/emoji/capricorn.png
rename to public/images/emoji/capricorn.png
diff --git a/assets/images/emoji/car.png b/public/images/emoji/car.png
similarity index 100%
rename from assets/images/emoji/car.png
rename to public/images/emoji/car.png
diff --git a/assets/images/emoji/card_index.png b/public/images/emoji/card_index.png
similarity index 100%
rename from assets/images/emoji/card_index.png
rename to public/images/emoji/card_index.png
diff --git a/assets/images/emoji/carousel_horse.png b/public/images/emoji/carousel_horse.png
similarity index 100%
rename from assets/images/emoji/carousel_horse.png
rename to public/images/emoji/carousel_horse.png
diff --git a/assets/images/emoji/cat.png b/public/images/emoji/cat.png
similarity index 100%
rename from assets/images/emoji/cat.png
rename to public/images/emoji/cat.png
diff --git a/assets/images/emoji/cat2.png b/public/images/emoji/cat2.png
similarity index 100%
rename from assets/images/emoji/cat2.png
rename to public/images/emoji/cat2.png
diff --git a/assets/images/emoji/cd.png b/public/images/emoji/cd.png
similarity index 100%
rename from assets/images/emoji/cd.png
rename to public/images/emoji/cd.png
diff --git a/assets/images/emoji/chart.png b/public/images/emoji/chart.png
similarity index 100%
rename from assets/images/emoji/chart.png
rename to public/images/emoji/chart.png
diff --git a/assets/images/emoji/chart_with_downwards_trend.png b/public/images/emoji/chart_with_downwards_trend.png
similarity index 100%
rename from assets/images/emoji/chart_with_downwards_trend.png
rename to public/images/emoji/chart_with_downwards_trend.png
diff --git a/assets/images/emoji/chart_with_upwards_trend.png b/public/images/emoji/chart_with_upwards_trend.png
similarity index 100%
rename from assets/images/emoji/chart_with_upwards_trend.png
rename to public/images/emoji/chart_with_upwards_trend.png
diff --git a/assets/images/emoji/checkered_flag.png b/public/images/emoji/checkered_flag.png
similarity index 100%
rename from assets/images/emoji/checkered_flag.png
rename to public/images/emoji/checkered_flag.png
diff --git a/assets/images/emoji/cherries.png b/public/images/emoji/cherries.png
similarity index 100%
rename from assets/images/emoji/cherries.png
rename to public/images/emoji/cherries.png
diff --git a/assets/images/emoji/cherry_blossom.png b/public/images/emoji/cherry_blossom.png
similarity index 100%
rename from assets/images/emoji/cherry_blossom.png
rename to public/images/emoji/cherry_blossom.png
diff --git a/assets/images/emoji/chestnut.png b/public/images/emoji/chestnut.png
similarity index 100%
rename from assets/images/emoji/chestnut.png
rename to public/images/emoji/chestnut.png
diff --git a/assets/images/emoji/chicken.png b/public/images/emoji/chicken.png
similarity index 100%
rename from assets/images/emoji/chicken.png
rename to public/images/emoji/chicken.png
diff --git a/assets/images/emoji/children_crossing.png b/public/images/emoji/children_crossing.png
similarity index 100%
rename from assets/images/emoji/children_crossing.png
rename to public/images/emoji/children_crossing.png
diff --git a/assets/images/emoji/chocolate_bar.png b/public/images/emoji/chocolate_bar.png
similarity index 100%
rename from assets/images/emoji/chocolate_bar.png
rename to public/images/emoji/chocolate_bar.png
diff --git a/assets/images/emoji/christmas_tree.png b/public/images/emoji/christmas_tree.png
similarity index 100%
rename from assets/images/emoji/christmas_tree.png
rename to public/images/emoji/christmas_tree.png
diff --git a/assets/images/emoji/church.png b/public/images/emoji/church.png
similarity index 100%
rename from assets/images/emoji/church.png
rename to public/images/emoji/church.png
diff --git a/assets/images/emoji/cinema.png b/public/images/emoji/cinema.png
similarity index 100%
rename from assets/images/emoji/cinema.png
rename to public/images/emoji/cinema.png
diff --git a/assets/images/emoji/circus_tent.png b/public/images/emoji/circus_tent.png
similarity index 100%
rename from assets/images/emoji/circus_tent.png
rename to public/images/emoji/circus_tent.png
diff --git a/assets/images/emoji/city_sunrise.png b/public/images/emoji/city_sunrise.png
similarity index 100%
rename from assets/images/emoji/city_sunrise.png
rename to public/images/emoji/city_sunrise.png
diff --git a/assets/images/emoji/city_sunset.png b/public/images/emoji/city_sunset.png
similarity index 100%
rename from assets/images/emoji/city_sunset.png
rename to public/images/emoji/city_sunset.png
diff --git a/assets/images/emoji/cl.png b/public/images/emoji/cl.png
similarity index 100%
rename from assets/images/emoji/cl.png
rename to public/images/emoji/cl.png
diff --git a/assets/images/emoji/clap.png b/public/images/emoji/clap.png
similarity index 100%
rename from assets/images/emoji/clap.png
rename to public/images/emoji/clap.png
diff --git a/assets/images/emoji/clapper.png b/public/images/emoji/clapper.png
similarity index 100%
rename from assets/images/emoji/clapper.png
rename to public/images/emoji/clapper.png
diff --git a/assets/images/emoji/clipboard.png b/public/images/emoji/clipboard.png
similarity index 100%
rename from assets/images/emoji/clipboard.png
rename to public/images/emoji/clipboard.png
diff --git a/assets/images/emoji/clock1.png b/public/images/emoji/clock1.png
similarity index 100%
rename from assets/images/emoji/clock1.png
rename to public/images/emoji/clock1.png
diff --git a/assets/images/emoji/clock10.png b/public/images/emoji/clock10.png
similarity index 100%
rename from assets/images/emoji/clock10.png
rename to public/images/emoji/clock10.png
diff --git a/assets/images/emoji/clock1030.png b/public/images/emoji/clock1030.png
similarity index 100%
rename from assets/images/emoji/clock1030.png
rename to public/images/emoji/clock1030.png
diff --git a/assets/images/emoji/clock11.png b/public/images/emoji/clock11.png
similarity index 100%
rename from assets/images/emoji/clock11.png
rename to public/images/emoji/clock11.png
diff --git a/assets/images/emoji/clock1130.png b/public/images/emoji/clock1130.png
similarity index 100%
rename from assets/images/emoji/clock1130.png
rename to public/images/emoji/clock1130.png
diff --git a/assets/images/emoji/clock12.png b/public/images/emoji/clock12.png
similarity index 100%
rename from assets/images/emoji/clock12.png
rename to public/images/emoji/clock12.png
diff --git a/assets/images/emoji/clock1230.png b/public/images/emoji/clock1230.png
similarity index 100%
rename from assets/images/emoji/clock1230.png
rename to public/images/emoji/clock1230.png
diff --git a/assets/images/emoji/clock130.png b/public/images/emoji/clock130.png
similarity index 100%
rename from assets/images/emoji/clock130.png
rename to public/images/emoji/clock130.png
diff --git a/assets/images/emoji/clock2.png b/public/images/emoji/clock2.png
similarity index 100%
rename from assets/images/emoji/clock2.png
rename to public/images/emoji/clock2.png
diff --git a/assets/images/emoji/clock230.png b/public/images/emoji/clock230.png
similarity index 100%
rename from assets/images/emoji/clock230.png
rename to public/images/emoji/clock230.png
diff --git a/assets/images/emoji/clock3.png b/public/images/emoji/clock3.png
similarity index 100%
rename from assets/images/emoji/clock3.png
rename to public/images/emoji/clock3.png
diff --git a/assets/images/emoji/clock330.png b/public/images/emoji/clock330.png
similarity index 100%
rename from assets/images/emoji/clock330.png
rename to public/images/emoji/clock330.png
diff --git a/assets/images/emoji/clock4.png b/public/images/emoji/clock4.png
similarity index 100%
rename from assets/images/emoji/clock4.png
rename to public/images/emoji/clock4.png
diff --git a/assets/images/emoji/clock430.png b/public/images/emoji/clock430.png
similarity index 100%
rename from assets/images/emoji/clock430.png
rename to public/images/emoji/clock430.png
diff --git a/assets/images/emoji/clock5.png b/public/images/emoji/clock5.png
similarity index 100%
rename from assets/images/emoji/clock5.png
rename to public/images/emoji/clock5.png
diff --git a/assets/images/emoji/clock530.png b/public/images/emoji/clock530.png
similarity index 100%
rename from assets/images/emoji/clock530.png
rename to public/images/emoji/clock530.png
diff --git a/assets/images/emoji/clock6.png b/public/images/emoji/clock6.png
similarity index 100%
rename from assets/images/emoji/clock6.png
rename to public/images/emoji/clock6.png
diff --git a/assets/images/emoji/clock630.png b/public/images/emoji/clock630.png
similarity index 100%
rename from assets/images/emoji/clock630.png
rename to public/images/emoji/clock630.png
diff --git a/assets/images/emoji/clock7.png b/public/images/emoji/clock7.png
similarity index 100%
rename from assets/images/emoji/clock7.png
rename to public/images/emoji/clock7.png
diff --git a/assets/images/emoji/clock730.png b/public/images/emoji/clock730.png
similarity index 100%
rename from assets/images/emoji/clock730.png
rename to public/images/emoji/clock730.png
diff --git a/assets/images/emoji/clock8.png b/public/images/emoji/clock8.png
similarity index 100%
rename from assets/images/emoji/clock8.png
rename to public/images/emoji/clock8.png
diff --git a/assets/images/emoji/clock830.png b/public/images/emoji/clock830.png
similarity index 100%
rename from assets/images/emoji/clock830.png
rename to public/images/emoji/clock830.png
diff --git a/assets/images/emoji/clock9.png b/public/images/emoji/clock9.png
similarity index 100%
rename from assets/images/emoji/clock9.png
rename to public/images/emoji/clock9.png
diff --git a/assets/images/emoji/clock930.png b/public/images/emoji/clock930.png
similarity index 100%
rename from assets/images/emoji/clock930.png
rename to public/images/emoji/clock930.png
diff --git a/assets/images/emoji/closed_book.png b/public/images/emoji/closed_book.png
similarity index 100%
rename from assets/images/emoji/closed_book.png
rename to public/images/emoji/closed_book.png
diff --git a/assets/images/emoji/closed_lock_with_key.png b/public/images/emoji/closed_lock_with_key.png
similarity index 100%
rename from assets/images/emoji/closed_lock_with_key.png
rename to public/images/emoji/closed_lock_with_key.png
diff --git a/assets/images/emoji/closed_umbrella.png b/public/images/emoji/closed_umbrella.png
similarity index 100%
rename from assets/images/emoji/closed_umbrella.png
rename to public/images/emoji/closed_umbrella.png
diff --git a/assets/images/emoji/cloud.png b/public/images/emoji/cloud.png
similarity index 100%
rename from assets/images/emoji/cloud.png
rename to public/images/emoji/cloud.png
diff --git a/assets/images/emoji/clubs.png b/public/images/emoji/clubs.png
similarity index 100%
rename from assets/images/emoji/clubs.png
rename to public/images/emoji/clubs.png
diff --git a/assets/images/emoji/cn.png b/public/images/emoji/cn.png
similarity index 100%
rename from assets/images/emoji/cn.png
rename to public/images/emoji/cn.png
diff --git a/assets/images/emoji/cocktail.png b/public/images/emoji/cocktail.png
similarity index 100%
rename from assets/images/emoji/cocktail.png
rename to public/images/emoji/cocktail.png
diff --git a/assets/images/emoji/coffee.png b/public/images/emoji/coffee.png
similarity index 100%
rename from assets/images/emoji/coffee.png
rename to public/images/emoji/coffee.png
diff --git a/assets/images/emoji/cold_sweat.png b/public/images/emoji/cold_sweat.png
similarity index 100%
rename from assets/images/emoji/cold_sweat.png
rename to public/images/emoji/cold_sweat.png
diff --git a/assets/images/emoji/collision.png b/public/images/emoji/collision.png
similarity index 100%
rename from assets/images/emoji/collision.png
rename to public/images/emoji/collision.png
diff --git a/assets/images/emoji/computer.png b/public/images/emoji/computer.png
similarity index 100%
rename from assets/images/emoji/computer.png
rename to public/images/emoji/computer.png
diff --git a/assets/images/emoji/confetti_ball.png b/public/images/emoji/confetti_ball.png
similarity index 100%
rename from assets/images/emoji/confetti_ball.png
rename to public/images/emoji/confetti_ball.png
diff --git a/assets/images/emoji/confounded.png b/public/images/emoji/confounded.png
similarity index 100%
rename from assets/images/emoji/confounded.png
rename to public/images/emoji/confounded.png
diff --git a/assets/images/emoji/confused.png b/public/images/emoji/confused.png
similarity index 100%
rename from assets/images/emoji/confused.png
rename to public/images/emoji/confused.png
diff --git a/assets/images/emoji/congratulations.png b/public/images/emoji/congratulations.png
similarity index 100%
rename from assets/images/emoji/congratulations.png
rename to public/images/emoji/congratulations.png
diff --git a/assets/images/emoji/construction.png b/public/images/emoji/construction.png
similarity index 100%
rename from assets/images/emoji/construction.png
rename to public/images/emoji/construction.png
diff --git a/assets/images/emoji/construction_worker.png b/public/images/emoji/construction_worker.png
similarity index 100%
rename from assets/images/emoji/construction_worker.png
rename to public/images/emoji/construction_worker.png
diff --git a/assets/images/emoji/convenience_store.png b/public/images/emoji/convenience_store.png
similarity index 100%
rename from assets/images/emoji/convenience_store.png
rename to public/images/emoji/convenience_store.png
diff --git a/assets/images/emoji/cookie.png b/public/images/emoji/cookie.png
similarity index 100%
rename from assets/images/emoji/cookie.png
rename to public/images/emoji/cookie.png
diff --git a/assets/images/emoji/cool.png b/public/images/emoji/cool.png
similarity index 100%
rename from assets/images/emoji/cool.png
rename to public/images/emoji/cool.png
diff --git a/assets/images/emoji/cop.png b/public/images/emoji/cop.png
similarity index 100%
rename from assets/images/emoji/cop.png
rename to public/images/emoji/cop.png
diff --git a/assets/images/emoji/copyright.png b/public/images/emoji/copyright.png
similarity index 100%
rename from assets/images/emoji/copyright.png
rename to public/images/emoji/copyright.png
diff --git a/assets/images/emoji/corn.png b/public/images/emoji/corn.png
similarity index 100%
rename from assets/images/emoji/corn.png
rename to public/images/emoji/corn.png
diff --git a/assets/images/emoji/couple.png b/public/images/emoji/couple.png
similarity index 100%
rename from assets/images/emoji/couple.png
rename to public/images/emoji/couple.png
diff --git a/assets/images/emoji/couple_with_heart.png b/public/images/emoji/couple_with_heart.png
similarity index 100%
rename from assets/images/emoji/couple_with_heart.png
rename to public/images/emoji/couple_with_heart.png
diff --git a/assets/images/emoji/couplekiss.png b/public/images/emoji/couplekiss.png
similarity index 100%
rename from assets/images/emoji/couplekiss.png
rename to public/images/emoji/couplekiss.png
diff --git a/assets/images/emoji/cow.png b/public/images/emoji/cow.png
similarity index 100%
rename from assets/images/emoji/cow.png
rename to public/images/emoji/cow.png
diff --git a/assets/images/emoji/cow2.png b/public/images/emoji/cow2.png
similarity index 100%
rename from assets/images/emoji/cow2.png
rename to public/images/emoji/cow2.png
diff --git a/assets/images/emoji/credit_card.png b/public/images/emoji/credit_card.png
similarity index 100%
rename from assets/images/emoji/credit_card.png
rename to public/images/emoji/credit_card.png
diff --git a/assets/images/emoji/crocodile.png b/public/images/emoji/crocodile.png
similarity index 100%
rename from assets/images/emoji/crocodile.png
rename to public/images/emoji/crocodile.png
diff --git a/assets/images/emoji/crossed_flags.png b/public/images/emoji/crossed_flags.png
similarity index 100%
rename from assets/images/emoji/crossed_flags.png
rename to public/images/emoji/crossed_flags.png
diff --git a/assets/images/emoji/crown.png b/public/images/emoji/crown.png
similarity index 100%
rename from assets/images/emoji/crown.png
rename to public/images/emoji/crown.png
diff --git a/assets/images/emoji/cry.png b/public/images/emoji/cry.png
similarity index 100%
rename from assets/images/emoji/cry.png
rename to public/images/emoji/cry.png
diff --git a/assets/images/emoji/crying_cat_face.png b/public/images/emoji/crying_cat_face.png
similarity index 100%
rename from assets/images/emoji/crying_cat_face.png
rename to public/images/emoji/crying_cat_face.png
diff --git a/assets/images/emoji/crystal_ball.png b/public/images/emoji/crystal_ball.png
similarity index 100%
rename from assets/images/emoji/crystal_ball.png
rename to public/images/emoji/crystal_ball.png
diff --git a/assets/images/emoji/cupid.png b/public/images/emoji/cupid.png
similarity index 100%
rename from assets/images/emoji/cupid.png
rename to public/images/emoji/cupid.png
diff --git a/assets/images/emoji/curly_loop.png b/public/images/emoji/curly_loop.png
similarity index 100%
rename from assets/images/emoji/curly_loop.png
rename to public/images/emoji/curly_loop.png
diff --git a/assets/images/emoji/currency_exchange.png b/public/images/emoji/currency_exchange.png
similarity index 100%
rename from assets/images/emoji/currency_exchange.png
rename to public/images/emoji/currency_exchange.png
diff --git a/assets/images/emoji/curry.png b/public/images/emoji/curry.png
similarity index 100%
rename from assets/images/emoji/curry.png
rename to public/images/emoji/curry.png
diff --git a/assets/images/emoji/custard.png b/public/images/emoji/custard.png
similarity index 100%
rename from assets/images/emoji/custard.png
rename to public/images/emoji/custard.png
diff --git a/assets/images/emoji/customs.png b/public/images/emoji/customs.png
similarity index 100%
rename from assets/images/emoji/customs.png
rename to public/images/emoji/customs.png
diff --git a/assets/images/emoji/cyclone.png b/public/images/emoji/cyclone.png
similarity index 100%
rename from assets/images/emoji/cyclone.png
rename to public/images/emoji/cyclone.png
diff --git a/assets/images/emoji/dancer.png b/public/images/emoji/dancer.png
similarity index 100%
rename from assets/images/emoji/dancer.png
rename to public/images/emoji/dancer.png
diff --git a/assets/images/emoji/dancers.png b/public/images/emoji/dancers.png
similarity index 100%
rename from assets/images/emoji/dancers.png
rename to public/images/emoji/dancers.png
diff --git a/assets/images/emoji/dango.png b/public/images/emoji/dango.png
similarity index 100%
rename from assets/images/emoji/dango.png
rename to public/images/emoji/dango.png
diff --git a/assets/images/emoji/dart.png b/public/images/emoji/dart.png
similarity index 100%
rename from assets/images/emoji/dart.png
rename to public/images/emoji/dart.png
diff --git a/assets/images/emoji/dash.png b/public/images/emoji/dash.png
similarity index 100%
rename from assets/images/emoji/dash.png
rename to public/images/emoji/dash.png
diff --git a/assets/images/emoji/date.png b/public/images/emoji/date.png
similarity index 100%
rename from assets/images/emoji/date.png
rename to public/images/emoji/date.png
diff --git a/assets/images/emoji/de.png b/public/images/emoji/de.png
similarity index 100%
rename from assets/images/emoji/de.png
rename to public/images/emoji/de.png
diff --git a/assets/images/emoji/deciduous_tree.png b/public/images/emoji/deciduous_tree.png
similarity index 100%
rename from assets/images/emoji/deciduous_tree.png
rename to public/images/emoji/deciduous_tree.png
diff --git a/assets/images/emoji/department_store.png b/public/images/emoji/department_store.png
similarity index 100%
rename from assets/images/emoji/department_store.png
rename to public/images/emoji/department_store.png
diff --git a/assets/images/emoji/diamond_shape_with_a_dot_inside.png b/public/images/emoji/diamond_shape_with_a_dot_inside.png
similarity index 100%
rename from assets/images/emoji/diamond_shape_with_a_dot_inside.png
rename to public/images/emoji/diamond_shape_with_a_dot_inside.png
diff --git a/assets/images/emoji/diamonds.png b/public/images/emoji/diamonds.png
similarity index 100%
rename from assets/images/emoji/diamonds.png
rename to public/images/emoji/diamonds.png
diff --git a/assets/images/emoji/disappointed.png b/public/images/emoji/disappointed.png
similarity index 100%
rename from assets/images/emoji/disappointed.png
rename to public/images/emoji/disappointed.png
diff --git a/assets/images/emoji/disappointed_relieved.png b/public/images/emoji/disappointed_relieved.png
similarity index 100%
rename from assets/images/emoji/disappointed_relieved.png
rename to public/images/emoji/disappointed_relieved.png
diff --git a/assets/images/emoji/dizzy.png b/public/images/emoji/dizzy.png
similarity index 100%
rename from assets/images/emoji/dizzy.png
rename to public/images/emoji/dizzy.png
diff --git a/assets/images/emoji/dizzy_face.png b/public/images/emoji/dizzy_face.png
similarity index 100%
rename from assets/images/emoji/dizzy_face.png
rename to public/images/emoji/dizzy_face.png
diff --git a/assets/images/emoji/do_not_litter.png b/public/images/emoji/do_not_litter.png
similarity index 100%
rename from assets/images/emoji/do_not_litter.png
rename to public/images/emoji/do_not_litter.png
diff --git a/assets/images/emoji/dog.png b/public/images/emoji/dog.png
similarity index 100%
rename from assets/images/emoji/dog.png
rename to public/images/emoji/dog.png
diff --git a/assets/images/emoji/dog2.png b/public/images/emoji/dog2.png
similarity index 100%
rename from assets/images/emoji/dog2.png
rename to public/images/emoji/dog2.png
diff --git a/assets/images/emoji/dollar.png b/public/images/emoji/dollar.png
similarity index 100%
rename from assets/images/emoji/dollar.png
rename to public/images/emoji/dollar.png
diff --git a/assets/images/emoji/dolls.png b/public/images/emoji/dolls.png
similarity index 100%
rename from assets/images/emoji/dolls.png
rename to public/images/emoji/dolls.png
diff --git a/assets/images/emoji/dolphin.png b/public/images/emoji/dolphin.png
similarity index 100%
rename from assets/images/emoji/dolphin.png
rename to public/images/emoji/dolphin.png
diff --git a/assets/images/emoji/donut.png b/public/images/emoji/donut.png
similarity index 100%
rename from assets/images/emoji/donut.png
rename to public/images/emoji/donut.png
diff --git a/assets/images/emoji/door.png b/public/images/emoji/door.png
similarity index 100%
rename from assets/images/emoji/door.png
rename to public/images/emoji/door.png
diff --git a/assets/images/emoji/doughnut.png b/public/images/emoji/doughnut.png
similarity index 100%
rename from assets/images/emoji/doughnut.png
rename to public/images/emoji/doughnut.png
diff --git a/assets/images/emoji/dragon.png b/public/images/emoji/dragon.png
similarity index 100%
rename from assets/images/emoji/dragon.png
rename to public/images/emoji/dragon.png
diff --git a/assets/images/emoji/dragon_face.png b/public/images/emoji/dragon_face.png
similarity index 100%
rename from assets/images/emoji/dragon_face.png
rename to public/images/emoji/dragon_face.png
diff --git a/assets/images/emoji/dress.png b/public/images/emoji/dress.png
similarity index 100%
rename from assets/images/emoji/dress.png
rename to public/images/emoji/dress.png
diff --git a/assets/images/emoji/dromedary_camel.png b/public/images/emoji/dromedary_camel.png
similarity index 100%
rename from assets/images/emoji/dromedary_camel.png
rename to public/images/emoji/dromedary_camel.png
diff --git a/assets/images/emoji/droplet.png b/public/images/emoji/droplet.png
similarity index 100%
rename from assets/images/emoji/droplet.png
rename to public/images/emoji/droplet.png
diff --git a/assets/images/emoji/dvd.png b/public/images/emoji/dvd.png
similarity index 100%
rename from assets/images/emoji/dvd.png
rename to public/images/emoji/dvd.png
diff --git a/assets/images/emoji/e-mail.png b/public/images/emoji/e-mail.png
similarity index 100%
rename from assets/images/emoji/e-mail.png
rename to public/images/emoji/e-mail.png
diff --git a/assets/images/emoji/ear.png b/public/images/emoji/ear.png
similarity index 100%
rename from assets/images/emoji/ear.png
rename to public/images/emoji/ear.png
diff --git a/assets/images/emoji/ear_of_rice.png b/public/images/emoji/ear_of_rice.png
similarity index 100%
rename from assets/images/emoji/ear_of_rice.png
rename to public/images/emoji/ear_of_rice.png
diff --git a/assets/images/emoji/earth_africa.png b/public/images/emoji/earth_africa.png
similarity index 100%
rename from assets/images/emoji/earth_africa.png
rename to public/images/emoji/earth_africa.png
diff --git a/assets/images/emoji/earth_americas.png b/public/images/emoji/earth_americas.png
similarity index 100%
rename from assets/images/emoji/earth_americas.png
rename to public/images/emoji/earth_americas.png
diff --git a/assets/images/emoji/earth_asia.png b/public/images/emoji/earth_asia.png
similarity index 100%
rename from assets/images/emoji/earth_asia.png
rename to public/images/emoji/earth_asia.png
diff --git a/assets/images/emoji/egg.png b/public/images/emoji/egg.png
similarity index 100%
rename from assets/images/emoji/egg.png
rename to public/images/emoji/egg.png
diff --git a/assets/images/emoji/eggplant.png b/public/images/emoji/eggplant.png
similarity index 100%
rename from assets/images/emoji/eggplant.png
rename to public/images/emoji/eggplant.png
diff --git a/assets/images/emoji/eight.png b/public/images/emoji/eight.png
similarity index 100%
rename from assets/images/emoji/eight.png
rename to public/images/emoji/eight.png
diff --git a/assets/images/emoji/eight_pointed_black_star.png b/public/images/emoji/eight_pointed_black_star.png
similarity index 100%
rename from assets/images/emoji/eight_pointed_black_star.png
rename to public/images/emoji/eight_pointed_black_star.png
diff --git a/assets/images/emoji/eight_spoked_asterisk.png b/public/images/emoji/eight_spoked_asterisk.png
similarity index 100%
rename from assets/images/emoji/eight_spoked_asterisk.png
rename to public/images/emoji/eight_spoked_asterisk.png
diff --git a/assets/images/emoji/electric_plug.png b/public/images/emoji/electric_plug.png
similarity index 100%
rename from assets/images/emoji/electric_plug.png
rename to public/images/emoji/electric_plug.png
diff --git a/assets/images/emoji/elephant.png b/public/images/emoji/elephant.png
similarity index 100%
rename from assets/images/emoji/elephant.png
rename to public/images/emoji/elephant.png
diff --git a/assets/images/emoji/email.png b/public/images/emoji/email.png
similarity index 100%
rename from assets/images/emoji/email.png
rename to public/images/emoji/email.png
diff --git a/assets/images/emoji/end.png b/public/images/emoji/end.png
similarity index 100%
rename from assets/images/emoji/end.png
rename to public/images/emoji/end.png
diff --git a/assets/images/emoji/envelope.png b/public/images/emoji/envelope.png
similarity index 100%
rename from assets/images/emoji/envelope.png
rename to public/images/emoji/envelope.png
diff --git a/assets/images/emoji/es.png b/public/images/emoji/es.png
similarity index 100%
rename from assets/images/emoji/es.png
rename to public/images/emoji/es.png
diff --git a/assets/images/emoji/euro.png b/public/images/emoji/euro.png
similarity index 100%
rename from assets/images/emoji/euro.png
rename to public/images/emoji/euro.png
diff --git a/assets/images/emoji/european_castle.png b/public/images/emoji/european_castle.png
similarity index 100%
rename from assets/images/emoji/european_castle.png
rename to public/images/emoji/european_castle.png
diff --git a/assets/images/emoji/european_post_office.png b/public/images/emoji/european_post_office.png
similarity index 100%
rename from assets/images/emoji/european_post_office.png
rename to public/images/emoji/european_post_office.png
diff --git a/assets/images/emoji/evergreen_tree.png b/public/images/emoji/evergreen_tree.png
similarity index 100%
rename from assets/images/emoji/evergreen_tree.png
rename to public/images/emoji/evergreen_tree.png
diff --git a/assets/images/emoji/exclamation.png b/public/images/emoji/exclamation.png
similarity index 100%
rename from assets/images/emoji/exclamation.png
rename to public/images/emoji/exclamation.png
diff --git a/assets/images/emoji/expressionless.png b/public/images/emoji/expressionless.png
similarity index 100%
rename from assets/images/emoji/expressionless.png
rename to public/images/emoji/expressionless.png
diff --git a/assets/images/emoji/eyeglasses.png b/public/images/emoji/eyeglasses.png
similarity index 100%
rename from assets/images/emoji/eyeglasses.png
rename to public/images/emoji/eyeglasses.png
diff --git a/assets/images/emoji/eyes.png b/public/images/emoji/eyes.png
similarity index 100%
rename from assets/images/emoji/eyes.png
rename to public/images/emoji/eyes.png
diff --git a/assets/images/emoji/facepunch.png b/public/images/emoji/facepunch.png
similarity index 100%
rename from assets/images/emoji/facepunch.png
rename to public/images/emoji/facepunch.png
diff --git a/assets/images/emoji/factory.png b/public/images/emoji/factory.png
similarity index 100%
rename from assets/images/emoji/factory.png
rename to public/images/emoji/factory.png
diff --git a/assets/images/emoji/fallen_leaf.png b/public/images/emoji/fallen_leaf.png
similarity index 100%
rename from assets/images/emoji/fallen_leaf.png
rename to public/images/emoji/fallen_leaf.png
diff --git a/assets/images/emoji/family.png b/public/images/emoji/family.png
similarity index 100%
rename from assets/images/emoji/family.png
rename to public/images/emoji/family.png
diff --git a/assets/images/emoji/fast_forward.png b/public/images/emoji/fast_forward.png
similarity index 100%
rename from assets/images/emoji/fast_forward.png
rename to public/images/emoji/fast_forward.png
diff --git a/assets/images/emoji/fax.png b/public/images/emoji/fax.png
similarity index 100%
rename from assets/images/emoji/fax.png
rename to public/images/emoji/fax.png
diff --git a/assets/images/emoji/fearful.png b/public/images/emoji/fearful.png
similarity index 100%
rename from assets/images/emoji/fearful.png
rename to public/images/emoji/fearful.png
diff --git a/assets/images/emoji/feelsgood.png b/public/images/emoji/feelsgood.png
similarity index 100%
rename from assets/images/emoji/feelsgood.png
rename to public/images/emoji/feelsgood.png
diff --git a/assets/images/emoji/feet.png b/public/images/emoji/feet.png
similarity index 100%
rename from assets/images/emoji/feet.png
rename to public/images/emoji/feet.png
diff --git a/assets/images/emoji/ferris_wheel.png b/public/images/emoji/ferris_wheel.png
similarity index 100%
rename from assets/images/emoji/ferris_wheel.png
rename to public/images/emoji/ferris_wheel.png
diff --git a/assets/images/emoji/file_folder.png b/public/images/emoji/file_folder.png
similarity index 100%
rename from assets/images/emoji/file_folder.png
rename to public/images/emoji/file_folder.png
diff --git a/assets/images/emoji/finnadie.png b/public/images/emoji/finnadie.png
similarity index 100%
rename from assets/images/emoji/finnadie.png
rename to public/images/emoji/finnadie.png
diff --git a/assets/images/emoji/fire.png b/public/images/emoji/fire.png
similarity index 100%
rename from assets/images/emoji/fire.png
rename to public/images/emoji/fire.png
diff --git a/assets/images/emoji/fire_engine.png b/public/images/emoji/fire_engine.png
similarity index 100%
rename from assets/images/emoji/fire_engine.png
rename to public/images/emoji/fire_engine.png
diff --git a/assets/images/emoji/fireworks.png b/public/images/emoji/fireworks.png
similarity index 100%
rename from assets/images/emoji/fireworks.png
rename to public/images/emoji/fireworks.png
diff --git a/assets/images/emoji/first_quarter_moon.png b/public/images/emoji/first_quarter_moon.png
similarity index 100%
rename from assets/images/emoji/first_quarter_moon.png
rename to public/images/emoji/first_quarter_moon.png
diff --git a/assets/images/emoji/first_quarter_moon_with_face.png b/public/images/emoji/first_quarter_moon_with_face.png
similarity index 100%
rename from assets/images/emoji/first_quarter_moon_with_face.png
rename to public/images/emoji/first_quarter_moon_with_face.png
diff --git a/assets/images/emoji/fish.png b/public/images/emoji/fish.png
similarity index 100%
rename from assets/images/emoji/fish.png
rename to public/images/emoji/fish.png
diff --git a/assets/images/emoji/fish_cake.png b/public/images/emoji/fish_cake.png
similarity index 100%
rename from assets/images/emoji/fish_cake.png
rename to public/images/emoji/fish_cake.png
diff --git a/assets/images/emoji/fishing_pole_and_fish.png b/public/images/emoji/fishing_pole_and_fish.png
similarity index 100%
rename from assets/images/emoji/fishing_pole_and_fish.png
rename to public/images/emoji/fishing_pole_and_fish.png
diff --git a/assets/images/emoji/fist.png b/public/images/emoji/fist.png
similarity index 100%
rename from assets/images/emoji/fist.png
rename to public/images/emoji/fist.png
diff --git a/assets/images/emoji/five.png b/public/images/emoji/five.png
similarity index 100%
rename from assets/images/emoji/five.png
rename to public/images/emoji/five.png
diff --git a/assets/images/emoji/flags.png b/public/images/emoji/flags.png
similarity index 100%
rename from assets/images/emoji/flags.png
rename to public/images/emoji/flags.png
diff --git a/assets/images/emoji/flashlight.png b/public/images/emoji/flashlight.png
similarity index 100%
rename from assets/images/emoji/flashlight.png
rename to public/images/emoji/flashlight.png
diff --git a/assets/images/emoji/floppy_disk.png b/public/images/emoji/floppy_disk.png
similarity index 100%
rename from assets/images/emoji/floppy_disk.png
rename to public/images/emoji/floppy_disk.png
diff --git a/assets/images/emoji/flower_playing_cards.png b/public/images/emoji/flower_playing_cards.png
similarity index 100%
rename from assets/images/emoji/flower_playing_cards.png
rename to public/images/emoji/flower_playing_cards.png
diff --git a/assets/images/emoji/flushed.png b/public/images/emoji/flushed.png
similarity index 100%
rename from assets/images/emoji/flushed.png
rename to public/images/emoji/flushed.png
diff --git a/assets/images/emoji/foggy.png b/public/images/emoji/foggy.png
similarity index 100%
rename from assets/images/emoji/foggy.png
rename to public/images/emoji/foggy.png
diff --git a/assets/images/emoji/football.png b/public/images/emoji/football.png
similarity index 100%
rename from assets/images/emoji/football.png
rename to public/images/emoji/football.png
diff --git a/assets/images/emoji/fork_and_knife.png b/public/images/emoji/fork_and_knife.png
similarity index 100%
rename from assets/images/emoji/fork_and_knife.png
rename to public/images/emoji/fork_and_knife.png
diff --git a/assets/images/emoji/fountain.png b/public/images/emoji/fountain.png
similarity index 100%
rename from assets/images/emoji/fountain.png
rename to public/images/emoji/fountain.png
diff --git a/assets/images/emoji/four.png b/public/images/emoji/four.png
similarity index 100%
rename from assets/images/emoji/four.png
rename to public/images/emoji/four.png
diff --git a/assets/images/emoji/four_leaf_clover.png b/public/images/emoji/four_leaf_clover.png
similarity index 100%
rename from assets/images/emoji/four_leaf_clover.png
rename to public/images/emoji/four_leaf_clover.png
diff --git a/assets/images/emoji/fr.png b/public/images/emoji/fr.png
similarity index 100%
rename from assets/images/emoji/fr.png
rename to public/images/emoji/fr.png
diff --git a/assets/images/emoji/free.png b/public/images/emoji/free.png
similarity index 100%
rename from assets/images/emoji/free.png
rename to public/images/emoji/free.png
diff --git a/assets/images/emoji/fried_shrimp.png b/public/images/emoji/fried_shrimp.png
similarity index 100%
rename from assets/images/emoji/fried_shrimp.png
rename to public/images/emoji/fried_shrimp.png
diff --git a/assets/images/emoji/fries.png b/public/images/emoji/fries.png
similarity index 100%
rename from assets/images/emoji/fries.png
rename to public/images/emoji/fries.png
diff --git a/assets/images/emoji/frog.png b/public/images/emoji/frog.png
similarity index 100%
rename from assets/images/emoji/frog.png
rename to public/images/emoji/frog.png
diff --git a/assets/images/emoji/frowning.png b/public/images/emoji/frowning.png
similarity index 100%
rename from assets/images/emoji/frowning.png
rename to public/images/emoji/frowning.png
diff --git a/assets/images/emoji/fu.png b/public/images/emoji/fu.png
similarity index 100%
rename from assets/images/emoji/fu.png
rename to public/images/emoji/fu.png
diff --git a/assets/images/emoji/fuelpump.png b/public/images/emoji/fuelpump.png
similarity index 100%
rename from assets/images/emoji/fuelpump.png
rename to public/images/emoji/fuelpump.png
diff --git a/assets/images/emoji/full_moon.png b/public/images/emoji/full_moon.png
similarity index 100%
rename from assets/images/emoji/full_moon.png
rename to public/images/emoji/full_moon.png
diff --git a/assets/images/emoji/full_moon_with_face.png b/public/images/emoji/full_moon_with_face.png
similarity index 100%
rename from assets/images/emoji/full_moon_with_face.png
rename to public/images/emoji/full_moon_with_face.png
diff --git a/assets/images/emoji/game_die.png b/public/images/emoji/game_die.png
similarity index 100%
rename from assets/images/emoji/game_die.png
rename to public/images/emoji/game_die.png
diff --git a/assets/images/emoji/gb.png b/public/images/emoji/gb.png
similarity index 100%
rename from assets/images/emoji/gb.png
rename to public/images/emoji/gb.png
diff --git a/assets/images/emoji/gem.png b/public/images/emoji/gem.png
similarity index 100%
rename from assets/images/emoji/gem.png
rename to public/images/emoji/gem.png
diff --git a/assets/images/emoji/gemini.png b/public/images/emoji/gemini.png
similarity index 100%
rename from assets/images/emoji/gemini.png
rename to public/images/emoji/gemini.png
diff --git a/assets/images/emoji/ghost.png b/public/images/emoji/ghost.png
similarity index 100%
rename from assets/images/emoji/ghost.png
rename to public/images/emoji/ghost.png
diff --git a/assets/images/emoji/gift.png b/public/images/emoji/gift.png
similarity index 100%
rename from assets/images/emoji/gift.png
rename to public/images/emoji/gift.png
diff --git a/assets/images/emoji/gift_heart.png b/public/images/emoji/gift_heart.png
similarity index 100%
rename from assets/images/emoji/gift_heart.png
rename to public/images/emoji/gift_heart.png
diff --git a/assets/images/emoji/girl.png b/public/images/emoji/girl.png
similarity index 100%
rename from assets/images/emoji/girl.png
rename to public/images/emoji/girl.png
diff --git a/assets/images/emoji/globe_with_meridians.png b/public/images/emoji/globe_with_meridians.png
similarity index 100%
rename from assets/images/emoji/globe_with_meridians.png
rename to public/images/emoji/globe_with_meridians.png
diff --git a/assets/images/emoji/goat.png b/public/images/emoji/goat.png
similarity index 100%
rename from assets/images/emoji/goat.png
rename to public/images/emoji/goat.png
diff --git a/assets/images/emoji/goberserk.png b/public/images/emoji/goberserk.png
similarity index 100%
rename from assets/images/emoji/goberserk.png
rename to public/images/emoji/goberserk.png
diff --git a/assets/images/emoji/godmode.png b/public/images/emoji/godmode.png
similarity index 100%
rename from assets/images/emoji/godmode.png
rename to public/images/emoji/godmode.png
diff --git a/assets/images/emoji/golf.png b/public/images/emoji/golf.png
similarity index 100%
rename from assets/images/emoji/golf.png
rename to public/images/emoji/golf.png
diff --git a/assets/images/emoji/grapes.png b/public/images/emoji/grapes.png
similarity index 100%
rename from assets/images/emoji/grapes.png
rename to public/images/emoji/grapes.png
diff --git a/assets/images/emoji/green_apple.png b/public/images/emoji/green_apple.png
similarity index 100%
rename from assets/images/emoji/green_apple.png
rename to public/images/emoji/green_apple.png
diff --git a/assets/images/emoji/green_book.png b/public/images/emoji/green_book.png
similarity index 100%
rename from assets/images/emoji/green_book.png
rename to public/images/emoji/green_book.png
diff --git a/assets/images/emoji/green_heart.png b/public/images/emoji/green_heart.png
similarity index 100%
rename from assets/images/emoji/green_heart.png
rename to public/images/emoji/green_heart.png
diff --git a/assets/images/emoji/grey_exclamation.png b/public/images/emoji/grey_exclamation.png
similarity index 100%
rename from assets/images/emoji/grey_exclamation.png
rename to public/images/emoji/grey_exclamation.png
diff --git a/assets/images/emoji/grey_question.png b/public/images/emoji/grey_question.png
similarity index 100%
rename from assets/images/emoji/grey_question.png
rename to public/images/emoji/grey_question.png
diff --git a/assets/images/emoji/grimacing.png b/public/images/emoji/grimacing.png
similarity index 100%
rename from assets/images/emoji/grimacing.png
rename to public/images/emoji/grimacing.png
diff --git a/assets/images/emoji/grin.png b/public/images/emoji/grin.png
similarity index 100%
rename from assets/images/emoji/grin.png
rename to public/images/emoji/grin.png
diff --git a/assets/images/emoji/grinning.png b/public/images/emoji/grinning.png
similarity index 100%
rename from assets/images/emoji/grinning.png
rename to public/images/emoji/grinning.png
diff --git a/assets/images/emoji/guardsman.png b/public/images/emoji/guardsman.png
similarity index 100%
rename from assets/images/emoji/guardsman.png
rename to public/images/emoji/guardsman.png
diff --git a/assets/images/emoji/guitar.png b/public/images/emoji/guitar.png
similarity index 100%
rename from assets/images/emoji/guitar.png
rename to public/images/emoji/guitar.png
diff --git a/assets/images/emoji/gun.png b/public/images/emoji/gun.png
similarity index 100%
rename from assets/images/emoji/gun.png
rename to public/images/emoji/gun.png
diff --git a/assets/images/emoji/haircut.png b/public/images/emoji/haircut.png
similarity index 100%
rename from assets/images/emoji/haircut.png
rename to public/images/emoji/haircut.png
diff --git a/assets/images/emoji/hamburger.png b/public/images/emoji/hamburger.png
similarity index 100%
rename from assets/images/emoji/hamburger.png
rename to public/images/emoji/hamburger.png
diff --git a/assets/images/emoji/hammer.png b/public/images/emoji/hammer.png
similarity index 100%
rename from assets/images/emoji/hammer.png
rename to public/images/emoji/hammer.png
diff --git a/assets/images/emoji/hamster.png b/public/images/emoji/hamster.png
similarity index 100%
rename from assets/images/emoji/hamster.png
rename to public/images/emoji/hamster.png
diff --git a/assets/images/emoji/hand.png b/public/images/emoji/hand.png
similarity index 100%
rename from assets/images/emoji/hand.png
rename to public/images/emoji/hand.png
diff --git a/assets/images/emoji/handbag.png b/public/images/emoji/handbag.png
similarity index 100%
rename from assets/images/emoji/handbag.png
rename to public/images/emoji/handbag.png
diff --git a/assets/images/emoji/hankey.png b/public/images/emoji/hankey.png
similarity index 100%
rename from assets/images/emoji/hankey.png
rename to public/images/emoji/hankey.png
diff --git a/assets/images/emoji/hash.png b/public/images/emoji/hash.png
similarity index 100%
rename from assets/images/emoji/hash.png
rename to public/images/emoji/hash.png
diff --git a/assets/images/emoji/hatched_chick.png b/public/images/emoji/hatched_chick.png
similarity index 100%
rename from assets/images/emoji/hatched_chick.png
rename to public/images/emoji/hatched_chick.png
diff --git a/assets/images/emoji/hatching_chick.png b/public/images/emoji/hatching_chick.png
similarity index 100%
rename from assets/images/emoji/hatching_chick.png
rename to public/images/emoji/hatching_chick.png
diff --git a/assets/images/emoji/headphones.png b/public/images/emoji/headphones.png
similarity index 100%
rename from assets/images/emoji/headphones.png
rename to public/images/emoji/headphones.png
diff --git a/assets/images/emoji/hear_no_evil.png b/public/images/emoji/hear_no_evil.png
similarity index 100%
rename from assets/images/emoji/hear_no_evil.png
rename to public/images/emoji/hear_no_evil.png
diff --git a/assets/images/emoji/heart.png b/public/images/emoji/heart.png
similarity index 100%
rename from assets/images/emoji/heart.png
rename to public/images/emoji/heart.png
diff --git a/assets/images/emoji/heart_decoration.png b/public/images/emoji/heart_decoration.png
similarity index 100%
rename from assets/images/emoji/heart_decoration.png
rename to public/images/emoji/heart_decoration.png
diff --git a/assets/images/emoji/heart_eyes.png b/public/images/emoji/heart_eyes.png
similarity index 100%
rename from assets/images/emoji/heart_eyes.png
rename to public/images/emoji/heart_eyes.png
diff --git a/assets/images/emoji/heart_eyes_cat.png b/public/images/emoji/heart_eyes_cat.png
similarity index 100%
rename from assets/images/emoji/heart_eyes_cat.png
rename to public/images/emoji/heart_eyes_cat.png
diff --git a/assets/images/emoji/heartbeat.png b/public/images/emoji/heartbeat.png
similarity index 100%
rename from assets/images/emoji/heartbeat.png
rename to public/images/emoji/heartbeat.png
diff --git a/assets/images/emoji/heartpulse.png b/public/images/emoji/heartpulse.png
similarity index 100%
rename from assets/images/emoji/heartpulse.png
rename to public/images/emoji/heartpulse.png
diff --git a/assets/images/emoji/hearts.png b/public/images/emoji/hearts.png
similarity index 100%
rename from assets/images/emoji/hearts.png
rename to public/images/emoji/hearts.png
diff --git a/assets/images/emoji/heavy_check_mark.png b/public/images/emoji/heavy_check_mark.png
similarity index 100%
rename from assets/images/emoji/heavy_check_mark.png
rename to public/images/emoji/heavy_check_mark.png
diff --git a/assets/images/emoji/heavy_division_sign.png b/public/images/emoji/heavy_division_sign.png
similarity index 100%
rename from assets/images/emoji/heavy_division_sign.png
rename to public/images/emoji/heavy_division_sign.png
diff --git a/assets/images/emoji/heavy_dollar_sign.png b/public/images/emoji/heavy_dollar_sign.png
similarity index 100%
rename from assets/images/emoji/heavy_dollar_sign.png
rename to public/images/emoji/heavy_dollar_sign.png
diff --git a/assets/images/emoji/heavy_exclamation_mark.png b/public/images/emoji/heavy_exclamation_mark.png
similarity index 100%
rename from assets/images/emoji/heavy_exclamation_mark.png
rename to public/images/emoji/heavy_exclamation_mark.png
diff --git a/assets/images/emoji/heavy_minus_sign.png b/public/images/emoji/heavy_minus_sign.png
similarity index 100%
rename from assets/images/emoji/heavy_minus_sign.png
rename to public/images/emoji/heavy_minus_sign.png
diff --git a/assets/images/emoji/heavy_multiplication_x.png b/public/images/emoji/heavy_multiplication_x.png
similarity index 100%
rename from assets/images/emoji/heavy_multiplication_x.png
rename to public/images/emoji/heavy_multiplication_x.png
diff --git a/assets/images/emoji/heavy_plus_sign.png b/public/images/emoji/heavy_plus_sign.png
similarity index 100%
rename from assets/images/emoji/heavy_plus_sign.png
rename to public/images/emoji/heavy_plus_sign.png
diff --git a/assets/images/emoji/helicopter.png b/public/images/emoji/helicopter.png
similarity index 100%
rename from assets/images/emoji/helicopter.png
rename to public/images/emoji/helicopter.png
diff --git a/assets/images/emoji/herb.png b/public/images/emoji/herb.png
similarity index 100%
rename from assets/images/emoji/herb.png
rename to public/images/emoji/herb.png
diff --git a/assets/images/emoji/hibiscus.png b/public/images/emoji/hibiscus.png
similarity index 100%
rename from assets/images/emoji/hibiscus.png
rename to public/images/emoji/hibiscus.png
diff --git a/assets/images/emoji/high_brightness.png b/public/images/emoji/high_brightness.png
similarity index 100%
rename from assets/images/emoji/high_brightness.png
rename to public/images/emoji/high_brightness.png
diff --git a/assets/images/emoji/high_heel.png b/public/images/emoji/high_heel.png
similarity index 100%
rename from assets/images/emoji/high_heel.png
rename to public/images/emoji/high_heel.png
diff --git a/assets/images/emoji/hocho.png b/public/images/emoji/hocho.png
similarity index 100%
rename from assets/images/emoji/hocho.png
rename to public/images/emoji/hocho.png
diff --git a/assets/images/emoji/honey_pot.png b/public/images/emoji/honey_pot.png
similarity index 100%
rename from assets/images/emoji/honey_pot.png
rename to public/images/emoji/honey_pot.png
diff --git a/assets/images/emoji/honeybee.png b/public/images/emoji/honeybee.png
similarity index 100%
rename from assets/images/emoji/honeybee.png
rename to public/images/emoji/honeybee.png
diff --git a/assets/images/emoji/horse.png b/public/images/emoji/horse.png
similarity index 100%
rename from assets/images/emoji/horse.png
rename to public/images/emoji/horse.png
diff --git a/assets/images/emoji/horse_racing.png b/public/images/emoji/horse_racing.png
similarity index 100%
rename from assets/images/emoji/horse_racing.png
rename to public/images/emoji/horse_racing.png
diff --git a/assets/images/emoji/hospital.png b/public/images/emoji/hospital.png
similarity index 100%
rename from assets/images/emoji/hospital.png
rename to public/images/emoji/hospital.png
diff --git a/assets/images/emoji/hotel.png b/public/images/emoji/hotel.png
similarity index 100%
rename from assets/images/emoji/hotel.png
rename to public/images/emoji/hotel.png
diff --git a/assets/images/emoji/hotsprings.png b/public/images/emoji/hotsprings.png
similarity index 100%
rename from assets/images/emoji/hotsprings.png
rename to public/images/emoji/hotsprings.png
diff --git a/assets/images/emoji/hourglass.png b/public/images/emoji/hourglass.png
similarity index 100%
rename from assets/images/emoji/hourglass.png
rename to public/images/emoji/hourglass.png
diff --git a/assets/images/emoji/hourglass_flowing_sand.png b/public/images/emoji/hourglass_flowing_sand.png
similarity index 100%
rename from assets/images/emoji/hourglass_flowing_sand.png
rename to public/images/emoji/hourglass_flowing_sand.png
diff --git a/assets/images/emoji/house.png b/public/images/emoji/house.png
similarity index 100%
rename from assets/images/emoji/house.png
rename to public/images/emoji/house.png
diff --git a/assets/images/emoji/house_with_garden.png b/public/images/emoji/house_with_garden.png
similarity index 100%
rename from assets/images/emoji/house_with_garden.png
rename to public/images/emoji/house_with_garden.png
diff --git a/assets/images/emoji/hurtrealbad.png b/public/images/emoji/hurtrealbad.png
similarity index 100%
rename from assets/images/emoji/hurtrealbad.png
rename to public/images/emoji/hurtrealbad.png
diff --git a/assets/images/emoji/hushed.png b/public/images/emoji/hushed.png
similarity index 100%
rename from assets/images/emoji/hushed.png
rename to public/images/emoji/hushed.png
diff --git a/assets/images/emoji/ice_cream.png b/public/images/emoji/ice_cream.png
similarity index 100%
rename from assets/images/emoji/ice_cream.png
rename to public/images/emoji/ice_cream.png
diff --git a/assets/images/emoji/icecream.png b/public/images/emoji/icecream.png
similarity index 100%
rename from assets/images/emoji/icecream.png
rename to public/images/emoji/icecream.png
diff --git a/assets/images/emoji/id.png b/public/images/emoji/id.png
similarity index 100%
rename from assets/images/emoji/id.png
rename to public/images/emoji/id.png
diff --git a/assets/images/emoji/ideograph_advantage.png b/public/images/emoji/ideograph_advantage.png
similarity index 100%
rename from assets/images/emoji/ideograph_advantage.png
rename to public/images/emoji/ideograph_advantage.png
diff --git a/assets/images/emoji/imp.png b/public/images/emoji/imp.png
similarity index 100%
rename from assets/images/emoji/imp.png
rename to public/images/emoji/imp.png
diff --git a/assets/images/emoji/inbox_tray.png b/public/images/emoji/inbox_tray.png
similarity index 100%
rename from assets/images/emoji/inbox_tray.png
rename to public/images/emoji/inbox_tray.png
diff --git a/assets/images/emoji/incoming_envelope.png b/public/images/emoji/incoming_envelope.png
similarity index 100%
rename from assets/images/emoji/incoming_envelope.png
rename to public/images/emoji/incoming_envelope.png
diff --git a/assets/images/emoji/information_desk_person.png b/public/images/emoji/information_desk_person.png
similarity index 100%
rename from assets/images/emoji/information_desk_person.png
rename to public/images/emoji/information_desk_person.png
diff --git a/assets/images/emoji/information_source.png b/public/images/emoji/information_source.png
similarity index 100%
rename from assets/images/emoji/information_source.png
rename to public/images/emoji/information_source.png
diff --git a/assets/images/emoji/innocent.png b/public/images/emoji/innocent.png
similarity index 100%
rename from assets/images/emoji/innocent.png
rename to public/images/emoji/innocent.png
diff --git a/assets/images/emoji/interrobang.png b/public/images/emoji/interrobang.png
similarity index 100%
rename from assets/images/emoji/interrobang.png
rename to public/images/emoji/interrobang.png
diff --git a/assets/images/emoji/iphone.png b/public/images/emoji/iphone.png
similarity index 100%
rename from assets/images/emoji/iphone.png
rename to public/images/emoji/iphone.png
diff --git a/assets/images/emoji/it.png b/public/images/emoji/it.png
similarity index 100%
rename from assets/images/emoji/it.png
rename to public/images/emoji/it.png
diff --git a/assets/images/emoji/izakaya_lantern.png b/public/images/emoji/izakaya_lantern.png
similarity index 100%
rename from assets/images/emoji/izakaya_lantern.png
rename to public/images/emoji/izakaya_lantern.png
diff --git a/assets/images/emoji/jack_o_lantern.png b/public/images/emoji/jack_o_lantern.png
similarity index 100%
rename from assets/images/emoji/jack_o_lantern.png
rename to public/images/emoji/jack_o_lantern.png
diff --git a/assets/images/emoji/japan.png b/public/images/emoji/japan.png
similarity index 100%
rename from assets/images/emoji/japan.png
rename to public/images/emoji/japan.png
diff --git a/assets/images/emoji/japanese_castle.png b/public/images/emoji/japanese_castle.png
similarity index 100%
rename from assets/images/emoji/japanese_castle.png
rename to public/images/emoji/japanese_castle.png
diff --git a/assets/images/emoji/japanese_goblin.png b/public/images/emoji/japanese_goblin.png
similarity index 100%
rename from assets/images/emoji/japanese_goblin.png
rename to public/images/emoji/japanese_goblin.png
diff --git a/assets/images/emoji/japanese_ogre.png b/public/images/emoji/japanese_ogre.png
similarity index 100%
rename from assets/images/emoji/japanese_ogre.png
rename to public/images/emoji/japanese_ogre.png
diff --git a/assets/images/emoji/jeans.png b/public/images/emoji/jeans.png
similarity index 100%
rename from assets/images/emoji/jeans.png
rename to public/images/emoji/jeans.png
diff --git a/assets/images/emoji/joy.png b/public/images/emoji/joy.png
similarity index 100%
rename from assets/images/emoji/joy.png
rename to public/images/emoji/joy.png
diff --git a/assets/images/emoji/joy_cat.png b/public/images/emoji/joy_cat.png
similarity index 100%
rename from assets/images/emoji/joy_cat.png
rename to public/images/emoji/joy_cat.png
diff --git a/assets/images/emoji/jp.png b/public/images/emoji/jp.png
similarity index 100%
rename from assets/images/emoji/jp.png
rename to public/images/emoji/jp.png
diff --git a/assets/images/emoji/key.png b/public/images/emoji/key.png
similarity index 100%
rename from assets/images/emoji/key.png
rename to public/images/emoji/key.png
diff --git a/assets/images/emoji/keycap_ten.png b/public/images/emoji/keycap_ten.png
similarity index 100%
rename from assets/images/emoji/keycap_ten.png
rename to public/images/emoji/keycap_ten.png
diff --git a/assets/images/emoji/kimono.png b/public/images/emoji/kimono.png
similarity index 100%
rename from assets/images/emoji/kimono.png
rename to public/images/emoji/kimono.png
diff --git a/assets/images/emoji/kiss.png b/public/images/emoji/kiss.png
similarity index 100%
rename from assets/images/emoji/kiss.png
rename to public/images/emoji/kiss.png
diff --git a/assets/images/emoji/kissing.png b/public/images/emoji/kissing.png
similarity index 100%
rename from assets/images/emoji/kissing.png
rename to public/images/emoji/kissing.png
diff --git a/assets/images/emoji/kissing_cat.png b/public/images/emoji/kissing_cat.png
similarity index 100%
rename from assets/images/emoji/kissing_cat.png
rename to public/images/emoji/kissing_cat.png
diff --git a/assets/images/emoji/kissing_closed_eyes.png b/public/images/emoji/kissing_closed_eyes.png
similarity index 100%
rename from assets/images/emoji/kissing_closed_eyes.png
rename to public/images/emoji/kissing_closed_eyes.png
diff --git a/assets/images/emoji/kissing_face.png b/public/images/emoji/kissing_face.png
similarity index 100%
rename from assets/images/emoji/kissing_face.png
rename to public/images/emoji/kissing_face.png
diff --git a/assets/images/emoji/kissing_heart.png b/public/images/emoji/kissing_heart.png
similarity index 100%
rename from assets/images/emoji/kissing_heart.png
rename to public/images/emoji/kissing_heart.png
diff --git a/assets/images/emoji/kissing_smiling_eyes.png b/public/images/emoji/kissing_smiling_eyes.png
similarity index 100%
rename from assets/images/emoji/kissing_smiling_eyes.png
rename to public/images/emoji/kissing_smiling_eyes.png
diff --git a/assets/images/emoji/koala.png b/public/images/emoji/koala.png
similarity index 100%
rename from assets/images/emoji/koala.png
rename to public/images/emoji/koala.png
diff --git a/assets/images/emoji/koko.png b/public/images/emoji/koko.png
similarity index 100%
rename from assets/images/emoji/koko.png
rename to public/images/emoji/koko.png
diff --git a/assets/images/emoji/kr.png b/public/images/emoji/kr.png
similarity index 100%
rename from assets/images/emoji/kr.png
rename to public/images/emoji/kr.png
diff --git a/assets/images/emoji/large_blue_circle.png b/public/images/emoji/large_blue_circle.png
similarity index 100%
rename from assets/images/emoji/large_blue_circle.png
rename to public/images/emoji/large_blue_circle.png
diff --git a/assets/images/emoji/large_blue_diamond.png b/public/images/emoji/large_blue_diamond.png
similarity index 100%
rename from assets/images/emoji/large_blue_diamond.png
rename to public/images/emoji/large_blue_diamond.png
diff --git a/assets/images/emoji/large_orange_diamond.png b/public/images/emoji/large_orange_diamond.png
similarity index 100%
rename from assets/images/emoji/large_orange_diamond.png
rename to public/images/emoji/large_orange_diamond.png
diff --git a/assets/images/emoji/last_quarter_moon.png b/public/images/emoji/last_quarter_moon.png
similarity index 100%
rename from assets/images/emoji/last_quarter_moon.png
rename to public/images/emoji/last_quarter_moon.png
diff --git a/assets/images/emoji/last_quarter_moon_with_face.png b/public/images/emoji/last_quarter_moon_with_face.png
similarity index 100%
rename from assets/images/emoji/last_quarter_moon_with_face.png
rename to public/images/emoji/last_quarter_moon_with_face.png
diff --git a/assets/images/emoji/laughing.png b/public/images/emoji/laughing.png
similarity index 100%
rename from assets/images/emoji/laughing.png
rename to public/images/emoji/laughing.png
diff --git a/assets/images/emoji/leaves.png b/public/images/emoji/leaves.png
similarity index 100%
rename from assets/images/emoji/leaves.png
rename to public/images/emoji/leaves.png
diff --git a/assets/images/emoji/ledger.png b/public/images/emoji/ledger.png
similarity index 100%
rename from assets/images/emoji/ledger.png
rename to public/images/emoji/ledger.png
diff --git a/assets/images/emoji/left_luggage.png b/public/images/emoji/left_luggage.png
similarity index 100%
rename from assets/images/emoji/left_luggage.png
rename to public/images/emoji/left_luggage.png
diff --git a/assets/images/emoji/left_right_arrow.png b/public/images/emoji/left_right_arrow.png
similarity index 100%
rename from assets/images/emoji/left_right_arrow.png
rename to public/images/emoji/left_right_arrow.png
diff --git a/assets/images/emoji/leftwards_arrow_with_hook.png b/public/images/emoji/leftwards_arrow_with_hook.png
similarity index 100%
rename from assets/images/emoji/leftwards_arrow_with_hook.png
rename to public/images/emoji/leftwards_arrow_with_hook.png
diff --git a/assets/images/emoji/lemon.png b/public/images/emoji/lemon.png
similarity index 100%
rename from assets/images/emoji/lemon.png
rename to public/images/emoji/lemon.png
diff --git a/assets/images/emoji/leo.png b/public/images/emoji/leo.png
similarity index 100%
rename from assets/images/emoji/leo.png
rename to public/images/emoji/leo.png
diff --git a/assets/images/emoji/leopard.png b/public/images/emoji/leopard.png
similarity index 100%
rename from assets/images/emoji/leopard.png
rename to public/images/emoji/leopard.png
diff --git a/assets/images/emoji/libra.png b/public/images/emoji/libra.png
similarity index 100%
rename from assets/images/emoji/libra.png
rename to public/images/emoji/libra.png
diff --git a/assets/images/emoji/light_rail.png b/public/images/emoji/light_rail.png
similarity index 100%
rename from assets/images/emoji/light_rail.png
rename to public/images/emoji/light_rail.png
diff --git a/assets/images/emoji/link.png b/public/images/emoji/link.png
similarity index 100%
rename from assets/images/emoji/link.png
rename to public/images/emoji/link.png
diff --git a/assets/images/emoji/lips.png b/public/images/emoji/lips.png
similarity index 100%
rename from assets/images/emoji/lips.png
rename to public/images/emoji/lips.png
diff --git a/assets/images/emoji/lipstick.png b/public/images/emoji/lipstick.png
similarity index 100%
rename from assets/images/emoji/lipstick.png
rename to public/images/emoji/lipstick.png
diff --git a/assets/images/emoji/lock.png b/public/images/emoji/lock.png
similarity index 100%
rename from assets/images/emoji/lock.png
rename to public/images/emoji/lock.png
diff --git a/assets/images/emoji/lock_with_ink_pen.png b/public/images/emoji/lock_with_ink_pen.png
similarity index 100%
rename from assets/images/emoji/lock_with_ink_pen.png
rename to public/images/emoji/lock_with_ink_pen.png
diff --git a/assets/images/emoji/lollipop.png b/public/images/emoji/lollipop.png
similarity index 100%
rename from assets/images/emoji/lollipop.png
rename to public/images/emoji/lollipop.png
diff --git a/assets/images/emoji/loop.png b/public/images/emoji/loop.png
similarity index 100%
rename from assets/images/emoji/loop.png
rename to public/images/emoji/loop.png
diff --git a/assets/images/emoji/loudspeaker.png b/public/images/emoji/loudspeaker.png
similarity index 100%
rename from assets/images/emoji/loudspeaker.png
rename to public/images/emoji/loudspeaker.png
diff --git a/assets/images/emoji/love_hotel.png b/public/images/emoji/love_hotel.png
similarity index 100%
rename from assets/images/emoji/love_hotel.png
rename to public/images/emoji/love_hotel.png
diff --git a/assets/images/emoji/love_letter.png b/public/images/emoji/love_letter.png
similarity index 100%
rename from assets/images/emoji/love_letter.png
rename to public/images/emoji/love_letter.png
diff --git a/assets/images/emoji/low_brightness.png b/public/images/emoji/low_brightness.png
similarity index 100%
rename from assets/images/emoji/low_brightness.png
rename to public/images/emoji/low_brightness.png
diff --git a/assets/images/emoji/m.png b/public/images/emoji/m.png
similarity index 100%
rename from assets/images/emoji/m.png
rename to public/images/emoji/m.png
diff --git a/assets/images/emoji/mag.png b/public/images/emoji/mag.png
similarity index 100%
rename from assets/images/emoji/mag.png
rename to public/images/emoji/mag.png
diff --git a/assets/images/emoji/mag_right.png b/public/images/emoji/mag_right.png
similarity index 100%
rename from assets/images/emoji/mag_right.png
rename to public/images/emoji/mag_right.png
diff --git a/assets/images/emoji/mahjong.png b/public/images/emoji/mahjong.png
similarity index 100%
rename from assets/images/emoji/mahjong.png
rename to public/images/emoji/mahjong.png
diff --git a/assets/images/emoji/mailbox.png b/public/images/emoji/mailbox.png
similarity index 100%
rename from assets/images/emoji/mailbox.png
rename to public/images/emoji/mailbox.png
diff --git a/assets/images/emoji/mailbox_closed.png b/public/images/emoji/mailbox_closed.png
similarity index 100%
rename from assets/images/emoji/mailbox_closed.png
rename to public/images/emoji/mailbox_closed.png
diff --git a/assets/images/emoji/mailbox_with_mail.png b/public/images/emoji/mailbox_with_mail.png
similarity index 100%
rename from assets/images/emoji/mailbox_with_mail.png
rename to public/images/emoji/mailbox_with_mail.png
diff --git a/assets/images/emoji/mailbox_with_no_mail.png b/public/images/emoji/mailbox_with_no_mail.png
similarity index 100%
rename from assets/images/emoji/mailbox_with_no_mail.png
rename to public/images/emoji/mailbox_with_no_mail.png
diff --git a/assets/images/emoji/man.png b/public/images/emoji/man.png
similarity index 100%
rename from assets/images/emoji/man.png
rename to public/images/emoji/man.png
diff --git a/assets/images/emoji/man_with_gua_pi_mao.png b/public/images/emoji/man_with_gua_pi_mao.png
similarity index 100%
rename from assets/images/emoji/man_with_gua_pi_mao.png
rename to public/images/emoji/man_with_gua_pi_mao.png
diff --git a/assets/images/emoji/man_with_turban.png b/public/images/emoji/man_with_turban.png
similarity index 100%
rename from assets/images/emoji/man_with_turban.png
rename to public/images/emoji/man_with_turban.png
diff --git a/assets/images/emoji/mans_shoe.png b/public/images/emoji/mans_shoe.png
similarity index 100%
rename from assets/images/emoji/mans_shoe.png
rename to public/images/emoji/mans_shoe.png
diff --git a/assets/images/emoji/maple_leaf.png b/public/images/emoji/maple_leaf.png
similarity index 100%
rename from assets/images/emoji/maple_leaf.png
rename to public/images/emoji/maple_leaf.png
diff --git a/assets/images/emoji/mask.png b/public/images/emoji/mask.png
similarity index 100%
rename from assets/images/emoji/mask.png
rename to public/images/emoji/mask.png
diff --git a/assets/images/emoji/massage.png b/public/images/emoji/massage.png
similarity index 100%
rename from assets/images/emoji/massage.png
rename to public/images/emoji/massage.png
diff --git a/assets/images/emoji/meat_on_bone.png b/public/images/emoji/meat_on_bone.png
similarity index 100%
rename from assets/images/emoji/meat_on_bone.png
rename to public/images/emoji/meat_on_bone.png
diff --git a/assets/images/emoji/mega.png b/public/images/emoji/mega.png
similarity index 100%
rename from assets/images/emoji/mega.png
rename to public/images/emoji/mega.png
diff --git a/assets/images/emoji/melon.png b/public/images/emoji/melon.png
similarity index 100%
rename from assets/images/emoji/melon.png
rename to public/images/emoji/melon.png
diff --git a/assets/images/emoji/memo.png b/public/images/emoji/memo.png
similarity index 100%
rename from assets/images/emoji/memo.png
rename to public/images/emoji/memo.png
diff --git a/assets/images/emoji/mens.png b/public/images/emoji/mens.png
similarity index 100%
rename from assets/images/emoji/mens.png
rename to public/images/emoji/mens.png
diff --git a/assets/images/emoji/metal.png b/public/images/emoji/metal.png
similarity index 100%
rename from assets/images/emoji/metal.png
rename to public/images/emoji/metal.png
diff --git a/assets/images/emoji/metro.png b/public/images/emoji/metro.png
similarity index 100%
rename from assets/images/emoji/metro.png
rename to public/images/emoji/metro.png
diff --git a/assets/images/emoji/microphone.png b/public/images/emoji/microphone.png
similarity index 100%
rename from assets/images/emoji/microphone.png
rename to public/images/emoji/microphone.png
diff --git a/assets/images/emoji/microscope.png b/public/images/emoji/microscope.png
similarity index 100%
rename from assets/images/emoji/microscope.png
rename to public/images/emoji/microscope.png
diff --git a/assets/images/emoji/milky_way.png b/public/images/emoji/milky_way.png
similarity index 100%
rename from assets/images/emoji/milky_way.png
rename to public/images/emoji/milky_way.png
diff --git a/assets/images/emoji/minibus.png b/public/images/emoji/minibus.png
similarity index 100%
rename from assets/images/emoji/minibus.png
rename to public/images/emoji/minibus.png
diff --git a/assets/images/emoji/minidisc.png b/public/images/emoji/minidisc.png
similarity index 100%
rename from assets/images/emoji/minidisc.png
rename to public/images/emoji/minidisc.png
diff --git a/assets/images/emoji/mobile_phone_off.png b/public/images/emoji/mobile_phone_off.png
similarity index 100%
rename from assets/images/emoji/mobile_phone_off.png
rename to public/images/emoji/mobile_phone_off.png
diff --git a/assets/images/emoji/money_with_wings.png b/public/images/emoji/money_with_wings.png
similarity index 100%
rename from assets/images/emoji/money_with_wings.png
rename to public/images/emoji/money_with_wings.png
diff --git a/assets/images/emoji/moneybag.png b/public/images/emoji/moneybag.png
similarity index 100%
rename from assets/images/emoji/moneybag.png
rename to public/images/emoji/moneybag.png
diff --git a/assets/images/emoji/monkey.png b/public/images/emoji/monkey.png
similarity index 100%
rename from assets/images/emoji/monkey.png
rename to public/images/emoji/monkey.png
diff --git a/assets/images/emoji/monkey_face.png b/public/images/emoji/monkey_face.png
similarity index 100%
rename from assets/images/emoji/monkey_face.png
rename to public/images/emoji/monkey_face.png
diff --git a/assets/images/emoji/monorail.png b/public/images/emoji/monorail.png
similarity index 100%
rename from assets/images/emoji/monorail.png
rename to public/images/emoji/monorail.png
diff --git a/assets/images/emoji/moon.png b/public/images/emoji/moon.png
similarity index 100%
rename from assets/images/emoji/moon.png
rename to public/images/emoji/moon.png
diff --git a/assets/images/emoji/mortar_board.png b/public/images/emoji/mortar_board.png
similarity index 100%
rename from assets/images/emoji/mortar_board.png
rename to public/images/emoji/mortar_board.png
diff --git a/assets/images/emoji/mount_fuji.png b/public/images/emoji/mount_fuji.png
similarity index 100%
rename from assets/images/emoji/mount_fuji.png
rename to public/images/emoji/mount_fuji.png
diff --git a/assets/images/emoji/mountain_bicyclist.png b/public/images/emoji/mountain_bicyclist.png
similarity index 100%
rename from assets/images/emoji/mountain_bicyclist.png
rename to public/images/emoji/mountain_bicyclist.png
diff --git a/assets/images/emoji/mountain_cableway.png b/public/images/emoji/mountain_cableway.png
similarity index 100%
rename from assets/images/emoji/mountain_cableway.png
rename to public/images/emoji/mountain_cableway.png
diff --git a/assets/images/emoji/mountain_railway.png b/public/images/emoji/mountain_railway.png
similarity index 100%
rename from assets/images/emoji/mountain_railway.png
rename to public/images/emoji/mountain_railway.png
diff --git a/assets/images/emoji/mouse.png b/public/images/emoji/mouse.png
similarity index 100%
rename from assets/images/emoji/mouse.png
rename to public/images/emoji/mouse.png
diff --git a/assets/images/emoji/mouse2.png b/public/images/emoji/mouse2.png
similarity index 100%
rename from assets/images/emoji/mouse2.png
rename to public/images/emoji/mouse2.png
diff --git a/assets/images/emoji/movie_camera.png b/public/images/emoji/movie_camera.png
similarity index 100%
rename from assets/images/emoji/movie_camera.png
rename to public/images/emoji/movie_camera.png
diff --git a/assets/images/emoji/moyai.png b/public/images/emoji/moyai.png
similarity index 100%
rename from assets/images/emoji/moyai.png
rename to public/images/emoji/moyai.png
diff --git a/assets/images/emoji/muscle.png b/public/images/emoji/muscle.png
similarity index 100%
rename from assets/images/emoji/muscle.png
rename to public/images/emoji/muscle.png
diff --git a/assets/images/emoji/mushroom.png b/public/images/emoji/mushroom.png
similarity index 100%
rename from assets/images/emoji/mushroom.png
rename to public/images/emoji/mushroom.png
diff --git a/assets/images/emoji/musical_keyboard.png b/public/images/emoji/musical_keyboard.png
similarity index 100%
rename from assets/images/emoji/musical_keyboard.png
rename to public/images/emoji/musical_keyboard.png
diff --git a/assets/images/emoji/musical_note.png b/public/images/emoji/musical_note.png
similarity index 100%
rename from assets/images/emoji/musical_note.png
rename to public/images/emoji/musical_note.png
diff --git a/assets/images/emoji/musical_score.png b/public/images/emoji/musical_score.png
similarity index 100%
rename from assets/images/emoji/musical_score.png
rename to public/images/emoji/musical_score.png
diff --git a/assets/images/emoji/mute.png b/public/images/emoji/mute.png
similarity index 100%
rename from assets/images/emoji/mute.png
rename to public/images/emoji/mute.png
diff --git a/assets/images/emoji/nail_care.png b/public/images/emoji/nail_care.png
similarity index 100%
rename from assets/images/emoji/nail_care.png
rename to public/images/emoji/nail_care.png
diff --git a/assets/images/emoji/name_badge.png b/public/images/emoji/name_badge.png
similarity index 100%
rename from assets/images/emoji/name_badge.png
rename to public/images/emoji/name_badge.png
diff --git a/assets/images/emoji/neckbeard.png b/public/images/emoji/neckbeard.png
similarity index 100%
rename from assets/images/emoji/neckbeard.png
rename to public/images/emoji/neckbeard.png
diff --git a/assets/images/emoji/necktie.png b/public/images/emoji/necktie.png
similarity index 100%
rename from assets/images/emoji/necktie.png
rename to public/images/emoji/necktie.png
diff --git a/assets/images/emoji/negative_squared_cross_mark.png b/public/images/emoji/negative_squared_cross_mark.png
similarity index 100%
rename from assets/images/emoji/negative_squared_cross_mark.png
rename to public/images/emoji/negative_squared_cross_mark.png
diff --git a/assets/images/emoji/neutral_face.png b/public/images/emoji/neutral_face.png
similarity index 100%
rename from assets/images/emoji/neutral_face.png
rename to public/images/emoji/neutral_face.png
diff --git a/assets/images/emoji/new.png b/public/images/emoji/new.png
similarity index 100%
rename from assets/images/emoji/new.png
rename to public/images/emoji/new.png
diff --git a/assets/images/emoji/new_moon.png b/public/images/emoji/new_moon.png
similarity index 100%
rename from assets/images/emoji/new_moon.png
rename to public/images/emoji/new_moon.png
diff --git a/assets/images/emoji/new_moon_with_face.png b/public/images/emoji/new_moon_with_face.png
similarity index 100%
rename from assets/images/emoji/new_moon_with_face.png
rename to public/images/emoji/new_moon_with_face.png
diff --git a/assets/images/emoji/newspaper.png b/public/images/emoji/newspaper.png
similarity index 100%
rename from assets/images/emoji/newspaper.png
rename to public/images/emoji/newspaper.png
diff --git a/assets/images/emoji/ng.png b/public/images/emoji/ng.png
similarity index 100%
rename from assets/images/emoji/ng.png
rename to public/images/emoji/ng.png
diff --git a/assets/images/emoji/nine.png b/public/images/emoji/nine.png
similarity index 100%
rename from assets/images/emoji/nine.png
rename to public/images/emoji/nine.png
diff --git a/assets/images/emoji/no_bell.png b/public/images/emoji/no_bell.png
similarity index 100%
rename from assets/images/emoji/no_bell.png
rename to public/images/emoji/no_bell.png
diff --git a/assets/images/emoji/no_bicycles.png b/public/images/emoji/no_bicycles.png
similarity index 100%
rename from assets/images/emoji/no_bicycles.png
rename to public/images/emoji/no_bicycles.png
diff --git a/assets/images/emoji/no_entry.png b/public/images/emoji/no_entry.png
similarity index 100%
rename from assets/images/emoji/no_entry.png
rename to public/images/emoji/no_entry.png
diff --git a/assets/images/emoji/no_entry_sign.png b/public/images/emoji/no_entry_sign.png
similarity index 100%
rename from assets/images/emoji/no_entry_sign.png
rename to public/images/emoji/no_entry_sign.png
diff --git a/assets/images/emoji/no_good.png b/public/images/emoji/no_good.png
similarity index 100%
rename from assets/images/emoji/no_good.png
rename to public/images/emoji/no_good.png
diff --git a/assets/images/emoji/no_mobile_phones.png b/public/images/emoji/no_mobile_phones.png
similarity index 100%
rename from assets/images/emoji/no_mobile_phones.png
rename to public/images/emoji/no_mobile_phones.png
diff --git a/assets/images/emoji/no_mouth.png b/public/images/emoji/no_mouth.png
similarity index 100%
rename from assets/images/emoji/no_mouth.png
rename to public/images/emoji/no_mouth.png
diff --git a/assets/images/emoji/no_pedestrians.png b/public/images/emoji/no_pedestrians.png
similarity index 100%
rename from assets/images/emoji/no_pedestrians.png
rename to public/images/emoji/no_pedestrians.png
diff --git a/assets/images/emoji/no_smoking.png b/public/images/emoji/no_smoking.png
similarity index 100%
rename from assets/images/emoji/no_smoking.png
rename to public/images/emoji/no_smoking.png
diff --git a/assets/images/emoji/non-potable_water.png b/public/images/emoji/non-potable_water.png
similarity index 100%
rename from assets/images/emoji/non-potable_water.png
rename to public/images/emoji/non-potable_water.png
diff --git a/assets/images/emoji/nose.png b/public/images/emoji/nose.png
similarity index 100%
rename from assets/images/emoji/nose.png
rename to public/images/emoji/nose.png
diff --git a/assets/images/emoji/notebook.png b/public/images/emoji/notebook.png
similarity index 100%
rename from assets/images/emoji/notebook.png
rename to public/images/emoji/notebook.png
diff --git a/assets/images/emoji/notebook_with_decorative_cover.png b/public/images/emoji/notebook_with_decorative_cover.png
similarity index 100%
rename from assets/images/emoji/notebook_with_decorative_cover.png
rename to public/images/emoji/notebook_with_decorative_cover.png
diff --git a/assets/images/emoji/notes.png b/public/images/emoji/notes.png
similarity index 100%
rename from assets/images/emoji/notes.png
rename to public/images/emoji/notes.png
diff --git a/assets/images/emoji/nut_and_bolt.png b/public/images/emoji/nut_and_bolt.png
similarity index 100%
rename from assets/images/emoji/nut_and_bolt.png
rename to public/images/emoji/nut_and_bolt.png
diff --git a/assets/images/emoji/o.png b/public/images/emoji/o.png
similarity index 100%
rename from assets/images/emoji/o.png
rename to public/images/emoji/o.png
diff --git a/assets/images/emoji/o2.png b/public/images/emoji/o2.png
similarity index 100%
rename from assets/images/emoji/o2.png
rename to public/images/emoji/o2.png
diff --git a/assets/images/emoji/ocean.png b/public/images/emoji/ocean.png
similarity index 100%
rename from assets/images/emoji/ocean.png
rename to public/images/emoji/ocean.png
diff --git a/assets/images/emoji/octocat.png b/public/images/emoji/octocat.png
similarity index 100%
rename from assets/images/emoji/octocat.png
rename to public/images/emoji/octocat.png
diff --git a/assets/images/emoji/octopus.png b/public/images/emoji/octopus.png
similarity index 100%
rename from assets/images/emoji/octopus.png
rename to public/images/emoji/octopus.png
diff --git a/assets/images/emoji/oden.png b/public/images/emoji/oden.png
similarity index 100%
rename from assets/images/emoji/oden.png
rename to public/images/emoji/oden.png
diff --git a/assets/images/emoji/office.png b/public/images/emoji/office.png
similarity index 100%
rename from assets/images/emoji/office.png
rename to public/images/emoji/office.png
diff --git a/assets/images/emoji/ok.png b/public/images/emoji/ok.png
similarity index 100%
rename from assets/images/emoji/ok.png
rename to public/images/emoji/ok.png
diff --git a/assets/images/emoji/ok_hand.png b/public/images/emoji/ok_hand.png
similarity index 100%
rename from assets/images/emoji/ok_hand.png
rename to public/images/emoji/ok_hand.png
diff --git a/assets/images/emoji/ok_woman.png b/public/images/emoji/ok_woman.png
similarity index 100%
rename from assets/images/emoji/ok_woman.png
rename to public/images/emoji/ok_woman.png
diff --git a/assets/images/emoji/older_man.png b/public/images/emoji/older_man.png
similarity index 100%
rename from assets/images/emoji/older_man.png
rename to public/images/emoji/older_man.png
diff --git a/assets/images/emoji/older_woman.png b/public/images/emoji/older_woman.png
similarity index 100%
rename from assets/images/emoji/older_woman.png
rename to public/images/emoji/older_woman.png
diff --git a/assets/images/emoji/on.png b/public/images/emoji/on.png
similarity index 100%
rename from assets/images/emoji/on.png
rename to public/images/emoji/on.png
diff --git a/assets/images/emoji/oncoming_automobile.png b/public/images/emoji/oncoming_automobile.png
similarity index 100%
rename from assets/images/emoji/oncoming_automobile.png
rename to public/images/emoji/oncoming_automobile.png
diff --git a/assets/images/emoji/oncoming_bus.png b/public/images/emoji/oncoming_bus.png
similarity index 100%
rename from assets/images/emoji/oncoming_bus.png
rename to public/images/emoji/oncoming_bus.png
diff --git a/assets/images/emoji/oncoming_police_car.png b/public/images/emoji/oncoming_police_car.png
similarity index 100%
rename from assets/images/emoji/oncoming_police_car.png
rename to public/images/emoji/oncoming_police_car.png
diff --git a/assets/images/emoji/oncoming_taxi.png b/public/images/emoji/oncoming_taxi.png
similarity index 100%
rename from assets/images/emoji/oncoming_taxi.png
rename to public/images/emoji/oncoming_taxi.png
diff --git a/assets/images/emoji/one.png b/public/images/emoji/one.png
similarity index 100%
rename from assets/images/emoji/one.png
rename to public/images/emoji/one.png
diff --git a/assets/images/emoji/open_file_folder.png b/public/images/emoji/open_file_folder.png
similarity index 100%
rename from assets/images/emoji/open_file_folder.png
rename to public/images/emoji/open_file_folder.png
diff --git a/assets/images/emoji/open_hands.png b/public/images/emoji/open_hands.png
similarity index 100%
rename from assets/images/emoji/open_hands.png
rename to public/images/emoji/open_hands.png
diff --git a/assets/images/emoji/open_mouth.png b/public/images/emoji/open_mouth.png
similarity index 100%
rename from assets/images/emoji/open_mouth.png
rename to public/images/emoji/open_mouth.png
diff --git a/assets/images/emoji/ophiuchus.png b/public/images/emoji/ophiuchus.png
similarity index 100%
rename from assets/images/emoji/ophiuchus.png
rename to public/images/emoji/ophiuchus.png
diff --git a/assets/images/emoji/orange_book.png b/public/images/emoji/orange_book.png
similarity index 100%
rename from assets/images/emoji/orange_book.png
rename to public/images/emoji/orange_book.png
diff --git a/assets/images/emoji/outbox_tray.png b/public/images/emoji/outbox_tray.png
similarity index 100%
rename from assets/images/emoji/outbox_tray.png
rename to public/images/emoji/outbox_tray.png
diff --git a/assets/images/emoji/ox.png b/public/images/emoji/ox.png
similarity index 100%
rename from assets/images/emoji/ox.png
rename to public/images/emoji/ox.png
diff --git a/assets/images/emoji/page_facing_up.png b/public/images/emoji/page_facing_up.png
similarity index 100%
rename from assets/images/emoji/page_facing_up.png
rename to public/images/emoji/page_facing_up.png
diff --git a/assets/images/emoji/page_with_curl.png b/public/images/emoji/page_with_curl.png
similarity index 100%
rename from assets/images/emoji/page_with_curl.png
rename to public/images/emoji/page_with_curl.png
diff --git a/assets/images/emoji/pager.png b/public/images/emoji/pager.png
similarity index 100%
rename from assets/images/emoji/pager.png
rename to public/images/emoji/pager.png
diff --git a/assets/images/emoji/palm_tree.png b/public/images/emoji/palm_tree.png
similarity index 100%
rename from assets/images/emoji/palm_tree.png
rename to public/images/emoji/palm_tree.png
diff --git a/assets/images/emoji/panda_face.png b/public/images/emoji/panda_face.png
similarity index 100%
rename from assets/images/emoji/panda_face.png
rename to public/images/emoji/panda_face.png
diff --git a/assets/images/emoji/paperclip.png b/public/images/emoji/paperclip.png
similarity index 100%
rename from assets/images/emoji/paperclip.png
rename to public/images/emoji/paperclip.png
diff --git a/assets/images/emoji/parking.png b/public/images/emoji/parking.png
similarity index 100%
rename from assets/images/emoji/parking.png
rename to public/images/emoji/parking.png
diff --git a/assets/images/emoji/part_alternation_mark.png b/public/images/emoji/part_alternation_mark.png
similarity index 100%
rename from assets/images/emoji/part_alternation_mark.png
rename to public/images/emoji/part_alternation_mark.png
diff --git a/assets/images/emoji/partly_sunny.png b/public/images/emoji/partly_sunny.png
similarity index 100%
rename from assets/images/emoji/partly_sunny.png
rename to public/images/emoji/partly_sunny.png
diff --git a/assets/images/emoji/passport_control.png b/public/images/emoji/passport_control.png
similarity index 100%
rename from assets/images/emoji/passport_control.png
rename to public/images/emoji/passport_control.png
diff --git a/assets/images/emoji/paw_prints.png b/public/images/emoji/paw_prints.png
similarity index 100%
rename from assets/images/emoji/paw_prints.png
rename to public/images/emoji/paw_prints.png
diff --git a/assets/images/emoji/peach.png b/public/images/emoji/peach.png
similarity index 100%
rename from assets/images/emoji/peach.png
rename to public/images/emoji/peach.png
diff --git a/assets/images/emoji/pear.png b/public/images/emoji/pear.png
similarity index 100%
rename from assets/images/emoji/pear.png
rename to public/images/emoji/pear.png
diff --git a/assets/images/emoji/pencil.png b/public/images/emoji/pencil.png
similarity index 100%
rename from assets/images/emoji/pencil.png
rename to public/images/emoji/pencil.png
diff --git a/assets/images/emoji/pencil2.png b/public/images/emoji/pencil2.png
similarity index 100%
rename from assets/images/emoji/pencil2.png
rename to public/images/emoji/pencil2.png
diff --git a/assets/images/emoji/penguin.png b/public/images/emoji/penguin.png
similarity index 100%
rename from assets/images/emoji/penguin.png
rename to public/images/emoji/penguin.png
diff --git a/assets/images/emoji/pensive.png b/public/images/emoji/pensive.png
similarity index 100%
rename from assets/images/emoji/pensive.png
rename to public/images/emoji/pensive.png
diff --git a/assets/images/emoji/performing_arts.png b/public/images/emoji/performing_arts.png
similarity index 100%
rename from assets/images/emoji/performing_arts.png
rename to public/images/emoji/performing_arts.png
diff --git a/assets/images/emoji/persevere.png b/public/images/emoji/persevere.png
similarity index 100%
rename from assets/images/emoji/persevere.png
rename to public/images/emoji/persevere.png
diff --git a/assets/images/emoji/person_frowning.png b/public/images/emoji/person_frowning.png
similarity index 100%
rename from assets/images/emoji/person_frowning.png
rename to public/images/emoji/person_frowning.png
diff --git a/assets/images/emoji/person_with_blond_hair.png b/public/images/emoji/person_with_blond_hair.png
similarity index 100%
rename from assets/images/emoji/person_with_blond_hair.png
rename to public/images/emoji/person_with_blond_hair.png
diff --git a/assets/images/emoji/person_with_pouting_face.png b/public/images/emoji/person_with_pouting_face.png
similarity index 100%
rename from assets/images/emoji/person_with_pouting_face.png
rename to public/images/emoji/person_with_pouting_face.png
diff --git a/assets/images/emoji/phone.png b/public/images/emoji/phone.png
similarity index 100%
rename from assets/images/emoji/phone.png
rename to public/images/emoji/phone.png
diff --git a/assets/images/emoji/pig.png b/public/images/emoji/pig.png
similarity index 100%
rename from assets/images/emoji/pig.png
rename to public/images/emoji/pig.png
diff --git a/assets/images/emoji/pig2.png b/public/images/emoji/pig2.png
similarity index 100%
rename from assets/images/emoji/pig2.png
rename to public/images/emoji/pig2.png
diff --git a/assets/images/emoji/pig_nose.png b/public/images/emoji/pig_nose.png
similarity index 100%
rename from assets/images/emoji/pig_nose.png
rename to public/images/emoji/pig_nose.png
diff --git a/assets/images/emoji/pill.png b/public/images/emoji/pill.png
similarity index 100%
rename from assets/images/emoji/pill.png
rename to public/images/emoji/pill.png
diff --git a/assets/images/emoji/pineapple.png b/public/images/emoji/pineapple.png
similarity index 100%
rename from assets/images/emoji/pineapple.png
rename to public/images/emoji/pineapple.png
diff --git a/assets/images/emoji/pisces.png b/public/images/emoji/pisces.png
similarity index 100%
rename from assets/images/emoji/pisces.png
rename to public/images/emoji/pisces.png
diff --git a/assets/images/emoji/pizza.png b/public/images/emoji/pizza.png
similarity index 100%
rename from assets/images/emoji/pizza.png
rename to public/images/emoji/pizza.png
diff --git a/assets/images/emoji/plus1.png b/public/images/emoji/plus1.png
similarity index 100%
rename from assets/images/emoji/plus1.png
rename to public/images/emoji/plus1.png
diff --git a/assets/images/emoji/point_down.png b/public/images/emoji/point_down.png
similarity index 100%
rename from assets/images/emoji/point_down.png
rename to public/images/emoji/point_down.png
diff --git a/assets/images/emoji/point_left.png b/public/images/emoji/point_left.png
similarity index 100%
rename from assets/images/emoji/point_left.png
rename to public/images/emoji/point_left.png
diff --git a/assets/images/emoji/point_right.png b/public/images/emoji/point_right.png
similarity index 100%
rename from assets/images/emoji/point_right.png
rename to public/images/emoji/point_right.png
diff --git a/assets/images/emoji/point_up.png b/public/images/emoji/point_up.png
similarity index 100%
rename from assets/images/emoji/point_up.png
rename to public/images/emoji/point_up.png
diff --git a/assets/images/emoji/point_up_2.png b/public/images/emoji/point_up_2.png
similarity index 100%
rename from assets/images/emoji/point_up_2.png
rename to public/images/emoji/point_up_2.png
diff --git a/assets/images/emoji/police_car.png b/public/images/emoji/police_car.png
similarity index 100%
rename from assets/images/emoji/police_car.png
rename to public/images/emoji/police_car.png
diff --git a/assets/images/emoji/poodle.png b/public/images/emoji/poodle.png
similarity index 100%
rename from assets/images/emoji/poodle.png
rename to public/images/emoji/poodle.png
diff --git a/assets/images/emoji/poop.png b/public/images/emoji/poop.png
similarity index 100%
rename from assets/images/emoji/poop.png
rename to public/images/emoji/poop.png
diff --git a/assets/images/emoji/post_office.png b/public/images/emoji/post_office.png
similarity index 100%
rename from assets/images/emoji/post_office.png
rename to public/images/emoji/post_office.png
diff --git a/assets/images/emoji/postal_horn.png b/public/images/emoji/postal_horn.png
similarity index 100%
rename from assets/images/emoji/postal_horn.png
rename to public/images/emoji/postal_horn.png
diff --git a/assets/images/emoji/postbox.png b/public/images/emoji/postbox.png
similarity index 100%
rename from assets/images/emoji/postbox.png
rename to public/images/emoji/postbox.png
diff --git a/assets/images/emoji/potable_water.png b/public/images/emoji/potable_water.png
similarity index 100%
rename from assets/images/emoji/potable_water.png
rename to public/images/emoji/potable_water.png
diff --git a/assets/images/emoji/pouch.png b/public/images/emoji/pouch.png
similarity index 100%
rename from assets/images/emoji/pouch.png
rename to public/images/emoji/pouch.png
diff --git a/assets/images/emoji/poultry_leg.png b/public/images/emoji/poultry_leg.png
similarity index 100%
rename from assets/images/emoji/poultry_leg.png
rename to public/images/emoji/poultry_leg.png
diff --git a/assets/images/emoji/pound.png b/public/images/emoji/pound.png
similarity index 100%
rename from assets/images/emoji/pound.png
rename to public/images/emoji/pound.png
diff --git a/assets/images/emoji/pouting_cat.png b/public/images/emoji/pouting_cat.png
similarity index 100%
rename from assets/images/emoji/pouting_cat.png
rename to public/images/emoji/pouting_cat.png
diff --git a/assets/images/emoji/pray.png b/public/images/emoji/pray.png
similarity index 100%
rename from assets/images/emoji/pray.png
rename to public/images/emoji/pray.png
diff --git a/assets/images/emoji/princess.png b/public/images/emoji/princess.png
similarity index 100%
rename from assets/images/emoji/princess.png
rename to public/images/emoji/princess.png
diff --git a/assets/images/emoji/punch.png b/public/images/emoji/punch.png
similarity index 100%
rename from assets/images/emoji/punch.png
rename to public/images/emoji/punch.png
diff --git a/assets/images/emoji/purple_heart.png b/public/images/emoji/purple_heart.png
similarity index 100%
rename from assets/images/emoji/purple_heart.png
rename to public/images/emoji/purple_heart.png
diff --git a/assets/images/emoji/purse.png b/public/images/emoji/purse.png
similarity index 100%
rename from assets/images/emoji/purse.png
rename to public/images/emoji/purse.png
diff --git a/assets/images/emoji/pushpin.png b/public/images/emoji/pushpin.png
similarity index 100%
rename from assets/images/emoji/pushpin.png
rename to public/images/emoji/pushpin.png
diff --git a/assets/images/emoji/put_litter_in_its_place.png b/public/images/emoji/put_litter_in_its_place.png
similarity index 100%
rename from assets/images/emoji/put_litter_in_its_place.png
rename to public/images/emoji/put_litter_in_its_place.png
diff --git a/assets/images/emoji/question.png b/public/images/emoji/question.png
similarity index 100%
rename from assets/images/emoji/question.png
rename to public/images/emoji/question.png
diff --git a/assets/images/emoji/rabbit.png b/public/images/emoji/rabbit.png
similarity index 100%
rename from assets/images/emoji/rabbit.png
rename to public/images/emoji/rabbit.png
diff --git a/assets/images/emoji/rabbit2.png b/public/images/emoji/rabbit2.png
similarity index 100%
rename from assets/images/emoji/rabbit2.png
rename to public/images/emoji/rabbit2.png
diff --git a/assets/images/emoji/racehorse.png b/public/images/emoji/racehorse.png
similarity index 100%
rename from assets/images/emoji/racehorse.png
rename to public/images/emoji/racehorse.png
diff --git a/assets/images/emoji/radio.png b/public/images/emoji/radio.png
similarity index 100%
rename from assets/images/emoji/radio.png
rename to public/images/emoji/radio.png
diff --git a/assets/images/emoji/radio_button.png b/public/images/emoji/radio_button.png
similarity index 100%
rename from assets/images/emoji/radio_button.png
rename to public/images/emoji/radio_button.png
diff --git a/assets/images/emoji/rage.png b/public/images/emoji/rage.png
similarity index 100%
rename from assets/images/emoji/rage.png
rename to public/images/emoji/rage.png
diff --git a/assets/images/emoji/rage1.png b/public/images/emoji/rage1.png
similarity index 100%
rename from assets/images/emoji/rage1.png
rename to public/images/emoji/rage1.png
diff --git a/assets/images/emoji/rage2.png b/public/images/emoji/rage2.png
similarity index 100%
rename from assets/images/emoji/rage2.png
rename to public/images/emoji/rage2.png
diff --git a/assets/images/emoji/rage3.png b/public/images/emoji/rage3.png
similarity index 100%
rename from assets/images/emoji/rage3.png
rename to public/images/emoji/rage3.png
diff --git a/assets/images/emoji/rage4.png b/public/images/emoji/rage4.png
similarity index 100%
rename from assets/images/emoji/rage4.png
rename to public/images/emoji/rage4.png
diff --git a/assets/images/emoji/railway_car.png b/public/images/emoji/railway_car.png
similarity index 100%
rename from assets/images/emoji/railway_car.png
rename to public/images/emoji/railway_car.png
diff --git a/assets/images/emoji/rainbow.png b/public/images/emoji/rainbow.png
similarity index 100%
rename from assets/images/emoji/rainbow.png
rename to public/images/emoji/rainbow.png
diff --git a/assets/images/emoji/raised_hand.png b/public/images/emoji/raised_hand.png
similarity index 100%
rename from assets/images/emoji/raised_hand.png
rename to public/images/emoji/raised_hand.png
diff --git a/assets/images/emoji/raised_hands.png b/public/images/emoji/raised_hands.png
similarity index 100%
rename from assets/images/emoji/raised_hands.png
rename to public/images/emoji/raised_hands.png
diff --git a/assets/images/emoji/raising_hand.png b/public/images/emoji/raising_hand.png
similarity index 100%
rename from assets/images/emoji/raising_hand.png
rename to public/images/emoji/raising_hand.png
diff --git a/assets/images/emoji/ram.png b/public/images/emoji/ram.png
similarity index 100%
rename from assets/images/emoji/ram.png
rename to public/images/emoji/ram.png
diff --git a/assets/images/emoji/ramen.png b/public/images/emoji/ramen.png
similarity index 100%
rename from assets/images/emoji/ramen.png
rename to public/images/emoji/ramen.png
diff --git a/assets/images/emoji/rat.png b/public/images/emoji/rat.png
similarity index 100%
rename from assets/images/emoji/rat.png
rename to public/images/emoji/rat.png
diff --git a/assets/images/emoji/recycle.png b/public/images/emoji/recycle.png
similarity index 100%
rename from assets/images/emoji/recycle.png
rename to public/images/emoji/recycle.png
diff --git a/assets/images/emoji/red_car.png b/public/images/emoji/red_car.png
similarity index 100%
rename from assets/images/emoji/red_car.png
rename to public/images/emoji/red_car.png
diff --git a/assets/images/emoji/red_circle.png b/public/images/emoji/red_circle.png
similarity index 100%
rename from assets/images/emoji/red_circle.png
rename to public/images/emoji/red_circle.png
diff --git a/assets/images/emoji/registered.png b/public/images/emoji/registered.png
similarity index 100%
rename from assets/images/emoji/registered.png
rename to public/images/emoji/registered.png
diff --git a/assets/images/emoji/relaxed.png b/public/images/emoji/relaxed.png
similarity index 100%
rename from assets/images/emoji/relaxed.png
rename to public/images/emoji/relaxed.png
diff --git a/assets/images/emoji/relieved.png b/public/images/emoji/relieved.png
similarity index 100%
rename from assets/images/emoji/relieved.png
rename to public/images/emoji/relieved.png
diff --git a/assets/images/emoji/repeat.png b/public/images/emoji/repeat.png
similarity index 100%
rename from assets/images/emoji/repeat.png
rename to public/images/emoji/repeat.png
diff --git a/assets/images/emoji/repeat_one.png b/public/images/emoji/repeat_one.png
similarity index 100%
rename from assets/images/emoji/repeat_one.png
rename to public/images/emoji/repeat_one.png
diff --git a/assets/images/emoji/restroom.png b/public/images/emoji/restroom.png
similarity index 100%
rename from assets/images/emoji/restroom.png
rename to public/images/emoji/restroom.png
diff --git a/assets/images/emoji/revolving_hearts.png b/public/images/emoji/revolving_hearts.png
similarity index 100%
rename from assets/images/emoji/revolving_hearts.png
rename to public/images/emoji/revolving_hearts.png
diff --git a/assets/images/emoji/rewind.png b/public/images/emoji/rewind.png
similarity index 100%
rename from assets/images/emoji/rewind.png
rename to public/images/emoji/rewind.png
diff --git a/assets/images/emoji/ribbon.png b/public/images/emoji/ribbon.png
similarity index 100%
rename from assets/images/emoji/ribbon.png
rename to public/images/emoji/ribbon.png
diff --git a/assets/images/emoji/rice.png b/public/images/emoji/rice.png
similarity index 100%
rename from assets/images/emoji/rice.png
rename to public/images/emoji/rice.png
diff --git a/assets/images/emoji/rice_ball.png b/public/images/emoji/rice_ball.png
similarity index 100%
rename from assets/images/emoji/rice_ball.png
rename to public/images/emoji/rice_ball.png
diff --git a/assets/images/emoji/rice_cracker.png b/public/images/emoji/rice_cracker.png
similarity index 100%
rename from assets/images/emoji/rice_cracker.png
rename to public/images/emoji/rice_cracker.png
diff --git a/assets/images/emoji/rice_scene.png b/public/images/emoji/rice_scene.png
similarity index 100%
rename from assets/images/emoji/rice_scene.png
rename to public/images/emoji/rice_scene.png
diff --git a/assets/images/emoji/ring.png b/public/images/emoji/ring.png
similarity index 100%
rename from assets/images/emoji/ring.png
rename to public/images/emoji/ring.png
diff --git a/assets/images/emoji/rocket.png b/public/images/emoji/rocket.png
similarity index 100%
rename from assets/images/emoji/rocket.png
rename to public/images/emoji/rocket.png
diff --git a/assets/images/emoji/roller_coaster.png b/public/images/emoji/roller_coaster.png
similarity index 100%
rename from assets/images/emoji/roller_coaster.png
rename to public/images/emoji/roller_coaster.png
diff --git a/assets/images/emoji/rooster.png b/public/images/emoji/rooster.png
similarity index 100%
rename from assets/images/emoji/rooster.png
rename to public/images/emoji/rooster.png
diff --git a/assets/images/emoji/rose.png b/public/images/emoji/rose.png
similarity index 100%
rename from assets/images/emoji/rose.png
rename to public/images/emoji/rose.png
diff --git a/assets/images/emoji/rotating_light.png b/public/images/emoji/rotating_light.png
similarity index 100%
rename from assets/images/emoji/rotating_light.png
rename to public/images/emoji/rotating_light.png
diff --git a/assets/images/emoji/round_pushpin.png b/public/images/emoji/round_pushpin.png
similarity index 100%
rename from assets/images/emoji/round_pushpin.png
rename to public/images/emoji/round_pushpin.png
diff --git a/assets/images/emoji/rowboat.png b/public/images/emoji/rowboat.png
similarity index 100%
rename from assets/images/emoji/rowboat.png
rename to public/images/emoji/rowboat.png
diff --git a/assets/images/emoji/ru.png b/public/images/emoji/ru.png
similarity index 100%
rename from assets/images/emoji/ru.png
rename to public/images/emoji/ru.png
diff --git a/assets/images/emoji/rugby_football.png b/public/images/emoji/rugby_football.png
similarity index 100%
rename from assets/images/emoji/rugby_football.png
rename to public/images/emoji/rugby_football.png
diff --git a/assets/images/emoji/runner.png b/public/images/emoji/runner.png
similarity index 100%
rename from assets/images/emoji/runner.png
rename to public/images/emoji/runner.png
diff --git a/assets/images/emoji/running.png b/public/images/emoji/running.png
similarity index 100%
rename from assets/images/emoji/running.png
rename to public/images/emoji/running.png
diff --git a/assets/images/emoji/running_shirt_with_sash.png b/public/images/emoji/running_shirt_with_sash.png
similarity index 100%
rename from assets/images/emoji/running_shirt_with_sash.png
rename to public/images/emoji/running_shirt_with_sash.png
diff --git a/assets/images/emoji/sa.png b/public/images/emoji/sa.png
similarity index 100%
rename from assets/images/emoji/sa.png
rename to public/images/emoji/sa.png
diff --git a/assets/images/emoji/sagittarius.png b/public/images/emoji/sagittarius.png
similarity index 100%
rename from assets/images/emoji/sagittarius.png
rename to public/images/emoji/sagittarius.png
diff --git a/assets/images/emoji/sailboat.png b/public/images/emoji/sailboat.png
similarity index 100%
rename from assets/images/emoji/sailboat.png
rename to public/images/emoji/sailboat.png
diff --git a/assets/images/emoji/sake.png b/public/images/emoji/sake.png
similarity index 100%
rename from assets/images/emoji/sake.png
rename to public/images/emoji/sake.png
diff --git a/assets/images/emoji/sandal.png b/public/images/emoji/sandal.png
similarity index 100%
rename from assets/images/emoji/sandal.png
rename to public/images/emoji/sandal.png
diff --git a/assets/images/emoji/santa.png b/public/images/emoji/santa.png
similarity index 100%
rename from assets/images/emoji/santa.png
rename to public/images/emoji/santa.png
diff --git a/assets/images/emoji/satellite.png b/public/images/emoji/satellite.png
similarity index 100%
rename from assets/images/emoji/satellite.png
rename to public/images/emoji/satellite.png
diff --git a/assets/images/emoji/satisfied.png b/public/images/emoji/satisfied.png
similarity index 100%
rename from assets/images/emoji/satisfied.png
rename to public/images/emoji/satisfied.png
diff --git a/assets/images/emoji/saxophone.png b/public/images/emoji/saxophone.png
similarity index 100%
rename from assets/images/emoji/saxophone.png
rename to public/images/emoji/saxophone.png
diff --git a/assets/images/emoji/school.png b/public/images/emoji/school.png
similarity index 100%
rename from assets/images/emoji/school.png
rename to public/images/emoji/school.png
diff --git a/assets/images/emoji/school_satchel.png b/public/images/emoji/school_satchel.png
similarity index 100%
rename from assets/images/emoji/school_satchel.png
rename to public/images/emoji/school_satchel.png
diff --git a/assets/images/emoji/scissors.png b/public/images/emoji/scissors.png
similarity index 100%
rename from assets/images/emoji/scissors.png
rename to public/images/emoji/scissors.png
diff --git a/assets/images/emoji/scorpius.png b/public/images/emoji/scorpius.png
similarity index 100%
rename from assets/images/emoji/scorpius.png
rename to public/images/emoji/scorpius.png
diff --git a/assets/images/emoji/scream.png b/public/images/emoji/scream.png
similarity index 100%
rename from assets/images/emoji/scream.png
rename to public/images/emoji/scream.png
diff --git a/assets/images/emoji/scream_cat.png b/public/images/emoji/scream_cat.png
similarity index 100%
rename from assets/images/emoji/scream_cat.png
rename to public/images/emoji/scream_cat.png
diff --git a/assets/images/emoji/scroll.png b/public/images/emoji/scroll.png
similarity index 100%
rename from assets/images/emoji/scroll.png
rename to public/images/emoji/scroll.png
diff --git a/assets/images/emoji/seat.png b/public/images/emoji/seat.png
similarity index 100%
rename from assets/images/emoji/seat.png
rename to public/images/emoji/seat.png
diff --git a/assets/images/emoji/secret.png b/public/images/emoji/secret.png
similarity index 100%
rename from assets/images/emoji/secret.png
rename to public/images/emoji/secret.png
diff --git a/assets/images/emoji/see_no_evil.png b/public/images/emoji/see_no_evil.png
similarity index 100%
rename from assets/images/emoji/see_no_evil.png
rename to public/images/emoji/see_no_evil.png
diff --git a/assets/images/emoji/seedling.png b/public/images/emoji/seedling.png
similarity index 100%
rename from assets/images/emoji/seedling.png
rename to public/images/emoji/seedling.png
diff --git a/assets/images/emoji/seven.png b/public/images/emoji/seven.png
similarity index 100%
rename from assets/images/emoji/seven.png
rename to public/images/emoji/seven.png
diff --git a/assets/images/emoji/shaved_ice.png b/public/images/emoji/shaved_ice.png
similarity index 100%
rename from assets/images/emoji/shaved_ice.png
rename to public/images/emoji/shaved_ice.png
diff --git a/assets/images/emoji/sheep.png b/public/images/emoji/sheep.png
similarity index 100%
rename from assets/images/emoji/sheep.png
rename to public/images/emoji/sheep.png
diff --git a/assets/images/emoji/shell.png b/public/images/emoji/shell.png
similarity index 100%
rename from assets/images/emoji/shell.png
rename to public/images/emoji/shell.png
diff --git a/assets/images/emoji/ship.png b/public/images/emoji/ship.png
similarity index 100%
rename from assets/images/emoji/ship.png
rename to public/images/emoji/ship.png
diff --git a/assets/images/emoji/shipit.png b/public/images/emoji/shipit.png
similarity index 100%
rename from assets/images/emoji/shipit.png
rename to public/images/emoji/shipit.png
diff --git a/assets/images/emoji/shirt.png b/public/images/emoji/shirt.png
similarity index 100%
rename from assets/images/emoji/shirt.png
rename to public/images/emoji/shirt.png
diff --git a/assets/images/emoji/shit.png b/public/images/emoji/shit.png
similarity index 100%
rename from assets/images/emoji/shit.png
rename to public/images/emoji/shit.png
diff --git a/assets/images/emoji/shoe.png b/public/images/emoji/shoe.png
similarity index 100%
rename from assets/images/emoji/shoe.png
rename to public/images/emoji/shoe.png
diff --git a/assets/images/emoji/shower.png b/public/images/emoji/shower.png
similarity index 100%
rename from assets/images/emoji/shower.png
rename to public/images/emoji/shower.png
diff --git a/assets/images/emoji/signal_strength.png b/public/images/emoji/signal_strength.png
similarity index 100%
rename from assets/images/emoji/signal_strength.png
rename to public/images/emoji/signal_strength.png
diff --git a/assets/images/emoji/six.png b/public/images/emoji/six.png
similarity index 100%
rename from assets/images/emoji/six.png
rename to public/images/emoji/six.png
diff --git a/assets/images/emoji/six_pointed_star.png b/public/images/emoji/six_pointed_star.png
similarity index 100%
rename from assets/images/emoji/six_pointed_star.png
rename to public/images/emoji/six_pointed_star.png
diff --git a/assets/images/emoji/ski.png b/public/images/emoji/ski.png
similarity index 100%
rename from assets/images/emoji/ski.png
rename to public/images/emoji/ski.png
diff --git a/assets/images/emoji/skull.png b/public/images/emoji/skull.png
similarity index 100%
rename from assets/images/emoji/skull.png
rename to public/images/emoji/skull.png
diff --git a/assets/images/emoji/sleeping.png b/public/images/emoji/sleeping.png
similarity index 100%
rename from assets/images/emoji/sleeping.png
rename to public/images/emoji/sleeping.png
diff --git a/assets/images/emoji/sleepy.png b/public/images/emoji/sleepy.png
similarity index 100%
rename from assets/images/emoji/sleepy.png
rename to public/images/emoji/sleepy.png
diff --git a/assets/images/emoji/slot_machine.png b/public/images/emoji/slot_machine.png
similarity index 100%
rename from assets/images/emoji/slot_machine.png
rename to public/images/emoji/slot_machine.png
diff --git a/assets/images/emoji/small_blue_diamond.png b/public/images/emoji/small_blue_diamond.png
similarity index 100%
rename from assets/images/emoji/small_blue_diamond.png
rename to public/images/emoji/small_blue_diamond.png
diff --git a/assets/images/emoji/small_orange_diamond.png b/public/images/emoji/small_orange_diamond.png
similarity index 100%
rename from assets/images/emoji/small_orange_diamond.png
rename to public/images/emoji/small_orange_diamond.png
diff --git a/assets/images/emoji/small_red_triangle.png b/public/images/emoji/small_red_triangle.png
similarity index 100%
rename from assets/images/emoji/small_red_triangle.png
rename to public/images/emoji/small_red_triangle.png
diff --git a/assets/images/emoji/small_red_triangle_down.png b/public/images/emoji/small_red_triangle_down.png
similarity index 100%
rename from assets/images/emoji/small_red_triangle_down.png
rename to public/images/emoji/small_red_triangle_down.png
diff --git a/assets/images/emoji/smile.png b/public/images/emoji/smile.png
similarity index 100%
rename from assets/images/emoji/smile.png
rename to public/images/emoji/smile.png
diff --git a/assets/images/emoji/smile_cat.png b/public/images/emoji/smile_cat.png
similarity index 100%
rename from assets/images/emoji/smile_cat.png
rename to public/images/emoji/smile_cat.png
diff --git a/assets/images/emoji/smiley.png b/public/images/emoji/smiley.png
similarity index 100%
rename from assets/images/emoji/smiley.png
rename to public/images/emoji/smiley.png
diff --git a/assets/images/emoji/smiley_cat.png b/public/images/emoji/smiley_cat.png
similarity index 100%
rename from assets/images/emoji/smiley_cat.png
rename to public/images/emoji/smiley_cat.png
diff --git a/assets/images/emoji/smiling_imp.png b/public/images/emoji/smiling_imp.png
similarity index 100%
rename from assets/images/emoji/smiling_imp.png
rename to public/images/emoji/smiling_imp.png
diff --git a/assets/images/emoji/smirk.png b/public/images/emoji/smirk.png
similarity index 100%
rename from assets/images/emoji/smirk.png
rename to public/images/emoji/smirk.png
diff --git a/assets/images/emoji/smirk_cat.png b/public/images/emoji/smirk_cat.png
similarity index 100%
rename from assets/images/emoji/smirk_cat.png
rename to public/images/emoji/smirk_cat.png
diff --git a/assets/images/emoji/smoking.png b/public/images/emoji/smoking.png
similarity index 100%
rename from assets/images/emoji/smoking.png
rename to public/images/emoji/smoking.png
diff --git a/assets/images/emoji/snail.png b/public/images/emoji/snail.png
similarity index 100%
rename from assets/images/emoji/snail.png
rename to public/images/emoji/snail.png
diff --git a/assets/images/emoji/snake.png b/public/images/emoji/snake.png
similarity index 100%
rename from assets/images/emoji/snake.png
rename to public/images/emoji/snake.png
diff --git a/assets/images/emoji/snowboarder.png b/public/images/emoji/snowboarder.png
similarity index 100%
rename from assets/images/emoji/snowboarder.png
rename to public/images/emoji/snowboarder.png
diff --git a/assets/images/emoji/snowflake.png b/public/images/emoji/snowflake.png
similarity index 100%
rename from assets/images/emoji/snowflake.png
rename to public/images/emoji/snowflake.png
diff --git a/assets/images/emoji/snowman.png b/public/images/emoji/snowman.png
similarity index 100%
rename from assets/images/emoji/snowman.png
rename to public/images/emoji/snowman.png
diff --git a/assets/images/emoji/sob.png b/public/images/emoji/sob.png
similarity index 100%
rename from assets/images/emoji/sob.png
rename to public/images/emoji/sob.png
diff --git a/assets/images/emoji/soccer.png b/public/images/emoji/soccer.png
similarity index 100%
rename from assets/images/emoji/soccer.png
rename to public/images/emoji/soccer.png
diff --git a/assets/images/emoji/soon.png b/public/images/emoji/soon.png
similarity index 100%
rename from assets/images/emoji/soon.png
rename to public/images/emoji/soon.png
diff --git a/assets/images/emoji/sos.png b/public/images/emoji/sos.png
similarity index 100%
rename from assets/images/emoji/sos.png
rename to public/images/emoji/sos.png
diff --git a/assets/images/emoji/sound.png b/public/images/emoji/sound.png
similarity index 100%
rename from assets/images/emoji/sound.png
rename to public/images/emoji/sound.png
diff --git a/assets/images/emoji/space_invader.png b/public/images/emoji/space_invader.png
similarity index 100%
rename from assets/images/emoji/space_invader.png
rename to public/images/emoji/space_invader.png
diff --git a/assets/images/emoji/spades.png b/public/images/emoji/spades.png
similarity index 100%
rename from assets/images/emoji/spades.png
rename to public/images/emoji/spades.png
diff --git a/assets/images/emoji/spaghetti.png b/public/images/emoji/spaghetti.png
similarity index 100%
rename from assets/images/emoji/spaghetti.png
rename to public/images/emoji/spaghetti.png
diff --git a/assets/images/emoji/sparkler.png b/public/images/emoji/sparkler.png
similarity index 100%
rename from assets/images/emoji/sparkler.png
rename to public/images/emoji/sparkler.png
diff --git a/assets/images/emoji/sparkles.png b/public/images/emoji/sparkles.png
similarity index 100%
rename from assets/images/emoji/sparkles.png
rename to public/images/emoji/sparkles.png
diff --git a/assets/images/emoji/sparkling_heart.png b/public/images/emoji/sparkling_heart.png
similarity index 100%
rename from assets/images/emoji/sparkling_heart.png
rename to public/images/emoji/sparkling_heart.png
diff --git a/assets/images/emoji/speak_no_evil.png b/public/images/emoji/speak_no_evil.png
similarity index 100%
rename from assets/images/emoji/speak_no_evil.png
rename to public/images/emoji/speak_no_evil.png
diff --git a/assets/images/emoji/speaker.png b/public/images/emoji/speaker.png
similarity index 100%
rename from assets/images/emoji/speaker.png
rename to public/images/emoji/speaker.png
diff --git a/assets/images/emoji/speech_balloon.png b/public/images/emoji/speech_balloon.png
similarity index 100%
rename from assets/images/emoji/speech_balloon.png
rename to public/images/emoji/speech_balloon.png
diff --git a/assets/images/emoji/speedboat.png b/public/images/emoji/speedboat.png
similarity index 100%
rename from assets/images/emoji/speedboat.png
rename to public/images/emoji/speedboat.png
diff --git a/assets/images/emoji/squirrel.png b/public/images/emoji/squirrel.png
similarity index 100%
rename from assets/images/emoji/squirrel.png
rename to public/images/emoji/squirrel.png
diff --git a/assets/images/emoji/star.png b/public/images/emoji/star.png
similarity index 100%
rename from assets/images/emoji/star.png
rename to public/images/emoji/star.png
diff --git a/assets/images/emoji/star2.png b/public/images/emoji/star2.png
similarity index 100%
rename from assets/images/emoji/star2.png
rename to public/images/emoji/star2.png
diff --git a/assets/images/emoji/stars.png b/public/images/emoji/stars.png
similarity index 100%
rename from assets/images/emoji/stars.png
rename to public/images/emoji/stars.png
diff --git a/assets/images/emoji/station.png b/public/images/emoji/station.png
similarity index 100%
rename from assets/images/emoji/station.png
rename to public/images/emoji/station.png
diff --git a/assets/images/emoji/statue_of_liberty.png b/public/images/emoji/statue_of_liberty.png
similarity index 100%
rename from assets/images/emoji/statue_of_liberty.png
rename to public/images/emoji/statue_of_liberty.png
diff --git a/assets/images/emoji/steam_locomotive.png b/public/images/emoji/steam_locomotive.png
similarity index 100%
rename from assets/images/emoji/steam_locomotive.png
rename to public/images/emoji/steam_locomotive.png
diff --git a/assets/images/emoji/stew.png b/public/images/emoji/stew.png
similarity index 100%
rename from assets/images/emoji/stew.png
rename to public/images/emoji/stew.png
diff --git a/assets/images/emoji/straight_ruler.png b/public/images/emoji/straight_ruler.png
similarity index 100%
rename from assets/images/emoji/straight_ruler.png
rename to public/images/emoji/straight_ruler.png
diff --git a/assets/images/emoji/strawberry.png b/public/images/emoji/strawberry.png
similarity index 100%
rename from assets/images/emoji/strawberry.png
rename to public/images/emoji/strawberry.png
diff --git a/assets/images/emoji/stuck_out_tongue.png b/public/images/emoji/stuck_out_tongue.png
similarity index 100%
rename from assets/images/emoji/stuck_out_tongue.png
rename to public/images/emoji/stuck_out_tongue.png
diff --git a/assets/images/emoji/stuck_out_tongue_closed_eyes.png b/public/images/emoji/stuck_out_tongue_closed_eyes.png
similarity index 100%
rename from assets/images/emoji/stuck_out_tongue_closed_eyes.png
rename to public/images/emoji/stuck_out_tongue_closed_eyes.png
diff --git a/assets/images/emoji/stuck_out_tongue_winking_eye.png b/public/images/emoji/stuck_out_tongue_winking_eye.png
similarity index 100%
rename from assets/images/emoji/stuck_out_tongue_winking_eye.png
rename to public/images/emoji/stuck_out_tongue_winking_eye.png
diff --git a/assets/images/emoji/sun_with_face.png b/public/images/emoji/sun_with_face.png
similarity index 100%
rename from assets/images/emoji/sun_with_face.png
rename to public/images/emoji/sun_with_face.png
diff --git a/assets/images/emoji/sunflower.png b/public/images/emoji/sunflower.png
similarity index 100%
rename from assets/images/emoji/sunflower.png
rename to public/images/emoji/sunflower.png
diff --git a/assets/images/emoji/sunglasses.png b/public/images/emoji/sunglasses.png
similarity index 100%
rename from assets/images/emoji/sunglasses.png
rename to public/images/emoji/sunglasses.png
diff --git a/assets/images/emoji/sunny.png b/public/images/emoji/sunny.png
similarity index 100%
rename from assets/images/emoji/sunny.png
rename to public/images/emoji/sunny.png
diff --git a/assets/images/emoji/sunrise.png b/public/images/emoji/sunrise.png
similarity index 100%
rename from assets/images/emoji/sunrise.png
rename to public/images/emoji/sunrise.png
diff --git a/assets/images/emoji/sunrise_over_mountains.png b/public/images/emoji/sunrise_over_mountains.png
similarity index 100%
rename from assets/images/emoji/sunrise_over_mountains.png
rename to public/images/emoji/sunrise_over_mountains.png
diff --git a/assets/images/emoji/surfer.png b/public/images/emoji/surfer.png
similarity index 100%
rename from assets/images/emoji/surfer.png
rename to public/images/emoji/surfer.png
diff --git a/assets/images/emoji/sushi.png b/public/images/emoji/sushi.png
similarity index 100%
rename from assets/images/emoji/sushi.png
rename to public/images/emoji/sushi.png
diff --git a/assets/images/emoji/suspect.png b/public/images/emoji/suspect.png
similarity index 100%
rename from assets/images/emoji/suspect.png
rename to public/images/emoji/suspect.png
diff --git a/assets/images/emoji/suspension_railway.png b/public/images/emoji/suspension_railway.png
similarity index 100%
rename from assets/images/emoji/suspension_railway.png
rename to public/images/emoji/suspension_railway.png
diff --git a/assets/images/emoji/sweat.png b/public/images/emoji/sweat.png
similarity index 100%
rename from assets/images/emoji/sweat.png
rename to public/images/emoji/sweat.png
diff --git a/assets/images/emoji/sweat_drops.png b/public/images/emoji/sweat_drops.png
similarity index 100%
rename from assets/images/emoji/sweat_drops.png
rename to public/images/emoji/sweat_drops.png
diff --git a/assets/images/emoji/sweat_smile.png b/public/images/emoji/sweat_smile.png
similarity index 100%
rename from assets/images/emoji/sweat_smile.png
rename to public/images/emoji/sweat_smile.png
diff --git a/assets/images/emoji/sweet_potato.png b/public/images/emoji/sweet_potato.png
similarity index 100%
rename from assets/images/emoji/sweet_potato.png
rename to public/images/emoji/sweet_potato.png
diff --git a/assets/images/emoji/swimmer.png b/public/images/emoji/swimmer.png
similarity index 100%
rename from assets/images/emoji/swimmer.png
rename to public/images/emoji/swimmer.png
diff --git a/assets/images/emoji/symbols.png b/public/images/emoji/symbols.png
similarity index 100%
rename from assets/images/emoji/symbols.png
rename to public/images/emoji/symbols.png
diff --git a/assets/images/emoji/syringe.png b/public/images/emoji/syringe.png
similarity index 100%
rename from assets/images/emoji/syringe.png
rename to public/images/emoji/syringe.png
diff --git a/assets/images/emoji/tada.png b/public/images/emoji/tada.png
similarity index 100%
rename from assets/images/emoji/tada.png
rename to public/images/emoji/tada.png
diff --git a/assets/images/emoji/tanabata_tree.png b/public/images/emoji/tanabata_tree.png
similarity index 100%
rename from assets/images/emoji/tanabata_tree.png
rename to public/images/emoji/tanabata_tree.png
diff --git a/assets/images/emoji/tangerine.png b/public/images/emoji/tangerine.png
similarity index 100%
rename from assets/images/emoji/tangerine.png
rename to public/images/emoji/tangerine.png
diff --git a/assets/images/emoji/taurus.png b/public/images/emoji/taurus.png
similarity index 100%
rename from assets/images/emoji/taurus.png
rename to public/images/emoji/taurus.png
diff --git a/assets/images/emoji/taxi.png b/public/images/emoji/taxi.png
similarity index 100%
rename from assets/images/emoji/taxi.png
rename to public/images/emoji/taxi.png
diff --git a/assets/images/emoji/tea.png b/public/images/emoji/tea.png
similarity index 100%
rename from assets/images/emoji/tea.png
rename to public/images/emoji/tea.png
diff --git a/assets/images/emoji/telephone.png b/public/images/emoji/telephone.png
similarity index 100%
rename from assets/images/emoji/telephone.png
rename to public/images/emoji/telephone.png
diff --git a/assets/images/emoji/telephone_receiver.png b/public/images/emoji/telephone_receiver.png
similarity index 100%
rename from assets/images/emoji/telephone_receiver.png
rename to public/images/emoji/telephone_receiver.png
diff --git a/assets/images/emoji/telescope.png b/public/images/emoji/telescope.png
similarity index 100%
rename from assets/images/emoji/telescope.png
rename to public/images/emoji/telescope.png
diff --git a/assets/images/emoji/tennis.png b/public/images/emoji/tennis.png
similarity index 100%
rename from assets/images/emoji/tennis.png
rename to public/images/emoji/tennis.png
diff --git a/assets/images/emoji/tent.png b/public/images/emoji/tent.png
similarity index 100%
rename from assets/images/emoji/tent.png
rename to public/images/emoji/tent.png
diff --git a/assets/images/emoji/thought_balloon.png b/public/images/emoji/thought_balloon.png
similarity index 100%
rename from assets/images/emoji/thought_balloon.png
rename to public/images/emoji/thought_balloon.png
diff --git a/assets/images/emoji/three.png b/public/images/emoji/three.png
similarity index 100%
rename from assets/images/emoji/three.png
rename to public/images/emoji/three.png
diff --git a/assets/images/emoji/thumbsdown.png b/public/images/emoji/thumbsdown.png
similarity index 100%
rename from assets/images/emoji/thumbsdown.png
rename to public/images/emoji/thumbsdown.png
diff --git a/assets/images/emoji/thumbsup.png b/public/images/emoji/thumbsup.png
similarity index 100%
rename from assets/images/emoji/thumbsup.png
rename to public/images/emoji/thumbsup.png
diff --git a/assets/images/emoji/ticket.png b/public/images/emoji/ticket.png
similarity index 100%
rename from assets/images/emoji/ticket.png
rename to public/images/emoji/ticket.png
diff --git a/assets/images/emoji/tiger.png b/public/images/emoji/tiger.png
similarity index 100%
rename from assets/images/emoji/tiger.png
rename to public/images/emoji/tiger.png
diff --git a/assets/images/emoji/tiger2.png b/public/images/emoji/tiger2.png
similarity index 100%
rename from assets/images/emoji/tiger2.png
rename to public/images/emoji/tiger2.png
diff --git a/assets/images/emoji/tired_face.png b/public/images/emoji/tired_face.png
similarity index 100%
rename from assets/images/emoji/tired_face.png
rename to public/images/emoji/tired_face.png
diff --git a/assets/images/emoji/tm.png b/public/images/emoji/tm.png
similarity index 100%
rename from assets/images/emoji/tm.png
rename to public/images/emoji/tm.png
diff --git a/assets/images/emoji/toilet.png b/public/images/emoji/toilet.png
similarity index 100%
rename from assets/images/emoji/toilet.png
rename to public/images/emoji/toilet.png
diff --git a/assets/images/emoji/tokyo_tower.png b/public/images/emoji/tokyo_tower.png
similarity index 100%
rename from assets/images/emoji/tokyo_tower.png
rename to public/images/emoji/tokyo_tower.png
diff --git a/assets/images/emoji/tomato.png b/public/images/emoji/tomato.png
similarity index 100%
rename from assets/images/emoji/tomato.png
rename to public/images/emoji/tomato.png
diff --git a/assets/images/emoji/tongue.png b/public/images/emoji/tongue.png
similarity index 100%
rename from assets/images/emoji/tongue.png
rename to public/images/emoji/tongue.png
diff --git a/assets/images/emoji/top.png b/public/images/emoji/top.png
similarity index 100%
rename from assets/images/emoji/top.png
rename to public/images/emoji/top.png
diff --git a/assets/images/emoji/tophat.png b/public/images/emoji/tophat.png
similarity index 100%
rename from assets/images/emoji/tophat.png
rename to public/images/emoji/tophat.png
diff --git a/assets/images/emoji/tractor.png b/public/images/emoji/tractor.png
similarity index 100%
rename from assets/images/emoji/tractor.png
rename to public/images/emoji/tractor.png
diff --git a/assets/images/emoji/traffic_light.png b/public/images/emoji/traffic_light.png
similarity index 100%
rename from assets/images/emoji/traffic_light.png
rename to public/images/emoji/traffic_light.png
diff --git a/assets/images/emoji/train.png b/public/images/emoji/train.png
similarity index 100%
rename from assets/images/emoji/train.png
rename to public/images/emoji/train.png
diff --git a/assets/images/emoji/train2.png b/public/images/emoji/train2.png
similarity index 100%
rename from assets/images/emoji/train2.png
rename to public/images/emoji/train2.png
diff --git a/assets/images/emoji/tram.png b/public/images/emoji/tram.png
similarity index 100%
rename from assets/images/emoji/tram.png
rename to public/images/emoji/tram.png
diff --git a/assets/images/emoji/triangular_flag_on_post.png b/public/images/emoji/triangular_flag_on_post.png
similarity index 100%
rename from assets/images/emoji/triangular_flag_on_post.png
rename to public/images/emoji/triangular_flag_on_post.png
diff --git a/assets/images/emoji/triangular_ruler.png b/public/images/emoji/triangular_ruler.png
similarity index 100%
rename from assets/images/emoji/triangular_ruler.png
rename to public/images/emoji/triangular_ruler.png
diff --git a/assets/images/emoji/trident.png b/public/images/emoji/trident.png
similarity index 100%
rename from assets/images/emoji/trident.png
rename to public/images/emoji/trident.png
diff --git a/assets/images/emoji/triumph.png b/public/images/emoji/triumph.png
similarity index 100%
rename from assets/images/emoji/triumph.png
rename to public/images/emoji/triumph.png
diff --git a/assets/images/emoji/trolleybus.png b/public/images/emoji/trolleybus.png
similarity index 100%
rename from assets/images/emoji/trolleybus.png
rename to public/images/emoji/trolleybus.png
diff --git a/assets/images/emoji/trollface.png b/public/images/emoji/trollface.png
similarity index 100%
rename from assets/images/emoji/trollface.png
rename to public/images/emoji/trollface.png
diff --git a/assets/images/emoji/trophy.png b/public/images/emoji/trophy.png
similarity index 100%
rename from assets/images/emoji/trophy.png
rename to public/images/emoji/trophy.png
diff --git a/assets/images/emoji/tropical_drink.png b/public/images/emoji/tropical_drink.png
similarity index 100%
rename from assets/images/emoji/tropical_drink.png
rename to public/images/emoji/tropical_drink.png
diff --git a/assets/images/emoji/tropical_fish.png b/public/images/emoji/tropical_fish.png
similarity index 100%
rename from assets/images/emoji/tropical_fish.png
rename to public/images/emoji/tropical_fish.png
diff --git a/assets/images/emoji/truck.png b/public/images/emoji/truck.png
similarity index 100%
rename from assets/images/emoji/truck.png
rename to public/images/emoji/truck.png
diff --git a/assets/images/emoji/trumpet.png b/public/images/emoji/trumpet.png
similarity index 100%
rename from assets/images/emoji/trumpet.png
rename to public/images/emoji/trumpet.png
diff --git a/assets/images/emoji/tshirt.png b/public/images/emoji/tshirt.png
similarity index 100%
rename from assets/images/emoji/tshirt.png
rename to public/images/emoji/tshirt.png
diff --git a/assets/images/emoji/tulip.png b/public/images/emoji/tulip.png
similarity index 100%
rename from assets/images/emoji/tulip.png
rename to public/images/emoji/tulip.png
diff --git a/assets/images/emoji/turtle.png b/public/images/emoji/turtle.png
similarity index 100%
rename from assets/images/emoji/turtle.png
rename to public/images/emoji/turtle.png
diff --git a/assets/images/emoji/tv.png b/public/images/emoji/tv.png
similarity index 100%
rename from assets/images/emoji/tv.png
rename to public/images/emoji/tv.png
diff --git a/assets/images/emoji/twisted_rightwards_arrows.png b/public/images/emoji/twisted_rightwards_arrows.png
similarity index 100%
rename from assets/images/emoji/twisted_rightwards_arrows.png
rename to public/images/emoji/twisted_rightwards_arrows.png
diff --git a/assets/images/emoji/two.png b/public/images/emoji/two.png
similarity index 100%
rename from assets/images/emoji/two.png
rename to public/images/emoji/two.png
diff --git a/assets/images/emoji/two_hearts.png b/public/images/emoji/two_hearts.png
similarity index 100%
rename from assets/images/emoji/two_hearts.png
rename to public/images/emoji/two_hearts.png
diff --git a/assets/images/emoji/two_men_holding_hands.png b/public/images/emoji/two_men_holding_hands.png
similarity index 100%
rename from assets/images/emoji/two_men_holding_hands.png
rename to public/images/emoji/two_men_holding_hands.png
diff --git a/assets/images/emoji/two_women_holding_hands.png b/public/images/emoji/two_women_holding_hands.png
similarity index 100%
rename from assets/images/emoji/two_women_holding_hands.png
rename to public/images/emoji/two_women_holding_hands.png
diff --git a/assets/images/emoji/u5272.png b/public/images/emoji/u5272.png
similarity index 100%
rename from assets/images/emoji/u5272.png
rename to public/images/emoji/u5272.png
diff --git a/assets/images/emoji/u5408.png b/public/images/emoji/u5408.png
similarity index 100%
rename from assets/images/emoji/u5408.png
rename to public/images/emoji/u5408.png
diff --git a/assets/images/emoji/u55b6.png b/public/images/emoji/u55b6.png
similarity index 100%
rename from assets/images/emoji/u55b6.png
rename to public/images/emoji/u55b6.png
diff --git a/assets/images/emoji/u6307.png b/public/images/emoji/u6307.png
similarity index 100%
rename from assets/images/emoji/u6307.png
rename to public/images/emoji/u6307.png
diff --git a/assets/images/emoji/u6708.png b/public/images/emoji/u6708.png
similarity index 100%
rename from assets/images/emoji/u6708.png
rename to public/images/emoji/u6708.png
diff --git a/assets/images/emoji/u6709.png b/public/images/emoji/u6709.png
similarity index 100%
rename from assets/images/emoji/u6709.png
rename to public/images/emoji/u6709.png
diff --git a/assets/images/emoji/u6e80.png b/public/images/emoji/u6e80.png
similarity index 100%
rename from assets/images/emoji/u6e80.png
rename to public/images/emoji/u6e80.png
diff --git a/assets/images/emoji/u7121.png b/public/images/emoji/u7121.png
similarity index 100%
rename from assets/images/emoji/u7121.png
rename to public/images/emoji/u7121.png
diff --git a/assets/images/emoji/u7533.png b/public/images/emoji/u7533.png
similarity index 100%
rename from assets/images/emoji/u7533.png
rename to public/images/emoji/u7533.png
diff --git a/assets/images/emoji/u7981.png b/public/images/emoji/u7981.png
similarity index 100%
rename from assets/images/emoji/u7981.png
rename to public/images/emoji/u7981.png
diff --git a/assets/images/emoji/u7a7a.png b/public/images/emoji/u7a7a.png
similarity index 100%
rename from assets/images/emoji/u7a7a.png
rename to public/images/emoji/u7a7a.png
diff --git a/assets/images/emoji/uk.png b/public/images/emoji/uk.png
similarity index 100%
rename from assets/images/emoji/uk.png
rename to public/images/emoji/uk.png
diff --git a/assets/images/emoji/umbrella.png b/public/images/emoji/umbrella.png
similarity index 100%
rename from assets/images/emoji/umbrella.png
rename to public/images/emoji/umbrella.png
diff --git a/assets/images/emoji/unamused.png b/public/images/emoji/unamused.png
similarity index 100%
rename from assets/images/emoji/unamused.png
rename to public/images/emoji/unamused.png
diff --git a/assets/images/emoji/underage.png b/public/images/emoji/underage.png
similarity index 100%
rename from assets/images/emoji/underage.png
rename to public/images/emoji/underage.png
diff --git a/assets/images/emoji/unlock.png b/public/images/emoji/unlock.png
similarity index 100%
rename from assets/images/emoji/unlock.png
rename to public/images/emoji/unlock.png
diff --git a/assets/images/emoji/up.png b/public/images/emoji/up.png
similarity index 100%
rename from assets/images/emoji/up.png
rename to public/images/emoji/up.png
diff --git a/assets/images/emoji/us.png b/public/images/emoji/us.png
similarity index 100%
rename from assets/images/emoji/us.png
rename to public/images/emoji/us.png
diff --git a/assets/images/emoji/v.png b/public/images/emoji/v.png
similarity index 100%
rename from assets/images/emoji/v.png
rename to public/images/emoji/v.png
diff --git a/assets/images/emoji/vertical_traffic_light.png b/public/images/emoji/vertical_traffic_light.png
similarity index 100%
rename from assets/images/emoji/vertical_traffic_light.png
rename to public/images/emoji/vertical_traffic_light.png
diff --git a/assets/images/emoji/vhs.png b/public/images/emoji/vhs.png
similarity index 100%
rename from assets/images/emoji/vhs.png
rename to public/images/emoji/vhs.png
diff --git a/assets/images/emoji/vibration_mode.png b/public/images/emoji/vibration_mode.png
similarity index 100%
rename from assets/images/emoji/vibration_mode.png
rename to public/images/emoji/vibration_mode.png
diff --git a/assets/images/emoji/video_camera.png b/public/images/emoji/video_camera.png
similarity index 100%
rename from assets/images/emoji/video_camera.png
rename to public/images/emoji/video_camera.png
diff --git a/assets/images/emoji/video_game.png b/public/images/emoji/video_game.png
similarity index 100%
rename from assets/images/emoji/video_game.png
rename to public/images/emoji/video_game.png
diff --git a/assets/images/emoji/violin.png b/public/images/emoji/violin.png
similarity index 100%
rename from assets/images/emoji/violin.png
rename to public/images/emoji/violin.png
diff --git a/assets/images/emoji/virgo.png b/public/images/emoji/virgo.png
similarity index 100%
rename from assets/images/emoji/virgo.png
rename to public/images/emoji/virgo.png
diff --git a/assets/images/emoji/volcano.png b/public/images/emoji/volcano.png
similarity index 100%
rename from assets/images/emoji/volcano.png
rename to public/images/emoji/volcano.png
diff --git a/assets/images/emoji/vs.png b/public/images/emoji/vs.png
similarity index 100%
rename from assets/images/emoji/vs.png
rename to public/images/emoji/vs.png
diff --git a/assets/images/emoji/walking.png b/public/images/emoji/walking.png
similarity index 100%
rename from assets/images/emoji/walking.png
rename to public/images/emoji/walking.png
diff --git a/assets/images/emoji/waning_crescent_moon.png b/public/images/emoji/waning_crescent_moon.png
similarity index 100%
rename from assets/images/emoji/waning_crescent_moon.png
rename to public/images/emoji/waning_crescent_moon.png
diff --git a/assets/images/emoji/waning_gibbous_moon.png b/public/images/emoji/waning_gibbous_moon.png
similarity index 100%
rename from assets/images/emoji/waning_gibbous_moon.png
rename to public/images/emoji/waning_gibbous_moon.png
diff --git a/assets/images/emoji/warning.png b/public/images/emoji/warning.png
similarity index 100%
rename from assets/images/emoji/warning.png
rename to public/images/emoji/warning.png
diff --git a/assets/images/emoji/watch.png b/public/images/emoji/watch.png
similarity index 100%
rename from assets/images/emoji/watch.png
rename to public/images/emoji/watch.png
diff --git a/assets/images/emoji/water_buffalo.png b/public/images/emoji/water_buffalo.png
similarity index 100%
rename from assets/images/emoji/water_buffalo.png
rename to public/images/emoji/water_buffalo.png
diff --git a/assets/images/emoji/watermelon.png b/public/images/emoji/watermelon.png
similarity index 100%
rename from assets/images/emoji/watermelon.png
rename to public/images/emoji/watermelon.png
diff --git a/assets/images/emoji/wave.png b/public/images/emoji/wave.png
similarity index 100%
rename from assets/images/emoji/wave.png
rename to public/images/emoji/wave.png
diff --git a/assets/images/emoji/wavy_dash.png b/public/images/emoji/wavy_dash.png
similarity index 100%
rename from assets/images/emoji/wavy_dash.png
rename to public/images/emoji/wavy_dash.png
diff --git a/assets/images/emoji/waxing_crescent_moon.png b/public/images/emoji/waxing_crescent_moon.png
similarity index 100%
rename from assets/images/emoji/waxing_crescent_moon.png
rename to public/images/emoji/waxing_crescent_moon.png
diff --git a/assets/images/emoji/waxing_gibbous_moon.png b/public/images/emoji/waxing_gibbous_moon.png
similarity index 100%
rename from assets/images/emoji/waxing_gibbous_moon.png
rename to public/images/emoji/waxing_gibbous_moon.png
diff --git a/assets/images/emoji/wc.png b/public/images/emoji/wc.png
similarity index 100%
rename from assets/images/emoji/wc.png
rename to public/images/emoji/wc.png
diff --git a/assets/images/emoji/weary.png b/public/images/emoji/weary.png
similarity index 100%
rename from assets/images/emoji/weary.png
rename to public/images/emoji/weary.png
diff --git a/assets/images/emoji/wedding.png b/public/images/emoji/wedding.png
similarity index 100%
rename from assets/images/emoji/wedding.png
rename to public/images/emoji/wedding.png
diff --git a/assets/images/emoji/whale.png b/public/images/emoji/whale.png
similarity index 100%
rename from assets/images/emoji/whale.png
rename to public/images/emoji/whale.png
diff --git a/assets/images/emoji/whale2.png b/public/images/emoji/whale2.png
similarity index 100%
rename from assets/images/emoji/whale2.png
rename to public/images/emoji/whale2.png
diff --git a/assets/images/emoji/wheelchair.png b/public/images/emoji/wheelchair.png
similarity index 100%
rename from assets/images/emoji/wheelchair.png
rename to public/images/emoji/wheelchair.png
diff --git a/assets/images/emoji/white_check_mark.png b/public/images/emoji/white_check_mark.png
similarity index 100%
rename from assets/images/emoji/white_check_mark.png
rename to public/images/emoji/white_check_mark.png
diff --git a/assets/images/emoji/white_circle.png b/public/images/emoji/white_circle.png
similarity index 100%
rename from assets/images/emoji/white_circle.png
rename to public/images/emoji/white_circle.png
diff --git a/assets/images/emoji/white_flower.png b/public/images/emoji/white_flower.png
similarity index 100%
rename from assets/images/emoji/white_flower.png
rename to public/images/emoji/white_flower.png
diff --git a/assets/images/emoji/white_square.png b/public/images/emoji/white_square.png
similarity index 100%
rename from assets/images/emoji/white_square.png
rename to public/images/emoji/white_square.png
diff --git a/assets/images/emoji/white_square_button.png b/public/images/emoji/white_square_button.png
similarity index 100%
rename from assets/images/emoji/white_square_button.png
rename to public/images/emoji/white_square_button.png
diff --git a/assets/images/emoji/wind_chime.png b/public/images/emoji/wind_chime.png
similarity index 100%
rename from assets/images/emoji/wind_chime.png
rename to public/images/emoji/wind_chime.png
diff --git a/assets/images/emoji/wine_glass.png b/public/images/emoji/wine_glass.png
similarity index 100%
rename from assets/images/emoji/wine_glass.png
rename to public/images/emoji/wine_glass.png
diff --git a/assets/images/emoji/wink.png b/public/images/emoji/wink.png
similarity index 100%
rename from assets/images/emoji/wink.png
rename to public/images/emoji/wink.png
diff --git a/assets/images/emoji/wink2.png b/public/images/emoji/wink2.png
similarity index 100%
rename from assets/images/emoji/wink2.png
rename to public/images/emoji/wink2.png
diff --git a/assets/images/emoji/wolf.png b/public/images/emoji/wolf.png
similarity index 100%
rename from assets/images/emoji/wolf.png
rename to public/images/emoji/wolf.png
diff --git a/assets/images/emoji/woman.png b/public/images/emoji/woman.png
similarity index 100%
rename from assets/images/emoji/woman.png
rename to public/images/emoji/woman.png
diff --git a/assets/images/emoji/womans_clothes.png b/public/images/emoji/womans_clothes.png
similarity index 100%
rename from assets/images/emoji/womans_clothes.png
rename to public/images/emoji/womans_clothes.png
diff --git a/assets/images/emoji/womans_hat.png b/public/images/emoji/womans_hat.png
similarity index 100%
rename from assets/images/emoji/womans_hat.png
rename to public/images/emoji/womans_hat.png
diff --git a/assets/images/emoji/womens.png b/public/images/emoji/womens.png
similarity index 100%
rename from assets/images/emoji/womens.png
rename to public/images/emoji/womens.png
diff --git a/assets/images/emoji/worried.png b/public/images/emoji/worried.png
similarity index 100%
rename from assets/images/emoji/worried.png
rename to public/images/emoji/worried.png
diff --git a/assets/images/emoji/wrench.png b/public/images/emoji/wrench.png
similarity index 100%
rename from assets/images/emoji/wrench.png
rename to public/images/emoji/wrench.png
diff --git a/assets/images/emoji/x.png b/public/images/emoji/x.png
similarity index 100%
rename from assets/images/emoji/x.png
rename to public/images/emoji/x.png
diff --git a/assets/images/emoji/yellow_heart.png b/public/images/emoji/yellow_heart.png
similarity index 100%
rename from assets/images/emoji/yellow_heart.png
rename to public/images/emoji/yellow_heart.png
diff --git a/assets/images/emoji/yen.png b/public/images/emoji/yen.png
similarity index 100%
rename from assets/images/emoji/yen.png
rename to public/images/emoji/yen.png
diff --git a/assets/images/emoji/yum.png b/public/images/emoji/yum.png
similarity index 100%
rename from assets/images/emoji/yum.png
rename to public/images/emoji/yum.png
diff --git a/assets/images/emoji/zap.png b/public/images/emoji/zap.png
similarity index 100%
rename from assets/images/emoji/zap.png
rename to public/images/emoji/zap.png
diff --git a/assets/images/emoji/zero.png b/public/images/emoji/zero.png
similarity index 100%
rename from assets/images/emoji/zero.png
rename to public/images/emoji/zero.png
diff --git a/assets/images/emoji/zzz.png b/public/images/emoji/zzz.png
similarity index 100%
rename from assets/images/emoji/zzz.png
rename to public/images/emoji/zzz.png
diff --git a/public/images/error/404-hills-left.svg b/public/images/error/404-hills-left.svg
new file mode 100644
index 00000000..13901d49
--- /dev/null
+++ b/public/images/error/404-hills-left.svg
@@ -0,0 +1,20 @@
+
+
+
+
diff --git a/public/images/error/404-hills-right.svg b/public/images/error/404-hills-right.svg
new file mode 100644
index 00000000..6ac747c7
--- /dev/null
+++ b/public/images/error/404-hills-right.svg
@@ -0,0 +1,34 @@
+
+
+
+
diff --git a/public/images/error/excavator.svg b/public/images/error/excavator.svg
new file mode 100644
index 00000000..be053b4e
--- /dev/null
+++ b/public/images/error/excavator.svg
@@ -0,0 +1,260 @@
+
+
+
+
diff --git a/public/images/error/maintenance-grass-shade-left.svg b/public/images/error/maintenance-grass-shade-left.svg
new file mode 100644
index 00000000..696f772b
--- /dev/null
+++ b/public/images/error/maintenance-grass-shade-left.svg
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/public/images/error/maintenance-grass-shade-right.svg b/public/images/error/maintenance-grass-shade-right.svg
new file mode 100644
index 00000000..00c17572
--- /dev/null
+++ b/public/images/error/maintenance-grass-shade-right.svg
@@ -0,0 +1,9 @@
+
+
+
+
diff --git a/public/images/error/maintenance-hills-left.svg b/public/images/error/maintenance-hills-left.svg
new file mode 100644
index 00000000..8b7d9d26
--- /dev/null
+++ b/public/images/error/maintenance-hills-left.svg
@@ -0,0 +1,43 @@
+
+
+
+
diff --git a/public/images/error/maintenance-hills-right.svg b/public/images/error/maintenance-hills-right.svg
new file mode 100644
index 00000000..6225deb0
--- /dev/null
+++ b/public/images/error/maintenance-hills-right.svg
@@ -0,0 +1,21 @@
+
+
+
+
diff --git a/public/images/error/maintenance-tractor.svg b/public/images/error/maintenance-tractor.svg
new file mode 100644
index 00000000..6846f479
--- /dev/null
+++ b/public/images/error/maintenance-tractor.svg
@@ -0,0 +1,367 @@
+
+
+
+
diff --git a/public/images/error/pensive-travis.svg b/public/images/error/pensive-travis.svg
new file mode 100644
index 00000000..a0a625be
--- /dev/null
+++ b/public/images/error/pensive-travis.svg
@@ -0,0 +1,367 @@
+
+
+
+
diff --git a/public/images/error/twitter.svg b/public/images/error/twitter.svg
new file mode 100644
index 00000000..b4f8fde2
--- /dev/null
+++ b/public/images/error/twitter.svg
@@ -0,0 +1,13 @@
+
+
+
+
diff --git a/assets/images/getting-started/build-email-03.png b/public/images/getting-started/build-email-03.png
similarity index 100%
rename from assets/images/getting-started/build-email-03.png
rename to public/images/getting-started/build-email-03.png
diff --git a/assets/images/getting-started/build-email.jpg b/public/images/getting-started/build-email.jpg
similarity index 100%
rename from assets/images/getting-started/build-email.jpg
rename to public/images/getting-started/build-email.jpg
diff --git a/assets/images/getting-started/build-email.png b/public/images/getting-started/build-email.png
similarity index 100%
rename from assets/images/getting-started/build-email.png
rename to public/images/getting-started/build-email.png
diff --git a/assets/images/getting-started/first-build.jpg b/public/images/getting-started/first-build.jpg
similarity index 100%
rename from assets/images/getting-started/first-build.jpg
rename to public/images/getting-started/first-build.jpg
diff --git a/assets/images/getting-started/first-build.png b/public/images/getting-started/first-build.png
similarity index 100%
rename from assets/images/getting-started/first-build.png
rename to public/images/getting-started/first-build.png
diff --git a/assets/images/getting-started/first-project-no-recent.png b/public/images/getting-started/first-project-no-recent.png
similarity index 100%
rename from assets/images/getting-started/first-project-no-recent.png
rename to public/images/getting-started/first-project-no-recent.png
diff --git a/assets/images/getting-started/mustache-no-spin.png b/public/images/getting-started/mustache-no-spin.png
similarity index 100%
rename from assets/images/getting-started/mustache-no-spin.png
rename to public/images/getting-started/mustache-no-spin.png
diff --git a/assets/images/getting-started/mustache-spinner.gif b/public/images/getting-started/mustache-spinner.gif
similarity index 100%
rename from assets/images/getting-started/mustache-spinner.gif
rename to public/images/getting-started/mustache-spinner.gif
diff --git a/assets/images/getting-started/new-project.jpg b/public/images/getting-started/new-project.jpg
similarity index 100%
rename from assets/images/getting-started/new-project.jpg
rename to public/images/getting-started/new-project.jpg
diff --git a/assets/images/getting-started/project-switch.png b/public/images/getting-started/project-switch.png
similarity index 100%
rename from assets/images/getting-started/project-switch.png
rename to public/images/getting-started/project-switch.png
diff --git a/assets/images/getting-started/project_switch.png b/public/images/getting-started/project_switch.png
similarity index 100%
rename from assets/images/getting-started/project_switch.png
rename to public/images/getting-started/project_switch.png
diff --git a/assets/images/icons/code-climate-icon.svg b/public/images/icons/code-climate-icon.svg
similarity index 98%
rename from assets/images/icons/code-climate-icon.svg
rename to public/images/icons/code-climate-icon.svg
index 685516b6..7ac2806e 100644
--- a/assets/images/icons/code-climate-icon.svg
+++ b/public/images/icons/code-climate-icon.svg
@@ -1,9 +1,9 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/code-climate-logo.svg b/public/images/icons/code-climate-logo.svg
similarity index 100%
rename from assets/images/icons/code-climate-logo.svg
rename to public/images/icons/code-climate-logo.svg
diff --git a/assets/images/icons/delete-log.svg b/public/images/icons/delete-log.svg
similarity index 98%
rename from assets/images/icons/delete-log.svg
rename to public/images/icons/delete-log.svg
index 8a7d1917..ae4f5553 100644
--- a/assets/images/icons/delete-log.svg
+++ b/public/images/icons/delete-log.svg
@@ -1,14 +1,14 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/download-log.svg b/public/images/icons/download-log.svg
similarity index 98%
rename from assets/images/icons/download-log.svg
rename to public/images/icons/download-log.svg
index 2f25c1f5..2d4ff02b 100644
--- a/assets/images/icons/download-log.svg
+++ b/public/images/icons/download-log.svg
@@ -1,14 +1,14 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/dropdown-arrow-white.svg b/public/images/icons/dropdown-arrow-white.svg
similarity index 98%
rename from assets/images/icons/dropdown-arrow-white.svg
rename to public/images/icons/dropdown-arrow-white.svg
index 6dae63b2..051cc72c 100644
--- a/assets/images/icons/dropdown-arrow-white.svg
+++ b/public/images/icons/dropdown-arrow-white.svg
@@ -1,7 +1,7 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/finished.svg b/public/images/icons/finished.svg
similarity index 98%
rename from assets/images/icons/finished.svg
rename to public/images/icons/finished.svg
index 5e2b2781..08edbdac 100644
--- a/assets/images/icons/finished.svg
+++ b/public/images/icons/finished.svg
@@ -1,31 +1,31 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/github.svg b/public/images/icons/github.svg
similarity index 99%
rename from assets/images/icons/github.svg
rename to public/images/icons/github.svg
index 06c96d7b..4d8443dc 100644
--- a/assets/images/icons/github.svg
+++ b/public/images/icons/github.svg
@@ -1,21 +1,21 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/logs.svg b/public/images/icons/logs.svg
similarity index 99%
rename from assets/images/icons/logs.svg
rename to public/images/icons/logs.svg
index 2dbd3507..d6387443 100644
--- a/assets/images/icons/logs.svg
+++ b/public/images/icons/logs.svg
@@ -1,14 +1,14 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/off.svg b/public/images/icons/off.svg
similarity index 98%
rename from assets/images/icons/off.svg
rename to public/images/icons/off.svg
index afc44783..e2f1992a 100644
--- a/assets/images/icons/off.svg
+++ b/public/images/icons/off.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/pull-request.svg b/public/images/icons/pull-request.svg
similarity index 99%
rename from assets/images/icons/pull-request.svg
rename to public/images/icons/pull-request.svg
index dae09224..6438814c 100644
--- a/assets/images/icons/pull-request.svg
+++ b/public/images/icons/pull-request.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/push.svg b/public/images/icons/push.svg
similarity index 98%
rename from assets/images/icons/push.svg
rename to public/images/icons/push.svg
index 1d6f4b1d..668125d5 100644
--- a/assets/images/icons/push.svg
+++ b/public/images/icons/push.svg
@@ -1,11 +1,11 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/repeat.svg b/public/images/icons/repeat.svg
similarity index 99%
rename from assets/images/icons/repeat.svg
rename to public/images/icons/repeat.svg
index 6afd1b5a..715153e0 100644
--- a/assets/images/icons/repeat.svg
+++ b/public/images/icons/repeat.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/run-time.svg b/public/images/icons/run-time.svg
similarity index 98%
rename from assets/images/icons/run-time.svg
rename to public/images/icons/run-time.svg
index c1acf337..05d14ff0 100644
--- a/assets/images/icons/run-time.svg
+++ b/public/images/icons/run-time.svg
@@ -1,15 +1,15 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/settings.svg b/public/images/icons/settings.svg
similarity index 98%
rename from assets/images/icons/settings.svg
rename to public/images/icons/settings.svg
index e37d316e..bab4e696 100644
--- a/assets/images/icons/settings.svg
+++ b/public/images/icons/settings.svg
@@ -1,21 +1,21 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/state-errored-white.svg b/public/images/icons/state-errored-white.svg
similarity index 98%
rename from assets/images/icons/state-errored-white.svg
rename to public/images/icons/state-errored-white.svg
index 37f854b5..ba583625 100644
--- a/assets/images/icons/state-errored-white.svg
+++ b/public/images/icons/state-errored-white.svg
@@ -1,9 +1,9 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/state-errored.svg b/public/images/icons/state-errored.svg
similarity index 98%
rename from assets/images/icons/state-errored.svg
rename to public/images/icons/state-errored.svg
index 8bf0d558..96a02f65 100644
--- a/assets/images/icons/state-errored.svg
+++ b/public/images/icons/state-errored.svg
@@ -1,6 +1,6 @@
-
-
+
+
diff --git a/assets/images/icons/state-failed-white.svg b/public/images/icons/state-failed-white.svg
similarity index 98%
rename from assets/images/icons/state-failed-white.svg
rename to public/images/icons/state-failed-white.svg
index 08c0e0fd..fedeb417 100644
--- a/assets/images/icons/state-failed-white.svg
+++ b/public/images/icons/state-failed-white.svg
@@ -1,9 +1,9 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/state-failed.svg b/public/images/icons/state-failed.svg
similarity index 98%
rename from assets/images/icons/state-failed.svg
rename to public/images/icons/state-failed.svg
index 163b65a2..89823494 100644
--- a/assets/images/icons/state-failed.svg
+++ b/public/images/icons/state-failed.svg
@@ -1,6 +1,6 @@
-
-
+
+
diff --git a/assets/images/icons/state-passed-white.svg b/public/images/icons/state-passed-white.svg
similarity index 98%
rename from assets/images/icons/state-passed-white.svg
rename to public/images/icons/state-passed-white.svg
index b89db066..7f555381 100644
--- a/assets/images/icons/state-passed-white.svg
+++ b/public/images/icons/state-passed-white.svg
@@ -1,8 +1,8 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/state-passed.svg b/public/images/icons/state-passed.svg
similarity index 98%
rename from assets/images/icons/state-passed.svg
rename to public/images/icons/state-passed.svg
index e019fa03..af88e9a0 100644
--- a/assets/images/icons/state-passed.svg
+++ b/public/images/icons/state-passed.svg
@@ -1,5 +1,5 @@
-
-
+
+
diff --git a/assets/images/icons/state-pending-white.svg b/public/images/icons/state-pending-white.svg
similarity index 98%
rename from assets/images/icons/state-pending-white.svg
rename to public/images/icons/state-pending-white.svg
index f805df62..42e258ce 100644
--- a/assets/images/icons/state-pending-white.svg
+++ b/public/images/icons/state-pending-white.svg
@@ -1,8 +1,8 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/icons/state-pending.svg b/public/images/icons/state-pending.svg
similarity index 97%
rename from assets/images/icons/state-pending.svg
rename to public/images/icons/state-pending.svg
index 557bce00..70c8deaa 100644
--- a/assets/images/icons/state-pending.svg
+++ b/public/images/icons/state-pending.svg
@@ -1,4 +1,4 @@
-
-
+
+
diff --git a/assets/images/icons/tags.svg b/public/images/icons/tags.svg
similarity index 98%
rename from assets/images/icons/tags.svg
rename to public/images/icons/tags.svg
index 61e057e0..0ed484f1 100644
--- a/assets/images/icons/tags.svg
+++ b/public/images/icons/tags.svg
@@ -1,13 +1,13 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/layout/made-in-berlin-badge.png b/public/images/layout/made-in-berlin-badge.png
similarity index 100%
rename from assets/images/layout/made-in-berlin-badge.png
rename to public/images/layout/made-in-berlin-badge.png
diff --git a/assets/images/layout/travis-logo.png b/public/images/layout/travis-logo.png
similarity index 100%
rename from assets/images/layout/travis-logo.png
rename to public/images/layout/travis-logo.png
diff --git a/assets/images/mailer/arrow-error.png b/public/images/mailer/arrow-error.png
similarity index 100%
rename from assets/images/mailer/arrow-error.png
rename to public/images/mailer/arrow-error.png
diff --git a/assets/images/mailer/arrow-failed.png b/public/images/mailer/arrow-failed.png
similarity index 100%
rename from assets/images/mailer/arrow-failed.png
rename to public/images/mailer/arrow-failed.png
diff --git a/assets/images/mailer/arrow-success.png b/public/images/mailer/arrow-success.png
similarity index 100%
rename from assets/images/mailer/arrow-success.png
rename to public/images/mailer/arrow-success.png
diff --git a/assets/images/mailer/canceled-header-bg.png b/public/images/mailer/canceled-header-bg.png
similarity index 100%
rename from assets/images/mailer/canceled-header-bg.png
rename to public/images/mailer/canceled-header-bg.png
diff --git a/assets/images/mailer/clock.png b/public/images/mailer/clock.png
similarity index 100%
rename from assets/images/mailer/clock.png
rename to public/images/mailer/clock.png
diff --git a/assets/images/mailer/email-footer-travis-logo.png b/public/images/mailer/email-footer-travis-logo.png
similarity index 100%
rename from assets/images/mailer/email-footer-travis-logo.png
rename to public/images/mailer/email-footer-travis-logo.png
diff --git a/assets/images/mailer/error.png b/public/images/mailer/error.png
similarity index 100%
rename from assets/images/mailer/error.png
rename to public/images/mailer/error.png
diff --git a/assets/images/mailer/errored-header-bg.png b/public/images/mailer/errored-header-bg.png
similarity index 100%
rename from assets/images/mailer/errored-header-bg.png
rename to public/images/mailer/errored-header-bg.png
diff --git a/assets/images/mailer/failed-header-bg.png b/public/images/mailer/failed-header-bg.png
similarity index 100%
rename from assets/images/mailer/failed-header-bg.png
rename to public/images/mailer/failed-header-bg.png
diff --git a/assets/images/mailer/failed.png b/public/images/mailer/failed.png
similarity index 100%
rename from assets/images/mailer/failed.png
rename to public/images/mailer/failed.png
diff --git a/assets/images/mailer/footer-logo-38x38.png b/public/images/mailer/footer-logo-38x38.png
similarity index 100%
rename from assets/images/mailer/footer-logo-38x38.png
rename to public/images/mailer/footer-logo-38x38.png
diff --git a/assets/images/mailer/mascot-avatar-15px.png b/public/images/mailer/mascot-avatar-15px.png
similarity index 100%
rename from assets/images/mailer/mascot-avatar-15px.png
rename to public/images/mailer/mascot-avatar-15px.png
diff --git a/assets/images/mailer/mascot-avatar-40px.png b/public/images/mailer/mascot-avatar-40px.png
similarity index 100%
rename from assets/images/mailer/mascot-avatar-40px.png
rename to public/images/mailer/mascot-avatar-40px.png
diff --git a/assets/images/mailer/passed-header-bg.png b/public/images/mailer/passed-header-bg.png
similarity index 100%
rename from assets/images/mailer/passed-header-bg.png
rename to public/images/mailer/passed-header-bg.png
diff --git a/assets/images/mailer/please-donate.png b/public/images/mailer/please-donate.png
similarity index 100%
rename from assets/images/mailer/please-donate.png
rename to public/images/mailer/please-donate.png
diff --git a/assets/images/mailer/stopwatch-error.png b/public/images/mailer/stopwatch-error.png
similarity index 100%
rename from assets/images/mailer/stopwatch-error.png
rename to public/images/mailer/stopwatch-error.png
diff --git a/assets/images/mailer/stopwatch-failed.png b/public/images/mailer/stopwatch-failed.png
similarity index 100%
rename from assets/images/mailer/stopwatch-failed.png
rename to public/images/mailer/stopwatch-failed.png
diff --git a/assets/images/mailer/stopwatch-success.png b/public/images/mailer/stopwatch-success.png
similarity index 100%
rename from assets/images/mailer/stopwatch-success.png
rename to public/images/mailer/stopwatch-success.png
diff --git a/assets/images/mailer/success.png b/public/images/mailer/success.png
similarity index 100%
rename from assets/images/mailer/success.png
rename to public/images/mailer/success.png
diff --git a/assets/images/mailer/travis-mascot.png b/public/images/mailer/travis-mascot.png
similarity index 100%
rename from assets/images/mailer/travis-mascot.png
rename to public/images/mailer/travis-mascot.png
diff --git a/assets/images/rgsoc.jpg b/public/images/rgsoc.jpg
similarity index 100%
rename from assets/images/rgsoc.jpg
rename to public/images/rgsoc.jpg
diff --git a/assets/images/sponsors/5apps-205x60.png b/public/images/sponsors/5apps-205x60.png
similarity index 100%
rename from assets/images/sponsors/5apps-205x60.png
rename to public/images/sponsors/5apps-205x60.png
diff --git a/assets/images/sponsors/8thlight-205x60.jpg b/public/images/sponsors/8thlight-205x60.jpg
similarity index 100%
rename from assets/images/sponsors/8thlight-205x60.jpg
rename to public/images/sponsors/8thlight-205x60.jpg
diff --git a/assets/images/sponsors/agileanimal-205x60.png b/public/images/sponsors/agileanimal-205x60.png
similarity index 100%
rename from assets/images/sponsors/agileanimal-205x60.png
rename to public/images/sponsors/agileanimal-205x60.png
diff --git a/assets/images/sponsors/amen-205x60.jpg b/public/images/sponsors/amen-205x60.jpg
similarity index 100%
rename from assets/images/sponsors/amen-205x60.jpg
rename to public/images/sponsors/amen-205x60.jpg
diff --git a/assets/images/sponsors/atomicobject-205x60.png b/public/images/sponsors/atomicobject-205x60.png
similarity index 100%
rename from assets/images/sponsors/atomicobject-205x60.png
rename to public/images/sponsors/atomicobject-205x60.png
diff --git a/assets/images/sponsors/avarteq-140x40.png b/public/images/sponsors/avarteq-140x40.png
similarity index 100%
rename from assets/images/sponsors/avarteq-140x40.png
rename to public/images/sponsors/avarteq-140x40.png
diff --git a/assets/images/sponsors/basho-205x60.png b/public/images/sponsors/basho-205x60.png
similarity index 100%
rename from assets/images/sponsors/basho-205x60.png
rename to public/images/sponsors/basho-205x60.png
diff --git a/assets/images/sponsors/bendyworks-100x60.png b/public/images/sponsors/bendyworks-100x60.png
similarity index 100%
rename from assets/images/sponsors/bendyworks-100x60.png
rename to public/images/sponsors/bendyworks-100x60.png
diff --git a/assets/images/sponsors/bendyworks-205x130.png b/public/images/sponsors/bendyworks-205x130.png
similarity index 100%
rename from assets/images/sponsors/bendyworks-205x130.png
rename to public/images/sponsors/bendyworks-205x130.png
diff --git a/assets/images/sponsors/bendyworks-210x210.png b/public/images/sponsors/bendyworks-210x210.png
similarity index 100%
rename from assets/images/sponsors/bendyworks-210x210.png
rename to public/images/sponsors/bendyworks-210x210.png
diff --git a/assets/images/sponsors/bluebox-78x15.png b/public/images/sponsors/bluebox-78x15.png
similarity index 100%
rename from assets/images/sponsors/bluebox-78x15.png
rename to public/images/sponsors/bluebox-78x15.png
diff --git a/assets/images/sponsors/cloudcontrol-100x60.png b/public/images/sponsors/cloudcontrol-100x60.png
similarity index 100%
rename from assets/images/sponsors/cloudcontrol-100x60.png
rename to public/images/sponsors/cloudcontrol-100x60.png
diff --git a/assets/images/sponsors/cloudcontrol-205x130.png b/public/images/sponsors/cloudcontrol-205x130.png
similarity index 100%
rename from assets/images/sponsors/cloudcontrol-205x130.png
rename to public/images/sponsors/cloudcontrol-205x130.png
diff --git a/assets/images/sponsors/cloudcontrol-210x210.png b/public/images/sponsors/cloudcontrol-210x210.png
similarity index 100%
rename from assets/images/sponsors/cloudcontrol-210x210.png
rename to public/images/sponsors/cloudcontrol-210x210.png
diff --git a/assets/images/sponsors/cobotme-205x60.png b/public/images/sponsors/cobotme-205x60.png
similarity index 100%
rename from assets/images/sponsors/cobotme-205x60.png
rename to public/images/sponsors/cobotme-205x60.png
diff --git a/assets/images/sponsors/codeminer-205x60.png b/public/images/sponsors/codeminer-205x60.png
similarity index 100%
rename from assets/images/sponsors/codeminer-205x60.png
rename to public/images/sponsors/codeminer-205x60.png
diff --git a/assets/images/sponsors/crowdinteractive-205x60.png b/public/images/sponsors/crowdinteractive-205x60.png
similarity index 100%
rename from assets/images/sponsors/crowdinteractive-205x60.png
rename to public/images/sponsors/crowdinteractive-205x60.png
diff --git a/assets/images/sponsors/engineyard-140x40.png b/public/images/sponsors/engineyard-140x40.png
similarity index 100%
rename from assets/images/sponsors/engineyard-140x40.png
rename to public/images/sponsors/engineyard-140x40.png
diff --git a/assets/images/sponsors/enterprise-rails-140x40.png b/public/images/sponsors/enterprise-rails-140x40.png
similarity index 100%
rename from assets/images/sponsors/enterprise-rails-140x40.png
rename to public/images/sponsors/enterprise-rails-140x40.png
diff --git a/assets/images/sponsors/esm-205x60.png b/public/images/sponsors/esm-205x60.png
similarity index 100%
rename from assets/images/sponsors/esm-205x60.png
rename to public/images/sponsors/esm-205x60.png
diff --git a/assets/images/sponsors/evilmartians-205x60.png b/public/images/sponsors/evilmartians-205x60.png
similarity index 100%
rename from assets/images/sponsors/evilmartians-205x60.png
rename to public/images/sponsors/evilmartians-205x60.png
diff --git a/assets/images/sponsors/fingertips-205x60.png b/public/images/sponsors/fingertips-205x60.png
similarity index 100%
rename from assets/images/sponsors/fingertips-205x60.png
rename to public/images/sponsors/fingertips-205x60.png
diff --git a/assets/images/sponsors/gidsy.png b/public/images/sponsors/gidsy.png
similarity index 100%
rename from assets/images/sponsors/gidsy.png
rename to public/images/sponsors/gidsy.png
diff --git a/assets/images/sponsors/github.png b/public/images/sponsors/github.png
similarity index 100%
rename from assets/images/sponsors/github.png
rename to public/images/sponsors/github.png
diff --git a/assets/images/sponsors/heroku-100x60.png b/public/images/sponsors/heroku-100x60.png
similarity index 100%
rename from assets/images/sponsors/heroku-100x60.png
rename to public/images/sponsors/heroku-100x60.png
diff --git a/assets/images/sponsors/heroku-140x40.png b/public/images/sponsors/heroku-140x40.png
similarity index 100%
rename from assets/images/sponsors/heroku-140x40.png
rename to public/images/sponsors/heroku-140x40.png
diff --git a/assets/images/sponsors/heroku-205x130.png b/public/images/sponsors/heroku-205x130.png
similarity index 100%
rename from assets/images/sponsors/heroku-205x130.png
rename to public/images/sponsors/heroku-205x130.png
diff --git a/assets/images/sponsors/heroku-205x60.png b/public/images/sponsors/heroku-205x60.png
similarity index 100%
rename from assets/images/sponsors/heroku-205x60.png
rename to public/images/sponsors/heroku-205x60.png
diff --git a/assets/images/sponsors/iriscouch-140x40.png b/public/images/sponsors/iriscouch-140x40.png
similarity index 100%
rename from assets/images/sponsors/iriscouch-140x40.png
rename to public/images/sponsors/iriscouch-140x40.png
diff --git a/assets/images/sponsors/jumpstartlab-140x40.png b/public/images/sponsors/jumpstartlab-140x40.png
similarity index 100%
rename from assets/images/sponsors/jumpstartlab-140x40.png
rename to public/images/sponsors/jumpstartlab-140x40.png
diff --git a/assets/images/sponsors/jumpstartlab-205x60.png b/public/images/sponsors/jumpstartlab-205x60.png
similarity index 100%
rename from assets/images/sponsors/jumpstartlab-205x60.png
rename to public/images/sponsors/jumpstartlab-205x60.png
diff --git a/assets/images/sponsors/kanbanery-100x60.png b/public/images/sponsors/kanbanery-100x60.png
similarity index 100%
rename from assets/images/sponsors/kanbanery-100x60.png
rename to public/images/sponsors/kanbanery-100x60.png
diff --git a/assets/images/sponsors/kanbanery-205x130.png b/public/images/sponsors/kanbanery-205x130.png
similarity index 100%
rename from assets/images/sponsors/kanbanery-205x130.png
rename to public/images/sponsors/kanbanery-205x130.png
diff --git a/assets/images/sponsors/kanbanery-205x60.png b/public/images/sponsors/kanbanery-205x60.png
similarity index 100%
rename from assets/images/sponsors/kanbanery-205x60.png
rename to public/images/sponsors/kanbanery-205x60.png
diff --git a/assets/images/sponsors/librato-metrics-140x40.png b/public/images/sponsors/librato-metrics-140x40.png
similarity index 100%
rename from assets/images/sponsors/librato-metrics-140x40.png
rename to public/images/sponsors/librato-metrics-140x40.png
diff --git a/assets/images/sponsors/medidata-205x60.png b/public/images/sponsors/medidata-205x60.png
similarity index 100%
rename from assets/images/sponsors/medidata-205x60.png
rename to public/images/sponsors/medidata-205x60.png
diff --git a/assets/images/sponsors/meltmedia-205x60.png b/public/images/sponsors/meltmedia-205x60.png
similarity index 100%
rename from assets/images/sponsors/meltmedia-205x60.png
rename to public/images/sponsors/meltmedia-205x60.png
diff --git a/assets/images/sponsors/mindmatters-205x60.png b/public/images/sponsors/mindmatters-205x60.png
similarity index 100%
rename from assets/images/sponsors/mindmatters-205x60.png
rename to public/images/sponsors/mindmatters-205x60.png
diff --git a/assets/images/sponsors/mongohq-100x60.png b/public/images/sponsors/mongohq-100x60.png
similarity index 100%
rename from assets/images/sponsors/mongohq-100x60.png
rename to public/images/sponsors/mongohq-100x60.png
diff --git a/assets/images/sponsors/mongohq-205x130.png b/public/images/sponsors/mongohq-205x130.png
similarity index 100%
rename from assets/images/sponsors/mongohq-205x130.png
rename to public/images/sponsors/mongohq-205x130.png
diff --git a/assets/images/sponsors/mongohq-205x60.png b/public/images/sponsors/mongohq-205x60.png
similarity index 100%
rename from assets/images/sponsors/mongohq-205x60.png
rename to public/images/sponsors/mongohq-205x60.png
diff --git a/assets/images/sponsors/nedap-100x60.png b/public/images/sponsors/nedap-100x60.png
similarity index 100%
rename from assets/images/sponsors/nedap-100x60.png
rename to public/images/sponsors/nedap-100x60.png
diff --git a/assets/images/sponsors/nedap-205x130.png b/public/images/sponsors/nedap-205x130.png
similarity index 100%
rename from assets/images/sponsors/nedap-205x130.png
rename to public/images/sponsors/nedap-205x130.png
diff --git a/assets/images/sponsors/nedap-205x60.png b/public/images/sponsors/nedap-205x60.png
similarity index 100%
rename from assets/images/sponsors/nedap-205x60.png
rename to public/images/sponsors/nedap-205x60.png
diff --git a/assets/images/sponsors/nedap-430x130.png b/public/images/sponsors/nedap-430x130.png
similarity index 100%
rename from assets/images/sponsors/nedap-430x130.png
rename to public/images/sponsors/nedap-430x130.png
diff --git a/assets/images/sponsors/papertrail-140x40.png b/public/images/sponsors/papertrail-140x40.png
similarity index 100%
rename from assets/images/sponsors/papertrail-140x40.png
rename to public/images/sponsors/papertrail-140x40.png
diff --git a/assets/images/sponsors/planio-100x60.png b/public/images/sponsors/planio-100x60.png
similarity index 100%
rename from assets/images/sponsors/planio-100x60.png
rename to public/images/sponsors/planio-100x60.png
diff --git a/assets/images/sponsors/planio-205x130.png b/public/images/sponsors/planio-205x130.png
similarity index 100%
rename from assets/images/sponsors/planio-205x130.png
rename to public/images/sponsors/planio-205x130.png
diff --git a/assets/images/sponsors/planio-205x60.png b/public/images/sponsors/planio-205x60.png
similarity index 100%
rename from assets/images/sponsors/planio-205x60.png
rename to public/images/sponsors/planio-205x60.png
diff --git a/assets/images/sponsors/postmark-140x40.png b/public/images/sponsors/postmark-140x40.png
similarity index 100%
rename from assets/images/sponsors/postmark-140x40.png
rename to public/images/sponsors/postmark-140x40.png
diff --git a/assets/images/sponsors/pusher-140x40.png b/public/images/sponsors/pusher-140x40.png
similarity index 100%
rename from assets/images/sponsors/pusher-140x40.png
rename to public/images/sponsors/pusher-140x40.png
diff --git a/assets/images/sponsors/railslove-140x40.png b/public/images/sponsors/railslove-140x40.png
similarity index 100%
rename from assets/images/sponsors/railslove-140x40.png
rename to public/images/sponsors/railslove-140x40.png
diff --git a/assets/images/sponsors/railslove.png b/public/images/sponsors/railslove.png
similarity index 100%
rename from assets/images/sponsors/railslove.png
rename to public/images/sponsors/railslove.png
diff --git a/assets/images/sponsors/servergrove-140x40.png b/public/images/sponsors/servergrove-140x40.png
similarity index 100%
rename from assets/images/sponsors/servergrove-140x40.png
rename to public/images/sponsors/servergrove-140x40.png
diff --git a/assets/images/sponsors/shopify-140x40.png b/public/images/sponsors/shopify-140x40.png
similarity index 100%
rename from assets/images/sponsors/shopify-140x40.png
rename to public/images/sponsors/shopify-140x40.png
diff --git a/assets/images/sponsors/shopify.png b/public/images/sponsors/shopify.png
similarity index 100%
rename from assets/images/sponsors/shopify.png
rename to public/images/sponsors/shopify.png
diff --git a/assets/images/sponsors/site5-205x60.png b/public/images/sponsors/site5-205x60.png
similarity index 100%
rename from assets/images/sponsors/site5-205x60.png
rename to public/images/sponsors/site5-205x60.png
diff --git a/assets/images/sponsors/soundcloud-100x60.png b/public/images/sponsors/soundcloud-100x60.png
similarity index 100%
rename from assets/images/sponsors/soundcloud-100x60.png
rename to public/images/sponsors/soundcloud-100x60.png
diff --git a/assets/images/sponsors/soundcloud-205x130.png b/public/images/sponsors/soundcloud-205x130.png
similarity index 100%
rename from assets/images/sponsors/soundcloud-205x130.png
rename to public/images/sponsors/soundcloud-205x130.png
diff --git a/assets/images/sponsors/soundcloud-205x60.png b/public/images/sponsors/soundcloud-205x60.png
similarity index 100%
rename from assets/images/sponsors/soundcloud-205x60.png
rename to public/images/sponsors/soundcloud-205x60.png
diff --git a/assets/images/sponsors/soundcloud.png b/public/images/sponsors/soundcloud.png
similarity index 100%
rename from assets/images/sponsors/soundcloud.png
rename to public/images/sponsors/soundcloud.png
diff --git a/assets/images/sponsors/stickermule-140x40.png b/public/images/sponsors/stickermule-140x40.png
similarity index 100%
rename from assets/images/sponsors/stickermule-140x40.png
rename to public/images/sponsors/stickermule-140x40.png
diff --git a/assets/images/sponsors/stripe-140x40.png b/public/images/sponsors/stripe-140x40.png
similarity index 100%
rename from assets/images/sponsors/stripe-140x40.png
rename to public/images/sponsors/stripe-140x40.png
diff --git a/assets/images/sponsors/stripe-205x60.png b/public/images/sponsors/stripe-205x60.png
similarity index 100%
rename from assets/images/sponsors/stripe-205x60.png
rename to public/images/sponsors/stripe-205x60.png
diff --git a/assets/images/sponsors/stripe-stamp-111x103.png b/public/images/sponsors/stripe-stamp-111x103.png
similarity index 100%
rename from assets/images/sponsors/stripe-stamp-111x103.png
rename to public/images/sponsors/stripe-stamp-111x103.png
diff --git a/assets/images/sponsors/thinkrelevance-205x60.png b/public/images/sponsors/thinkrelevance-205x60.png
similarity index 100%
rename from assets/images/sponsors/thinkrelevance-205x60.png
rename to public/images/sponsors/thinkrelevance-205x60.png
diff --git a/assets/images/sponsors/thoughtbot-140x40.png b/public/images/sponsors/thoughtbot-140x40.png
similarity index 100%
rename from assets/images/sponsors/thoughtbot-140x40.png
rename to public/images/sponsors/thoughtbot-140x40.png
diff --git a/assets/images/sponsors/ticketevolution-100x60.png b/public/images/sponsors/ticketevolution-100x60.png
similarity index 100%
rename from assets/images/sponsors/ticketevolution-100x60.png
rename to public/images/sponsors/ticketevolution-100x60.png
diff --git a/assets/images/sponsors/ticketevolution-205x130.jpg b/public/images/sponsors/ticketevolution-205x130.jpg
similarity index 100%
rename from assets/images/sponsors/ticketevolution-205x130.jpg
rename to public/images/sponsors/ticketevolution-205x130.jpg
diff --git a/assets/images/sponsors/ticketevolution-205x60.jpg b/public/images/sponsors/ticketevolution-205x60.jpg
similarity index 100%
rename from assets/images/sponsors/ticketevolution-205x60.jpg
rename to public/images/sponsors/ticketevolution-205x60.jpg
diff --git a/assets/images/sponsors/tupalo-205x60.png b/public/images/sponsors/tupalo-205x60.png
similarity index 100%
rename from assets/images/sponsors/tupalo-205x60.png
rename to public/images/sponsors/tupalo-205x60.png
diff --git a/assets/images/sponsors/twitter-205x60.png b/public/images/sponsors/twitter-205x60.png
similarity index 100%
rename from assets/images/sponsors/twitter-205x60.png
rename to public/images/sponsors/twitter-205x60.png
diff --git a/assets/images/sponsors/wooga-100x60.png b/public/images/sponsors/wooga-100x60.png
similarity index 100%
rename from assets/images/sponsors/wooga-100x60.png
rename to public/images/sponsors/wooga-100x60.png
diff --git a/assets/images/sponsors/wooga-205x130.png b/public/images/sponsors/wooga-205x130.png
similarity index 100%
rename from assets/images/sponsors/wooga-205x130.png
rename to public/images/sponsors/wooga-205x130.png
diff --git a/assets/images/sponsors/wooga-210x210.png b/public/images/sponsors/wooga-210x210.png
similarity index 100%
rename from assets/images/sponsors/wooga-210x210.png
rename to public/images/sponsors/wooga-210x210.png
diff --git a/assets/images/sponsors/xing-100x60.png b/public/images/sponsors/xing-100x60.png
similarity index 100%
rename from assets/images/sponsors/xing-100x60.png
rename to public/images/sponsors/xing-100x60.png
diff --git a/assets/images/sponsors/xing-205x130.png b/public/images/sponsors/xing-205x130.png
similarity index 100%
rename from assets/images/sponsors/xing-205x130.png
rename to public/images/sponsors/xing-205x130.png
diff --git a/assets/images/sponsors/xing-210x210.png b/public/images/sponsors/xing-210x210.png
similarity index 100%
rename from assets/images/sponsors/xing-210x210.png
rename to public/images/sponsors/xing-210x210.png
diff --git a/assets/images/sponsors/zendesk-205x60.png b/public/images/sponsors/zendesk-205x60.png
similarity index 100%
rename from assets/images/sponsors/zendesk-205x60.png
rename to public/images/sponsors/zendesk-205x60.png
diff --git a/assets/images/sponsors/zweitag-100x60.png b/public/images/sponsors/zweitag-100x60.png
similarity index 100%
rename from assets/images/sponsors/zweitag-100x60.png
rename to public/images/sponsors/zweitag-100x60.png
diff --git a/assets/images/sponsors/zweitag-205x130.png b/public/images/sponsors/zweitag-205x130.png
similarity index 100%
rename from assets/images/sponsors/zweitag-205x130.png
rename to public/images/sponsors/zweitag-205x130.png
diff --git a/assets/images/sponsors/zweitag-205x60.png b/public/images/sponsors/zweitag-205x60.png
similarity index 100%
rename from assets/images/sponsors/zweitag-205x60.png
rename to public/images/sponsors/zweitag-205x60.png
diff --git a/assets/images/travis-crying.png b/public/images/travis-crying.png
similarity index 100%
rename from assets/images/travis-crying.png
rename to public/images/travis-crying.png
diff --git a/assets/images/travis-mascot-150.png b/public/images/travis-mascot-150.png
similarity index 100%
rename from assets/images/travis-mascot-150.png
rename to public/images/travis-mascot-150.png
diff --git a/assets/images/ui/activate.png b/public/images/ui/activate.png
similarity index 100%
rename from assets/images/ui/activate.png
rename to public/images/ui/activate.png
diff --git a/assets/images/ui/activated.png b/public/images/ui/activated.png
similarity index 100%
rename from assets/images/ui/activated.png
rename to public/images/ui/activated.png
diff --git a/assets/images/ui/bubbles-spinner.svg b/public/images/ui/bubbles-spinner.svg
similarity index 100%
rename from assets/images/ui/bubbles-spinner.svg
rename to public/images/ui/bubbles-spinner.svg
diff --git a/assets/images/ui/cal.svg b/public/images/ui/cal.svg
similarity index 100%
rename from assets/images/ui/cal.svg
rename to public/images/ui/cal.svg
diff --git a/assets/images/ui/charmtab.png b/public/images/ui/charmtab.png
similarity index 100%
rename from assets/images/ui/charmtab.png
rename to public/images/ui/charmtab.png
diff --git a/assets/images/ui/check.svg b/public/images/ui/check.svg
similarity index 100%
rename from assets/images/ui/check.svg
rename to public/images/ui/check.svg
diff --git a/assets/images/ui/clock.svg b/public/images/ui/clock.svg
similarity index 100%
rename from assets/images/ui/clock.svg
rename to public/images/ui/clock.svg
diff --git a/assets/images/ui/close-white.svg b/public/images/ui/close-white.svg
similarity index 98%
rename from assets/images/ui/close-white.svg
rename to public/images/ui/close-white.svg
index 358573f1..062aa9ca 100644
--- a/assets/images/ui/close-white.svg
+++ b/public/images/ui/close-white.svg
@@ -1,9 +1,9 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/ui/close.svg b/public/images/ui/close.svg
similarity index 100%
rename from assets/images/ui/close.svg
rename to public/images/ui/close.svg
diff --git a/assets/images/ui/default-avatar.png b/public/images/ui/default-avatar.png
similarity index 100%
rename from assets/images/ui/default-avatar.png
rename to public/images/ui/default-avatar.png
diff --git a/assets/images/ui/default-avatar.svg b/public/images/ui/default-avatar.svg
similarity index 98%
rename from assets/images/ui/default-avatar.svg
rename to public/images/ui/default-avatar.svg
index 8abbd37d..a8a519b2 100644
--- a/assets/images/ui/default-avatar.svg
+++ b/public/images/ui/default-avatar.svg
@@ -1,8 +1,8 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/ui/github-admin.png b/public/images/ui/github-admin.png
similarity index 100%
rename from assets/images/ui/github-admin.png
rename to public/images/ui/github-admin.png
diff --git a/assets/images/ui/github-forks.png b/public/images/ui/github-forks.png
similarity index 100%
rename from assets/images/ui/github-forks.png
rename to public/images/ui/github-forks.png
diff --git a/assets/images/ui/github-watchers.png b/public/images/ui/github-watchers.png
similarity index 100%
rename from assets/images/ui/github-watchers.png
rename to public/images/ui/github-watchers.png
diff --git a/assets/images/ui/help.svg b/public/images/ui/help.svg
similarity index 100%
rename from assets/images/ui/help.svg
rename to public/images/ui/help.svg
diff --git a/assets/images/ui/info.svg b/public/images/ui/info.svg
similarity index 100%
rename from assets/images/ui/info.svg
rename to public/images/ui/info.svg
diff --git a/assets/images/ui/log.fold.closed.2.svg b/public/images/ui/log.fold.closed.2.svg
similarity index 100%
rename from assets/images/ui/log.fold.closed.2.svg
rename to public/images/ui/log.fold.closed.2.svg
diff --git a/assets/images/ui/log.fold.closed.3.svg b/public/images/ui/log.fold.closed.3.svg
similarity index 100%
rename from assets/images/ui/log.fold.closed.3.svg
rename to public/images/ui/log.fold.closed.3.svg
diff --git a/assets/images/ui/log.fold.closed.svg b/public/images/ui/log.fold.closed.svg
similarity index 100%
rename from assets/images/ui/log.fold.closed.svg
rename to public/images/ui/log.fold.closed.svg
diff --git a/assets/images/ui/log.fold.open.2.svg b/public/images/ui/log.fold.open.2.svg
similarity index 100%
rename from assets/images/ui/log.fold.open.2.svg
rename to public/images/ui/log.fold.open.2.svg
diff --git a/assets/images/ui/log.fold.open.svg b/public/images/ui/log.fold.open.svg
similarity index 100%
rename from assets/images/ui/log.fold.open.svg
rename to public/images/ui/log.fold.open.svg
diff --git a/assets/images/ui/logo.svg b/public/images/ui/logo.svg
similarity index 98%
rename from assets/images/ui/logo.svg
rename to public/images/ui/logo.svg
index 47b7e4c9..41ccb89a 100644
--- a/assets/images/ui/logo.svg
+++ b/public/images/ui/logo.svg
@@ -1,28 +1,28 @@
-
-
-
-
+
+
+
+
diff --git a/assets/images/ui/org.svg b/public/images/ui/org.svg
similarity index 100%
rename from assets/images/ui/org.svg
rename to public/images/ui/org.svg
diff --git a/assets/images/ui/repo-settings.png b/public/images/ui/repo-settings.png
similarity index 100%
rename from assets/images/ui/repo-settings.png
rename to public/images/ui/repo-settings.png
diff --git a/assets/images/ui/round-spinner.svg b/public/images/ui/round-spinner.svg
similarity index 100%
rename from assets/images/ui/round-spinner.svg
rename to public/images/ui/round-spinner.svg
diff --git a/assets/images/ui/search.svg b/public/images/ui/search.svg
similarity index 100%
rename from assets/images/ui/search.svg
rename to public/images/ui/search.svg
diff --git a/assets/images/ui/secure.png b/public/images/ui/secure.png
similarity index 100%
rename from assets/images/ui/secure.png
rename to public/images/ui/secure.png
diff --git a/assets/images/ui/slider-closed.png b/public/images/ui/slider-closed.png
similarity index 100%
rename from assets/images/ui/slider-closed.png
rename to public/images/ui/slider-closed.png
diff --git a/assets/images/ui/slider-closed.svg b/public/images/ui/slider-closed.svg
similarity index 100%
rename from assets/images/ui/slider-closed.svg
rename to public/images/ui/slider-closed.svg
diff --git a/assets/images/ui/slider-open.png b/public/images/ui/slider-open.png
similarity index 100%
rename from assets/images/ui/slider-open.png
rename to public/images/ui/slider-open.png
diff --git a/assets/images/ui/slider-open.svg b/public/images/ui/slider-open.svg
similarity index 100%
rename from assets/images/ui/slider-open.svg
rename to public/images/ui/slider-open.svg
diff --git a/assets/images/ui/spinner.svg b/public/images/ui/spinner.svg
similarity index 100%
rename from assets/images/ui/spinner.svg
rename to public/images/ui/spinner.svg
diff --git a/assets/images/ui/spinner_long.svg b/public/images/ui/spinner_long.svg
similarity index 100%
rename from assets/images/ui/spinner_long.svg
rename to public/images/ui/spinner_long.svg
diff --git a/assets/images/ui/tools-button.png b/public/images/ui/tools-button.png
similarity index 100%
rename from assets/images/ui/tools-button.png
rename to public/images/ui/tools-button.png
diff --git a/public/images/ui/travis-logo.svg b/public/images/ui/travis-logo.svg
new file mode 100644
index 00000000..41ccb89a
--- /dev/null
+++ b/public/images/ui/travis-logo.svg
@@ -0,0 +1,28 @@
+
+
+
+
diff --git a/assets/images/ui/user.svg b/public/images/ui/user.svg
similarity index 100%
rename from assets/images/ui/user.svg
rename to public/images/ui/user.svg
diff --git a/assets/images/ui/workers-close.svg b/public/images/ui/workers-close.svg
similarity index 100%
rename from assets/images/ui/workers-close.svg
rename to public/images/ui/workers-close.svg
diff --git a/assets/images/ui/workers-open.svg b/public/images/ui/workers-open.svg
similarity index 100%
rename from assets/images/ui/workers-open.svg
rename to public/images/ui/workers-open.svg
diff --git a/public/index.html b/public/index.html
deleted file mode 100644
index 783984f7..00000000
--- a/public/index.html
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{title}}
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/public/robots.txt b/public/robots.txt
new file mode 100644
index 00000000..5debfa4d
--- /dev/null
+++ b/public/robots.txt
@@ -0,0 +1,2 @@
+# http://www.robotstxt.org
+User-agent: *
diff --git a/public/spec.html b/public/spec.html
deleted file mode 100644
index fee47058..00000000
--- a/public/spec.html
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
-
- Travis CI - Free Hosted Continuous Integration Platform for the Open Source Community
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/public/styles/qunit.css b/public/styles/qunit.css
deleted file mode 100644
index 7ba3f9a3..00000000
--- a/public/styles/qunit.css
+++ /dev/null
@@ -1,244 +0,0 @@
-/**
- * QUnit v1.12.0 - A JavaScript Unit Testing Framework
- *
- * http://qunitjs.com
- *
- * Copyright 2012 jQuery Foundation and other contributors
- * Released under the MIT license.
- * http://jquery.org/license
- */
-
-/** Font Family and Sizes */
-
-#qunit-tests, #qunit-header, #qunit-banner, #qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult {
- font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", Calibri, Helvetica, Arial, sans-serif;
-}
-
-#qunit-testrunner-toolbar, #qunit-userAgent, #qunit-testresult, #qunit-tests li { font-size: small; }
-#qunit-tests { font-size: smaller; }
-
-
-/** Resets */
-
-#qunit-tests, #qunit-header, #qunit-banner, #qunit-userAgent, #qunit-testresult, #qunit-modulefilter {
- margin: 0;
- padding: 0;
-}
-
-
-/** Header */
-
-#qunit-header {
- padding: 0.5em 0 0.5em 1em;
-
- color: #8699a4;
- background-color: #0d3349;
-
- font-size: 1.5em;
- line-height: 1em;
- font-weight: normal;
-
- border-radius: 5px 5px 0 0;
- -moz-border-radius: 5px 5px 0 0;
- -webkit-border-top-right-radius: 5px;
- -webkit-border-top-left-radius: 5px;
-}
-
-#qunit-header a {
- text-decoration: none;
- color: #c2ccd1;
-}
-
-#qunit-header a:hover,
-#qunit-header a:focus {
- color: #fff;
-}
-
-#qunit-testrunner-toolbar label {
- display: inline-block;
- padding: 0 .5em 0 .1em;
-}
-
-#qunit-banner {
- height: 5px;
-}
-
-#qunit-testrunner-toolbar {
- padding: 0.5em 0 0.5em 2em;
- color: #5E740B;
- background-color: #eee;
- overflow: hidden;
-}
-
-#qunit-userAgent {
- padding: 0.5em 0 0.5em 2.5em;
- background-color: #2b81af;
- color: #fff;
- text-shadow: rgba(0, 0, 0, 0.5) 2px 2px 1px;
-}
-
-#qunit-modulefilter-container {
- float: right;
-}
-
-/** Tests: Pass/Fail */
-
-#qunit-tests {
- list-style-position: inside;
-}
-
-#qunit-tests li {
- padding: 0.4em 0.5em 0.4em 2.5em;
- border-bottom: 1px solid #fff;
- list-style-position: inside;
-}
-
-#qunit-tests.hidepass li.pass, #qunit-tests.hidepass li.running {
- display: none;
-}
-
-#qunit-tests li strong {
- cursor: pointer;
-}
-
-#qunit-tests li a {
- padding: 0.5em;
- color: #c2ccd1;
- text-decoration: none;
-}
-#qunit-tests li a:hover,
-#qunit-tests li a:focus {
- color: #000;
-}
-
-#qunit-tests li .runtime {
- float: right;
- font-size: smaller;
-}
-
-.qunit-assert-list {
- margin-top: 0.5em;
- padding: 0.5em;
-
- background-color: #fff;
-
- border-radius: 5px;
- -moz-border-radius: 5px;
- -webkit-border-radius: 5px;
-}
-
-.qunit-collapsed {
- display: none;
-}
-
-#qunit-tests table {
- border-collapse: collapse;
- margin-top: .2em;
-}
-
-#qunit-tests th {
- text-align: right;
- vertical-align: top;
- padding: 0 .5em 0 0;
-}
-
-#qunit-tests td {
- vertical-align: top;
-}
-
-#qunit-tests pre {
- margin: 0;
- white-space: pre-wrap;
- word-wrap: break-word;
-}
-
-#qunit-tests del {
- background-color: #e0f2be;
- color: #374e0c;
- text-decoration: none;
-}
-
-#qunit-tests ins {
- background-color: #ffcaca;
- color: #500;
- text-decoration: none;
-}
-
-/*** Test Counts */
-
-#qunit-tests b.counts { color: black; }
-#qunit-tests b.passed { color: #5E740B; }
-#qunit-tests b.failed { color: #710909; }
-
-#qunit-tests li li {
- padding: 5px;
- background-color: #fff;
- border-bottom: none;
- list-style-position: inside;
-}
-
-/*** Passing Styles */
-
-#qunit-tests li li.pass {
- color: #3c510c;
- background-color: #fff;
- border-left: 10px solid #C6E746;
-}
-
-#qunit-tests .pass { color: #528CE0; background-color: #D2E0E6; }
-#qunit-tests .pass .test-name { color: #366097; }
-
-#qunit-tests .pass .test-actual,
-#qunit-tests .pass .test-expected { color: #999999; }
-
-#qunit-banner.qunit-pass { background-color: #C6E746; }
-
-/*** Failing Styles */
-
-#qunit-tests li li.fail {
- color: #710909;
- background-color: #fff;
- border-left: 10px solid #EE5757;
- white-space: pre;
-}
-
-#qunit-tests > li:last-child {
- border-radius: 0 0 5px 5px;
- -moz-border-radius: 0 0 5px 5px;
- -webkit-border-bottom-right-radius: 5px;
- -webkit-border-bottom-left-radius: 5px;
-}
-
-#qunit-tests .fail { color: #000000; background-color: #EE5757; }
-#qunit-tests .fail .test-name,
-#qunit-tests .fail .module-name { color: #000000; }
-
-#qunit-tests .fail .test-actual { color: #EE5757; }
-#qunit-tests .fail .test-expected { color: green; }
-
-#qunit-banner.qunit-fail { background-color: #EE5757; }
-
-
-/** Result */
-
-#qunit-testresult {
- padding: 0.5em 0.5em 0.5em 2.5em;
-
- color: #2b81af;
- background-color: #D2E0E6;
-
- border-bottom: 1px solid white;
-}
-#qunit-testresult .module-name {
- font-weight: bold;
-}
-
-/** Fixture */
-
-#qunit-fixture {
- position: absolute;
- top: -10000px;
- left: -10000px;
- width: 1000px;
- height: 1000px;
-}
diff --git a/seeds.sql b/seeds.sql
deleted file mode 100644
index 7bca431d..00000000
--- a/seeds.sql
+++ /dev/null
@@ -1,84439 +0,0 @@
-TRUNCATE repositories;
-TRUNCATE builds;
-TRUNCATE requests;
-TRUNCATE commits;
-TRUNCATE jobs;
-TRUNCATE artifacts;
-TRUNCATE users;
-TRUNCATE tokens;
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (4351, 'travis-support', 'https://github.com/travis-ci/travis-support', NULL, '2011-11-30 03:54:58.335292', '2012-07-10 17:05:42.970000', 1827969, '145', 0, '2012-07-10 17:03:10.000000', '2012-07-10 17:05:17.000000', 'travis-ci', 'contact@travis-ci.org', NULL, 'Support classes and extensions used in travis-ci', NULL, 960, 'f', 87, 'Organization', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (3323, 'travis-core', 'https://github.com/travis-ci/travis-core', NULL, '2011-11-07 12:33:27.464478', '2012-07-19 17:18:07.922000', 1905992, '838', 0, '2012-07-19 16:51:14.000000', '2012-07-19 17:17:50.000000', 'travis-ci', NULL, NULL, 'Models and classes shared by Travis hub and server', NULL, 3938, 'f', 87, 'Organization', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (59, 'travis-ci', 'https://github.com/travis-ci/travis-ci', NULL, '2011-02-28 21:53:20.199776', '2012-07-19 17:00:39.483000', 1906054, '1962', 0, '2012-07-19 16:56:47.000000', '2012-07-19 17:00:39.000000', 'travis-ci', 'contact@travis-ci.org', NULL, 'A distributed build system for the open source community.', NULL, 232, 'f', 87, 'Organization', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (3371, 'travis-hub', 'https://github.com/travis-ci/travis-hub', NULL, '2011-11-08 23:39:40.214910', '2012-07-17 11:57:59.184000', 1884596, '449', NULL, '2012-07-17 11:55:20.000000', '2012-07-17 11:57:58.000000', 'travis-ci', 'contact@travis-ci.org', NULL, 'Collects build log streams, worker state reports and many other things [from Travis workers]', NULL, 267, 'f', 87, 'Organization', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (7, 'minimal', 'https://github.com/svenfuchs/minimal', NULL, '2010-12-30 15:50:26.079896', '2012-02-27 00:10:41.173000', 747813, '78', 0, '2012-02-27 00:09:43.000000', '2012-02-27 00:10:41.000000', 'svenfuchs', 'svenfuchs@artweb-design.de', 't', 'Minimal templating engine inspired by Markaby & Erector but much smaller and targeting Rails 3', NULL, 190, 'f', 8, 'User', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (8, 'gem-release', 'https://github.com/svenfuchs/gem-release', NULL, '2010-12-30 15:50:29.878554', '2012-04-22 18:52:39.135000', 1149382, '134', 0, '2012-04-22 18:51:03.000000', '2012-04-22 18:51:59.000000', 'svenfuchs', 'me@svenfuchs.com', 't', 'Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)', NULL, 155, 'f', 8, 'User', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (9592, 'gh', 'https://github.com/rkh/gh', NULL, '2012-03-09 12:31:02.851922', '2012-07-11 14:19:38.557000', 1836256, '117', 0, '2012-07-11 14:17:54.000000', '2012-07-11 14:19:38.000000', 'rkh', 'konstantin.mailinglists@googlemail.com', NULL, 'Layered GitHub API client', NULL, 559, 'f', 267, 'User', 1);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (1649, 'yard-sinatra', 'https://github.com/rkh/yard-sinatra', NULL, '2011-08-17 20:25:46.549820', '2012-07-17 19:24:44.156000', 1888371, '8', 1, '2012-07-17 19:23:31.000000', '2012-07-17 19:24:43.000000', 'rkh', 'konstantin.mailinglists@googlemail.com', 't', 'Display sinatra routes in yard documentation.', NULL, 194, 'f', 267, 'User', 1);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (8975, 'hurt_logger', 'https://github.com/mattmatt/hurt_logger', NULL, '2012-03-02 20:38:39.471821', '2012-03-04 11:27:21.919000', 791653, '11', 0, '2012-03-04 11:25:48.000000', '2012-03-04 11:27:21.000000', 'mattmatt', 'meyer@paperplanes.de', NULL, NULL, NULL, 172, 'f', 5100, 'User', 0);
-
-INSERT INTO repositories (id, name, url, last_duration, created_at, updated_at, last_build_id, last_build_number, last_build_status, last_build_started_at, last_build_finished_at, owner_name, owner_email, active, description, last_build_language, last_build_duration, private, owner_id, owner_type, last_build_result)
- VALUES (9657, 'lograge', 'https://github.com/mattmatt/lograge', NULL, '2012-03-10 11:34:14.226610', '2012-05-16 19:21:22.909000', 1348710, '27', 0, '2012-05-16 19:20:45.000000', '2012-05-16 19:21:22.000000', 'mattmatt', 'meyer@paperplanes.de', NULL, 'An attempt to tame Rails'' default policy to log everything.', NULL, 71, 'f', 5100, 'User', 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1827969, 4351, '145', NULL, '2012-07-10 17:03:10.000000', '2012-07-10 17:05:17.000000', NULL, '2012-07-10 17:03:09.727000', '2012-07-10 17:05:44.032000', '---
-:language: ruby
-:rvm:
-- 1.9.2
-- jruby-18mode
-- jruby-19mode
-- jruby-head
-:jdk:
-- openjdk6
-- openjdk7
-- oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', 488920, 508054, 'finished', NULL, NULL, 960, 87, 'Organization', 0, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1826893, 4351, '144', NULL, '2012-07-10 15:15:51.000000', '2012-07-10 15:17:33.000000', NULL, '2012-07-10 15:15:50.387000', '2012-07-10 15:17:34.959000', '---
-:language: ruby
-:rvm:
-- 1.9.2
-- jruby-18mode
-- jruby-19mode
-- jruby-head
-:jdk:
-- openjdk6
-- openjdk7
-- oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', 488583, 507690, 'finished', NULL, NULL, 824, 87, 'Organization', 1, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1816250, 4351, '143', NULL, '2012-07-09 12:05:22.000000', '2012-07-09 12:06:59.000000', NULL, '2012-07-09 12:05:22.470000', '2012-07-09 12:07:11.347000', '---
-:language: ruby
-:rvm:
-- 1.9.2
-- jruby-18mode
-- jruby-19mode
-- jruby-head
-:jdk:
-- openjdk6
-- openjdk7
-- oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', 485418, 504197, 'finished', NULL, NULL, 748, 87, 'Organization', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1816212, 4351, '142', NULL, '2012-07-09 11:59:25.000000', '2012-07-09 12:01:32.000000', NULL, '2012-07-09 11:59:25.258000', '2012-07-09 12:01:35.376000', '---
-:language: ruby
-:rvm:
-- 1.9.2
-- jruby-18mode
-- jruby-19mode
-- jruby-head
-:jdk:
-- openjdk6
-- openjdk7
-- oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', 485407, 504186, 'finished', NULL, NULL, 918, 87, 'Organization', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1804636, 4351, '141', NULL, '2012-07-07 18:45:57.000000', '2012-07-07 18:49:14.000000', NULL, '2012-07-07 18:45:30.696000', '2012-07-07 18:49:16.587000', '---
-:language: ruby
-:rvm:
-- 1.9.2
-- jruby-18mode
-- jruby-19mode
-- jruby-head
-:jdk:
-- openjdk6
-- openjdk7
-- oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', 482125, 500610, 'finished', NULL, NULL, 906, 87, 'Organization', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1905992, 3323, '838', NULL, '2012-07-19 16:51:14.000000', '2012-07-19 17:17:50.000000', NULL, '2012-07-19 16:51:13.921000', '2012-07-19 17:18:08.981000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 512493, 533725, 'finished', NULL, NULL, 3938, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1904441, 3323, '837', NULL, '2012-07-19 13:58:44.000000', '2012-07-19 14:25:46.000000', NULL, '2012-07-19 13:58:44.114000', '2012-07-19 14:25:54.962000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 511984, 533184, 'finished', NULL, NULL, 7993, 87, 'Organization', 1, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1904342, 3323, '836', NULL, '2012-07-19 13:46:53.000000', '2012-07-19 13:48:52.000000', NULL, '2012-07-19 13:46:52.910000', '2012-07-19 13:48:53.435000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 511952, 533151, 'finished', NULL, NULL, 435, 87, 'Organization', 1, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1894740, 3323, '835', NULL, '2012-07-18 12:50:12.000000', '2012-07-18 13:16:40.000000', NULL, '2012-07-18 12:50:12.077000', '2012-07-18 13:16:41.922000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 509077, 529990, 'finished', NULL, NULL, 3910, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1886296, 3323, '834', NULL, '2012-07-17 15:19:32.000000', '2012-07-17 15:46:16.000000', NULL, '2012-07-17 15:19:31.533000', '2012-07-17 15:46:34.274000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 506427, 527164, 'finished', NULL, NULL, 3863, 87, 'Organization', 0, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1906054, 59, '1962', NULL, '2012-07-19 16:56:47.000000', '2012-07-19 17:00:39.000000', NULL, '2012-07-19 16:56:47.135000', '2012-07-19 17:00:55.964000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', 512511, 533744, 'finished', NULL, NULL, 232, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1903420, 59, '1961', NULL, '2012-07-19 11:35:44.000000', '2012-07-19 11:38:53.000000', NULL, '2012-07-19 11:35:44.124000', '2012-07-19 11:39:09.067000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', 511705, 532887, 'finished', NULL, NULL, 189, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1903116, 59, '1960', NULL, '2012-07-19 10:33:40.000000', '2012-07-19 10:36:57.000000', NULL, '2012-07-19 10:33:40.393000', '2012-07-19 10:37:14.745000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', 511621, 532796, 'finished', NULL, NULL, 197, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1899691, 59, '1959', NULL, '2012-07-18 22:39:29.000000', '2012-07-18 22:42:39.000000', NULL, '2012-07-18 22:39:29.191000', '2012-07-18 22:42:40.734000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', 510600, 531657, 'finished', NULL, NULL, 190, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1886868, 59, '1958', NULL, '2012-07-17 16:23:14.000000', '2012-07-17 16:26:50.000000', NULL, '2012-07-17 16:23:14.578000', '2012-07-17 16:27:08.649000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', 506626, 527373, 'finished', NULL, NULL, 216, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1884596, 3371, '449', NULL, '2012-07-17 11:55:20.000000', '2012-07-17 11:57:58.000000', NULL, '2012-07-17 11:55:20.230000', '2012-07-17 11:58:14.038000', '---
-:rvm:
-- jruby
-- jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 505919, 526591, 'finished', NULL, NULL, 267, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1884582, 3371, '448', NULL, '2012-07-17 11:52:52.000000', '2012-07-17 11:55:43.000000', NULL, '2012-07-17 11:52:52.531000', '2012-07-17 11:55:58.884000', '---
-:rvm:
-- jruby
-- jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 505914, 526586, 'finished', NULL, NULL, 285, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1884379, 3371, '447', NULL, '2012-07-17 11:14:46.000000', '2012-07-17 11:17:18.000000', NULL, '2012-07-17 11:14:45.728000', '2012-07-17 11:17:32.365000', '---
-:rvm:
-- jruby
-- jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 505861, 526532, 'finished', NULL, NULL, 268, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1878240, 3371, '446', NULL, '2012-07-16 15:50:53.000000', '2012-07-16 15:53:48.000000', NULL, '2012-07-16 15:50:53.227000', '2012-07-16 15:54:04.751000', '---
-:rvm:
-- jruby
-- jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 503892, 524418, 'finished', NULL, NULL, 302, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1877596, 3371, '445', NULL, '2012-07-16 14:21:34.000000', '2012-07-16 14:24:26.000000', NULL, '2012-07-16 14:21:33.925000', '2012-07-16 14:24:44.371000', '---
-:rvm:
-- jruby
-- jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', 503691, 524207, 'finished', NULL, NULL, 309, 87, 'Organization', 0, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (747813, 7, '78', 0, '2012-02-27 00:09:43.000000', '2012-02-27 00:10:41.000000', NULL, '2012-02-27 00:09:42.764000', '2012-02-27 00:10:41.806000', '---
-:gemfile:
-- Gemfiles/rails-3.0
-- Gemfiles/rails-3.1
-:rvm:
-- 1.8.7
-- 1.9.3
-:.configured: true
-', 228021, 227993, 'finished', NULL, '2012-02-27 00:10:41.806000', 190, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (9861, 7, '77', 0, '2011-05-09 10:54:05.000000', '2011-05-09 10:54:20.000000', NULL, '2011-05-09 10:54:04.866628', '2011-12-12 17:27:57.298022', '--- {}
-', 9861, 9861, 'finished', NULL, '2011-12-07 08:20:53.661852', 0, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (9860, 7, '76', 0, '2011-05-09 10:51:11.000000', '2011-05-09 10:51:55.000000', NULL, '2011-05-09 10:51:08.478012', '2011-12-12 17:27:57.310137', '--- {}
-', 9860, 9860, 'finished', NULL, '2011-12-07 08:20:53.512610', 0, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1149382, 8, '134', 0, '2012-04-22 18:51:03.000000', '2012-04-22 18:51:59.000000', NULL, '2012-04-22 18:51:03.309000', '2012-04-22 18:52:00.142000', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- ree
-- jruby
-:.configured: true
-', 315710, 319559, 'finished', NULL, '2012-04-22 18:52:00.142000', 155, 8, 'User', 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1149376, 8, '133', 0, '2012-04-22 18:51:02.000000', '2012-04-22 18:51:55.000000', NULL, '2012-04-22 18:51:01.888000', '2012-04-22 18:51:55.712000', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- ree
-- jruby
-:.configured: true
-', 315709, 319558, 'finished', NULL, '2012-04-22 18:51:55.712000', 146, 8, 'User', 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (965815, 8, '132', 0, '2012-03-28 15:32:49.000000', '2012-03-28 15:36:32.000000', NULL, '2012-03-28 15:32:12.274000', '2012-03-28 15:36:32.715000', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- ree
-- jruby
-:.configured: true
-', 273502, 273474, 'finished', NULL, '2012-03-28 15:36:32.715000', 534, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (964704, 8, '131', 0, '2012-03-28 12:11:01.000000', '2012-03-28 12:12:00.000000', NULL, '2012-03-28 12:11:01.424000', '2012-03-28 12:12:03.195000', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- ree
-- jruby
-:.configured: true
-', 273501, 273473, 'finished', NULL, '2012-03-28 12:12:03.195000', 165, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (963073, 8, '130', NULL, '2012-03-28 07:58:25.000000', '2012-03-28 08:00:09.000000', NULL, '2012-03-28 07:58:24.678000', '2012-03-28 08:01:13.307000', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- ree
-- jruby
-:.configured: true
-', 273073, 273045, 'finished', NULL, '2012-03-28 08:01:13.307000', 332, NULL, NULL, NULL, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1836256, 9592, '117', NULL, '2012-07-11 14:17:54.000000', '2012-07-11 14:19:38.000000', NULL, '2012-07-11 14:17:53.802000', '2012-07-11 14:19:39.622000', '---
-:language: ruby
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-- rbx-18mode
-- rbx-19mode
-- jruby-head
-- ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', 491438, 510782, 'finished', NULL, NULL, 559, 267, 'User', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1835989, 9592, '116', NULL, '2012-07-11 13:51:10.000000', '2012-07-11 13:52:28.000000', NULL, '2012-07-11 13:51:09.866000', '2012-07-11 13:52:31.104000', '---
-:language: ruby
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-- rbx-18mode
-- rbx-19mode
-- jruby-head
-- ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', 491372, 510711, 'finished', NULL, NULL, 447, 267, 'User', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1645324, 9592, '115', NULL, '2012-06-18 08:10:56.000000', '2012-06-18 08:12:04.000000', NULL, '2012-06-18 08:10:55.744000', '2012-06-18 08:12:04.689000', '---
-:language: ruby
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-- rbx-18mode
-- rbx-19mode
-- jruby-head
-- ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', 434698, 449163, 'finished', NULL, NULL, 425, 267, 'User', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1594935, 9592, '114', NULL, '2012-06-11 19:16:45.000000', '2012-06-11 19:18:30.000000', NULL, '2012-06-11 19:16:44.940000', '2012-06-11 19:18:31.322000', '---
-:language: ruby
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-- rbx-18mode
-- rbx-19mode
-- jruby-head
-- ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', 420903, 434181, 'finished', NULL, '2012-06-11 19:18:31.310000', 530, 267, 'User', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1594907, 9592, '113', NULL, '2012-06-11 19:14:44.000000', '2012-06-11 19:16:28.000000', NULL, '2012-06-11 19:14:43.490000', '2012-06-11 19:16:28.935000', '---
-:language: ruby
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- jruby-18mode
-- jruby-19mode
-- rbx-18mode
-- rbx-19mode
-- jruby-head
-- ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', 420895, 434171, 'finished', NULL, '2012-06-11 19:16:28.921000', 529, 267, 'User', 1, 1);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1888371, 1649, '8', NULL, '2012-07-17 19:23:31.000000', '2012-07-17 19:24:43.000000', NULL, '2012-07-17 19:23:31.113000', '2012-07-17 19:24:44.718000', '---
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- rbx
-- rbx-2.0
-- jruby
-- ruby-head
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', 507098, 527884, 'finished', NULL, NULL, 194, 267, 'User', 1, 0);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (584963, 1649, '7', 1, '2012-01-27 15:04:46.000000', '2012-01-27 15:06:27.000000', NULL, '2012-01-27 15:04:45.979000', '2012-01-27 15:06:28.796000', '---
-:rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- rbx
-- rbx-2.0
-- jruby
-- ruby-head
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 194785, 194759, 'finished', NULL, '2012-01-27 15:06:28.796000', 397, NULL, NULL, 1, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (86857, 1649, '6', 0, '2011-08-17 20:38:33.000000', '2011-08-17 20:40:09.000000', NULL, '2011-08-17 20:38:23.018154', '2011-12-12 17:10:25.702369', '---
-rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- rbx
-- rbx-2.0
-- jruby
-- ruby-head
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 86861, 86863, 'finished', NULL, '2011-12-07 10:00:31.907549', 379, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (86849, 1649, '5', 1, '2011-08-17 20:36:49.000000', '2011-08-17 20:38:08.000000', NULL, '2011-08-17 20:36:39.140223', '2011-12-12 17:10:25.718664', '---
-rvm:
-- 1.8.7
-- 1.9.2
-- 1.9.3
-- rbx
-- rbx-2.0
-- jruby
-- ruby-head
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 86850, 86853, 'finished', NULL, '2011-12-07 10:00:31.762889', 343, NULL, NULL, 1, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (86846, 1649, '4', 1, '2011-08-17 20:34:59.000000', '2011-08-17 20:35:36.000000', NULL, '2011-08-17 20:34:50.511386', '2011-12-12 17:10:25.740034', '---
-rvm:
-- 1.8.7
-- 1.9.2
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 86848, 86846, 'finished', NULL, '2011-12-07 10:00:31.674768', 74, NULL, NULL, 1, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (791653, 8975, '11', 0, '2012-03-04 11:25:48.000000', '2012-03-04 11:27:21.000000', NULL, '2012-03-04 11:25:48.436000', '2012-03-04 11:27:22.400000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 237101, 237073, 'finished', NULL, '2012-03-04 11:27:22.400000', 172, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (791645, 8975, '10', 0, '2012-03-04 11:23:13.000000', '2012-03-04 11:24:55.000000', NULL, '2012-03-04 11:23:13.667000', '2012-03-04 11:24:55.656000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 237099, 237071, 'finished', NULL, '2012-03-04 11:24:55.656000', 200, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (791603, 8975, '9', 0, '2012-03-04 11:17:35.000000', '2012-03-04 11:18:59.000000', NULL, '2012-03-04 11:17:35.830000', '2012-03-04 11:18:59.576000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 237091, 237063, 'finished', NULL, '2012-03-04 11:18:59.576000', 161, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (791325, 8975, '8', 0, '2012-03-04 10:04:03.000000', '2012-03-04 10:05:24.000000', NULL, '2012-03-04 10:04:03.682000', '2012-03-04 10:05:25.328000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 237034, 237006, 'finished', NULL, '2012-03-04 10:05:25.328000', 159, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (791089, 8975, '7', 0, '2012-03-04 09:03:50.000000', '2012-03-04 09:05:14.000000', NULL, '2012-03-04 09:03:50.080000', '2012-03-04 09:05:14.945000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 236990, 236962, 'finished', NULL, '2012-03-04 09:05:14.945000', 157, NULL, NULL, 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1348710, 9657, '27', NULL, '2012-05-16 19:20:45.000000', '2012-05-16 19:21:22.000000', NULL, '2012-05-16 19:20:44.950000', '2012-05-16 19:21:23.346000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 363794, 371697, 'finished', NULL, '2012-05-16 19:21:23.346000', 71, 5100, 'User', 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1257402, 9657, '26', NULL, '2012-05-06 11:13:30.000000', '2012-05-06 11:14:00.000000', NULL, '2012-05-06 11:13:30.236000', '2012-05-06 11:14:00.942000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 341599, 347560, 'finished', NULL, '2012-05-06 11:14:00.942000', 58, 5100, 'User', 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1252332, 9657, '25', 0, '2012-05-05 11:09:27.000000', '2012-05-05 11:09:55.000000', NULL, '2012-05-05 11:09:26.682000', '2012-05-05 11:09:55.812000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 340261, 346097, 'finished', NULL, '2012-05-05 11:09:55.812000', 56, 5100, 'User', 0, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1252323, 9657, '24', 1, '2012-05-05 11:08:19.000000', '2012-05-05 11:08:48.000000', NULL, '2012-05-05 11:08:19.179000', '2012-05-05 11:08:51.126000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-- ree
-- 1.8.7
-:script: bundle exec rspec
-:.result: configured
-', 340259, 346095, 'finished', NULL, '2012-05-05 11:08:51.126000', 111, 5100, 'User', 1, NULL);
-
-INSERT INTO builds (id, repository_id, number, status, started_at, finished_at, agent, created_at, updated_at, config, commit_id, request_id, state, language, archived_at, duration, owner_id, owner_type, result, previous_result)
- VALUES (1252302, 9657, '23', 0, '2012-05-05 11:03:47.000000', '2012-05-05 11:04:24.000000', NULL, '2012-05-05 11:03:46.745000', '2012-05-05 11:04:25.228000', '---
-:language: ruby
-:rvm:
-- 1.9.3
-- 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 340251, 346087, 'finished', NULL, '2012-05-05 11:04:25.228000', 65, 5100, 'User', 0, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (508054, 4351, 488920, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: travis-support
- has_wiki: false
- created_at: "2011-11-29T15:04:04-08:00"
- size: 192
- private: false
- watchers: 9
- fork: false
- language: Ruby
- url: https://github.com/travis-ci/travis-support
- pushed_at: "2012-07-10T10:02:37-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://travis-ci.org
- has_issues: true
- forks: 4
- organization: travis-ci
- description: Support classes and extensions used in travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 4393c5d2501bea3f921a0a31806717d93add05fe
-head_commit:
- added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- timestamp: "2012-07-10T10:02:31-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/travis-ci/travis-support/commit/4393c5d2501bea3f921a0a31806717d93add05fe
- id: 4393c5d2501bea3f921a0a31806717d93add05fe
- distinct: true
- message: Merge branch ''instrumentation-level''
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-deleted: false
-ref: refs/heads/master
-commits:
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- timestamp: "2012-07-10T08:15:25-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/travis-ci/travis-support/commit/f9ff4f7922770e7a11fa3e04f85f1cd734596581
- id: f9ff4f7922770e7a11fa3e04f85f1cd734596581
- distinct: false
- message: add support for log levels
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- timestamp: "2012-07-10T10:02:31-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/travis-ci/travis-support/commit/4393c5d2501bea3f921a0a31806717d93add05fe
- id: 4393c5d2501bea3f921a0a31806717d93add05fe
- distinct: true
- message: Merge branch ''instrumentation-level''
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-compare: https://github.com/travis-ci/travis-support/compare/193acbc85815...4393c5d2501b
-before: 193acbc858154b0d86a0ee41d932ca0083933731
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.2
- - jruby-18mode
- - jruby-19mode
- - jruby-head
-jdk:
- - openjdk6
- - openjdk7
- - oraclejdk7
-matrix:
- exclude:
- - rvm: 1.9.2
- jdk: openjdk7
- - rvm: 1.9.2
- jdk: oraclejdk7
-.result: configured
-', '2012-07-10 17:03:08.381000', '2012-07-10 17:03:08.381000', '2012-07-10 17:03:07.866000', '2012-07-10 17:03:10.791000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (507690, 4351, 488583, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: travis-support
- has_wiki: false
- size: 196
- created_at: "2011-11-29T15:04:04-08:00"
- private: false
- watchers: 9
- url: https://github.com/travis-ci/travis-support
- fork: false
- language: Ruby
- pushed_at: "2012-07-10T08:15:35-07:00"
- open_issues: 0
- has_downloads: true
- homepage: http://travis-ci.org
- has_issues: true
- forks: 4
- organization: travis-ci
- description: Support classes and extensions used in travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: true
-head_commit:
- added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- timestamp: "2012-07-10T08:15:25-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/travis-ci/travis-support/commit/f9ff4f7922770e7a11fa3e04f85f1cd734596581
- id: f9ff4f7922770e7a11fa3e04f85f1cd734596581
- distinct: true
- message: add support for log levels
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-after: f9ff4f7922770e7a11fa3e04f85f1cd734596581
-deleted: false
-commits:
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- timestamp: "2012-07-10T08:15:25-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/travis-ci/travis-support/commit/f9ff4f7922770e7a11fa3e04f85f1cd734596581
- id: f9ff4f7922770e7a11fa3e04f85f1cd734596581
- distinct: true
- message: add support for log levels
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-ref: refs/heads/instrumentation-level
-compare: https://github.com/travis-ci/travis-support/commit/f9ff4f792277
-before: "0000000000000000000000000000000000000000"
-created: true
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.2
- - jruby-18mode
- - jruby-19mode
- - jruby-head
-jdk:
- - openjdk6
- - openjdk7
- - oraclejdk7
-matrix:
- exclude:
- - rvm: 1.9.2
- jdk: openjdk7
- - rvm: 1.9.2
- jdk: oraclejdk7
-.result: configured
-', '2012-07-10 15:15:49.513000', '2012-07-10 15:15:49.513000', '2012-07-10 15:15:49.255000', '2012-07-10 15:15:51.622000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (504197, 4351, 485418, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-support
- created_at: "2011-11-29T15:04:04-08:00"
- size: 196
- has_wiki: false
- private: false
- watchers: 9
- url: https://github.com/travis-ci/travis-support
- fork: false
- language: Ruby
- pushed_at: "2012-07-09T05:05:11-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://travis-ci.org
- has_issues: true
- forks: 4
- organization: travis-ci
- description: Support classes and extensions used in travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 193acbc858154b0d86a0ee41d932ca0083933731
-head_commit:
- added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-09T05:05:09-07:00"
- url: https://github.com/travis-ci/travis-support/commit/193acbc858154b0d86a0ee41d932ca0083933731
- id: 193acbc858154b0d86a0ee41d932ca0083933731
- distinct: true
- message: remove stale require
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-ref: refs/heads/master
-commits:
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-09T05:05:09-07:00"
- url: https://github.com/travis-ci/travis-support/commit/193acbc858154b0d86a0ee41d932ca0083933731
- id: 193acbc858154b0d86a0ee41d932ca0083933731
- distinct: true
- message: remove stale require
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-before: ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-compare: https://github.com/travis-ci/travis-support/compare/ec52ebda6aa2...193acbc85815
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.2
- - jruby-18mode
- - jruby-19mode
- - jruby-head
-jdk:
- - openjdk6
- - openjdk7
- - oraclejdk7
-matrix:
- exclude:
- - rvm: 1.9.2
- jdk: openjdk7
- - rvm: 1.9.2
- jdk: oraclejdk7
-.result: configured
-', '2012-07-09 12:05:22.429000', '2012-07-09 12:05:22.429000', '2012-07-09 12:05:22.283000', '2012-07-09 12:05:22.867000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (504186, 4351, 485407, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-support
- created_at: "2011-11-29T15:04:04-08:00"
- size: 200
- has_wiki: false
- private: false
- watchers: 9
- url: https://github.com/travis-ci/travis-support
- fork: false
- language: Ruby
- pushed_at: "2012-07-09T04:59:18-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://travis-ci.org
- has_issues: true
- forks: 4
- organization: travis-ci
- description: Support classes and extensions used in travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-head_commit:
- added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-09T04:59:11-07:00"
- url: https://github.com/travis-ci/travis-support/commit/ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
- id: ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
- distinct: true
- message: prepend a version to metriks names
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-ref: refs/heads/master
-commits:
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-09T04:54:51-07:00"
- url: https://github.com/travis-ci/travis-support/commit/d8574f64ff8a183fe990783b92b4582f8b94c509
- id: d8574f64ff8a183fe990783b92b4582f8b94c509
- distinct: true
- message: do not meter :received events
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - added: []
-
- modified:
- - lib/travis/support/instrumentation.rb
- - spec/travis/instrumentation_spec.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-09T04:59:11-07:00"
- url: https://github.com/travis-ci/travis-support/commit/ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
- id: ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
- distinct: true
- message: prepend a version to metriks names
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-before: 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-compare: https://github.com/travis-ci/travis-support/compare/1e76ebd1108d...ec52ebda6aa2
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.2
- - jruby-18mode
- - jruby-19mode
- - jruby-head
-jdk:
- - openjdk6
- - openjdk7
- - oraclejdk7
-matrix:
- exclude:
- - rvm: 1.9.2
- jdk: openjdk7
- - rvm: 1.9.2
- jdk: oraclejdk7
-.result: configured
-', '2012-07-09 11:59:23.031000', '2012-07-09 11:59:23.031000', '2012-07-09 11:59:22.886000', '2012-07-09 11:59:25.662000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (500610, 4351, 482125, 'started', NULL, '---
-pusher:
- name: sferik
- email: sferik@gmail.com
-repository:
- name: travis-support
- created_at: "2011-11-29T15:04:04-08:00"
- size: 196
- has_wiki: false
- watchers: 9
- private: false
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-support
- pushed_at: "2012-07-07T11:45:26-07:00"
- open_issues: 0
- has_downloads: true
- homepage: http://travis-ci.org
- has_issues: true
- description: Support classes and extensions used in travis-ci
- forks: 4
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-head_commit:
- added:
- - lib/travis/support/helpers.rb
- - spec/travis/helpers_spec.rb
- modified:
- - Gemfile
- - lib/travis/support.rb
- author:
- name: Erik Michaels-Ober
- username: sferik
- email: sferik@gmail.com
- removed: []
-
- timestamp: "2012-07-07T11:45:25-07:00"
- url: https://github.com/travis-ci/travis-support/commit/1e76ebd1108dd918bd0d17c5f241a7984292b31f
- id: 1e76ebd1108dd918bd0d17c5f241a7984292b31f
- distinct: true
- message: |-
- Merge pull request #3 from drogus/obfuscate-env-vars
-
- Add Travis::Helpers.obfuscate_env_vars
- committer:
- name: Erik Michaels-Ober
- username: sferik
- email: sferik@gmail.com
-deleted: false
-ref: refs/heads/master
-commits:
- - added:
- - lib/travis/support/helpers.rb
- - spec/travis/helpers_spec.rb
- modified:
- - lib/travis/support.rb
- author:
- name: Piotr Sarnacki
- username: drogus
- email: drogus@gmail.com
- removed: []
-
- timestamp: "2012-07-07T11:32:55-07:00"
- url: https://github.com/travis-ci/travis-support/commit/ecf3758c92fe167022d813440e7f63655ef7f24e
- id: ecf3758c92fe167022d813440e7f63655ef7f24e
- distinct: true
- message: |-
- Add Travis::Helpers.obfuscate_env_vars
-
- Its purpose is to obfuscate contents of ENV variables that are encrypted in
- travis.yml config. For example FOO=foo becomes FOO=[secure]
- committer:
- name: Piotr Sarnacki
- username: drogus
- email: drogus@gmail.com
- - added: []
-
- modified:
- - Gemfile
- author:
- name: Piotr Sarnacki
- username: drogus
- email: drogus@gmail.com
- removed: []
-
- timestamp: "2012-07-07T11:34:16-07:00"
- url: https://github.com/travis-ci/travis-support/commit/7db6bf5cea6a7302db1163666636c96f626c92b4
- id: 7db6bf5cea6a7302db1163666636c96f626c92b4
- distinct: true
- message: Freeze mocha in ~> 0.11.0, it breaks on 0.12.x
- committer:
- name: Piotr Sarnacki
- username: drogus
- email: drogus@gmail.com
- - added:
- - lib/travis/support/helpers.rb
- - spec/travis/helpers_spec.rb
- modified:
- - Gemfile
- - lib/travis/support.rb
- author:
- name: Erik Michaels-Ober
- username: sferik
- email: sferik@gmail.com
- removed: []
-
- timestamp: "2012-07-07T11:45:25-07:00"
- url: https://github.com/travis-ci/travis-support/commit/1e76ebd1108dd918bd0d17c5f241a7984292b31f
- id: 1e76ebd1108dd918bd0d17c5f241a7984292b31f
- distinct: true
- message: |-
- Merge pull request #3 from drogus/obfuscate-env-vars
-
- Add Travis::Helpers.obfuscate_env_vars
- committer:
- name: Erik Michaels-Ober
- username: sferik
- email: sferik@gmail.com
-before: ad079609a4089f243bb500c4df98350478ad292e
-compare: https://github.com/travis-ci/travis-support/compare/ad079609a408...1e76ebd1108d
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.2
- - jruby-18mode
- - jruby-19mode
- - jruby-head
-jdk:
- - openjdk6
- - openjdk7
- - oraclejdk7
-matrix:
- exclude:
- - rvm: 1.9.2
- jdk: openjdk7
- - rvm: 1.9.2
- jdk: oraclejdk7
-.result: configured
-', '2012-07-07 18:45:30.575000', '2012-07-07 18:45:30.574000', '2012-07-07 18:45:30.437000', '2012-07-07 18:45:31.322000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (533725, 3323, 512493, 'started', NULL, '---
-number: 81
-pull_request:
- head:
- repo:
- name: travis-core
- has_wiki: true
- size: 116
- created_at: "2012-07-19T16:31:58Z"
- clone_url: https://github.com/narfbg/travis-core.git
- updated_at: "2012-07-19T16:46:55Z"
- watchers: 1
- private: false
- ssh_url: git@github.com:narfbg/travis-core.git
- git_url: git://github.com/narfbg/travis-core.git
- language: Ruby
- fork: true
- url: https://api.github.com/repos/narfbg/travis-core
- svn_url: https://github.com/narfbg/travis-core
- pushed_at: "2012-07-19T16:46:55Z"
- id: 5112556
- mirror_url:
- open_issues: 0
- has_downloads: true
- homepage: ""
- has_issues: false
- full_name: narfbg/travis-core
- description: Models and classes shared by Travis hub and server
- forks: 0
- html_url: https://github.com/narfbg/travis-core
- owner:
- gravatar_id: 01c7cad7af7361ad9ca670fbf1d502e4
- avatar_url: https://secure.gravatar.com/avatar/01c7cad7af7361ad9ca670fbf1d502e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/narfbg
- id: 1058011
- login: narfbg
- label: narfbg:issue-537
- sha: 3973af5f0fe8054fdcb34307d9d6de8a7cf1e72f
- ref: issue-537
- user:
- avatar_url: https://secure.gravatar.com/avatar/01c7cad7af7361ad9ca670fbf1d502e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 01c7cad7af7361ad9ca670fbf1d502e4
- url: https://api.github.com/users/narfbg
- id: 1058011
- login: narfbg
- number: 81
- issue_url: https://github.com/travis-ci/travis-core/issues/81
- changed_files: 1
- merged: false
- merged_by:
- created_at: "2012-07-19T16:51:10Z"
- title: "Fix issue #537 (branch names with slashes included)"
- body: "Used this as a reference: http://developer.github.com/v3/git/refs/"
- comments: 0
- updated_at: "2012-07-19T16:51:11Z"
- additions: 1
- diff_url: https://github.com/travis-ci/travis-core/pull/81.diff
- _links:
- html:
- href: https://github.com/travis-ci/travis-core/pull/81
- self:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/81
- comments:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/81/comments
- issue:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/81
- review_comments:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/81/comments
- url: https://api.github.com/repos/travis-ci/travis-core/pulls/81
- id: 1840161
- patch_url: https://github.com/travis-ci/travis-core/pull/81.patch
- assignee:
- mergeable:
- milestone:
- merged_at:
- closed_at:
- commits: 1
- review_comments: 0
- html_url: https://github.com/travis-ci/travis-core/pull/81
- deletions: 1
- user:
- gravatar_id: 01c7cad7af7361ad9ca670fbf1d502e4
- avatar_url: https://secure.gravatar.com/avatar/01c7cad7af7361ad9ca670fbf1d502e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/narfbg
- id: 1058011
- login: narfbg
- base:
- repo:
- name: travis-core
- has_wiki: true
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- clone_url: https://github.com/travis-ci/travis-core.git
- updated_at: "2012-07-19T16:48:33Z"
- watchers: 64
- private: false
- ssh_url: git@github.com:travis-ci/travis-core.git
- git_url: git://github.com/travis-ci/travis-core.git
- language: Ruby
- fork: false
- url: https://api.github.com/repos/travis-ci/travis-core
- svn_url: https://github.com/travis-ci/travis-core
- pushed_at: "2012-07-17T15:19:29Z"
- id: 2723436
- mirror_url:
- open_issues: 13
- has_downloads: true
- homepage: ""
- has_issues: true
- full_name: travis-ci/travis-core
- description: Models and classes shared by Travis hub and server
- forks: 29
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- label: travis-ci:master
- sha: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- ref: master
- user:
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- gravatar_id: 253768044712357787be0f6a3a53cc66
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- state: open
-repository:
- name: travis-core
- created_at: "2011-11-07T01:15:11Z"
- size: 588
- has_wiki: true
- clone_url: https://github.com/travis-ci/travis-core.git
- updated_at: "2012-07-19T16:48:33Z"
- private: false
- watchers: 64
- ssh_url: git@github.com:travis-ci/travis-core.git
- language: Ruby
- fork: false
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- svn_url: https://github.com/travis-ci/travis-core
- has_downloads: true
- mirror_url:
- open_issues: 13
- full_name: travis-ci/travis-core
- homepage: ""
- has_issues: true
- description: Models and classes shared by Travis hub and server
- forks: 29
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-sender:
- avatar_url: https://secure.gravatar.com/avatar/01c7cad7af7361ad9ca670fbf1d502e4?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 01c7cad7af7361ad9ca670fbf1d502e4
- url: https://api.github.com/users/narfbg
- id: 1058011
- login: narfbg
-action: opened
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
-jdk: openjdk6
-matrix:
- allow_failures:
- - rvm: jruby-19mode
- - rvm: jruby-head
- include:
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.9
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.8
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-19 16:51:13.510000', '2012-07-19 16:51:13.510000', '2012-07-19 16:51:13.161000', '2012-07-19 16:51:14.435000', 87, 'Organization', 'pull_request', 'https://api.github.com/repos/travis-ci/travis-core/issues/81/comments', '2531cab2f6584faf311eae19dda0fe6c34fb7264', '3973af5f0fe8054fdcb34307d9d6de8a7cf1e72f');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (533184, 3323, 511984, 'started', NULL, '---
-number: 80
-pull_request:
- issue_url: https://github.com/travis-ci/travis-core/issues/80
- number: 80
- head:
- label: cmr:fix-irc-bot
- repo:
- name: travis-core
- size: 124
- created_at: "2012-07-18T00:40:16Z"
- has_wiki: true
- clone_url: https://github.com/cmr/travis-core.git
- watchers: 1
- private: false
- updated_at: "2012-07-19T13:58:40Z"
- language: Ruby
- ssh_url: git@github.com:cmr/travis-core.git
- fork: true
- git_url: git://github.com/cmr/travis-core.git
- url: https://api.github.com/repos/cmr/travis-core
- svn_url: https://github.com/cmr/travis-core
- id: 5090013
- pushed_at: "2012-07-19T13:58:39Z"
- mirror_url:
- has_downloads: true
- open_issues: 0
- has_issues: false
- full_name: cmr/travis-core
- homepage: ""
- forks: 0
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/cmr/travis-core
- owner:
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- sha: 7142310640f2d89c577af6ff48fac685eced09da
- ref: fix-irc-bot
- user:
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- changed_files: 3
- merged_by:
- merged: false
- created_at: "2012-07-19T13:46:49Z"
- body: |-
- A rebase of the patch from duckinator.
-
- I don''t know if the mocks need work, we''ll see if the build fails or not.
- title: Manually rebase the patch for travis-ci/travis-core/#56
- comments: 1
- additions: 50
- diff_url: https://github.com/travis-ci/travis-core/pull/80.diff
- updated_at: "2012-07-19T13:58:41Z"
- _links:
- html:
- href: https://github.com/travis-ci/travis-core/pull/80
- self:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/80
- comments:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/80/comments
- issue:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/80
- review_comments:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/80/comments
- url: https://api.github.com/repos/travis-ci/travis-core/pulls/80
- id: 1837868
- assignee:
- patch_url: https://github.com/travis-ci/travis-core/pull/80.patch
- mergeable:
- milestone:
- commits: 2
- merged_at:
- closed_at:
- deletions: 3
- review_comments: 1
- user:
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- html_url: https://github.com/travis-ci/travis-core/pull/80
- state: open
- base:
- label: travis-ci:master
- repo:
- name: travis-core
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- has_wiki: true
- clone_url: https://github.com/travis-ci/travis-core.git
- watchers: 64
- private: false
- updated_at: "2012-07-18T00:40:17Z"
- language: Ruby
- ssh_url: git@github.com:travis-ci/travis-core.git
- fork: false
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- svn_url: https://github.com/travis-ci/travis-core
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- mirror_url:
- has_downloads: true
- open_issues: 12
- has_issues: true
- full_name: travis-ci/travis-core
- homepage: ""
- forks: 28
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- sha: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- ref: master
- user:
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- gravatar_id: 253768044712357787be0f6a3a53cc66
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-repository:
- name: travis-core
- has_wiki: true
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- clone_url: https://github.com/travis-ci/travis-core.git
- private: false
- updated_at: "2012-07-18T00:40:17Z"
- watchers: 64
- language: Ruby
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- fork: false
- ssh_url: git@github.com:travis-ci/travis-core.git
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- svn_url: https://github.com/travis-ci/travis-core
- mirror_url:
- has_downloads: true
- open_issues: 12
- full_name: travis-ci/travis-core
- homepage: ""
- has_issues: true
- forks: 28
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-sender:
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
-action: synchronize
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
-jdk: openjdk6
-matrix:
- allow_failures:
- - rvm: jruby-19mode
- - rvm: jruby-head
- include:
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.9
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.8
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-19 13:58:43.635000', '2012-07-19 13:58:43.635000', '2012-07-19 13:58:43.418000', '2012-07-19 13:58:44.437000', 87, 'Organization', 'pull_request', 'https://api.github.com/repos/travis-ci/travis-core/issues/80/comments', '2531cab2f6584faf311eae19dda0fe6c34fb7264', '7142310640f2d89c577af6ff48fac685eced09da');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (533151, 3323, 511952, 'started', NULL, '---
-number: 80
-pull_request:
- number: 80
- issue_url: https://github.com/travis-ci/travis-core/issues/80
- head:
- label: cmr:fix-irc-bot
- repo:
- name: travis-core
- size: 124
- created_at: "2012-07-18T00:40:16Z"
- has_wiki: true
- clone_url: https://github.com/cmr/travis-core.git
- watchers: 1
- private: false
- updated_at: "2012-07-19T13:44:06Z"
- language: Ruby
- ssh_url: git@github.com:cmr/travis-core.git
- fork: true
- git_url: git://github.com/cmr/travis-core.git
- url: https://api.github.com/repos/cmr/travis-core
- svn_url: https://github.com/cmr/travis-core
- id: 5090013
- pushed_at: "2012-07-19T13:44:05Z"
- mirror_url:
- has_downloads: true
- open_issues: 0
- has_issues: false
- full_name: cmr/travis-core
- homepage: ""
- forks: 0
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/cmr/travis-core
- owner:
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- sha: 02f60827fc294ca92b8119ac80ba7b0e8fcb95b7
- ref: fix-irc-bot
- user:
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- changed_files: 3
- merged_by:
- merged: false
- created_at: "2012-07-19T13:46:49Z"
- body: |-
- A rebase of the patch from duckinator.
-
- I don''t know if the mocks need work, we''ll see if the build fails or not.
- title: Manually rebase the patch for travis-ci/travis-core/#56
- comments: 0
- additions: 51
- diff_url: https://github.com/travis-ci/travis-core/pull/80.diff
- updated_at: "2012-07-19T13:46:49Z"
- _links:
- html:
- href: https://github.com/travis-ci/travis-core/pull/80
- self:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/80
- comments:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/80/comments
- issue:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/80
- review_comments:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/80/comments
- url: https://api.github.com/repos/travis-ci/travis-core/pulls/80
- id: 1837868
- assignee:
- patch_url: https://github.com/travis-ci/travis-core/pull/80.patch
- mergeable:
- milestone:
- merged_at:
- commits: 1
- closed_at:
- deletions: 3
- review_comments: 0
- user:
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
- html_url: https://github.com/travis-ci/travis-core/pull/80
- state: open
- base:
- label: travis-ci:master
- repo:
- name: travis-core
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- has_wiki: true
- clone_url: https://github.com/travis-ci/travis-core.git
- watchers: 64
- private: false
- updated_at: "2012-07-18T00:40:17Z"
- language: Ruby
- ssh_url: git@github.com:travis-ci/travis-core.git
- fork: false
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- svn_url: https://github.com/travis-ci/travis-core
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- mirror_url:
- has_downloads: true
- open_issues: 12
- has_issues: true
- full_name: travis-ci/travis-core
- homepage: ""
- forks: 28
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- sha: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- ref: master
- user:
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- gravatar_id: 253768044712357787be0f6a3a53cc66
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-repository:
- name: travis-core
- has_wiki: true
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- clone_url: https://github.com/travis-ci/travis-core.git
- private: false
- updated_at: "2012-07-18T00:40:17Z"
- watchers: 64
- language: Ruby
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- fork: false
- ssh_url: git@github.com:travis-ci/travis-core.git
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- svn_url: https://github.com/travis-ci/travis-core
- mirror_url:
- has_downloads: true
- open_issues: 12
- full_name: travis-ci/travis-core
- homepage: ""
- has_issues: true
- forks: 28
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-sender:
- avatar_url: https://secure.gravatar.com/avatar/46042ea486a5817d8faf09d187fee487?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: 46042ea486a5817d8faf09d187fee487
- url: https://api.github.com/users/cmr
- id: 704250
- login: cmr
-action: opened
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
-jdk: openjdk6
-matrix:
- allow_failures:
- - rvm: jruby-19mode
- - rvm: jruby-head
- include:
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.9
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.8
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-19 13:46:52.474000', '2012-07-19 13:46:52.474000', '2012-07-19 13:46:52.261000', '2012-07-19 13:46:53.336000', 87, 'Organization', 'pull_request', 'https://api.github.com/repos/travis-ci/travis-core/issues/80/comments', '2531cab2f6584faf311eae19dda0fe6c34fb7264', '02f60827fc294ca92b8119ac80ba7b0e8fcb95b7');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (529990, 3323, 509077, 'started', NULL, '---
-number: 78
-pull_request:
- number: 78
- head:
- label: henrikhodne:isolate-travis-api-specs
- repo:
- name: travis-core
- size: 176
- created_at: "2012-05-13T09:54:03Z"
- has_wiki: true
- clone_url: https://github.com/henrikhodne/travis-core.git
- watchers: 1
- private: false
- updated_at: "2012-07-18T12:50:04Z"
- language: Ruby
- ssh_url: git@github.com:henrikhodne/travis-core.git
- fork: true
- git_url: git://github.com/henrikhodne/travis-core.git
- url: https://api.github.com/repos/henrikhodne/travis-core
- svn_url: https://github.com/henrikhodne/travis-core
- id: 4313492
- pushed_at: "2012-07-18T12:50:03Z"
- has_downloads: true
- mirror_url:
- open_issues: 0
- has_issues: false
- full_name: henrikhodne/travis-core
- homepage: ""
- forks: 0
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/henrikhodne/travis-core
- owner:
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- sha: 73b6ee03786c005100906398e8a0c1fc5448143a
- ref: isolate-travis-api-specs
- user:
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- issue_url: https://github.com/travis-ci/travis-core/issues/78
- changed_files: 2
- merged: false
- created_at: "2012-07-15T10:23:38Z"
- merged_by:
- body: |-
- This shaves off about 0.8 seconds from the test time with warm caches, and about two seconds with cold caches (disk cache not included).
-
- Is this something we want to do? I could go ahead and isolate even more things, but if it''s not wanted then I won''t bother.
- comments: 8
- title: Isolate Travis::API specs
- additions: 9
- diff_url: https://github.com/travis-ci/travis-core/pull/78.diff
- updated_at: "2012-07-18T12:50:08Z"
- _links:
- html:
- href: https://github.com/travis-ci/travis-core/pull/78
- self:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/78
- comments:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/78/comments
- issue:
- href: https://api.github.com/repos/travis-ci/travis-core/issues/78
- review_comments:
- href: https://api.github.com/repos/travis-ci/travis-core/pulls/78/comments
- url: https://api.github.com/repos/travis-ci/travis-core/pulls/78
- id: 1798420
- assignee:
- patch_url: https://github.com/travis-ci/travis-core/pull/78.patch
- milestone:
- mergeable:
- closed_at:
- commits: 3
- merged_at:
- review_comments: 0
- deletions: 2
- html_url: https://github.com/travis-ci/travis-core/pull/78
- user:
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- state: open
- base:
- label: travis-ci:master
- repo:
- name: travis-core
- size: 588
- created_at: "2011-11-07T01:15:11Z"
- has_wiki: true
- clone_url: https://github.com/travis-ci/travis-core.git
- watchers: 64
- private: false
- updated_at: "2012-07-18T00:40:17Z"
- language: Ruby
- ssh_url: git@github.com:travis-ci/travis-core.git
- fork: false
- git_url: git://github.com/travis-ci/travis-core.git
- url: https://api.github.com/repos/travis-ci/travis-core
- svn_url: https://github.com/travis-ci/travis-core
- id: 2723436
- pushed_at: "2012-07-17T15:19:29Z"
- has_downloads: true
- mirror_url:
- open_issues: 11
- has_issues: true
- full_name: travis-ci/travis-core
- homepage: ""
- forks: 28
- description: Models and classes shared by Travis hub and server
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- sha: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- ref: master
- user:
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- gravatar_id: 253768044712357787be0f6a3a53cc66
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-repository:
- name: travis-core
- created_at: "2011-11-07T01:15:11Z"
- size: 588
- has_wiki: true
- clone_url: https://github.com/travis-ci/travis-core.git
- updated_at: "2012-07-18T00:40:17Z"
- private: false
- watchers: 64
- ssh_url: git@github.com:travis-ci/travis-core.git
- language: Ruby
- fork: false
- url: https://api.github.com/repos/travis-ci/travis-core
- git_url: git://github.com/travis-ci/travis-core.git
- id: 2723436
- svn_url: https://github.com/travis-ci/travis-core
- pushed_at: "2012-07-17T15:19:29Z"
- has_downloads: true
- mirror_url:
- open_issues: 11
- full_name: travis-ci/travis-core
- homepage: ""
- has_issues: true
- description: Models and classes shared by Travis hub and server
- forks: 28
- html_url: https://github.com/travis-ci/travis-core
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-sender:
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
-action: synchronize
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
-jdk: openjdk6
-matrix:
- allow_failures:
- - rvm: jruby-19mode
- - rvm: jruby-head
- include:
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.9
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.8
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-18 12:50:11.724000', '2012-07-18 12:50:11.724000', '2012-07-18 12:50:11.513000', '2012-07-18 12:50:12.449000', 87, 'Organization', 'pull_request', 'https://api.github.com/repos/travis-ci/travis-core/issues/78/comments', '2531cab2f6584faf311eae19dda0fe6c34fb7264', '73b6ee03786c005100906398e8a0c1fc5448143a');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (527164, 3323, 506427, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-core
- has_wiki: true
- size: 672
- created_at: "2011-11-06T17:15:11-08:00"
- private: false
- watchers: 63
- language: Ruby
- url: https://github.com/travis-ci/travis-core
- fork: false
- pushed_at: "2012-07-17T08:19:29-07:00"
- has_downloads: true
- open_issues: 11
- homepage: ""
- has_issues: true
- description: Models and classes shared by Travis hub and server
- forks: 27
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-head_commit:
- added: []
-
- modified:
- - lib/travis/event/config.rb
- - spec/travis/event/config/webhook_spec.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-17T08:19:21-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-core/commit/2531cab2f6584faf311eae19dda0fe6c34fb7264
- id: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- distinct: true
- message: rescue from broken yaml
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-after: 2531cab2f6584faf311eae19dda0fe6c34fb7264
-deleted: false
-ref: refs/heads/master
-commits:
- - added: []
-
- modified:
- - lib/travis/event/config.rb
- - spec/travis/event/config/webhook_spec.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-17T08:19:21-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-core/commit/2531cab2f6584faf311eae19dda0fe6c34fb7264
- id: 2531cab2f6584faf311eae19dda0fe6c34fb7264
- distinct: true
- message: rescue from broken yaml
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-compare: https://github.com/travis-ci/travis-core/compare/b55a1ae687a3...2531cab2f658
-before: b55a1ae687a35d96754d94bc105ab3eac68b814d
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
-jdk: openjdk6
-matrix:
- allow_failures:
- - rvm: jruby-19mode
- - rvm: jruby-head
- include:
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.9
- - rvm: jruby-head
- env: JRUBY_OPTS=--1.8
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-17 15:19:31.367000', '2012-07-17 15:19:31.367000', '2012-07-17 15:19:31.187000', '2012-07-17 15:19:31.931000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (533744, 59, 512511, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-ci
- size: 436
- created_at: "2011-02-27T22:30:40-08:00"
- has_wiki: false
- private: false
- watchers: 1527
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-ci
- pushed_at: "2012-07-19T09:56:42-07:00"
- has_downloads: true
- open_issues: 88
- homepage: http://travis-ci.org
- has_issues: true
- description: A distributed build system for the open source community.
- forks: 218
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
-head_commit:
- modified:
- - db/schema.rb
- - db/seeds.yml
- - db/seeds/data.sql
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T09:53:41-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
- id: ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
- distinct: true
- message: gotta exclude finished_at nulls
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - Thorfile
- - db/seeds.rb
- added:
- - db/seeds.yml
- - lib/tasks/thor.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T03:20:18-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/4b634853419d97f694fb7c2ad0a5fb8ead232417
- id: 4b634853419d97f694fb7c2ad0a5fb8ead232417
- distinct: false
- message: add a seed export thingy
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - modified:
- - README.textile
- - db/seeds.rb
- - lib/tasks/thor.rb
- added:
- - db/seeds/data.sql
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T04:35:29-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/50450976edf82dd2904749e08181c39bf68052dc
- id: 50450976edf82dd2904749e08181c39bf68052dc
- distinct: false
- message: add seed data, fix a few things (seeds still generate errors when loading, even though functional)
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - modified:
- - db/schema.rb
- - db/seeds.yml
- - db/seeds/data.sql
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T09:53:41-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
- id: ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
- distinct: true
- message: gotta exclude finished_at nulls
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/production
-compare: https://github.com/travis-ci/travis-ci/compare/9dd6af0f8aa8...ac6ddfa94b5c
-before: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
-bundler_args: --without development
-before_install:
- - gem install bundler --pre
-before_script:
- - cp config/database.example.yml config/database.yml
-script: RAILS_ENV=test bundle exec rake test:ci --trace
-notifications:
- irc: irc.freenode.org#travis
- campfire:
- secure: |-
- JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=
-.result: configured
-', '2012-07-19 16:56:44.780000', '2012-07-19 16:56:44.780000', '2012-07-19 16:56:44.594000', '2012-07-19 16:56:47.246000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (532887, 59, 511705, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-ci
- size: 436
- created_at: "2011-02-27T22:30:40-08:00"
- has_wiki: false
- private: false
- watchers: 1528
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-ci
- pushed_at: "2012-07-19T04:35:40-07:00"
- has_downloads: true
- open_issues: 89
- homepage: http://travis-ci.org
- has_issues: true
- description: A distributed build system for the open source community.
- forks: 217
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 50450976edf82dd2904749e08181c39bf68052dc
-head_commit:
- modified:
- - README.textile
- - db/seeds.rb
- - lib/tasks/thor.rb
- added:
- - db/seeds/data.sql
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T04:35:29-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/50450976edf82dd2904749e08181c39bf68052dc
- id: 50450976edf82dd2904749e08181c39bf68052dc
- distinct: true
- message: add seed data, fix a few things (seeds still generate errors when loading, even though functional)
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - README.textile
- - db/seeds.rb
- - lib/tasks/thor.rb
- added:
- - db/seeds/data.sql
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T04:35:29-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/50450976edf82dd2904749e08181c39bf68052dc
- id: 50450976edf82dd2904749e08181c39bf68052dc
- distinct: true
- message: add seed data, fix a few things (seeds still generate errors when loading, even though functional)
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/master
-compare: https://github.com/travis-ci/travis-ci/compare/4b634853419d...50450976edf8
-before: 4b634853419d97f694fb7c2ad0a5fb8ead232417
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
-bundler_args: --without development
-before_install:
- - gem install bundler --pre
-before_script:
- - cp config/database.example.yml config/database.yml
-script: RAILS_ENV=test bundle exec rake test:ci --trace
-notifications:
- irc: irc.freenode.org#travis
- campfire:
- secure: |-
- JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=
-.result: configured
-', '2012-07-19 11:35:43.232000', '2012-07-19 11:35:43.232000', '2012-07-19 11:35:43.058000', '2012-07-19 11:35:44.259000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (532796, 59, 511621, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-ci
- size: 436
- created_at: "2011-02-27T22:30:40-08:00"
- has_wiki: false
- private: false
- watchers: 1528
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-ci
- pushed_at: "2012-07-19T03:33:38-07:00"
- has_downloads: true
- open_issues: 89
- homepage: http://travis-ci.org
- has_issues: true
- description: A distributed build system for the open source community.
- forks: 217
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 4b634853419d97f694fb7c2ad0a5fb8ead232417
-head_commit:
- modified:
- - Thorfile
- - db/seeds.rb
- added:
- - db/seeds.yml
- - lib/tasks/thor.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T03:20:18-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/4b634853419d97f694fb7c2ad0a5fb8ead232417
- id: 4b634853419d97f694fb7c2ad0a5fb8ead232417
- distinct: true
- message: add a seed export thingy
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - Thorfile
- - db/seeds.rb
- added:
- - db/seeds.yml
- - lib/tasks/thor.rb
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-19T03:20:18-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-ci/commit/4b634853419d97f694fb7c2ad0a5fb8ead232417
- id: 4b634853419d97f694fb7c2ad0a5fb8ead232417
- distinct: true
- message: add a seed export thingy
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/master
-compare: https://github.com/travis-ci/travis-ci/compare/9dd6af0f8aa8...4b634853419d
-before: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
-bundler_args: --without development
-before_install:
- - gem install bundler --pre
-before_script:
- - cp config/database.example.yml config/database.yml
-script: RAILS_ENV=test bundle exec rake test:ci --trace
-notifications:
- irc: irc.freenode.org#travis
- campfire:
- secure: |-
- JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=
-.result: configured
-', '2012-07-19 10:33:40.227000', '2012-07-19 10:33:40.227000', '2012-07-19 10:33:40.062000', '2012-07-19 10:33:40.531000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (531657, 59, 510600, 'started', NULL, '---
-number: 636
-pull_request:
- number: 636
- head:
- label: henrikhodne:convert-hash-syntax
- repo:
- name: travis-ci
- size: 212
- created_at: "2012-07-17T23:23:54Z"
- has_wiki: false
- clone_url: https://github.com/henrikhodne/travis-ci.git
- watchers: 1
- private: false
- updated_at: "2012-07-17T23:24:37Z"
- language: Ruby
- ssh_url: git@github.com:henrikhodne/travis-ci.git
- fork: true
- git_url: git://github.com/henrikhodne/travis-ci.git
- url: https://api.github.com/repos/henrikhodne/travis-ci
- svn_url: https://github.com/henrikhodne/travis-ci
- id: 5089442
- pushed_at: "2012-07-17T23:24:35Z"
- mirror_url:
- has_downloads: true
- open_issues: 0
- has_issues: false
- full_name: henrikhodne/travis-ci
- homepage: http://travis-ci.org
- forks: 0
- description: A distributed build system for the open source community.
- html_url: https://github.com/henrikhodne/travis-ci
- owner:
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- sha: 054bc735a46583ad71e5b6c67ed6cb870b72b3a6
- ref: convert-hash-syntax
- user:
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- issue_url: https://github.com/travis-ci/travis-ci/issues/636
- changed_files: 71
- merged: false
- merged_by:
- created_at: "2012-07-18T22:39:25Z"
- body: Title says it all, really.
- title: Switch to 1.9 hash syntax
- comments: 0
- additions: 460
- diff_url: https://github.com/travis-ci/travis-ci/pull/636.diff
- updated_at: "2012-07-18T22:39:25Z"
- _links:
- html:
- href: https://github.com/travis-ci/travis-ci/pull/636
- self:
- href: https://api.github.com/repos/travis-ci/travis-ci/pulls/636
- comments:
- href: https://api.github.com/repos/travis-ci/travis-ci/issues/636/comments
- issue:
- href: https://api.github.com/repos/travis-ci/travis-ci/issues/636
- review_comments:
- href: https://api.github.com/repos/travis-ci/travis-ci/pulls/636/comments
- url: https://api.github.com/repos/travis-ci/travis-ci/pulls/636
- id: 1832674
- assignee:
- patch_url: https://github.com/travis-ci/travis-ci/pull/636.patch
- mergeable:
- milestone:
- commits: 1
- merged_at:
- closed_at:
- deletions: 460
- html_url: https://github.com/travis-ci/travis-ci/pull/636
- user:
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
- review_comments: 0
- base:
- label: travis-ci:master
- repo:
- name: travis-ci
- size: 404
- created_at: "2011-02-28T06:30:40Z"
- has_wiki: false
- clone_url: https://github.com/travis-ci/travis-ci.git
- watchers: 1528
- private: false
- updated_at: "2012-07-18T14:37:41Z"
- language: Ruby
- ssh_url: git@github.com:travis-ci/travis-ci.git
- fork: false
- git_url: git://github.com/travis-ci/travis-ci.git
- url: https://api.github.com/repos/travis-ci/travis-ci
- svn_url: https://github.com/travis-ci/travis-ci
- id: 1420493
- pushed_at: "2012-07-17T16:23:16Z"
- mirror_url:
- has_downloads: true
- open_issues: 90
- has_issues: true
- full_name: travis-ci/travis-ci
- homepage: http://travis-ci.org
- forks: 217
- description: A distributed build system for the open source community.
- html_url: https://github.com/travis-ci/travis-ci
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- sha: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
- ref: master
- user:
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- gravatar_id: 253768044712357787be0f6a3a53cc66
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
- state: open
-repository:
- name: travis-ci
- created_at: "2011-02-28T06:30:40Z"
- size: 404
- has_wiki: false
- clone_url: https://github.com/travis-ci/travis-ci.git
- updated_at: "2012-07-18T14:37:41Z"
- private: false
- watchers: 1528
- git_url: git://github.com/travis-ci/travis-ci.git
- ssh_url: git@github.com:travis-ci/travis-ci.git
- language: Ruby
- fork: false
- url: https://api.github.com/repos/travis-ci/travis-ci
- svn_url: https://github.com/travis-ci/travis-ci
- id: 1420493
- pushed_at: "2012-07-17T16:23:16Z"
- has_downloads: true
- mirror_url:
- open_issues: 90
- full_name: travis-ci/travis-ci
- homepage: http://travis-ci.org
- has_issues: true
- description: A distributed build system for the open source community.
- forks: 217
- html_url: https://github.com/travis-ci/travis-ci
- owner:
- gravatar_id: 253768044712357787be0f6a3a53cc66
- avatar_url: https://secure.gravatar.com/avatar/253768044712357787be0f6a3a53cc66?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-orgs.png
- url: https://api.github.com/users/travis-ci
- id: 639823
- login: travis-ci
-sender:
- avatar_url: https://secure.gravatar.com/avatar/e45dd84ccf5be0d04529debbcd15c05a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png
- gravatar_id: e45dd84ccf5be0d04529debbcd15c05a
- url: https://api.github.com/users/henrikhodne
- id: 24421
- login: henrikhodne
-action: opened
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
-bundler_args: --without development
-before_install:
- - gem install bundler --pre
-before_script:
- - cp config/database.example.yml config/database.yml
-script: RAILS_ENV=test bundle exec rake test:ci --trace
-notifications:
- irc: irc.freenode.org#travis
- campfire:
- secure: |-
- JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=
-.result: configured
-', '2012-07-18 22:39:28.716000', '2012-07-18 22:39:28.715000', '2012-07-18 22:39:28.434000', '2012-07-18 22:39:29.331000', 87, 'Organization', 'pull_request', 'https://api.github.com/repos/travis-ci/travis-ci/issues/636/comments', '9dd6af0f8aa8182fad7f7a399ef21188698d194a', '054bc735a46583ad71e5b6c67ed6cb870b72b3a6');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (527373, 59, 506626, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-ci
- size: 404
- has_wiki: false
- created_at: "2011-02-27T22:30:40-08:00"
- watchers: 1524
- private: false
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-ci
- pushed_at: "2012-07-17T09:23:09-07:00"
- has_downloads: true
- open_issues: 89
- homepage: http://travis-ci.org
- has_issues: true
- forks: 217
- organization: travis-ci
- description: A distributed build system for the open source community.
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
-head_commit:
- modified:
- - Gemfile
- - Gemfile.lock
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-17T09:22:19-07:00"
- url: https://github.com/travis-ci/travis-ci/commit/9dd6af0f8aa8182fad7f7a399ef21188698d194a
- id: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
- distinct: false
- message: downgrade oauth related gems because one of them caused new github accounts to not be able to sign in/create an account on travis
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - Gemfile
- - Gemfile.lock
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-17T09:22:19-07:00"
- url: https://github.com/travis-ci/travis-ci/commit/9dd6af0f8aa8182fad7f7a399ef21188698d194a
- id: 9dd6af0f8aa8182fad7f7a399ef21188698d194a
- distinct: false
- message: downgrade oauth related gems because one of them caused new github accounts to not be able to sign in/create an account on travis
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/production
-compare: https://github.com/travis-ci/travis-ci/compare/712cd8d3a173...9dd6af0f8aa8
-base_ref: refs/heads/master
-before: 712cd8d3a17317dd8d73a6fc5ea8f2a3020a1e30
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-language: ruby
-rvm:
- - 1.9.3
-bundler_args: --without development
-before_install:
- - gem install bundler --pre
-before_script:
- - cp config/database.example.yml config/database.yml
-script: RAILS_ENV=test bundle exec rake test:ci --trace
-notifications:
- irc: irc.freenode.org#travis
- campfire:
- secure: |-
- JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=
-.result: configured
-', '2012-07-17 16:23:10.930000', '2012-07-17 16:23:10.929000', '2012-07-17 16:23:10.767000', '2012-07-17 16:23:14.665000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (526591, 3371, 505919, 'started', NULL, '---
-pusher:
- name: joshk
- email: josh.kalderimis@gmail.com
-repository:
- name: travis-hub
- has_wiki: true
- size: 448
- created_at: "2011-11-08T14:51:49-08:00"
- private: false
- watchers: 18
- language: Ruby
- url: https://github.com/travis-ci/travis-hub
- fork: false
- pushed_at: "2012-07-17T04:55:17-07:00"
- has_downloads: true
- open_issues: 3
- homepage: ""
- has_issues: true
- description: Collects build log streams, worker state reports and many other things [from Travis workers]
- forks: 8
- organization: travis-ci
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: ffc385738aa4ca87c4868db0441287912990683b
-head_commit:
- added: []
-
- modified:
- - Gemfile.lock
- author:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- timestamp: "2012-07-17T04:52:40-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-hub/commit/ffc385738aa4ca87c4868db0441287912990683b
- id: ffc385738aa4ca87c4868db0441287912990683b
- distinct: false
- message: bumped travis-core, but please please remember to bundle using only jruby and not mri!!!
- committer:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
-deleted: false
-commits:
- - added: []
-
- modified:
- - Gemfile.lock
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-16T07:21:22-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-hub/commit/2dfa023b1682c85a957d8beb25aefef253ae5ee9
- id: 2dfa023b1682c85a957d8beb25aefef253ae5ee9
- distinct: false
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - added: []
-
- modified:
- - Gemfile.lock
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-16T08:50:35-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-hub/commit/9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- id: 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- distinct: false
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - added: []
-
- modified:
- - Gemfile.lock
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-16T09:20:57-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-hub/commit/f9cec63f1bdbe308d867579465867cc2a10ade0c
- id: f9cec63f1bdbe308d867579465867cc2a10ade0c
- distinct: false
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- - added: []
-
- modified:
- - Gemfile.lock
- author:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- timestamp: "2012-07-17T04:52:40-07:00"
- removed: []
-
- url: https://github.com/travis-ci/travis-hub/commit/ffc385738aa4ca87c4868db0441287912990683b
- id: ffc385738aa4ca87c4868db0441287912990683b
- distinct: false
- message: bumped travis-core, but please please remember to bundle using only jruby and not mri!!!
- committer:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
-ref: refs/heads/production
-before: 2c746da5ecd3acbefc9161fd1621ed385c7cb9e1
-base_ref: refs/heads/master
-compare: https://github.com/travis-ci/travis-hub/compare/2c746da5ecd3...ffc385738aa4
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-rvm:
- - jruby
- - jruby-head
-jdk: openjdk6
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-17 11:55:19.796000', '2012-07-17 11:55:19.796000', '2012-07-17 11:55:19.659000', '2012-07-17 11:55:20.365000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (526586, 3371, 505914, 'started', NULL, '---
-pusher:
- name: joshk
- email: josh.kalderimis@gmail.com
-repository:
- name: travis-hub
- size: 448
- has_wiki: true
- created_at: "2011-11-08T14:51:49-08:00"
- watchers: 18
- private: false
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-hub
- pushed_at: "2012-07-17T04:52:49-07:00"
- has_downloads: true
- open_issues: 3
- homepage: ""
- has_issues: true
- forks: 8
- organization: travis-ci
- description: Collects build log streams, worker state reports and many other things [from Travis workers]
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-head_commit:
- modified:
- - Gemfile.lock
- added: []
-
- author:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- removed: []
-
- timestamp: "2012-07-17T04:52:40-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/ffc385738aa4ca87c4868db0441287912990683b
- id: ffc385738aa4ca87c4868db0441287912990683b
- distinct: true
- message: bumped travis-core, but please please remember to bundle using only jruby and not mri!!!
- committer:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
-after: ffc385738aa4ca87c4868db0441287912990683b
-deleted: false
-ref: refs/heads/master
-commits:
- - modified:
- - Gemfile.lock
- added: []
-
- author:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- removed: []
-
- timestamp: "2012-07-17T04:52:40-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/ffc385738aa4ca87c4868db0441287912990683b
- id: ffc385738aa4ca87c4868db0441287912990683b
- distinct: true
- message: bumped travis-core, but please please remember to bundle using only jruby and not mri!!!
- committer:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
-before: f9cec63f1bdbe308d867579465867cc2a10ade0c
-compare: https://github.com/travis-ci/travis-hub/compare/f9cec63f1bdb...ffc385738aa4
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-rvm:
- - jruby
- - jruby-head
-jdk: openjdk6
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-17 11:52:52.087000', '2012-07-17 11:52:52.087000', '2012-07-17 11:52:51.888000', '2012-07-17 11:52:52.654000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (526532, 3371, 505861, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-hub
- size: 448
- has_wiki: true
- created_at: "2011-11-08T14:51:49-08:00"
- watchers: 18
- private: false
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-hub
- pushed_at: "2012-07-17T04:14:41-07:00"
- has_downloads: true
- open_issues: 3
- homepage: ""
- has_issues: true
- forks: 8
- organization: travis-ci
- description: Collects build log streams, worker state reports and many other things [from Travis workers]
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-head_commit:
- modified:
- - Gemfile.lock
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-16T09:20:57-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/f9cec63f1bdbe308d867579465867cc2a10ade0c
- id: f9cec63f1bdbe308d867579465867cc2a10ade0c
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-after: f9cec63f1bdbe308d867579465867cc2a10ade0c
-deleted: false
-ref: refs/heads/master
-commits:
- - modified:
- - Gemfile.lock
- added: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- removed: []
-
- timestamp: "2012-07-16T09:20:57-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/f9cec63f1bdbe308d867579465867cc2a10ade0c
- id: f9cec63f1bdbe308d867579465867cc2a10ade0c
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-before: 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
-compare: https://github.com/travis-ci/travis-hub/compare/9acbe3bb988c...f9cec63f1bdb
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-rvm:
- - jruby
- - jruby-head
-jdk: openjdk6
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-17 11:14:44.283000', '2012-07-17 11:14:44.283000', '2012-07-17 11:14:44.129000', '2012-07-17 11:14:45.913000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (524418, 3371, 503892, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-hub
- size: 436
- has_wiki: true
- created_at: "2011-11-08T14:51:49-08:00"
- private: false
- watchers: 18
- language: Ruby
- url: https://github.com/travis-ci/travis-hub
- fork: false
- pushed_at: "2012-07-16T08:50:40-07:00"
- open_issues: 3
- has_downloads: true
- has_issues: true
- homepage: ""
- organization: travis-ci
- description: Collects build log streams, worker state reports and many other things [from Travis workers]
- forks: 8
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
-head_commit:
- modified:
- - Gemfile.lock
- added: []
-
- removed: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-16T08:50:35-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- id: 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - Gemfile.lock
- added: []
-
- removed: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- timestamp: "2012-07-16T08:50:35-07:00"
- url: https://github.com/travis-ci/travis-hub/commit/9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- id: 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/master
-compare: https://github.com/travis-ci/travis-hub/compare/2dfa023b1682...9acbe3bb988c
-before: 2dfa023b1682c85a957d8beb25aefef253ae5ee9
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-rvm:
- - jruby
- - jruby-head
-jdk: openjdk6
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-16 15:50:53.124000', '2012-07-16 15:50:53.124000', '2012-07-16 15:50:52.935000', '2012-07-16 15:50:53.411000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (524207, 3371, 503691, 'started', NULL, '---
-pusher:
- name: svenfuchs
- email: svenfuchs@artweb-design.de
-repository:
- name: travis-hub
- created_at: "2011-11-08T14:51:49-08:00"
- size: 436
- has_wiki: true
- private: false
- watchers: 18
- language: Ruby
- fork: false
- url: https://github.com/travis-ci/travis-hub
- pushed_at: "2012-07-16T07:21:30-07:00"
- has_downloads: true
- open_issues: 3
- homepage: ""
- has_issues: true
- forks: 8
- organization: travis-ci
- description: Collects build log streams, worker state reports and many other things [from Travis workers]
- owner:
- name: travis-ci
- email: contact@travis-ci.org
-forced: false
-after: 2dfa023b1682c85a957d8beb25aefef253ae5ee9
-head_commit:
- modified:
- - Gemfile.lock
- added: []
-
- timestamp: "2012-07-16T07:21:22-07:00"
- removed: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- url: https://github.com/travis-ci/travis-hub/commit/2dfa023b1682c85a957d8beb25aefef253ae5ee9
- id: 2dfa023b1682c85a957d8beb25aefef253ae5ee9
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-deleted: false
-commits:
- - modified:
- - Gemfile.lock
- added: []
-
- timestamp: "2012-07-16T07:21:22-07:00"
- removed: []
-
- author:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
- url: https://github.com/travis-ci/travis-hub/commit/2dfa023b1682c85a957d8beb25aefef253ae5ee9
- id: 2dfa023b1682c85a957d8beb25aefef253ae5ee9
- distinct: true
- message: bump travis-core
- committer:
- name: Sven Fuchs
- username: svenfuchs
- email: svenfuchs@artweb-design.de
-ref: refs/heads/master
-before: 2c746da5ecd3acbefc9161fd1621ed385c7cb9e1
-compare: https://github.com/travis-ci/travis-hub/compare/2c746da5ecd3...2dfa023b1682
-created: false
-', '0rfOIcekGwFQteKFDGyb', '---
-rvm:
- - jruby
- - jruby-head
-jdk: openjdk6
-before_script:
- - RAILS_ENV=test rake db:create db:schema:load --trace
-notifications:
- irc: irc.freenode.org#travis
-.result: configured
-', '2012-07-16 14:21:33.706000', '2012-07-16 14:21:33.705000', '2012-07-16 14:21:33.282000', '2012-07-16 14:21:34.105000', 87, 'Organization', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (227993, 7, 228021, 'finished', NULL, '{"pusher":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"},"repository":{"name":"minimal","size":456,"has_wiki":true,"created_at":"2010/03/06 04:52:35 -0800","private":false,"watchers":25,"url":"https://github.com/svenfuchs/minimal","fork":false,"language":"Ruby","pushed_at":"2012/02/26 16:09:38 -0800","has_downloads":true,"open_issues":0,"homepage":"http://github.com/svenfuchs/minimal","has_issues":true,"forks":6,"description":"Minimal templating engine inspired by Markaby & Erector but much smaller and targeting Rails 3","owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"65d0186299ef7275de7398431b83f45119c9b8a8","deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/minimal/version.rb"],"author":{"name":"Sven Fuchs","username":"svenfuchs","email":"svenfuchs@artweb-design.de"},"timestamp":"2011-05-09T03:53:25-07:00","removed":[],"url":"https://github.com/svenfuchs/minimal/commit/166d93c0bc0582c340cceb40d0d323b57d55f88f","id":"166d93c0bc0582c340cceb40d0d323b57d55f88f","distinct":true,"message":"Bump to 0.0.26"},{"added":["Gemfiles/rails-3.0","Gemfiles/rails-3.0.lock","Gemfiles/rails-3.1","Gemfiles/rails-3.1.lock","Gemfiles/rails-3.2","Gemfiles/rails-3.2.lock"],"modified":["minimal.gemspec"],"author":{"name":"Sven Fuchs","username":"svenfuchs","email":"svenfuchs@artweb-design.de"},"timestamp":"2012-02-26T16:07:58-08:00","removed":["Gemfile","Gemfile.lock"],"url":"https://github.com/svenfuchs/minimal/commit/55000ec38a232e135a2e3871a677dff8f985487f","id":"55000ec38a232e135a2e3871a677dff8f985487f","distinct":true,"message":"add multiple gemfiles for travis"},{"added":[],"modified":["Rakefile","test/fixtures/views/foo/misc_helpers.rb","test/template_test.rb"],"author":{"name":"Sven Fuchs","username":"svenfuchs","email":"svenfuchs@artweb-design.de"},"timestamp":"2012-02-26T16:08:13-08:00","removed":[],"url":"https://github.com/svenfuchs/minimal/commit/6e0380e267885d770817b6753c8c8744ac89151b","id":"6e0380e267885d770817b6753c8c8744ac89151b","distinct":true,"message":"1.9.3 compat"},{"added":[".travis.yml"],"modified":[],"author":{"name":"Sven Fuchs","username":"svenfuchs","email":"svenfuchs@artweb-design.de"},"timestamp":"2012-02-26T16:09:30-08:00","removed":[],"url":"https://github.com/svenfuchs/minimal/commit/65d0186299ef7275de7398431b83f45119c9b8a8","id":"65d0186299ef7275de7398431b83f45119c9b8a8","distinct":true,"message":"add .travis.yml"}],"compare":"https://github.com/svenfuchs/minimal/compare/4d99b8e...65d0186","before":"4d99b8ed9d34523470ba264e7c1841f8c349e7c2","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:gemfile:
- - Gemfiles/rails-3.0
- - Gemfiles/rails-3.1
-:rvm:
- - 1.8.7
- - 1.9.3
-:".configured": true
-', '2012-02-27 00:09:42.002000', '2012-02-27 00:09:42.987000', '2012-02-27 00:09:41.647212', '2012-02-27 00:09:42.988000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (9861, 7, 9861, 'finished', 'github', '{"deleted":false,"compare":"https://github.com/svenfuchs/minimal/compare/166d93c^...166d93c","ref":"refs/tags/v0.0.26","before":"0000000000000000000000000000000000000000","pusher":{"email":"svenfuchs@artweb-design.de","name":"svenfuchs"},"base_ref":null,"repository":{"created_at":"2010/03/06 04:52:35 -0800","has_issues":true,"open_issues":0,"description":"Minimal templating engine inspired by Markaby & Erector but much smaller and targeting Rails 3","has_downloads":true,"fork":false,"private":false,"size":456,"watchers":21,"pushed_at":"2011/05/09 03:54:03 -0700","owner":{"email":"svenfuchs@artweb-design.de","name":"svenfuchs"},"forks":4,"name":"minimal","has_wiki":true,"url":"https://github.com/svenfuchs/minimal","language":"Ruby","homepage":"http://github.com/svenfuchs/minimal"},"commits":[{"author":{"email":"svenfuchs@artweb-design.de","username":"svenfuchs","name":"Sven Fuchs"},"modified":["lib/minimal/version.rb"],"message":"Bump to 0.0.26","distinct":true,"url":"https://github.com/svenfuchs/minimal/commit/166d93c0bc0582c340cceb40d0d323b57d55f88f","id":"166d93c0bc0582c340cceb40d0d323b57d55f88f","removed":[],"added":[],"timestamp":"2011-05-09T03:53:25-07:00"}],"after":"8fdd661b4cc62e26dfb72552b340a5e07d90a3dc","forced":true,"created":true}', NULL, NULL, '2011-05-09 10:54:05.000000', '2011-05-09 10:54:20.000000', '2011-05-09 10:54:04.866628', '2011-08-25 22:29:08.424320', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (9860, 7, 9860, 'finished', 'github', '{"pusher":{"email":"svenfuchs@artweb-design.de","name":"svenfuchs"},"deleted":false,"forced":false,"compare":"https://github.com/svenfuchs/minimal/compare/acfdc35...4d99b8e","ref":"refs/heads/master","commits":[{"author":{"email":"jstrampe@adva-business.com","username":"johanness","name":"Johannes Strampe"},"message":"Add definition list tags","modified":["lib/minimal/template.rb"],"distinct":true,"url":"https://github.com/svenfuchs/minimal/commit/51b43ea92f5faa9e8990ac9744c50f478963c127","removed":[],"id":"51b43ea92f5faa9e8990ac9744c50f478963c127","added":[],"timestamp":"2011-05-09T03:46:49-07:00"},{"author":{"email":"svenfuchs@artweb-design.de","username":"svenfuchs","name":"Sven Fuchs"},"message":"Merge pull request #2 from johanness/patch-1\n\nAdd definition list tags","modified":["lib/minimal/template.rb"],"distinct":true,"url":"https://github.com/svenfuchs/minimal/commit/4d99b8ed9d34523470ba264e7c1841f8c349e7c2","removed":[],"id":"4d99b8ed9d34523470ba264e7c1841f8c349e7c2","added":[],"timestamp":"2011-05-09T03:51:06-07:00"}],"before":"acfdc3513ceedf767d0d697f293bc35fb37f9185","repository":{"created_at":"2010/03/06 04:52:35 -0800","has_issues":true,"language":"Ruby","has_downloads":true,"pushed_at":"2011/05/09 03:51:07 -0700","description":"Minimal templating engine inspired by Markaby & Erector but much smaller and targeting Rails 3","fork":false,"private":false,"size":384,"watchers":21,"url":"https://github.com/svenfuchs/minimal","open_issues":0,"owner":{"email":"svenfuchs@artweb-design.de","name":"svenfuchs"},"forks":4,"name":"minimal","has_wiki":true,"homepage":"http://github.com/svenfuchs/minimal"},"after":"4d99b8ed9d34523470ba264e7c1841f8c349e7c2","created":false,"base_ref":null}', NULL, NULL, '2011-05-09 10:51:11.000000', '2011-05-09 10:51:55.000000', '2011-05-09 10:51:08.478012', '2011-08-25 22:29:08.408826', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (319559, 8, 315710, 'finished', NULL, '{"pusher":{"name":"dgeb","email":"dan@cerebris.com"},"repository":{"name":"gem-release","size":132,"has_wiki":true,"created_at":"2010/04/02 17:04:17 -0700","private":false,"watchers":87,"url":"https://github.com/svenfuchs/gem-release","language":"Ruby","fork":false,"pushed_at":"2012/04/22 11:50:58 -0700","open_issues":3,"has_downloads":true,"homepage":"","has_issues":true,"forks":13,"description":"Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)","owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","head_commit":{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:49-07:00","url":"https://github.com/svenfuchs/gem-release/commit/cb2b53bfb42e6323966b0caffe6b41a3f360656c","id":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","distinct":true,"message":"Bump to 0.3.1","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/gem_release/version_file.rb","test/bump_command_test.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:04-07:00","url":"https://github.com/svenfuchs/gem-release/commit/c2df258d488f99ea2e3a6737810fb829d658773d","id":"c2df258d488f99ea2e3a6737810fb829d658773d","distinct":true,"message":"regexes in VersionFile can now accept additional characters after the patch version, such as ''0.1.2.pre3''; fixes #24","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:49-07:00","url":"https://github.com/svenfuchs/gem-release/commit/cb2b53bfb42e6323966b0caffe6b41a3f360656c","id":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","distinct":true,"message":"Bump to 0.3.1","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}}],"before":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","compare":"https://github.com/svenfuchs/gem-release/compare/739aecb...cb2b53b","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - ree
- - jruby
-:".configured": true
-', '2012-04-22 18:51:02.485000', '2012-04-22 18:51:03.525000', '2012-04-22 18:51:01.230965', '2012-04-22 18:51:03.526000', 8, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (319558, 8, 315709, 'finished', NULL, '{"pusher":{"name":"dgeb","email":"dan@cerebris.com"},"repository":{"name":"gem-release","size":132,"has_wiki":true,"created_at":"2010/04/02 17:04:17 -0700","private":false,"watchers":87,"url":"https://github.com/svenfuchs/gem-release","language":"Ruby","fork":false,"pushed_at":"2012/04/22 11:50:58 -0700","open_issues":3,"has_downloads":true,"homepage":"","has_issues":true,"forks":13,"description":"Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)","owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","head_commit":{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:49-07:00","url":"https://github.com/svenfuchs/gem-release/commit/cb2b53bfb42e6323966b0caffe6b41a3f360656c","id":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","distinct":true,"message":"Bump to 0.3.1","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/gem_release/version_file.rb","test/bump_command_test.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:04-07:00","url":"https://github.com/svenfuchs/gem-release/commit/c2df258d488f99ea2e3a6737810fb829d658773d","id":"c2df258d488f99ea2e3a6737810fb829d658773d","distinct":true,"message":"regexes in VersionFile can now accept additional characters after the patch version, such as ''0.1.2.pre3''; fixes #24","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-04-22T11:50:49-07:00","url":"https://github.com/svenfuchs/gem-release/commit/cb2b53bfb42e6323966b0caffe6b41a3f360656c","id":"cb2b53bfb42e6323966b0caffe6b41a3f360656c","distinct":true,"message":"Bump to 0.3.1","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}}],"before":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","compare":"https://github.com/svenfuchs/gem-release/compare/739aecb...cb2b53b","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - ree
- - jruby
-:".configured": true
-', '2012-04-22 18:51:01.088000', '2012-04-22 18:51:02.097000', '2012-04-22 18:51:00.642000', '2012-04-22 18:51:02.098000', 8, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (273474, 8, 273502, 'finished', NULL, '{"pusher":{"name":"dgeb","email":"dan@cerebris.com"},"repository":{"name":"gem-release","size":144,"has_wiki":true,"created_at":"2010/04/02 17:04:17 -0700","private":false,"watchers":82,"language":"Ruby","fork":false,"url":"https://github.com/svenfuchs/gem-release","pushed_at":"2012/03/28 05:10:59 -0700","open_issues":1,"has_downloads":true,"homepage":"","has_issues":true,"description":"Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)","forks":13,"owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","head_commit":{"added":[],"modified":["README.md"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-28T05:10:53-07:00","url":"https://github.com/svenfuchs/gem-release/commit/739aecb81c482f72db99eb2483ef4dc6e25ae65b","id":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","distinct":true,"message":"minor README cleanup","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},"deleted":false,"commits":[{"added":[],"modified":["README.md"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-28T05:10:53-07:00","url":"https://github.com/svenfuchs/gem-release/commit/739aecb81c482f72db99eb2483ef4dc6e25ae65b","id":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","distinct":true,"message":"minor README cleanup","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}}],"ref":"refs/heads/master","before":"531f808ebabc68d16149ae63876e793f1e579c4d","compare":"https://github.com/svenfuchs/gem-release/compare/531f808...739aecb","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - ree
- - jruby
-:".configured": true
-', '2012-03-28 15:32:08.330000', '2012-03-28 15:32:12.535000', '2012-03-28 12:11:00.896231', '2012-03-28 15:32:12.536000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (273473, 8, 273501, 'finished', NULL, '{"pusher":{"name":"dgeb","email":"dan@cerebris.com"},"repository":{"name":"gem-release","size":144,"has_wiki":true,"created_at":"2010/04/02 17:04:17 -0700","private":false,"watchers":82,"language":"Ruby","fork":false,"url":"https://github.com/svenfuchs/gem-release","pushed_at":"2012/03/28 05:10:59 -0700","open_issues":1,"has_downloads":true,"homepage":"","has_issues":true,"description":"Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)","forks":13,"owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","head_commit":{"added":[],"modified":["README.md"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-28T05:10:53-07:00","url":"https://github.com/svenfuchs/gem-release/commit/739aecb81c482f72db99eb2483ef4dc6e25ae65b","id":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","distinct":true,"message":"minor README cleanup","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},"deleted":false,"commits":[{"added":[],"modified":["README.md"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-28T05:10:53-07:00","url":"https://github.com/svenfuchs/gem-release/commit/739aecb81c482f72db99eb2483ef4dc6e25ae65b","id":"739aecb81c482f72db99eb2483ef4dc6e25ae65b","distinct":true,"message":"minor README cleanup","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}}],"ref":"refs/heads/master","before":"531f808ebabc68d16149ae63876e793f1e579c4d","compare":"https://github.com/svenfuchs/gem-release/compare/531f808...739aecb","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - ree
- - jruby
-:".configured": true
-', '2012-03-28 12:11:00.398000', '2012-03-28 12:11:01.590000', '2012-03-28 12:10:59.821803', '2012-03-28 12:11:01.591000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (273045, 8, 273073, 'finished', NULL, '{"pusher":{"name":"dgeb","email":"dan@cerebris.com"},"repository":{"name":"gem-release","size":144,"has_wiki":true,"created_at":"2010/04/02 17:04:17 -0700","private":false,"watchers":82,"language":"Ruby","fork":false,"url":"https://github.com/svenfuchs/gem-release","pushed_at":"2012/03/27 21:39:58 -0700","has_downloads":true,"open_issues":2,"homepage":"","has_issues":true,"description":"Release your ruby gems with ease. (What a bold statement for such a tiny plugin ...)","forks":13,"owner":{"name":"svenfuchs","email":"svenfuchs@artweb-design.de"}},"forced":false,"after":"531f808ebabc68d16149ae63876e793f1e579c4d","head_commit":{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-27T21:37:33-07:00","url":"https://github.com/svenfuchs/gem-release/commit/531f808ebabc68d16149ae63876e793f1e579c4d","id":"531f808ebabc68d16149ae63876e793f1e579c4d","distinct":true,"message":"Bump to 0.3.0","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["README.md","lib/gem_release/version_file.rb","lib/rubygems/commands/bump_command.rb","lib/rubygems/commands/release_command.rb","test/bump_command_test.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-27T21:36:35-07:00","url":"https://github.com/svenfuchs/gem-release/commit/061bfaeeecb17e5ea920a14e3ba21c99e9c61728","id":"061bfaeeecb17e5ea920a14e3ba21c99e9c61728","distinct":true,"message":"by reloading instead of re-requiring version files after bumping, it was possible to add tag and release options back to bump()","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}},{"added":[],"modified":["lib/gem_release/version.rb"],"removed":[],"author":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"},"timestamp":"2012-03-27T21:37:33-07:00","url":"https://github.com/svenfuchs/gem-release/commit/531f808ebabc68d16149ae63876e793f1e579c4d","id":"531f808ebabc68d16149ae63876e793f1e579c4d","distinct":true,"message":"Bump to 0.3.0","committer":{"name":"Dan Gebhardt","username":"dgeb","email":"dan@cerebris.com"}}],"before":"c14269418b47e3da616b019a1ccbfd9793a203fd","compare":"https://github.com/svenfuchs/gem-release/compare/c142694...531f808","created":false}', '0rfOIcekGwFQteKFDGyb', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - ree
- - jruby
-:".configured": true
-', '2012-03-28 07:58:22.867000', '2012-03-28 07:58:24.872000', '2012-03-28 04:40:01.332316', '2012-03-28 07:58:24.873000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (510782, 9592, 491438, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: gh
- has_wiki: true
- size: 312
- created_at: "2012-03-05T05:07:41-08:00"
- watchers: 12
- private: false
- url: https://github.com/rkh/gh
- fork: false
- language: Ruby
- pushed_at: "2012-07-11T07:17:51-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://gh.rkh.im/
- has_issues: true
- forks: 4
- description: Layered GitHub API client
- owner:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-forced: false
-after: f01ff0648f35f42ac1844b821930c15974fd9f40
-head_commit:
- modified:
- - lib/gh/remote.rb
- - spec/response_spec.rb
- added:
- - spec/payloads/repos/rkh/gh/contents/README.md?per_page=100.yml
- timestamp: "2012-07-11T07:17:44-07:00"
- removed: []
-
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- url: https://github.com/rkh/gh/commit/f01ff0648f35f42ac1844b821930c15974fd9f40
- id: f01ff0648f35f42ac1844b821930c15974fd9f40
- distinct: true
- message: don''t request raw from github
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-deleted: false
-commits:
- - modified:
- - lib/gh/remote.rb
- - spec/response_spec.rb
- added:
- - spec/payloads/repos/rkh/gh/contents/README.md?per_page=100.yml
- timestamp: "2012-07-11T07:17:44-07:00"
- removed: []
-
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- url: https://github.com/rkh/gh/commit/f01ff0648f35f42ac1844b821930c15974fd9f40
- id: f01ff0648f35f42ac1844b821930c15974fd9f40
- distinct: true
- message: don''t request raw from github
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-ref: refs/heads/master
-compare: https://github.com/rkh/gh/compare/708cc31f907a...f01ff0648f35
-before: 708cc31f907a04102380b97a74a6b6da056a22fc
-created: false
-', 'y8lpoIaFCoGnRR6v5ajw', '---
-language: ruby
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
- - rbx-18mode
- - rbx-19mode
- - jruby-head
- - ree
-matrix:
- allow_failures:
- - rvm: jruby-18mode
- - rvm: jruby-19mode
- - rvm: jruby-head
-.result: configured
-', '2012-07-11 14:17:52.406000', '2012-07-11 14:17:52.406000', '2012-07-11 14:17:52.226000', '2012-07-11 14:17:54.411000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (510711, 9592, 491372, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: gh
- has_wiki: true
- created_at: "2012-03-05T05:07:41-08:00"
- size: 320
- watchers: 12
- private: false
- fork: false
- language: Ruby
- url: https://github.com/rkh/gh
- pushed_at: "2012-07-11T06:50:59-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://gh.rkh.im/
- has_issues: true
- forks: 4
- description: Layered GitHub API client
- owner:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-forced: false
-head_commit:
- added: []
-
- modified:
- - lib/gh/response.rb
- removed: []
-
- timestamp: "2012-07-11T06:50:53-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- url: https://github.com/rkh/gh/commit/708cc31f907a04102380b97a74a6b6da056a22fc
- id: 708cc31f907a04102380b97a74a6b6da056a22fc
- distinct: true
- message: ignore content-type
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-after: 708cc31f907a04102380b97a74a6b6da056a22fc
-deleted: false
-ref: refs/heads/master
-commits:
- - added: []
-
- modified:
- - lib/gh/response.rb
- removed: []
-
- timestamp: "2012-07-11T06:50:53-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- url: https://github.com/rkh/gh/commit/708cc31f907a04102380b97a74a6b6da056a22fc
- id: 708cc31f907a04102380b97a74a6b6da056a22fc
- distinct: true
- message: ignore content-type
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-compare: https://github.com/rkh/gh/compare/a4f252e9f4cd...708cc31f907a
-before: a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
-created: false
-', 'y8lpoIaFCoGnRR6v5ajw', '---
-language: ruby
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
- - rbx-18mode
- - rbx-19mode
- - jruby-head
- - ree
-matrix:
- allow_failures:
- - rvm: jruby-18mode
- - rvm: jruby-19mode
- - rvm: jruby-head
-.result: configured
-', '2012-07-11 13:51:07.065000', '2012-07-11 13:51:07.064000', '2012-07-11 13:51:06.882000', '2012-07-11 13:51:10.440000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (449163, 9592, 434698, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: gh
- has_wiki: true
- size: 320
- created_at: "2012-03-05T05:07:41-08:00"
- watchers: 12
- private: false
- url: https://github.com/rkh/gh
- fork: false
- language: Ruby
- pushed_at: "2012-06-18T01:10:53-07:00"
- has_downloads: true
- open_issues: 0
- homepage: http://gh.rkh.im/
- has_issues: true
- description: Layered GitHub API client
- forks: 4
- owner:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-forced: false
-after: a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
-head_commit:
- modified:
- - lib/gh/wrapper.rb
- added: []
-
- timestamp: "2012-06-18T01:10:53-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/rkh/gh/commit/a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
- id: a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
- distinct: true
- message: |-
- Merge pull request #1 from joshk/patch-1
-
- just a small engrish fix
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-deleted: false
-commits:
- - modified:
- - lib/gh/wrapper.rb
- added: []
-
- timestamp: "2012-06-16T05:16:34-07:00"
- author:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- removed: []
-
- url: https://github.com/rkh/gh/commit/1677ed392edbeab5f5703be6bc5faee01b473e26
- id: 1677ed392edbeab5f5703be6bc5faee01b473e26
- distinct: true
- message: just a small engrish fix
- committer:
- name: Josh Kalderimis
- username: joshk
- email: josh.kalderimis@gmail.com
- - modified:
- - lib/gh/wrapper.rb
- added: []
-
- timestamp: "2012-06-18T01:10:53-07:00"
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- url: https://github.com/rkh/gh/commit/a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
- id: a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d
- distinct: true
- message: |-
- Merge pull request #1 from joshk/patch-1
-
- just a small engrish fix
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-ref: refs/heads/master
-compare: https://github.com/rkh/gh/compare/c831a3605094...a4f252e9f4cd
-before: c831a3605094992546e3ab7b7ffb2ebb7979c041
-created: false
-', 'y8lpoIaFCoGnRR6v5ajw', '---
-language: ruby
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
- - rbx-18mode
- - rbx-19mode
- - jruby-head
- - ree
-matrix:
- allow_failures:
- - rvm: jruby-18mode
- - rvm: jruby-19mode
- - rvm: jruby-head
-.result: configured
-', '2012-06-18 08:10:55.391000', '2012-06-18 08:10:55.391000', '2012-06-18 08:10:55.206000', '2012-06-18 08:10:56.461000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (434181, 9592, 420903, 'started', NULL, '{"pusher":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"},"repository":{"name":"gh","has_wiki":true,"size":300,"created_at":"2012-03-05T05:07:41-08:00","private":false,"watchers":11,"url":"https://github.com/rkh/gh","fork":false,"language":"Ruby","pushed_at":"2012-06-11T12:16:43-07:00","has_downloads":true,"open_issues":0,"homepage":"http://gh.rkh.im/","has_issues":true,"description":"Layered GitHub API client","forks":3,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"forced":false,"after":"c831a3605094992546e3ab7b7ffb2ebb7979c041","head_commit":{"added":[],"modified":["lib/gh/merge_commit.rb"],"timestamp":"2012-06-11T12:16:36-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"removed":[],"url":"https://github.com/rkh/gh/commit/c831a3605094992546e3ab7b7ffb2ebb7979c041","id":"c831a3605094992546e3ab7b7ffb2ebb7979c041","distinct":true,"message":"and that other typo","committer":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/gh/merge_commit.rb"],"timestamp":"2012-06-11T12:16:36-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"removed":[],"url":"https://github.com/rkh/gh/commit/c831a3605094992546e3ab7b7ffb2ebb7979c041","id":"c831a3605094992546e3ab7b7ffb2ebb7979c041","distinct":true,"message":"and that other typo","committer":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"}}],"compare":"https://github.com/rkh/gh/compare/f6712a1...c831a36","before":"f6712a152038ab18d586c602beb34a3a613905c6","created":false}', 'y8lpoIaFCoGnRR6v5ajw', '---
-language: ruby
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
- - rbx-18mode
- - rbx-19mode
- - jruby-head
- - ree
-matrix:
- allow_failures:
- - rvm: jruby-18mode
- - rvm: jruby-19mode
- - rvm: jruby-head
-.result: configured
-', '2012-06-11 19:16:44.863000', '2012-06-11 19:16:44.863000', '2012-06-11 19:16:44.611000', '2012-06-11 19:16:45.522000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (434171, 9592, 420895, 'started', NULL, '{"pusher":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"},"repository":{"name":"gh","has_wiki":true,"size":300,"created_at":"2012-03-05T05:07:41-08:00","private":false,"watchers":11,"language":"Ruby","url":"https://github.com/rkh/gh","fork":false,"pushed_at":"2012-06-11T12:14:34-07:00","has_downloads":true,"open_issues":0,"homepage":"http://gh.rkh.im/","has_issues":true,"description":"Layered GitHub API client","forks":3,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"forced":false,"after":"f6712a152038ab18d586c602beb34a3a613905c6","head_commit":{"added":[],"modified":["lib/gh/version.rb"],"timestamp":"2012-06-11T12:14:26-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"removed":[],"url":"https://github.com/rkh/gh/commit/f6712a152038ab18d586c602beb34a3a613905c6","id":"f6712a152038ab18d586c602beb34a3a613905c6","distinct":true,"message":"bump version","committer":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"deleted":false,"commits":[{"added":[],"modified":["lib/gh/version.rb"],"timestamp":"2012-06-11T12:14:26-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"removed":[],"url":"https://github.com/rkh/gh/commit/f6712a152038ab18d586c602beb34a3a613905c6","id":"f6712a152038ab18d586c602beb34a3a613905c6","distinct":true,"message":"bump version","committer":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"}}],"ref":"refs/heads/master","before":"1752065f971a7886b67d61a1c726dcbab1cebbeb","compare":"https://github.com/rkh/gh/compare/1752065...f6712a1","created":false}', 'y8lpoIaFCoGnRR6v5ajw', '---
-language: ruby
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - jruby-18mode
- - jruby-19mode
- - rbx-18mode
- - rbx-19mode
- - jruby-head
- - ree
-matrix:
- allow_failures:
- - rvm: jruby-18mode
- - rvm: jruby-19mode
- - rvm: jruby-head
-.result: configured
-', '2012-06-11 19:14:43.331000', '2012-06-11 19:14:43.331000', '2012-06-11 19:14:43.152000', '2012-06-11 19:14:44.266000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (527884, 1649, 507098, 'started', NULL, '---
-pusher:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-repository:
- name: yard-sinatra
- size: 124
- has_wiki: true
- created_at: "2010-02-15T02:46:25-08:00"
- watchers: 34
- private: false
- language: Ruby
- fork: false
- url: https://github.com/rkh/yard-sinatra
- pushed_at: "2012-07-17T12:23:28-07:00"
- has_downloads: true
- open_issues: 4
- homepage: ""
- has_issues: true
- forks: 10
- description: Display sinatra routes in yard documentation.
- owner:
- name: rkh
- email: konstantin.mailinglists@googlemail.com
-forced: false
-after: 3b1064eef407d2d288a5b96d258178a1e67b3b80
-head_commit:
- modified:
- - lib/yard/sinatra.rb
- added: []
-
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- timestamp: "2012-07-17T12:23:27-07:00"
- url: https://github.com/rkh/yard-sinatra/commit/3b1064eef407d2d288a5b96d258178a1e67b3b80
- id: 3b1064eef407d2d288a5b96d258178a1e67b3b80
- distinct: true
- message: |-
- Merge pull request #8 from neglectedvalue/patch-method
-
- Handle PATCH method.
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-deleted: false
-commits:
- - modified:
- - lib/yard/sinatra.rb
- added: []
-
- author:
- name: Denis Sukhonin
- username: neglectedvalue
- email: d.sukhonin@gmail.com
- removed: []
-
- timestamp: "2012-04-06T10:15:40-07:00"
- url: https://github.com/rkh/yard-sinatra/commit/d25f63a40eb1b420804e83309d3f3e3d3c8a2edb
- id: d25f63a40eb1b420804e83309d3f3e3d3c8a2edb
- distinct: true
- message: Handle PATCH method.
- committer:
- name: Denis Sukhonin
- username: neglectedvalue
- email: d.sukhonin@gmail.com
- - modified:
- - lib/yard/sinatra.rb
- added: []
-
- author:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
- removed: []
-
- timestamp: "2012-07-17T12:23:27-07:00"
- url: https://github.com/rkh/yard-sinatra/commit/3b1064eef407d2d288a5b96d258178a1e67b3b80
- id: 3b1064eef407d2d288a5b96d258178a1e67b3b80
- distinct: true
- message: |-
- Merge pull request #8 from neglectedvalue/patch-method
-
- Handle PATCH method.
- committer:
- name: Konstantin Haase
- username: rkh
- email: konstantin.mailinglists@googlemail.com
-ref: refs/heads/master
-compare: https://github.com/rkh/yard-sinatra/compare/7f884574f68b...3b1064eef407
-before: 7f884574f68b192b5936f184f552a7d70d57d97c
-created: false
-', 'y8lpoIaFCoGnRR6v5ajw', '---
-rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - rbx
- - rbx-2.0
- - jruby
- - ruby-head
-notifications:
- recipients:
- - k.haase@finn.de
-.result: configured
-', '2012-07-17 19:23:30.876000', '2012-07-17 19:23:30.875000', '2012-07-17 19:23:30.400000', '2012-07-17 19:23:32.271000', 267, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (194759, 1649, 194785, 'finished', NULL, '{"pusher":{"name":"tjeden","email":"tjeden@gmail.com"},"repository":{"name":"yard-sinatra","size":124,"has_wiki":true,"created_at":"2010/02/15 02:46:25 -0800","watchers":21,"private":false,"url":"https://github.com/rkh/yard-sinatra","fork":false,"language":"Ruby","pushed_at":"2012/01/27 07:04:43 -0800","has_downloads":true,"open_issues":2,"has_issues":true,"homepage":"","description":"Display sinatra routes in yard documentation.","forks":6,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"forced":true,"after":"2fae74f3302c8a6a0563f88bbc37a0e2da7a654e","deleted":false,"ref":"refs/heads/work","commits":[{"added":["spec/tag_app.rb"],"modified":[],"author":{"name":"Aleksander Dąbrowski","username":"tjeden","email":"aleksander.dabrowski@connectmedica.com"},"removed":[],"timestamp":"2012-01-27T07:04:25-08:00","url":"https://github.com/rkh/yard-sinatra/commit/2fae74f3302c8a6a0563f88bbc37a0e2da7a654e","id":"2fae74f3302c8a6a0563f88bbc37a0e2da7a654e","distinct":true,"message":"faling spec with tag added"}],"before":"0000000000000000000000000000000000000000","compare":"https://github.com/rkh/yard-sinatra/commit/2fae74f","created":true}', 'y8lpoIaFCoGnRR6v5ajw', '---
-:rvm:
- - 1.8.7
- - 1.9.2
- - 1.9.3
- - rbx
- - rbx-2.0
- - jruby
- - ruby-head
-:notifications:
- :recipients:
- - k.haase@finn.de
-:".configured": true
-', '2012-01-27 15:04:45.299000', '2012-01-27 15:04:46.202000', '2012-01-27 15:04:44.946660', '2012-01-27 15:04:46.203000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (86863, 1649, 86861, 'finished', 'github', '{"pusher":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"},"repository":{"name":"yard-sinatra","size":164,"created_at":"2010/02/15 02:46:25 -0800","has_wiki":true,"private":false,"watchers":14,"url":"https://github.com/rkh/yard-sinatra","fork":false,"language":"Ruby","pushed_at":"2011/08/17 13:38:21 -0700","has_downloads":true,"open_issues":2,"has_issues":true,"homepage":"","description":"Display sinatra routes in yard documentation.","forks":6,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"ref_name":"master","forced":false,"after":"7f884574f68b192b5936f184f552a7d70d57d97c","deleted":false,"commits":[{"added":[],"modified":["Gemfile.lock","Rakefile"],"removed":[],"timestamp":"2011-08-17T13:38:16-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"url":"https://github.com/rkh/yard-sinatra/commit/7f884574f68b192b5936f184f552a7d70d57d97c","id":"7f884574f68b192b5936f184f552a7d70d57d97c","distinct":true,"message":"add rake default task"}],"ref":"refs/heads/master","base_ref":null,"compare":"https://github.com/rkh/yard-sinatra/compare/22688f6...7f88457","before":"22688f61ecf7d639dd4606545ff11c577fde3275","created":false}', 'y8lpoIaFCoGnRR6v5ajw', '---
-rvm: jruby
-notifications: !map:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: "true"
-', '2011-08-17 20:38:33.000000', '2011-08-17 20:39:54.000000', '2011-08-17 20:38:23.018154', '2011-08-26 08:46:37.676188', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (86853, 1649, 86850, 'finished', 'github', '{"pusher":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"},"repository":{"name":"yard-sinatra","size":164,"created_at":"2010/02/15 02:46:25 -0800","has_wiki":true,"private":false,"watchers":14,"url":"https://github.com/rkh/yard-sinatra","fork":false,"language":"Ruby","pushed_at":"2011/08/17 13:36:37 -0700","has_downloads":true,"open_issues":2,"has_issues":true,"homepage":"","description":"Display sinatra routes in yard documentation.","forks":6,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"ref_name":"master","forced":false,"after":"22688f61ecf7d639dd4606545ff11c577fde3275","deleted":false,"commits":[{"modified":["Gemfile"],"added":[],"timestamp":"2011-08-17T13:36:19-07:00","removed":[],"author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"url":"https://github.com/rkh/yard-sinatra/commit/c777a2b9d20488b862373e4bb2db2dd199b428d3","id":"c777a2b9d20488b862373e4bb2db2dd199b428d3","distinct":true,"message":"add rake to gemfile"},{"modified":[".travis.yml"],"added":[],"timestamp":"2011-08-17T13:36:33-07:00","removed":[],"author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"url":"https://github.com/rkh/yard-sinatra/commit/22688f61ecf7d639dd4606545ff11c577fde3275","id":"22688f61ecf7d639dd4606545ff11c577fde3275","distinct":true,"message":"more rubies"}],"ref":"refs/heads/master","base_ref":null,"compare":"https://github.com/rkh/yard-sinatra/compare/5352947...22688f6","before":"53529475f0b98df69bf0ad867f44469dbc98318b","created":false}', 'y8lpoIaFCoGnRR6v5ajw', '---
-rvm: rbx
-notifications: !map:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: "true"
-', '2011-08-17 20:36:47.000000', '2011-08-17 20:38:08.000000', '2011-08-17 20:36:39.140223', '2011-08-26 08:46:37.412247', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (86846, 1649, 86848, 'finished', 'github', '{"pusher":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"},"repository":{"name":"yard-sinatra","size":164,"created_at":"2010/02/15 02:46:25 -0800","has_wiki":true,"private":false,"watchers":14,"language":"Ruby","url":"https://github.com/rkh/yard-sinatra","fork":false,"pushed_at":"2011/08/17 13:34:49 -0700","has_downloads":true,"open_issues":2,"has_issues":true,"homepage":"","description":"Display sinatra routes in yard documentation.","forks":6,"owner":{"name":"rkh","email":"konstantin.mailinglists@googlemail.com"}},"ref_name":"master","forced":false,"after":"53529475f0b98df69bf0ad867f44469dbc98318b","deleted":false,"commits":[{"modified":["Gemfile"],"added":[],"timestamp":"2011-08-17T13:34:45-07:00","author":{"name":"Konstantin Haase","username":"rkh","email":"konstantin.mailinglists@googlemail.com"},"removed":[],"url":"https://github.com/rkh/yard-sinatra/commit/53529475f0b98df69bf0ad867f44469dbc98318b","id":"53529475f0b98df69bf0ad867f44469dbc98318b","distinct":true,"message":"fix gemfile"}],"ref":"refs/heads/master","base_ref":null,"before":"45678cd123e829fdff6574067cd3e5852942b084","compare":"https://github.com/rkh/yard-sinatra/compare/45678cd...5352947","created":false}', 'y8lpoIaFCoGnRR6v5ajw', '---
-rvm:
-- 1.8.7
-- 1.9.2
-notifications: !map:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: "true"
-', '2011-08-17 20:34:59.000000', '2011-08-17 20:35:36.000000', '2011-08-17 20:34:50.511386', '2011-08-26 08:46:37.288723', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (237073, 8975, 237101, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"hurt_logger","size":136,"has_wiki":true,"created_at":"2012/03/02 01:06:24 -0800","private":false,"watchers":3,"url":"https://github.com/mattmatt/hurt_logger","fork":false,"language":"Ruby","pushed_at":"2012/03/04 03:25:42 -0800","has_downloads":true,"open_issues":0,"has_issues":true,"forks":1,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"after":"5f86148105d50b751a58524ab4c4ac7d982a24bf","head_commit":{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:25:36-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/5f86148105d50b751a58524ab4c4ac7d982a24bf","id":"5f86148105d50b751a58524ab4c4ac7d982a24bf","distinct":true,"message":"Remove debug.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:25:36-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/5f86148105d50b751a58524ab4c4ac7d982a24bf","id":"5f86148105d50b751a58524ab4c4ac7d982a24bf","distinct":true,"message":"Remove debug.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/hurt_logger/compare/e76b172...5f86148","before":"e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".configured": true
-', '2012-03-04 11:25:47.706000', '2012-03-04 11:25:48.530000', '2012-03-04 11:25:47.500672', '2012-03-04 11:25:48.531000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (237071, 8975, 237099, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"hurt_logger","size":136,"has_wiki":true,"created_at":"2012/03/02 01:06:24 -0800","private":false,"watchers":3,"url":"https://github.com/mattmatt/hurt_logger","fork":false,"language":"Ruby","pushed_at":"2012/03/04 03:23:11 -0800","has_downloads":true,"open_issues":0,"has_issues":true,"forks":1,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"after":"e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","head_commit":{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:18:57-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","id":"e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","distinct":true,"message":"Tell what signal we''ve received.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:18:57-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","id":"e76b1728ffa54c5e2c8d36d599c79608ad4ce91d","distinct":true,"message":"Tell what signal we''ve received.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/hurt_logger/compare/189551e...e76b172","before":"189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".configured": true
-', '2012-03-04 11:23:12.944000', '2012-03-04 11:23:13.723000', '2012-03-04 11:23:12.751170', '2012-03-04 11:23:13.724000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (237063, 8975, 237091, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"hurt_logger","size":136,"has_wiki":true,"created_at":"2012/03/02 01:06:24 -0800","private":false,"watchers":3,"url":"https://github.com/mattmatt/hurt_logger","fork":false,"language":"Ruby","pushed_at":"2012/03/04 03:17:33 -0800","has_downloads":true,"open_issues":0,"has_issues":true,"forks":1,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"after":"189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","head_commit":{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:13:37-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","id":"189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","distinct":true,"message":"Properly trap signal.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:31:28-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/2aec7b546a95c8bc079208d2eca61a78ceee0c5a","id":"2aec7b546a95c8bc079208d2eca61a78ceee0c5a","distinct":true,"message":"EM.run, bro.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:37:29-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/facecfd4e67fc6b8a412c9abdf60974647389ba2","id":"facecfd4e67fc6b8a412c9abdf60974647389ba2","distinct":true,"message":"Use require_relative","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger.rb","lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:55:16-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/62eebad2bce0720dcf24167673e591e63e3f973e","id":"62eebad2bce0720dcf24167673e591e63e3f973e","distinct":true,"message":"Stop EM properly on shutting down tail.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:56:38-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/b6642043a098c70a5f054ab184630ddc331f79f2","id":"b6642043a098c70a5f054ab184630ddc331f79f2","distinct":true,"message":"Require em-hiredis.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:58:38-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/b5f185b59e84976baa4a8cb5d5f21efbc956a58a","id":"b5f185b59e84976baa4a8cb5d5f21efbc956a58a","distinct":true,"message":"Debug.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:00:56-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/32980b1e4bf7b645b18383d6ac4007474d55d87d","id":"32980b1e4bf7b645b18383d6ac4007474d55d87d","distinct":true,"message":"Debug.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["Procfile","lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:05:12-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/57b532739735a24602fa27908c80e435f1351672","id":"57b532739735a24602fa27908c80e435f1351672","distinct":true,"message":"Add tail argv.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:06:37-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/53cdaffe23a735a3a0c32ed431c2a5b1916806d1","id":"53cdaffe23a735a3a0c32ed431c2a5b1916806d1","distinct":true,"message":"EM.run","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:07:50-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/c282265c24e5207acb116315aca688d86ad61458","id":"c282265c24e5207acb116315aca688d86ad61458","distinct":true,"message":"Fix typo.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:11:25-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/98d498343f8d05962a1529e36bcfccc3872f9721","id":"98d498343f8d05962a1529e36bcfccc3872f9721","distinct":true,"message":"Trap more signals.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},{"added":[],"modified":["lib/hurt_logger/tail.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T03:13:37-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","id":"189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d","distinct":true,"message":"Properly trap signal.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/hurt_logger/compare/846cffc...189551e","before":"846cffc14ee88052bce9ec2c5b0e27e5e65b9247","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".configured": true
-', '2012-03-04 11:17:35.151000', '2012-03-04 11:17:35.902000', '2012-03-04 11:17:34.829935', '2012-03-04 11:17:35.903000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (237006, 8975, 237034, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"hurt_logger","size":136,"has_wiki":true,"created_at":"2012/03/02 01:06:24 -0800","private":false,"watchers":3,"language":"Ruby","url":"https://github.com/mattmatt/hurt_logger","fork":false,"pushed_at":"2012/03/04 02:04:01 -0800","has_downloads":true,"open_issues":0,"has_issues":true,"forks":1,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"after":"846cffc14ee88052bce9ec2c5b0e27e5e65b9247","head_commit":{"added":["lib/hurt_logger/tail.rb"],"modified":["Procfile","lib/hurt_logger.rb","spec/hurt_logger_spec.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:03:57-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/846cffc14ee88052bce9ec2c5b0e27e5e65b9247","id":"846cffc14ee88052bce9ec2c5b0e27e5e65b9247","distinct":true,"message":"Add tail command to display messages from pubsub drain.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"deleted":false,"commits":[{"added":["lib/hurt_logger/tail.rb"],"modified":["Procfile","lib/hurt_logger.rb","spec/hurt_logger_spec.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T02:03:57-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/846cffc14ee88052bce9ec2c5b0e27e5e65b9247","id":"846cffc14ee88052bce9ec2c5b0e27e5e65b9247","distinct":true,"message":"Add tail command to display messages from pubsub drain.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"ref":"refs/heads/master","before":"9c88fe2400691aa658340b79bc5e835648d34e89","compare":"https://github.com/mattmatt/hurt_logger/compare/9c88fe2...846cffc","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".configured": true
-', '2012-03-04 10:04:02.931000', '2012-03-04 10:04:03.740000', '2012-03-04 10:04:02.713683', '2012-03-04 10:04:03.742000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (236962, 8975, 236990, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"hurt_logger","size":136,"has_wiki":true,"created_at":"2012/03/02 01:06:24 -0800","private":false,"watchers":3,"url":"https://github.com/mattmatt/hurt_logger","fork":false,"language":"Ruby","pushed_at":"2012/03/04 01:03:47 -0800","has_downloads":true,"open_issues":0,"has_issues":true,"forks":1,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"after":"9c88fe2400691aa658340b79bc5e835648d34e89","head_commit":{"added":[],"modified":["lib/hurt_logger.rb","spec/hurt_logger_spec.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T01:03:43-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/9c88fe2400691aa658340b79bc5e835648d34e89","id":"9c88fe2400691aa658340b79bc5e835648d34e89","distinct":true,"message":"Read drains and filters from ENV.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/hurt_logger.rb","spec/hurt_logger_spec.rb"],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"timestamp":"2012-03-04T01:03:43-08:00","removed":[],"url":"https://github.com/mattmatt/hurt_logger/commit/9c88fe2400691aa658340b79bc5e835648d34e89","id":"9c88fe2400691aa658340b79bc5e835648d34e89","distinct":true,"message":"Read drains and filters from ENV.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/hurt_logger/compare/33a7001...9c88fe2","before":"33a7001e99db4d7b6567542dd5dc7203736b287b","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".configured": true
-', '2012-03-04 09:03:49.355000', '2012-03-04 09:03:50.140000', '2012-03-04 09:03:49.113340', '2012-03-04 09:03:50.141000', NULL, NULL, 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (371697, 9657, 363794, 'finished', NULL, '{"number":11,"pull_request":{"head":{"repo":{"name":"lograge","created_at":"2012-05-16T19:17:38Z","size":124,"has_wiki":true,"clone_url":"https://github.com/imajes/lograge.git","watchers":1,"updated_at":"2012-05-16T19:20:16Z","private":false,"ssh_url":"git@github.com:imajes/lograge.git","language":"Ruby","url":"https://api.github.com/repos/imajes/lograge","fork":true,"git_url":"git://github.com/imajes/lograge.git","pushed_at":"2012-05-16T19:20:15Z","id":4350797,"svn_url":"https://github.com/imajes/lograge","has_downloads":true,"mirror_url":null,"open_issues":0,"has_issues":false,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","description":"An attempt to tame Rails'' default policy to log everything.","forks":0,"html_url":"https://github.com/imajes/lograge","owner":{"gravatar_id":"10f6225de95e15be417e2efb47e3f13a","avatar_url":"https://secure.gravatar.com/avatar/10f6225de95e15be417e2efb47e3f13a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/imajes","id":2073,"login":"imajes"}},"label":"imajes:patch-1","sha":"90e858410a32ae82fa3cd13aa1ddb5d073ad4404","ref":"patch-1","user":{"gravatar_id":"10f6225de95e15be417e2efb47e3f13a","avatar_url":"https://secure.gravatar.com/avatar/10f6225de95e15be417e2efb47e3f13a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/imajes","id":2073,"login":"imajes"}},"issue_url":"https://github.com/mattmatt/lograge/issues/11","number":11,"merged_by":null,"merged":false,"created_at":"2012-05-16T19:20:42Z","changed_files":1,"comments":0,"body":"this enforces removal of the query string before it hits the logger.","title":"Properly filter params","diff_url":"https://github.com/mattmatt/lograge/pull/11.diff","additions":2,"updated_at":"2012-05-16T19:20:42Z","url":"https://api.github.com/repos/mattmatt/lograge/pulls/11","_links":{"html":{"href":"https://github.com/mattmatt/lograge/pull/11"},"self":{"href":"https://api.github.com/repos/mattmatt/lograge/pulls/11"},"comments":{"href":"https://api.github.com/repos/mattmatt/lograge/issues/11/comments"},"issue":{"href":"https://api.github.com/repos/mattmatt/lograge/issues/11"},"review_comments":{"href":"https://api.github.com/repos/mattmatt/lograge/pulls/11/comments"}},"id":1367374,"patch_url":"https://github.com/mattmatt/lograge/pull/11.patch","mergeable":null,"closed_at":null,"merged_at":null,"commits":1,"user":{"gravatar_id":"10f6225de95e15be417e2efb47e3f13a","avatar_url":"https://secure.gravatar.com/avatar/10f6225de95e15be417e2efb47e3f13a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/imajes","id":2073,"login":"imajes"},"html_url":"https://github.com/mattmatt/lograge/pull/11","deletions":1,"review_comments":0,"base":{"repo":{"name":"lograge","created_at":"2012-03-10T06:24:57Z","size":136,"has_wiki":true,"clone_url":"https://github.com/mattmatt/lograge.git","watchers":123,"updated_at":"2012-05-16T19:17:38Z","private":false,"ssh_url":"git@github.com:mattmatt/lograge.git","language":"Ruby","url":"https://api.github.com/repos/mattmatt/lograge","fork":false,"git_url":"git://github.com/mattmatt/lograge.git","pushed_at":"2012-05-06T11:13:28Z","id":3677872,"svn_url":"https://github.com/mattmatt/lograge","has_downloads":true,"mirror_url":null,"open_issues":5,"has_issues":true,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","description":"An attempt to tame Rails'' default policy to log everything.","forks":9,"html_url":"https://github.com/mattmatt/lograge","owner":{"gravatar_id":"4d9dd9bd8d3d4d0ba8af2acc41d14006","avatar_url":"https://secure.gravatar.com/avatar/4d9dd9bd8d3d4d0ba8af2acc41d14006?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mattmatt","id":5373,"login":"mattmatt"}},"label":"mattmatt:master","sha":"1583b356fe4acb5456ebf0d544a16fdb445d52ee","ref":"master","user":{"gravatar_id":"4d9dd9bd8d3d4d0ba8af2acc41d14006","avatar_url":"https://secure.gravatar.com/avatar/4d9dd9bd8d3d4d0ba8af2acc41d14006?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mattmatt","id":5373,"login":"mattmatt"}},"state":"open"},"repository":{"name":"lograge","has_wiki":true,"size":136,"created_at":"2012-03-10T06:24:57Z","clone_url":"https://github.com/mattmatt/lograge.git","private":false,"updated_at":"2012-05-16T19:17:38Z","watchers":123,"language":"Ruby","fork":false,"url":"https://api.github.com/repos/mattmatt/lograge","git_url":"git://github.com/mattmatt/lograge.git","ssh_url":"git@github.com:mattmatt/lograge.git","id":3677872,"svn_url":"https://github.com/mattmatt/lograge","pushed_at":"2012-05-06T11:13:28Z","has_downloads":true,"mirror_url":null,"open_issues":5,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","has_issues":true,"forks":9,"description":"An attempt to tame Rails'' default policy to log everything.","html_url":"https://github.com/mattmatt/lograge","owner":{"gravatar_id":"4d9dd9bd8d3d4d0ba8af2acc41d14006","avatar_url":"https://secure.gravatar.com/avatar/4d9dd9bd8d3d4d0ba8af2acc41d14006?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/mattmatt","id":5373,"login":"mattmatt"}},"sender":{"gravatar_id":"10f6225de95e15be417e2efb47e3f13a","avatar_url":"https://secure.gravatar.com/avatar/10f6225de95e15be417e2efb47e3f13a?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","url":"https://api.github.com/users/imajes","id":2073,"login":"imajes"},"action":"opened"}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".result": configured
-', NULL, '2012-05-16 19:20:45.002000', '2012-05-16 19:20:44.526000', '2012-05-16 19:20:45.002000', 5100, 'User', 'pull_request', 'https://api.github.com/repos/mattmatt/lograge/issues/11/comments', '1583b356fe4acb5456ebf0d544a16fdb445d52ee', '90e858410a32ae82fa3cd13aa1ddb5d073ad4404');
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (347560, 9657, 341599, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"lograge","size":168,"created_at":"2012/03/09 22:24:57 -0800","has_wiki":true,"watchers":120,"private":false,"fork":false,"language":"Ruby","url":"https://github.com/mattmatt/lograge","pushed_at":"2012/05/06 04:13:28 -0700","has_downloads":true,"open_issues":3,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","has_issues":true,"description":"An attempt to tame Rails'' default policy to log everything.","forks":8,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"head_commit":{"added":[],"modified":["lib/lograge/log_subscriber.rb","spec/lograge_logsubscriber_spec.rb"],"timestamp":"2012-05-06T04:12:07-07:00","author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"removed":[],"url":"https://github.com/mattmatt/lograge/commit/1583b356fe4acb5456ebf0d544a16fdb445d52ee","id":"1583b356fe4acb5456ebf0d544a16fdb445d52ee","distinct":true,"message":"Return status=0 when the status is unknown.\n\nUpdate re #5.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"after":"1583b356fe4acb5456ebf0d544a16fdb445d52ee","deleted":false,"commits":[{"added":[],"modified":["lib/lograge/log_subscriber.rb","spec/lograge_logsubscriber_spec.rb"],"timestamp":"2012-05-06T04:12:07-07:00","author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"removed":[],"url":"https://github.com/mattmatt/lograge/commit/1583b356fe4acb5456ebf0d544a16fdb445d52ee","id":"1583b356fe4acb5456ebf0d544a16fdb445d52ee","distinct":true,"message":"Return status=0 when the status is unknown.\n\nUpdate re #5.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"ref":"refs/heads/master","compare":"https://github.com/mattmatt/lograge/compare/32f645b...1583b35","before":"32f645b92cddfd39afdccefba6ed87eebc7e72e0","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".result": configured
-', NULL, '2012-05-06 11:13:30.309000', '2012-05-06 11:13:29.939000', '2012-05-06 11:13:30.310000', 5100, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (346097, 9657, 340261, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"lograge","has_wiki":true,"size":168,"created_at":"2012/03/09 22:24:57 -0800","private":false,"watchers":120,"language":"Ruby","fork":false,"url":"https://github.com/mattmatt/lograge","pushed_at":"2012/05/05 04:09:25 -0700","has_downloads":true,"open_issues":3,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","has_issues":true,"description":"An attempt to tame Rails'' default policy to log everything.","forks":8,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"head_commit":{"added":[],"modified":[".travis.yml"],"timestamp":"2012-05-05T04:09:17-07:00","removed":[],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/32f645b92cddfd39afdccefba6ed87eebc7e72e0","id":"32f645b92cddfd39afdccefba6ed87eebc7e72e0","distinct":true,"message":"Revert \"Test more Rubies on Travis.\"\n\nThis reverts commit fa3cad163b43f39defa481e956b15fce7b7cb992.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"after":"32f645b92cddfd39afdccefba6ed87eebc7e72e0","deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":[".travis.yml"],"timestamp":"2012-05-05T04:09:17-07:00","removed":[],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/32f645b92cddfd39afdccefba6ed87eebc7e72e0","id":"32f645b92cddfd39afdccefba6ed87eebc7e72e0","distinct":true,"message":"Revert \"Test more Rubies on Travis.\"\n\nThis reverts commit fa3cad163b43f39defa481e956b15fce7b7cb992.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/lograge/compare/fa3cad1...32f645b","before":"fa3cad163b43f39defa481e956b15fce7b7cb992","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".result": configured
-', NULL, '2012-05-05 11:09:26.796000', '2012-05-05 11:09:26.403000', '2012-05-05 11:09:26.796000', 5100, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (346095, 9657, 340259, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"lograge","has_wiki":true,"size":168,"created_at":"2012/03/09 22:24:57 -0800","private":false,"watchers":120,"fork":false,"url":"https://github.com/mattmatt/lograge","language":"Ruby","pushed_at":"2012/05/05 04:08:16 -0700","has_downloads":true,"open_issues":3,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","has_issues":true,"description":"An attempt to tame Rails'' default policy to log everything.","forks":8,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"head_commit":{"added":[],"modified":[".travis.yml"],"removed":[],"timestamp":"2012-05-05T04:08:05-07:00","author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/fa3cad163b43f39defa481e956b15fce7b7cb992","id":"fa3cad163b43f39defa481e956b15fce7b7cb992","distinct":true,"message":"Test more Rubies on Travis.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"after":"fa3cad163b43f39defa481e956b15fce7b7cb992","deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":[".travis.yml"],"removed":[],"timestamp":"2012-05-05T04:08:05-07:00","author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/fa3cad163b43f39defa481e956b15fce7b7cb992","id":"fa3cad163b43f39defa481e956b15fce7b7cb992","distinct":true,"message":"Test more Rubies on Travis.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/lograge/compare/b533373...fa3cad1","before":"b5333734d2ab7677eac8e5c9ee8e13151ac69057","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
- - ree
- - 1.8.7
-:script: bundle exec rspec
-:".result": configured
-', NULL, '2012-05-05 11:08:19.327000', '2012-05-05 11:08:18.620000', '2012-05-05 11:08:19.328000', 5100, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO requests (id, repository_id, commit_id, state, source, payload, token, config, started_at, finished_at, created_at, updated_at, owner_id, owner_type, event_type, comments_url, base_commit, head_commit)
- VALUES (346087, 9657, 340251, 'finished', NULL, '{"pusher":{"name":"mattmatt","email":"meyer@paperplanes.de"},"repository":{"name":"lograge","has_wiki":true,"size":168,"created_at":"2012/03/09 22:24:57 -0800","private":false,"watchers":120,"language":"Ruby","fork":false,"url":"https://github.com/mattmatt/lograge","pushed_at":"2012/05/05 04:03:42 -0700","has_downloads":true,"open_issues":3,"homepage":"http://www.paperplanes.de/2012/3/14/on-notifications-logsubscribers-and-bringing-sanity-to-rails-logging.html","has_issues":true,"description":"An attempt to tame Rails'' default policy to log everything.","forks":8,"owner":{"name":"mattmatt","email":"meyer@paperplanes.de"}},"forced":false,"head_commit":{"added":[],"modified":["lib/lograge.rb"],"timestamp":"2012-05-05T04:03:42-07:00","removed":[],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/b5333734d2ab7677eac8e5c9ee8e13151ac69057","id":"b5333734d2ab7677eac8e5c9ee8e13151ac69057","distinct":true,"message":"Merge pull request #7 from greis/log_subscribers\n\nFind current Rails log subscribers and remove their events.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}},"after":"b5333734d2ab7677eac8e5c9ee8e13151ac69057","deleted":false,"ref":"refs/heads/master","commits":[{"added":[],"modified":["lib/lograge.rb"],"timestamp":"2012-04-22T19:46:49-07:00","removed":[],"author":{"name":"Gabriel Reis","username":"greis","email":"bielmooca@gmail.com"},"url":"https://github.com/mattmatt/lograge/commit/06258f98f7ab6a355b84b3c9d3c2c84510af83c0","id":"06258f98f7ab6a355b84b3c9d3c2c84510af83c0","distinct":true,"message":"Find current Rails log subscribers and remove their events.","committer":{"name":"Gabriel Reis","username":"greis","email":"bielmooca@gmail.com"}},{"added":[],"modified":["lib/lograge.rb"],"timestamp":"2012-05-05T04:03:42-07:00","removed":[],"author":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"},"url":"https://github.com/mattmatt/lograge/commit/b5333734d2ab7677eac8e5c9ee8e13151ac69057","id":"b5333734d2ab7677eac8e5c9ee8e13151ac69057","distinct":true,"message":"Merge pull request #7 from greis/log_subscribers\n\nFind current Rails log subscribers and remove their events.","committer":{"name":"Mathias Meyer","username":"mattmatt","email":"meyer@paperplanes.de"}}],"compare":"https://github.com/mattmatt/lograge/compare/d87a781...b533373","before":"d87a781048509e82be07126c597d48ba5aa407da","created":false}', 'z1zcxUyPPSXRFQsXpm3Z', '---
-:language: ruby
-:rvm:
- - 1.9.3
- - 1.9.2
-:script: bundle exec rspec
-:".result": configured
-', NULL, '2012-05-05 11:03:46.806000', '2012-05-05 11:03:43.524000', '2012-05-05 11:03:46.807000', 5100, 'User', 'push', NULL, NULL, NULL);
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (488920, 4351, '4393c5d2501bea3f921a0a31806717d93add05fe', 'refs/heads/master', 'master', 'Merge branch ''instrumentation-level''', 'https://github.com/travis-ci/travis-support/compare/193acbc85815...4393c5d2501b', '2012-07-10 17:02:31.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-07-10 17:03:07.829000', '2012-07-10 17:03:07.829000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (488583, 4351, 'f9ff4f7922770e7a11fa3e04f85f1cd734596581', 'refs/heads/instrumentation-level', 'instrumentation-level', 'add support for log levels', 'https://github.com/travis-ci/travis-support/commit/f9ff4f792277', '2012-07-10 15:15:25.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-07-10 15:15:49.200000', '2012-07-10 15:15:49.200000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (485418, 4351, '193acbc858154b0d86a0ee41d932ca0083933731', 'refs/heads/master', 'master', 'remove stale require', 'https://github.com/travis-ci/travis-support/compare/ec52ebda6aa2...193acbc85815', '2012-07-09 12:05:09.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-09 12:05:22.236000', '2012-07-09 12:05:22.236000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (485407, 4351, 'ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5', 'refs/heads/master', 'master', 'prepend a version to metriks names', 'https://github.com/travis-ci/travis-support/compare/1e76ebd1108d...ec52ebda6aa2', '2012-07-09 11:59:11.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-09 11:59:22.844000', '2012-07-09 11:59:22.844000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (482125, 4351, '1e76ebd1108dd918bd0d17c5f241a7984292b31f', 'refs/heads/master', 'master', 'Merge pull request #3 from drogus/obfuscate-env-vars
-
-Add Travis::Helpers.obfuscate_env_vars', 'https://github.com/travis-ci/travis-support/compare/ad079609a408...1e76ebd1108d', '2012-07-07 18:45:25.000000', 'Erik Michaels-Ober', 'sferik@gmail.com', 'Erik Michaels-Ober', 'sferik@gmail.com', '2012-07-07 18:45:30.399000', '2012-07-07 18:45:30.399000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (512493, 3323, '42b82fb8fc99986c6d1999c8f39272a292731b4e', 'refs/pull/81/merge', 'master', 'Fix issue #537 (branch names with slashes included)
-', 'https://github.com/travis-ci/travis-core/pull/81', '2012-07-19 16:46:34.000000', 'Andrey Andreev', 'narf@bofh.bg', 'Andrey Andreev', 'narf@bofh.bg', '2012-07-19 16:51:13.131000', '2012-07-19 16:51:13.131000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (511984, 3323, 'dc201083ae994aa29793570f24abba427e2513a5', 'refs/pull/80/merge', 'master', 'Fix indentation and syntax error
-', 'https://github.com/travis-ci/travis-core/pull/80', '2012-07-19 13:58:22.000000', 'Corey Richardson', 'corey@octayn.net', 'Corey Richardson', 'corey@octayn.net', '2012-07-19 13:58:43.375000', '2012-07-19 13:58:43.375000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (511952, 3323, '73d8c83f7d9672fe9181355f8ba285faf8630e60', 'refs/pull/80/merge', 'master', 'Manually rebase the patch for travis-ci/travis-core/#56 (I hope it works)
-', 'https://github.com/travis-ci/travis-core/pull/80', '2012-07-19 13:17:00.000000', 'Corey Richardson', 'corey@octayn.net', 'Corey Richardson', 'corey@octayn.net', '2012-07-19 13:46:52.224000', '2012-07-19 13:46:52.224000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (509077, 3323, '62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5', 'refs/pull/78/merge', 'master', 'Stub the Repository class
-
-The api_spec.rb file is ran first on some ruby implementations/systems,
-and if we create the Repository class there, that messes up Rails''
-autoloading in later tests.
-', 'https://github.com/travis-ci/travis-core/pull/78', '2012-07-18 12:48:13.000000', 'Henrik Hodne', 'me@henrikhodne.com', 'Henrik Hodne', 'me@henrikhodne.com', '2012-07-18 12:50:11.501000', '2012-07-18 12:50:11.501000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (506427, 3323, '2531cab2f6584faf311eae19dda0fe6c34fb7264', 'refs/heads/master', 'master', 'rescue from broken yaml', 'https://github.com/travis-ci/travis-core/compare/b55a1ae687a3...2531cab2f658', '2012-07-17 15:19:21.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-17 15:19:31.169000', '2012-07-17 15:19:31.169000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (512511, 59, 'ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07', 'refs/heads/production', 'production', 'gotta exclude finished_at nulls', 'https://github.com/travis-ci/travis-ci/compare/9dd6af0f8aa8...ac6ddfa94b5c', '2012-07-19 16:53:41.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-19 16:56:44.558000', '2012-07-19 16:56:44.558000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (511705, 59, '50450976edf82dd2904749e08181c39bf68052dc', 'refs/heads/master', 'master', 'add seed data, fix a few things (seeds still generate errors when loading, even though functional)', 'https://github.com/travis-ci/travis-ci/compare/4b634853419d...50450976edf8', '2012-07-19 11:35:29.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-19 11:35:43.017000', '2012-07-19 11:35:43.017000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (511621, 59, '4b634853419d97f694fb7c2ad0a5fb8ead232417', 'refs/heads/master', 'master', 'add a seed export thingy', 'https://github.com/travis-ci/travis-ci/compare/9dd6af0f8aa8...4b634853419d', '2012-07-19 10:20:18.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-19 10:33:40.049000', '2012-07-19 10:33:40.049000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (510600, 59, 'bc6a35b9cd515d9607ae4abdff6ade93509c3b05', 'refs/pull/636/merge', 'master', 'Switch to 1.9 hash syntax
-', 'https://github.com/travis-ci/travis-ci/pull/636', '2012-07-17 22:28:29.000000', 'Henrik Hodne', 'me@henrikhodne.com', 'Henrik Hodne', 'me@henrikhodne.com', '2012-07-18 22:39:28.409000', '2012-07-18 22:39:28.409000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (506626, 59, '9dd6af0f8aa8182fad7f7a399ef21188698d194a', 'refs/heads/production', 'production', 'downgrade oauth related gems because one of them caused new github accounts to not be able to sign in/create an account on travis', 'https://github.com/travis-ci/travis-ci/compare/712cd8d3a173...9dd6af0f8aa8', '2012-07-17 16:22:19.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-17 16:23:10.750000', '2012-07-17 16:23:10.750000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (505919, 3371, 'ffc385738aa4ca87c4868db0441287912990683b', 'refs/heads/production', 'production', 'bumped travis-core, but please please remember to bundle using only jruby and not mri!!!', 'https://github.com/travis-ci/travis-hub/compare/2c746da5ecd3...ffc385738aa4', '2012-07-17 11:52:40.000000', 'Josh Kalderimis', 'josh.kalderimis@gmail.com', 'Josh Kalderimis', 'josh.kalderimis@gmail.com', '2012-07-17 11:55:19.649000', '2012-07-17 11:55:19.649000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (505914, 3371, 'ffc385738aa4ca87c4868db0441287912990683b', 'refs/heads/master', 'master', 'bumped travis-core, but please please remember to bundle using only jruby and not mri!!!', 'https://github.com/travis-ci/travis-hub/compare/f9cec63f1bdb...ffc385738aa4', '2012-07-17 11:52:40.000000', 'Josh Kalderimis', 'josh.kalderimis@gmail.com', 'Josh Kalderimis', 'josh.kalderimis@gmail.com', '2012-07-17 11:52:51.857000', '2012-07-17 11:52:51.857000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (505861, 3371, 'f9cec63f1bdbe308d867579465867cc2a10ade0c', 'refs/heads/master', 'master', 'bump travis-core', 'https://github.com/travis-ci/travis-hub/compare/9acbe3bb988c...f9cec63f1bdb', '2012-07-16 16:20:57.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-17 11:14:44.089000', '2012-07-17 11:14:44.089000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (503892, 3371, '9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b', 'refs/heads/master', 'master', 'bump travis-core', 'https://github.com/travis-ci/travis-hub/compare/2dfa023b1682...9acbe3bb988c', '2012-07-16 15:50:35.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-16 15:50:52.910000', '2012-07-16 15:50:52.910000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (503691, 3371, '2dfa023b1682c85a957d8beb25aefef253ae5ee9', 'refs/heads/master', 'master', 'bump travis-core', 'https://github.com/travis-ci/travis-hub/compare/2c746da5ecd3...2dfa023b1682', '2012-07-16 14:21:22.000000', 'Sven Fuchs', 'svenfuchs@artweb-design.de', 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-07-16 14:21:33.271000', '2012-07-16 14:21:33.271000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (228021, 7, '65d0186299ef7275de7398431b83f45119c9b8a8', NULL, 'master', 'add .travis.yml', 'https://github.com/svenfuchs/minimal/compare/4d99b8e...65d0186', '2012-02-27 00:09:30.000000', NULL, NULL, 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2012-02-27 00:09:41.535163', '2012-02-27 00:09:41.535163');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (9861, 7, '166d93c0bc0582c340cceb40d0d323b57d55f88f', NULL, 'v0.0.26', 'Bump to 0.0.26', NULL, '2011-05-09 10:53:25.000000', NULL, NULL, 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2011-05-09 10:54:04.866628', '2011-08-25 22:29:08.424320');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (9860, 7, '4d99b8ed9d34523470ba264e7c1841f8c349e7c2', NULL, 'master', 'Merge pull request #2 from johanness/patch-1
-
-Add definition list tags', NULL, '2011-05-09 10:51:06.000000', NULL, NULL, 'Sven Fuchs', 'svenfuchs@artweb-design.de', '2011-05-09 10:51:08.478012', '2011-08-25 22:29:08.408826');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (315710, 8, 'c2df258d488f99ea2e3a6737810fb829d658773d', 'refs/heads/master', 'master', 'regexes in VersionFile can now accept additional characters after the patch version, such as ''0.1.2.pre3''; fixes #24', 'https://github.com/svenfuchs/gem-release/compare/739aecb...cb2b53b', '2012-04-22 18:50:04.000000', 'Dan Gebhardt', 'dan@cerebris.com', 'Dan Gebhardt', 'dan@cerebris.com', '2012-04-22 18:51:00.970359', '2012-04-22 18:51:00.970359');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (315709, 8, 'cb2b53bfb42e6323966b0caffe6b41a3f360656c', 'refs/heads/master', 'master', 'Bump to 0.3.1', 'https://github.com/svenfuchs/gem-release/compare/739aecb...cb2b53b', '2012-04-22 18:50:49.000000', 'Dan Gebhardt', 'dan@cerebris.com', 'Dan Gebhardt', 'dan@cerebris.com', '2012-04-22 18:51:00.620000', '2012-04-22 18:51:00.620000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (273502, 8, '739aecb81c482f72db99eb2483ef4dc6e25ae65b', 'refs/heads/master', 'master', 'minor README cleanup', 'https://github.com/svenfuchs/gem-release/compare/531f808...739aecb', '2012-03-28 12:10:53.000000', 'Dan Gebhardt', 'dan@cerebris.com', 'Dan Gebhardt', 'dan@cerebris.com', '2012-03-28 12:11:00.547587', '2012-03-28 12:11:00.547587');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (273501, 8, '739aecb81c482f72db99eb2483ef4dc6e25ae65b', 'refs/heads/master', 'master', 'minor README cleanup', 'https://github.com/svenfuchs/gem-release/compare/531f808...739aecb', '2012-03-28 12:10:53.000000', 'Dan Gebhardt', 'dan@cerebris.com', 'Dan Gebhardt', 'dan@cerebris.com', '2012-03-28 12:10:59.786398', '2012-03-28 12:10:59.786398');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (273073, 8, '531f808ebabc68d16149ae63876e793f1e579c4d', 'refs/heads/master', 'master', 'Bump to 0.3.0', 'https://github.com/svenfuchs/gem-release/compare/c142694...531f808', '2012-03-28 04:37:33.000000', 'Dan Gebhardt', 'dan@cerebris.com', 'Dan Gebhardt', 'dan@cerebris.com', '2012-03-28 04:40:01.315389', '2012-03-28 04:40:01.315389');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (491438, 9592, 'f01ff0648f35f42ac1844b821930c15974fd9f40', 'refs/heads/master', 'master', 'don''t request raw from github', 'https://github.com/rkh/gh/compare/708cc31f907a...f01ff0648f35', '2012-07-11 14:17:44.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-07-11 14:17:52.202000', '2012-07-11 14:17:52.202000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (491372, 9592, '708cc31f907a04102380b97a74a6b6da056a22fc', 'refs/heads/master', 'master', 'ignore content-type', 'https://github.com/rkh/gh/compare/a4f252e9f4cd...708cc31f907a', '2012-07-11 13:50:53.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-07-11 13:51:06.828000', '2012-07-11 13:51:06.828000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (434698, 9592, 'a4f252e9f4cd717dab330e0f4acb4e4fbec82e5d', 'refs/heads/master', 'master', 'Merge pull request #1 from joshk/patch-1
-
-just a small engrish fix', 'https://github.com/rkh/gh/compare/c831a3605094...a4f252e9f4cd', '2012-06-18 08:10:53.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-06-18 08:10:55.182000', '2012-06-18 08:10:55.182000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (420903, 9592, 'c831a3605094992546e3ab7b7ffb2ebb7979c041', 'refs/heads/master', 'master', 'and that other typo', 'https://github.com/rkh/gh/compare/f6712a1...c831a36', '2012-06-11 19:16:36.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-06-11 19:16:44.520000', '2012-06-11 19:16:44.520000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (420895, 9592, 'f6712a152038ab18d586c602beb34a3a613905c6', 'refs/heads/master', 'master', 'bump version', 'https://github.com/rkh/gh/compare/1752065...f6712a1', '2012-06-11 19:14:26.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-06-11 19:14:43.109000', '2012-06-11 19:14:43.109000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (507098, 1649, '3b1064eef407d2d288a5b96d258178a1e67b3b80', 'refs/heads/master', 'master', 'Merge pull request #8 from neglectedvalue/patch-method
-
-Handle PATCH method.', 'https://github.com/rkh/yard-sinatra/compare/7f884574f68b...3b1064eef407', '2012-07-17 19:23:27.000000', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2012-07-17 19:23:30.339000', '2012-07-17 19:23:30.339000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (194785, 1649, '2fae74f3302c8a6a0563f88bbc37a0e2da7a654e', NULL, 'work', 'faling spec with tag added', 'https://github.com/rkh/yard-sinatra/commit/2fae74f', '2012-01-27 15:04:25.000000', NULL, NULL, 'Aleksander Dąbrowski', 'aleksander.dabrowski@connectmedica.com', '2012-01-27 15:04:44.888365', '2012-01-27 15:04:44.888365');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (86861, 1649, '7f884574f68b192b5936f184f552a7d70d57d97c', NULL, 'master', 'add rake default task', 'https://github.com/rkh/yard-sinatra/compare/22688f6...7f88457', '2011-08-17 20:38:16.000000', NULL, NULL, 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2011-08-17 20:38:23.018154', '2011-08-26 08:46:37.644268');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (86850, 1649, '22688f61ecf7d639dd4606545ff11c577fde3275', NULL, 'master', 'more rubies', 'https://github.com/rkh/yard-sinatra/compare/5352947...22688f6', '2011-08-17 20:36:33.000000', NULL, NULL, 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2011-08-17 20:36:39.140223', '2011-08-26 08:46:37.364037');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (86848, 1649, '53529475f0b98df69bf0ad867f44469dbc98318b', NULL, 'master', 'fix gemfile', 'https://github.com/rkh/yard-sinatra/compare/45678cd...5352947', '2011-08-17 20:34:45.000000', NULL, NULL, 'Konstantin Haase', 'konstantin.mailinglists@googlemail.com', '2011-08-17 20:34:50.511386', '2011-08-26 08:46:37.328217');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (237101, 8975, '5f86148105d50b751a58524ab4c4ac7d982a24bf', NULL, 'master', 'Remove debug.', 'https://github.com/mattmatt/hurt_logger/compare/e76b172...5f86148', '2012-03-04 11:25:36.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-03-04 11:25:47.480425', '2012-03-04 11:25:47.480425');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (237099, 8975, 'e76b1728ffa54c5e2c8d36d599c79608ad4ce91d', NULL, 'master', 'Tell what signal we''ve received.', 'https://github.com/mattmatt/hurt_logger/compare/189551e...e76b172', '2012-03-04 11:18:57.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-03-04 11:23:12.723092', '2012-03-04 11:23:12.723092');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (237091, 8975, '189551ea0bb0f85a9b6e5d8bd85a0c58b5e4890d', NULL, 'master', 'Properly trap signal.', 'https://github.com/mattmatt/hurt_logger/compare/846cffc...189551e', '2012-03-04 11:13:37.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-03-04 11:17:34.811434', '2012-03-04 11:17:34.811434');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (237034, 8975, '846cffc14ee88052bce9ec2c5b0e27e5e65b9247', NULL, 'master', 'Add tail command to display messages from pubsub drain.', 'https://github.com/mattmatt/hurt_logger/compare/9c88fe2...846cffc', '2012-03-04 10:03:57.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-03-04 10:04:02.679717', '2012-03-04 10:04:02.679717');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (236990, 8975, '9c88fe2400691aa658340b79bc5e835648d34e89', NULL, 'master', 'Read drains and filters from ENV.', 'https://github.com/mattmatt/hurt_logger/compare/33a7001...9c88fe2', '2012-03-04 09:03:43.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-03-04 09:03:49.061678', '2012-03-04 09:03:49.061678');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (363794, 9657, 'db88da8936cefb56a606600f32a2da85b122c810', 'refs/pull/11/merge', 'master', 'filtered params were getting through, if the path contained a query string. This clarifies this by explicitly filtering in the event.', 'https://github.com/mattmatt/lograge/pull/11', '2012-05-16 19:20:15.000000', 'James Cox', 'james@imaj.es', 'James Cox', 'james@imaj.es', '2012-05-16 19:20:44.495000', '2012-05-16 19:20:44.495000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (341599, 9657, '1583b356fe4acb5456ebf0d544a16fdb445d52ee', 'refs/heads/master', 'master', 'Return status=0 when the status is unknown.
-
-Update re #5.', 'https://github.com/mattmatt/lograge/compare/32f645b...1583b35', '2012-05-06 11:12:07.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-05-06 11:13:29.858000', '2012-05-06 11:13:29.858000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (340261, 9657, '32f645b92cddfd39afdccefba6ed87eebc7e72e0', 'refs/heads/master', 'master', 'Revert "Test more Rubies on Travis."
-
-This reverts commit fa3cad163b43f39defa481e956b15fce7b7cb992.', 'https://github.com/mattmatt/lograge/compare/fa3cad1...32f645b', '2012-05-05 11:09:17.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-05-05 11:09:26.353000', '2012-05-05 11:09:26.353000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (340259, 9657, 'fa3cad163b43f39defa481e956b15fce7b7cb992', 'refs/heads/master', 'master', 'Test more Rubies on Travis.', 'https://github.com/mattmatt/lograge/compare/b533373...fa3cad1', '2012-05-05 11:08:05.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-05-05 11:08:18.486000', '2012-05-05 11:08:18.486000');
-
-INSERT INTO commits (id, repository_id, commit, ref, branch, message, compare_url, committed_at, committer_name, committer_email, author_name, author_email, created_at, updated_at)
- VALUES (340251, 9657, 'b5333734d2ab7677eac8e5c9ee8e13151ac69057', 'refs/heads/master', 'master', 'Merge pull request #7 from greis/log_subscribers
-
-Find current Rails log subscribers and remove their events.', 'https://github.com/mattmatt/lograge/compare/d87a781...b533373', '2012-05-05 11:03:42.000000', 'Mathias Meyer', 'meyer@paperplanes.de', 'Mathias Meyer', 'meyer@paperplanes.de', '2012-05-05 11:03:43.488000', '2012-05-05 11:03:43.488000');
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827970, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.1', '---
-:language: ruby
-:rvm: 1.9.2
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:05.000000', '2012-07-10 17:03:09.742000', '2012-07-10 17:04:25.594000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827971, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:51.000000', '2012-07-10 17:03:09.783000', '2012-07-10 17:05:29.375000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827972, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.3', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-3', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:54.000000', '2012-07-10 17:03:09.800000', '2012-07-10 17:05:33.544000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827973, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:28.000000', '2012-07-10 17:03:09.820000', '2012-07-10 17:04:59.317000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827974, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:42.000000', '2012-07-10 17:03:09.836000', '2012-07-10 17:05:19.286000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827975, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.6', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:45.000000', '2012-07-10 17:03:09.852000', '2012-07-10 17:05:22.482000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827976, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.7', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-10 17:03:10.000000', '2012-07-10 17:04:29.000000', '2012-07-10 17:03:09.872000', '2012-07-10 17:05:00.788000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827977, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.8', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-07-10 17:03:10.000000', '2012-07-10 17:05:17.000000', '2012-07-10 17:03:09.891000', '2012-07-10 17:05:44.088000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827978, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.9', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-6', '2012-07-10 17:03:10.000000', '2012-07-10 17:05:11.000000', '2012-07-10 17:03:09.920000', '2012-07-10 17:05:40.952000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1827979, 4351, 488920, 1827969, 'Build', 'builds.common', 'Job::Test', 'finished', '145.10', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-3', '2012-07-10 17:03:11.000000', '2012-07-10 17:04:59.000000', '2012-07-10 17:03:09.941000', '2012-07-10 17:05:35.752000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826894, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.1', '---
-:language: ruby
-:rvm: 1.9.2
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-10 15:15:51.000000', '2012-07-10 15:16:58.000000', '2012-07-10 15:15:50.419000', '2012-07-10 15:17:04.476000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826895, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-07-10 15:15:51.000000', '2012-07-10 15:16:39.000000', '2012-07-10 15:15:50.478000', '2012-07-10 15:16:41.183000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826896, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.3', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:10.000000', '2012-07-10 15:15:50.507000', '2012-07-10 15:17:11.337000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826897, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:14.000000', '2012-07-10 15:15:50.527000', '2012-07-10 15:17:14.607000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826898, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:10.000000', '2012-07-10 15:15:50.595000', '2012-07-10 15:17:12.118000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826899, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.6', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:11.000000', '2012-07-10 15:15:50.615000', '2012-07-10 15:17:12.575000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826900, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.7', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:19.000000', '2012-07-10 15:15:50.704000', '2012-07-10 15:17:19.860000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826901, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.8', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:33.000000', '2012-07-10 15:15:50.728000', '2012-07-10 15:17:33.614000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826902, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.9', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:27.000000', '2012-07-10 15:15:50.744000', '2012-07-10 15:17:27.895000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1826903, 4351, 488583, 1826893, 'Build', 'builds.common', 'Job::Test', 'finished', '144.10', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-10 15:15:51.000000', '2012-07-10 15:17:33.000000', '2012-07-10 15:15:50.759000', '2012-07-10 15:17:34.976000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816251, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.1', '---
-:language: ruby
-:rvm: 1.9.2
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:24.000000', '2012-07-09 12:05:22.478000', '2012-07-09 12:06:24.634000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816252, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:41.000000', '2012-07-09 12:05:22.488000', '2012-07-09 12:06:41.830000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816253, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.3', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:38.000000', '2012-07-09 12:05:22.497000', '2012-07-09 12:06:38.232000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816254, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:44.000000', '2012-07-09 12:05:22.510000', '2012-07-09 12:06:44.243000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816255, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:37.000000', '2012-07-09 12:05:22.523000', '2012-07-09 12:06:37.755000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816256, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.6', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-09 12:05:22.000000', '2012-07-09 12:06:35.000000', '2012-07-09 12:05:22.536000', '2012-07-09 12:06:35.602000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816257, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.7', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-07-09 12:05:23.000000', '2012-07-09 12:06:14.000000', '2012-07-09 12:05:22.546000', '2012-07-09 12:06:14.583000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816258, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.8', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-09 12:05:23.000000', '2012-07-09 12:06:43.000000', '2012-07-09 12:05:22.556000', '2012-07-09 12:06:44.050000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816259, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.9', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-09 12:05:23.000000', '2012-07-09 12:06:37.000000', '2012-07-09 12:05:22.569000', '2012-07-09 12:06:37.398000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816260, 4351, 485418, 1816250, 'Build', 'builds.common', 'Job::Test', 'finished', '143.10', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-07-09 12:05:23.000000', '2012-07-09 12:06:59.000000', '2012-07-09 12:05:22.580000', '2012-07-09 12:07:11.361000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816213, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.1', '---
-:language: ruby
-:rvm: 1.9.2
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-07-09 11:59:25.000000', '2012-07-09 12:00:17.000000', '2012-07-09 11:59:25.269000', '2012-07-09 12:00:18.104000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816214, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-09 11:59:25.000000', '2012-07-09 12:01:14.000000', '2012-07-09 11:59:25.291000', '2012-07-09 12:01:14.320000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816215, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.3', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-09 11:59:25.000000', '2012-07-09 12:00:32.000000', '2012-07-09 11:59:25.301000', '2012-07-09 12:00:32.880000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816216, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-07-09 11:59:25.000000', '2012-07-09 12:01:13.000000', '2012-07-09 11:59:25.312000', '2012-07-09 12:01:13.835000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816217, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-09 11:59:25.000000', '2012-07-09 12:01:24.000000', '2012-07-09 11:59:25.323000', '2012-07-09 12:01:24.800000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816218, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.6', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-09 11:59:25.000000', '2012-07-09 12:00:37.000000', '2012-07-09 11:59:25.333000', '2012-07-09 12:00:38.132000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816219, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.7', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-07-09 11:59:25.000000', '2012-07-09 12:00:32.000000', '2012-07-09 11:59:25.352000', '2012-07-09 12:00:33.122000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816220, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.8', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-09 11:59:25.000000', '2012-07-09 12:01:32.000000', '2012-07-09 11:59:25.369000', '2012-07-09 12:01:35.379000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816221, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.9', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-07-09 11:59:25.000000', '2012-07-09 12:01:19.000000', '2012-07-09 11:59:25.383000', '2012-07-09 12:01:19.520000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1816222, 4351, 485407, 1816212, 'Build', 'builds.common', 'Job::Test', 'finished', '142.10', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-09 11:59:25.000000', '2012-07-09 12:00:48.000000', '2012-07-09 11:59:25.394000', '2012-07-09 12:00:48.828000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804637, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.1', '---
-:language: ruby
-:rvm: 1.9.2
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-07 18:45:57.000000', '2012-07-07 18:46:52.000000', '2012-07-07 18:45:30.706000', '2012-07-07 18:46:52.779000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804638, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-07 18:45:58.000000', '2012-07-07 18:47:55.000000', '2012-07-07 18:45:30.719000', '2012-07-07 18:47:56.911000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804639, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.3', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-07 18:46:01.000000', '2012-07-07 18:47:39.000000', '2012-07-07 18:45:30.746000', '2012-07-07 18:47:39.567000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804640, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-3', '2012-07-07 18:46:02.000000', '2012-07-07 18:47:48.000000', '2012-07-07 18:45:30.762000', '2012-07-07 18:47:49.078000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804641, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-07 18:46:13.000000', '2012-07-07 18:48:15.000000', '2012-07-07 18:45:30.786000', '2012-07-07 18:48:16.010000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804642, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.6', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-07 18:46:17.000000', '2012-07-07 18:48:07.000000', '2012-07-07 18:45:30.803000', '2012-07-07 18:48:08.242000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804643, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.7', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-07-07 18:46:37.000000', '2012-07-07 18:47:39.000000', '2012-07-07 18:45:30.816000', '2012-07-07 18:47:40.212000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804644, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.8', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-07 18:46:52.000000', '2012-07-07 18:48:16.000000', '2012-07-07 18:45:30.829000', '2012-07-07 18:48:16.797000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804645, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.9', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-07 18:47:17.000000', '2012-07-07 18:48:14.000000', '2012-07-07 18:45:30.848000', '2012-07-07 18:48:14.921000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1804646, 4351, 482125, 1804636, 'Build', 'builds.common', 'Job::Test', 'finished', '141.10', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: oraclejdk7
-:matrix:
- :exclude:
- - :rvm: 1.9.2
- :jdk: openjdk7
- - :rvm: 1.9.2
- :jdk: oraclejdk7
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-07 18:47:39.000000', '2012-07-07 18:49:14.000000', '2012-07-07 18:45:30.864000', '2012-07-07 18:49:16.611000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1905993, 3323, 512493, 1905992, 'Build', 'builds.common', 'Job::Test', 'finished', '838.1', '---
-:language: ruby
-:rvm: 1.9.3
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-19 16:51:14.000000', '2012-07-19 16:53:08.000000', '2012-07-19 16:51:13.934000', '2012-07-19 16:53:09.237000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1905994, 3323, 512493, 1905992, 'Build', 'builds.common', 'Job::Test', 'finished', '838.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-19 16:51:14.000000', '2012-07-19 16:56:19.000000', '2012-07-19 16:51:14.010000', '2012-07-19 16:56:34.757000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1905995, 3323, 512493, 1905992, 'Build', 'builds.common', 'Job::Test', 'finished', '838.3', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-19 16:51:14.000000', '2012-07-19 16:56:51.000000', '2012-07-19 16:51:14.024000', '2012-07-19 16:56:51.789000', '', 0, 't', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1905996, 3323, 512493, 1905992, 'Build', 'builds.common', 'Job::Test', 'finished', '838.4', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.9
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-19 16:51:14.000000', '2012-07-19 17:17:40.000000', '2012-07-19 16:51:14.040000', '2012-07-19 17:18:04.144000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1905997, 3323, 512493, 1905992, 'Build', 'builds.common', 'Job::Test', 'finished', '838.5', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.8
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-19 16:51:14.000000', '2012-07-19 17:17:50.000000', '2012-07-19 16:51:14.054000', '2012-07-19 17:18:09.003000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904442, 3323, 511984, 1904441, 'Build', 'builds.common', 'Job::Test', 'finished', '837.1', '---
-:language: ruby
-:rvm: 1.9.3
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-1', '2012-07-19 13:58:44.000000', '2012-07-19 14:24:51.000000', '2012-07-19 13:58:44.129000', '2012-07-19 14:24:53.912000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904443, 3323, 511984, 1904441, 'Build', 'builds.common', 'Job::Test', 'finished', '837.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-3', '2012-07-19 13:58:44.000000', '2012-07-19 14:25:43.000000', '2012-07-19 13:58:44.159000', '2012-07-19 14:25:51.162000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904444, 3323, 511984, 1904441, 'Build', 'builds.common', 'Job::Test', 'finished', '837.3', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-19 13:58:44.000000', '2012-07-19 14:25:46.000000', '2012-07-19 13:58:44.174000', '2012-07-19 14:25:55.037000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904445, 3323, 511984, 1904441, 'Build', 'builds.common', 'Job::Test', 'finished', '837.4', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.9
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-19 13:58:44.000000', '2012-07-19 14:25:10.000000', '2012-07-19 13:58:44.189000', '2012-07-19 14:25:14.060000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904446, 3323, 511984, 1904441, 'Build', 'builds.common', 'Job::Test', 'finished', '837.5', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.8
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-07-19 13:58:44.000000', '2012-07-19 14:25:23.000000', '2012-07-19 13:58:44.204000', '2012-07-19 14:25:30.348000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904343, 3323, 511952, 1904342, 'Build', 'builds.common', 'Job::Test', 'finished', '836.1', '---
-:language: ruby
-:rvm: 1.9.3
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-07-19 13:46:53.000000', '2012-07-19 13:47:59.000000', '2012-07-19 13:46:52.927000', '2012-07-19 13:47:59.453000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904344, 3323, 511952, 1904342, 'Build', 'builds.common', 'Job::Test', 'finished', '836.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-19 13:46:53.000000', '2012-07-19 13:48:50.000000', '2012-07-19 13:46:52.995000', '2012-07-19 13:48:50.363000', '', 0, 'f', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904345, 3323, 511952, 1904342, 'Build', 'builds.common', 'Job::Test', 'finished', '836.3', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-19 13:46:53.000000', '2012-07-19 13:47:19.000000', '2012-07-19 13:46:53.021000', '2012-07-19 13:47:19.673000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904346, 3323, 511952, 1904342, 'Build', 'builds.common', 'Job::Test', 'finished', '836.4', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.9
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-19 13:46:53.000000', '2012-07-19 13:48:52.000000', '2012-07-19 13:46:53.052000', '2012-07-19 13:48:53.464000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1904347, 3323, 511952, 1904342, 'Build', 'builds.common', 'Job::Test', 'finished', '836.5', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.8
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-19 13:46:53.000000', '2012-07-19 13:48:40.000000', '2012-07-19 13:46:53.095000', '2012-07-19 13:48:41.091000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1894741, 3323, 509077, 1894740, 'Build', 'builds.common', 'Job::Test', 'finished', '835.1', '---
-:language: ruby
-:rvm: 1.9.3
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-18 12:50:12.000000', '2012-07-18 12:52:07.000000', '2012-07-18 12:50:12.088000', '2012-07-18 12:52:07.622000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1894742, 3323, 509077, 1894740, 'Build', 'builds.common', 'Job::Test', 'finished', '835.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-18 12:50:12.000000', '2012-07-18 12:55:16.000000', '2012-07-18 12:50:12.119000', '2012-07-18 12:55:16.721000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1894743, 3323, 509077, 1894740, 'Build', 'builds.common', 'Job::Test', 'finished', '835.3', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-07-18 12:50:12.000000', '2012-07-18 12:55:29.000000', '2012-07-18 12:50:12.132000', '2012-07-18 12:55:29.851000', '', 0, 't', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1894744, 3323, 509077, 1894740, 'Build', 'builds.common', 'Job::Test', 'finished', '835.4', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.9
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-18 12:50:12.000000', '2012-07-18 13:16:40.000000', '2012-07-18 12:50:12.144000', '2012-07-18 13:16:41.953000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1894745, 3323, 509077, 1894740, 'Build', 'builds.common', 'Job::Test', 'finished', '835.5', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.8
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-18 12:50:12.000000', '2012-07-18 13:16:38.000000', '2012-07-18 12:50:12.156000', '2012-07-18 13:16:39.321000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886297, 3323, 506427, 1886296, 'Build', 'builds.common', 'Job::Test', 'finished', '834.1', '---
-:language: ruby
-:rvm: 1.9.3
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-07-17 15:19:32.000000', '2012-07-17 15:21:27.000000', '2012-07-17 15:19:31.545000', '2012-07-17 15:21:27.609000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886298, 3323, 506427, 1886296, 'Build', 'builds.common', 'Job::Test', 'finished', '834.2', '---
-:language: ruby
-:rvm: jruby-18mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-07-17 15:19:32.000000', '2012-07-17 15:24:07.000000', '2012-07-17 15:19:31.576000', '2012-07-17 15:24:09.712000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886299, 3323, 506427, 1886296, 'Build', 'builds.common', 'Job::Test', 'finished', '834.3', '---
-:language: ruby
-:rvm: jruby-19mode
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-17 15:19:32.000000', '2012-07-17 15:24:13.000000', '2012-07-17 15:19:31.594000', '2012-07-17 15:24:13.641000', '', 0, 't', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886300, 3323, 506427, 1886296, 'Build', 'builds.common', 'Job::Test', 'finished', '834.4', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.9
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-17 15:19:32.000000', '2012-07-17 15:46:16.000000', '2012-07-17 15:19:31.613000', '2012-07-17 15:46:34.331000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886301, 3323, 506427, 1886296, 'Build', 'builds.common', 'Job::Test', 'finished', '834.5', '---
-:language: ruby
-:rvm: jruby-head
-:jdk: openjdk6
-:matrix:
- :allow_failures:
- - :rvm: jruby-19mode
- - :rvm: jruby-head
- :include:
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.9
- - :rvm: jruby-head
- :env: JRUBY_OPTS=--1.8
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-:env: JRUBY_OPTS=--1.8
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-17 15:19:32.000000', '2012-07-17 15:46:00.000000', '2012-07-17 15:19:31.644000', '2012-07-17 15:46:01.074000', '', 0, 't', 87, 'Organization', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1906055, 59, 512511, 1906054, 'Build', 'builds.common', 'Job::Test', 'finished', '1962.1', '---
-:language: ruby
-:rvm: 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-07-19 16:56:47.000000', '2012-07-19 17:00:39.000000', '2012-07-19 16:56:47.147000', '2012-07-19 17:00:55.982000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1903421, 59, 511705, 1903420, 'Build', 'builds.common', 'Job::Test', 'finished', '1961.1', '---
-:language: ruby
-:rvm: 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-07-19 11:35:44.000000', '2012-07-19 11:38:53.000000', '2012-07-19 11:35:44.194000', '2012-07-19 11:39:09.071000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1903117, 59, 511621, 1903116, 'Build', 'builds.common', 'Job::Test', 'finished', '1960.1', '---
-:language: ruby
-:rvm: 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-07-19 10:33:40.000000', '2012-07-19 10:36:57.000000', '2012-07-19 10:33:40.405000', '2012-07-19 10:37:14.762000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1899692, 59, 510600, 1899691, 'Build', 'builds.common', 'Job::Test', 'finished', '1959.1', '---
-:language: ruby
-:rvm: 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-18 22:39:29.000000', '2012-07-18 22:42:39.000000', '2012-07-18 22:39:29.200000', '2012-07-18 22:42:40.761000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1886869, 59, 506626, 1886868, 'Build', 'builds.common', 'Job::Test', 'finished', '1958.1', '---
-:language: ruby
-:rvm: 1.9.3
-:bundler_args: --without development
-:before_install:
-- gem install bundler --pre
-:before_script:
-- cp config/database.example.yml config/database.yml
-:script: RAILS_ENV=test bundle exec rake test:ci --trace
-:notifications:
- :irc: irc.freenode.org#travis
- :campfire:
- :secure: ! ''JJezWGD9KJY/LC2aznI3Zyohy31VTIhcTKX7RWR4C/C8YKbW9kZv3xV6Vn11
-
- SHxJTeZo6st2Bpv6tjlWZ+HCR09kyCNavIChedla3+oHOiuL0D4gSo+gkTNW
-
- UKYZz9mcQUd9RoQpTeyxvdvX+l7z62/7JwFA7txHOqxbTS8jrjc=''
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-07-17 16:23:14.000000', '2012-07-17 16:26:50.000000', '2012-07-17 16:23:14.597000', '2012-07-17 16:27:08.700000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884597, 3371, 505919, 1884596, 'Build', 'builds.common', 'Job::Test', 'finished', '449.1', '---
-:rvm: jruby
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-07-17 11:55:20.000000', '2012-07-17 11:57:09.000000', '2012-07-17 11:55:20.237000', '2012-07-17 11:57:24.872000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884598, 3371, 505919, 1884596, 'Build', 'builds.common', 'Job::Test', 'finished', '449.2', '---
-:rvm: jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-17 11:55:20.000000', '2012-07-17 11:57:58.000000', '2012-07-17 11:55:20.261000', '2012-07-17 11:58:14.070000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884583, 3371, 505914, 1884582, 'Build', 'builds.common', 'Job::Test', 'finished', '448.1', '---
-:rvm: jruby
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-17 11:52:52.000000', '2012-07-17 11:54:46.000000', '2012-07-17 11:52:52.543000', '2012-07-17 11:54:47.233000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884584, 3371, 505914, 1884582, 'Build', 'builds.common', 'Job::Test', 'finished', '448.2', '---
-:rvm: jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-17 11:52:52.000000', '2012-07-17 11:55:43.000000', '2012-07-17 11:52:52.557000', '2012-07-17 11:55:58.898000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884380, 3371, 505861, 1884379, 'Build', 'builds.common', 'Job::Test', 'finished', '447.1', '---
-:rvm: jruby
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-17 11:14:46.000000', '2012-07-17 11:16:42.000000', '2012-07-17 11:14:45.736000', '2012-07-17 11:16:43.013000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1884381, 3371, 505861, 1884379, 'Build', 'builds.common', 'Job::Test', 'finished', '447.2', '---
-:rvm: jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-07-17 11:14:46.000000', '2012-07-17 11:17:18.000000', '2012-07-17 11:14:45.769000', '2012-07-17 11:17:32.381000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1878241, 3371, 503892, 1878240, 'Build', 'builds.common', 'Job::Test', 'finished', '446.1', '---
-:rvm: jruby
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-07-16 15:50:53.000000', '2012-07-16 15:53:00.000000', '2012-07-16 15:50:53.236000', '2012-07-16 15:53:01.168000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1878242, 3371, 503892, 1878240, 'Build', 'builds.common', 'Job::Test', 'finished', '446.2', '---
-:rvm: jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-16 15:50:53.000000', '2012-07-16 15:53:48.000000', '2012-07-16 15:50:53.277000', '2012-07-16 15:54:04.770000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1877597, 3371, 503691, 1877596, 'Build', 'builds.common', 'Job::Test', 'finished', '445.1', '---
-:rvm: jruby
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-1', '2012-07-16 14:21:34.000000', '2012-07-16 14:23:51.000000', '2012-07-16 14:21:33.937000', '2012-07-16 14:23:51.523000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1877598, 3371, 503691, 1877596, 'Build', 'builds.common', 'Job::Test', 'finished', '445.2', '---
-:rvm: jruby-head
-:jdk: openjdk6
-:before_script:
-- RAILS_ENV=test rake db:create db:schema:load --trace
-:notifications:
- :irc: irc.freenode.org#travis
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-07-16 14:21:34.000000', '2012-07-16 14:24:26.000000', '2012-07-16 14:21:33.977000', '2012-07-16 14:24:44.387000', '', 0, 'f', 87, 'Organization', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (747814, 7, 228021, 747813, 'Build', 'builds.common', 'Job::Test', 'finished', '78.1', '---
-:gemfile: Gemfiles/rails-3.0
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-02-27 00:09:43.000000', '2012-02-27 00:10:40.000000', '2012-02-27 00:09:42.779000', '2012-02-27 00:10:40.475000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (747815, 7, 228021, 747813, 'Build', 'builds.common', 'Job::Test', 'finished', '78.2', '---
-:gemfile: Gemfiles/rails-3.1
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-02-27 00:09:43.000000', '2012-02-27 00:10:41.000000', '2012-02-27 00:09:42.812000', '2012-02-27 00:10:41.224000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (747816, 7, 228021, 747813, 'Build', 'builds.common', 'Job::Test', 'finished', '78.3', '---
-:gemfile: Gemfiles/rails-3.0
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-02-27 00:09:43.000000', '2012-02-27 00:10:20.000000', '2012-02-27 00:09:42.908000', '2012-02-27 00:10:21.009000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (747817, 7, 228021, 747813, 'Build', 'builds.common', 'Job::Test', 'finished', '78.4', '---
-:gemfile: Gemfiles/rails-3.1
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-02-27 00:09:43.000000', '2012-02-27 00:10:21.000000', '2012-02-27 00:09:42.924000', '2012-02-27 00:10:21.256000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149383, 8, 315710, 1149382, 'Build', 'builds.common', 'Job::Test', 'finished', '134.1', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-1', '2012-04-22 18:51:03.000000', '2012-04-22 18:51:25.000000', '2012-04-22 18:51:03.350000', '2012-04-22 18:51:26.273000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149384, 8, 315710, 1149382, 'Build', 'builds.common', 'Job::Test', 'finished', '134.2', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.2
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-04-22 18:51:03.000000', '2012-04-22 18:51:34.000000', '2012-04-22 18:51:03.370000', '2012-04-22 18:51:34.520000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149385, 8, 315710, 1149382, 'Build', 'builds.common', 'Job::Test', 'finished', '134.3', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-04-22 18:51:03.000000', '2012-04-22 18:51:26.000000', '2012-04-22 18:51:03.420000', '2012-04-22 18:51:26.894000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149386, 8, 315710, 1149382, 'Build', 'builds.common', 'Job::Test', 'finished', '134.4', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: ree
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-04-22 18:51:03.000000', '2012-04-22 18:51:26.000000', '2012-04-22 18:51:03.438000', '2012-04-22 18:51:26.798000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149387, 8, 315710, 1149382, 'Build', 'builds.common', 'Job::Test', 'finished', '134.5', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: jruby
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-04-22 18:51:03.000000', '2012-04-22 18:51:59.000000', '2012-04-22 18:51:03.454000', '2012-04-22 18:51:59.971000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149377, 8, 315709, 1149376, 'Build', 'builds.common', 'Job::Test', 'finished', '133.1', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-04-22 18:51:02.000000', '2012-04-22 18:51:23.000000', '2012-04-22 18:51:01.932000', '2012-04-22 18:51:23.996000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149378, 8, 315709, 1149376, 'Build', 'builds.common', 'Job::Test', 'finished', '133.2', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.2
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-04-22 18:51:02.000000', '2012-04-22 18:51:30.000000', '2012-04-22 18:51:01.952000', '2012-04-22 18:51:30.346000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149379, 8, 315709, 1149376, 'Build', 'builds.common', 'Job::Test', 'finished', '133.3', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-04-22 18:51:02.000000', '2012-04-22 18:51:26.000000', '2012-04-22 18:51:01.972000', '2012-04-22 18:51:26.386000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149380, 8, 315709, 1149376, 'Build', 'builds.common', 'Job::Test', 'finished', '133.4', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: ree
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-04-22 18:51:02.000000', '2012-04-22 18:51:22.000000', '2012-04-22 18:51:01.997000', '2012-04-22 18:51:22.914000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1149381, 8, 315709, 1149376, 'Build', 'builds.common', 'Job::Test', 'finished', '133.5', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: jruby
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-04-22 18:51:02.000000', '2012-04-22 18:51:55.000000', '2012-04-22 18:51:02.017000', '2012-04-22 18:51:55.575000', '', 0, 'f', 8, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (965816, 8, 273502, 965815, 'Build', 'builds.common', 'Job::Test', 'finished', '132.1', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-03-28 15:32:49.000000', '2012-03-28 15:35:47.000000', '2012-03-28 15:32:12.365000', '2012-03-28 15:35:47.298000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (965817, 8, 273502, 965815, 'Build', 'builds.common', 'Job::Test', 'finished', '132.2', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.2
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-6', '2012-03-28 15:32:57.000000', '2012-03-28 15:36:32.000000', '2012-03-28 15:32:12.392000', '2012-03-28 15:36:32.540000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (965818, 8, 273502, 965815, 'Build', 'builds.common', 'Job::Test', 'finished', '132.3', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-03-28 15:33:00.000000', '2012-03-28 15:33:33.000000', '2012-03-28 15:32:12.410000', '2012-03-28 15:33:33.855000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (965819, 8, 273502, 965815, 'Build', 'builds.common', 'Job::Test', 'finished', '132.4', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: ree
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-03-28 15:33:08.000000', '2012-03-28 15:33:35.000000', '2012-03-28 15:32:12.436000', '2012-03-28 15:33:36.524000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (965820, 8, 273502, 965815, 'Build', 'builds.common', 'Job::Test', 'finished', '132.5', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: jruby
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-03-28 15:33:11.000000', '2012-03-28 15:34:32.000000', '2012-03-28 15:32:12.451000', '2012-03-28 15:34:32.972000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (964705, 8, 273501, 964704, 'Build', 'builds.common', 'Job::Test', 'finished', '131.1', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-03-28 12:11:01.000000', '2012-03-28 12:11:25.000000', '2012-03-28 12:11:01.436000', '2012-03-28 12:11:26.067000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (964706, 8, 273501, 964704, 'Build', 'builds.common', 'Job::Test', 'finished', '131.2', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.2
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-03-28 12:11:01.000000', '2012-03-28 12:11:31.000000', '2012-03-28 12:11:01.456000', '2012-03-28 12:11:32.145000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (964707, 8, 273501, 964704, 'Build', 'builds.common', 'Job::Test', 'finished', '131.3', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-03-28 12:11:01.000000', '2012-03-28 12:11:30.000000', '2012-03-28 12:11:01.476000', '2012-03-28 12:11:30.980000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (964708, 8, 273501, 964704, 'Build', 'builds.common', 'Job::Test', 'finished', '131.4', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: ree
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-03-28 12:11:01.000000', '2012-03-28 12:11:24.000000', '2012-03-28 12:11:01.490000', '2012-03-28 12:11:24.346000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (964709, 8, 273501, 964704, 'Build', 'builds.common', 'Job::Test', 'finished', '131.5', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: jruby
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-03-28 12:11:01.000000', '2012-03-28 12:12:00.000000', '2012-03-28 12:11:01.506000', '2012-03-28 12:12:01.528000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (963075, 8, 273073, 963073, 'Build', 'builds.common', 'Job::Test', 'finished', '130.1', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.8.7
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-03-28 07:58:25.000000', '2012-03-28 07:59:59.000000', '2012-03-28 07:58:24.695000', '2012-03-28 07:59:59.756000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (963077, 8, 273073, 963073, 'Build', 'builds.common', 'Job::Test', 'finished', '130.2', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.2
-:.configured: true
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-03-28 07:58:25.000000', '2012-03-28 07:58:42.000000', '2012-03-28 07:58:24.710000', '2012-03-28 07:59:02.421000', '', 0, 'f', NULL, NULL, NULL);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (963079, 8, 273073, 963073, 'Build', 'builds.common', 'Job::Test', 'finished', '130.3', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: 1.9.3
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-03-28 07:58:25.000000', '2012-03-28 07:58:57.000000', '2012-03-28 07:58:24.762000', '2012-03-28 07:58:57.989000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (963081, 8, 273073, 963073, 'Build', 'builds.common', 'Job::Test', 'finished', '130.4', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: ree
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-3', '2012-03-28 07:58:25.000000', '2012-03-28 08:00:09.000000', '2012-03-28 07:58:24.782000', '2012-03-28 08:00:10.048000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (963084, 8, 273073, 963073, 'Build', 'builds.common', 'Job::Test', 'finished', '130.5', '---
-:branches:
- :only:
- - master
-:script: ruby -Ilib:test test/all.rb
-:rvm: jruby
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-03-28 07:58:25.000000', '2012-03-28 07:59:50.000000', '2012-03-28 07:58:24.806000', '2012-03-28 07:59:50.569000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836257, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.1', '---
-:language: ruby
-:rvm: 1.8.7
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-07-11 14:17:54.000000', '2012-07-11 14:18:39.000000', '2012-07-11 14:17:53.814000', '2012-07-11 14:18:45.606000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836258, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.2', '---
-:language: ruby
-:rvm: 1.9.2
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-3', '2012-07-11 14:17:54.000000', '2012-07-11 14:18:23.000000', '2012-07-11 14:17:53.845000', '2012-07-11 14:18:24.736000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836259, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.3', '---
-:language: ruby
-:rvm: 1.9.3
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-07-11 14:17:54.000000', '2012-07-11 14:18:17.000000', '2012-07-11 14:17:53.867000', '2012-07-11 14:18:18.112000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836260, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-11 14:17:54.000000', '2012-07-11 14:19:12.000000', '2012-07-11 14:17:53.885000', '2012-07-11 14:19:12.812000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836261, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-07-11 14:17:54.000000', '2012-07-11 14:19:03.000000', '2012-07-11 14:17:53.918000', '2012-07-11 14:19:03.544000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836262, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.6', '---
-:language: ruby
-:rvm: rbx-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-11 14:17:54.000000', '2012-07-11 14:19:38.000000', '2012-07-11 14:17:53.940000', '2012-07-11 14:19:39.641000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836263, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.7', '---
-:language: ruby
-:rvm: rbx-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-07-11 14:17:54.000000', '2012-07-11 14:19:01.000000', '2012-07-11 14:17:54.022000', '2012-07-11 14:19:01.636000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836264, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.8', '---
-:language: ruby
-:rvm: jruby-head
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-07-11 14:17:54.000000', '2012-07-11 14:19:31.000000', '2012-07-11 14:17:54.035000', '2012-07-11 14:19:32.177000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1836265, 9592, 491438, 1836256, 'Build', 'builds.common', 'Job::Test', 'finished', '117.9', '---
-:language: ruby
-:rvm: ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-11 14:17:54.000000', '2012-07-11 14:18:41.000000', '2012-07-11 14:17:54.047000', '2012-07-11 14:18:47.176000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835990, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.1', '---
-:language: ruby
-:rvm: 1.8.7
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-07-11 13:51:10.000000', '2012-07-11 13:51:49.000000', '2012-07-11 13:51:09.882000', '2012-07-11 13:51:50.289000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835991, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.2', '---
-:language: ruby
-:rvm: 1.9.2
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-07-11 13:51:10.000000', '2012-07-11 13:51:41.000000', '2012-07-11 13:51:09.912000', '2012-07-11 13:51:45.468000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835992, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.3', '---
-:language: ruby
-:rvm: 1.9.3
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-07-11 13:51:10.000000', '2012-07-11 13:51:34.000000', '2012-07-11 13:51:09.963000', '2012-07-11 13:51:37.515000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835993, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-11 13:51:10.000000', '2012-07-11 13:52:03.000000', '2012-07-11 13:51:09.985000', '2012-07-11 13:52:04.240000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835994, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-07-11 13:51:10.000000', '2012-07-11 13:52:05.000000', '2012-07-11 13:51:10.004000', '2012-07-11 13:52:05.494000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835995, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.6', '---
-:language: ruby
-:rvm: rbx-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-07-11 13:51:10.000000', '2012-07-11 13:52:28.000000', '2012-07-11 13:51:10.023000', '2012-07-11 13:52:31.120000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835996, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.7', '---
-:language: ruby
-:rvm: rbx-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-07-11 13:51:10.000000', '2012-07-11 13:52:11.000000', '2012-07-11 13:51:10.037000', '2012-07-11 13:52:11.334000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835997, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.8', '---
-:language: ruby
-:rvm: jruby-head
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-07-11 13:51:10.000000', '2012-07-11 13:52:16.000000', '2012-07-11 13:51:10.055000', '2012-07-11 13:52:16.258000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1835998, 9592, 491372, 1835989, 'Build', 'builds.common', 'Job::Test', 'finished', '116.9', '---
-:language: ruby
-:rvm: ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-11 13:51:10.000000', '2012-07-11 13:51:50.000000', '2012-07-11 13:51:10.107000', '2012-07-11 13:51:50.897000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645325, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.1', '---
-:language: ruby
-:rvm: 1.8.7
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-6', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:32.000000', '2012-06-18 08:10:55.753000', '2012-06-18 08:11:32.895000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645326, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.2', '---
-:language: ruby
-:rvm: 1.9.2
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:21.000000', '2012-06-18 08:10:55.870000', '2012-06-18 08:11:21.918000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645327, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.3', '---
-:language: ruby
-:rvm: 1.9.3
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-3', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:23.000000', '2012-06-18 08:10:55.880000', '2012-06-18 08:11:23.231000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645328, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:39.000000', '2012-06-18 08:10:55.888000', '2012-06-18 08:11:39.394000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645329, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:53.000000', '2012-06-18 08:10:55.982000', '2012-06-18 08:11:54.048000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645330, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.6', '---
-:language: ruby
-:rvm: rbx-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-06-18 08:10:56.000000', '2012-06-18 08:12:04.000000', '2012-06-18 08:10:55.994000', '2012-06-18 08:12:04.239000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645331, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.7', '---
-:language: ruby
-:rvm: rbx-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-06-18 08:10:56.000000', '2012-06-18 08:12:02.000000', '2012-06-18 08:10:56.004000', '2012-06-18 08:12:03.186000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645332, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.8', '---
-:language: ruby
-:rvm: jruby-head
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-06-18 08:10:56.000000', '2012-06-18 08:12:04.000000', '2012-06-18 08:10:56.072000', '2012-06-18 08:12:04.701000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1645333, 9592, 434698, 1645324, 'Build', 'builds.common', 'Job::Test', 'finished', '115.9', '---
-:language: ruby
-:rvm: ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-06-18 08:10:56.000000', '2012-06-18 08:11:31.000000', '2012-06-18 08:10:56.084000', '2012-06-18 08:11:32.727000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594936, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.1', '---
-:language: ruby
-:rvm: 1.8.7
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-2', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:18.000000', '2012-06-11 19:16:44.955000', '2012-06-11 19:17:27.016000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594937, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.2', '---
-:language: ruby
-:rvm: 1.9.2
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:11.000000', '2012-06-11 19:16:44.974000', '2012-06-11 19:17:22.226000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594938, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.3', '---
-:language: ruby
-:rvm: 1.9.3
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:06.000000', '2012-06-11 19:16:44.993000', '2012-06-11 19:17:12.918000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594939, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:59.000000', '2012-06-11 19:16:45.032000', '2012-06-11 19:17:59.672000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594940, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-06-11 19:16:45.000000', '2012-06-11 19:18:20.000000', '2012-06-11 19:16:45.067000', '2012-06-11 19:18:20.705000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594941, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.6', '---
-:language: ruby
-:rvm: rbx-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-06-11 19:16:45.000000', '2012-06-11 19:18:03.000000', '2012-06-11 19:16:45.101000', '2012-06-11 19:18:03.279000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594942, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.7', '---
-:language: ruby
-:rvm: rbx-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:48.000000', '2012-06-11 19:16:45.127000', '2012-06-11 19:17:49.000000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594943, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.8', '---
-:language: ruby
-:rvm: jruby-head
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-06-11 19:16:45.000000', '2012-06-11 19:18:30.000000', '2012-06-11 19:16:45.169000', '2012-06-11 19:18:31.341000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594944, 9592, 420903, 1594935, 'Build', 'builds.common', 'Job::Test', 'finished', '114.9', '---
-:language: ruby
-:rvm: ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-06-11 19:16:45.000000', '2012-06-11 19:17:20.000000', '2012-06-11 19:16:45.202000', '2012-06-11 19:17:27.779000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594908, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.1', '---
-:language: ruby
-:rvm: 1.8.7
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-2', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:21.000000', '2012-06-11 19:14:43.530000', '2012-06-11 19:15:39.353000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594909, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.2', '---
-:language: ruby
-:rvm: 1.9.2
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-6', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:10.000000', '2012-06-11 19:14:43.593000', '2012-06-11 19:15:26.555000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594910, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.3', '---
-:language: ruby
-:rvm: 1.9.3
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-3', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:11.000000', '2012-06-11 19:14:43.676000', '2012-06-11 19:15:29.150000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594911, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.4', '---
-:language: ruby
-:rvm: jruby-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-3', '2012-06-11 19:14:44.000000', '2012-06-11 19:16:05.000000', '2012-06-11 19:14:43.749000', '2012-06-11 19:16:05.516000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594912, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.5', '---
-:language: ruby
-:rvm: jruby-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-2', '2012-06-11 19:14:44.000000', '2012-06-11 19:16:13.000000', '2012-06-11 19:14:43.824000', '2012-06-11 19:16:13.614000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594913, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.6', '---
-:language: ruby
-:rvm: rbx-18mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-4', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:51.000000', '2012-06-11 19:14:43.842000', '2012-06-11 19:15:52.845000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594914, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.7', '---
-:language: ruby
-:rvm: rbx-19mode
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:50.000000', '2012-06-11 19:14:43.861000', '2012-06-11 19:15:52.503000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594915, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.8', '---
-:language: ruby
-:rvm: jruby-head
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-06-11 19:14:44.000000', '2012-06-11 19:16:28.000000', '2012-06-11 19:14:43.879000', '2012-06-11 19:16:28.984000', '', 0, 't', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1594916, 9592, 420895, 1594907, 'Build', 'builds.common', 'Job::Test', 'finished', '113.9', '---
-:language: ruby
-:rvm: ree
-:matrix:
- :allow_failures:
- - :rvm: jruby-18mode
- - :rvm: jruby-19mode
- - :rvm: jruby-head
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-6', '2012-06-11 19:14:44.000000', '2012-06-11 19:15:16.000000', '2012-06-11 19:14:43.898000', '2012-06-11 19:15:32.394000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888372, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.1', '---
-:rvm: 1.8.7
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-17 19:23:31.000000', '2012-07-17 19:23:51.000000', '2012-07-17 19:23:31.150000', '2012-07-17 19:23:51.421000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888373, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.2', '---
-:rvm: 1.9.2
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-17 19:23:34.000000', '2012-07-17 19:23:56.000000', '2012-07-17 19:23:31.188000', '2012-07-17 19:23:56.565000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888374, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.3', '---
-:rvm: 1.9.3
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-17 19:23:35.000000', '2012-07-17 19:23:55.000000', '2012-07-17 19:23:31.242000', '2012-07-17 19:23:55.477000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888375, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.4', '---
-:rvm: rbx
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-07-17 19:23:51.000000', '2012-07-17 19:24:23.000000', '2012-07-17 19:23:31.328000', '2012-07-17 19:24:23.560000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888376, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.5', '---
-:rvm: rbx-2.0
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-07-17 19:23:55.000000', '2012-07-17 19:24:08.000000', '2012-07-17 19:23:31.411000', '2012-07-17 19:24:08.817000', '', 0, 'f', 267, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888377, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.6', '---
-:rvm: jruby
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-07-17 19:23:56.000000', '2012-07-17 19:24:43.000000', '2012-07-17 19:23:31.445000', '2012-07-17 19:24:44.737000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1888378, 1649, 507098, 1888371, 'Build', 'builds.common', 'Job::Test', 'finished', '8.7', '---
-:rvm: ruby-head
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.result: configured
-', NULL, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-07-17 19:24:00.000000', '2012-07-17 19:24:40.000000', '2012-07-17 19:23:31.464000', '2012-07-17 19:24:40.765000', '', 0, 'f', 267, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584964, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.1', '---
-:rvm: 1.8.7
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-01-27 15:04:46.000000', '2012-01-27 15:05:41.000000', '2012-01-27 15:04:45.990000', '2012-01-27 15:05:42.021000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584965, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.2', '---
-:rvm: 1.9.2
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-6', '2012-01-27 15:04:46.000000', '2012-01-27 15:05:27.000000', '2012-01-27 15:04:46.008000', '2012-01-27 15:05:28.023000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584966, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.3', '---
-:rvm: 1.9.3
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-01-27 15:04:46.000000', '2012-01-27 15:05:25.000000', '2012-01-27 15:04:46.022000', '2012-01-27 15:05:26.002000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584967, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.4', '---
-:rvm: rbx
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-6', '2012-01-27 15:04:46.000000', '2012-01-27 15:06:27.000000', '2012-01-27 15:04:46.036000', '2012-01-27 15:06:27.842000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584968, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.5', '---
-:rvm: rbx-2.0
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 1, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-01-27 15:04:46.000000', '2012-01-27 15:05:04.000000', '2012-01-27 15:04:46.048000', '2012-01-27 15:05:04.378000', '', 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584969, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.6', '---
-:rvm: jruby
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-3', '2012-01-27 15:04:46.000000', '2012-01-27 15:06:26.000000', '2012-01-27 15:04:46.061000', '2012-01-27 15:06:27.035000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (584970, 1649, 194785, 584963, 'Build', 'builds.common', 'Job::Test', 'finished', '7.7', '---
-:rvm: ruby-head
-:notifications:
- :recipients:
- - k.haase@finn.de
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-1', '2012-01-27 15:04:46.000000', '2012-01-27 15:05:29.000000', '2012-01-27 15:04:46.076000', '2012-01-27 15:05:30.074000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86858, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.1', '---
-rvm: 1.8.7
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:30.000000', '2011-08-17 20:39:09.000000', '2011-08-17 20:38:30.000000', '2011-08-17 20:39:09.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86859, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.2', '---
-rvm: 1.9.2
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:31.000000', '2011-08-17 20:39:08.000000', '2011-08-17 20:38:31.000000', '2011-08-17 20:39:08.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86860, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.3', '---
-rvm: 1.9.3
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:31.000000', '2011-08-17 20:39:02.000000', '2011-08-17 20:38:31.000000', '2011-08-17 20:39:02.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86861, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.4', '---
-rvm: rbx
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:31.000000', '2011-08-17 20:39:37.000000', '2011-08-17 20:38:31.000000', '2011-08-17 20:39:37.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86862, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.5', '---
-rvm: rbx-2.0
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:32.000000', '2011-08-17 20:40:09.000000', '2011-08-17 20:38:32.000000', '2011-08-17 20:40:09.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86863, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.6', '---
-rvm: jruby
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:33.000000', '2011-08-17 20:39:54.000000', '2011-08-17 20:38:33.000000', '2011-08-17 20:39:54.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86864, NULL, 86861, 86857, 'Build', NULL, 'Job::Test', 'finished', '6.7', '---
-rvm: ruby-head
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 0, NULL, NULL, '2011-08-17 20:38:33.000000', '2011-08-17 20:39:01.000000', '2011-08-17 20:38:33.000000', '2011-08-17 20:39:01.000000', NULL, 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86850, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.1', '---
-rvm: 1.8.7
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:45.000000', '2011-08-17 20:37:23.000000', '2011-08-17 20:36:45.000000', '2011-08-17 20:37:23.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86851, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.2', '---
-rvm: 1.9.2
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:46.000000', '2011-08-17 20:37:22.000000', '2011-08-17 20:36:46.000000', '2011-08-17 20:37:22.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86852, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.3', '---
-rvm: 1.9.3
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:46.000000', '2011-08-17 20:37:11.000000', '2011-08-17 20:36:46.000000', '2011-08-17 20:37:11.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86853, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.4', '---
-rvm: rbx
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:47.000000', '2011-08-17 20:38:08.000000', '2011-08-17 20:36:47.000000', '2011-08-17 20:38:08.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86854, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.5', '---
-rvm: rbx-2.0
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:47.000000', '2011-08-17 20:37:57.000000', '2011-08-17 20:36:47.000000', '2011-08-17 20:37:57.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86855, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.6', '---
-rvm: jruby
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:49.000000', '2011-08-17 20:37:55.000000', '2011-08-17 20:36:49.000000', '2011-08-17 20:37:55.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86856, NULL, 86850, 86849, 'Build', NULL, 'Job::Test', 'finished', '5.7', '---
-rvm: ruby-head
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:36:48.000000', '2011-08-17 20:37:15.000000', '2011-08-17 20:36:48.000000', '2011-08-17 20:37:15.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86847, NULL, 86848, 86846, 'Build', NULL, 'Job::Test', 'finished', '4.1', '---
-rvm: 1.8.7
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:34:58.000000', '2011-08-17 20:35:36.000000', '2011-08-17 20:34:58.000000', '2011-08-17 20:35:36.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (86848, NULL, 86848, 86846, 'Build', NULL, 'Job::Test', 'finished', '4.2', '---
-rvm: 1.9.2
-notifications: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
- recipients:
- - k.haase@finn.de
-.configured: ''true''
-', 1, NULL, NULL, '2011-08-17 20:34:59.000000', '2011-08-17 20:35:35.000000', '2011-08-17 20:34:59.000000', '2011-08-17 20:35:35.000000', NULL, 0, 'f', NULL, NULL, 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791654, 8975, 237101, 791653, 'Build', 'builds.common', 'Job::Test', 'finished', '11.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-03-04 11:25:48.000000', '2012-03-04 11:27:07.000000', '2012-03-04 11:25:48.447000', '2012-03-04 11:27:07.457000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791655, 8975, 237101, 791653, 'Build', 'builds.common', 'Job::Test', 'finished', '11.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-1', '2012-03-04 11:25:48.000000', '2012-03-04 11:27:21.000000', '2012-03-04 11:25:48.490000', '2012-03-04 11:27:21.977000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791646, 8975, 237099, 791645, 'Build', 'builds.common', 'Job::Test', 'finished', '10.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-4', '2012-03-04 11:23:13.000000', '2012-03-04 11:24:51.000000', '2012-03-04 11:23:13.676000', '2012-03-04 11:24:52.144000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791647, 8975, 237099, 791645, 'Build', 'builds.common', 'Job::Test', 'finished', '10.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-03-04 11:23:13.000000', '2012-03-04 11:24:55.000000', '2012-03-04 11:23:13.690000', '2012-03-04 11:24:55.490000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791604, 8975, 237091, 791603, 'Build', 'builds.common', 'Job::Test', 'finished', '9.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-03-04 11:17:35.000000', '2012-03-04 11:18:52.000000', '2012-03-04 11:17:35.839000', '2012-03-04 11:18:52.549000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791605, 8975, 237091, 791603, 'Build', 'builds.common', 'Job::Test', 'finished', '9.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-03-04 11:17:35.000000', '2012-03-04 11:18:59.000000', '2012-03-04 11:17:35.852000', '2012-03-04 11:18:59.515000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791326, 8975, 237034, 791325, 'Build', 'builds.common', 'Job::Test', 'finished', '8.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-03-04 10:04:03.000000', '2012-03-04 10:05:21.000000', '2012-03-04 10:04:03.691000', '2012-03-04 10:05:21.736000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791327, 8975, 237034, 791325, 'Build', 'builds.common', 'Job::Test', 'finished', '8.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-3', '2012-03-04 10:04:03.000000', '2012-03-04 10:05:24.000000', '2012-03-04 10:04:03.701000', '2012-03-04 10:05:25.195000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791090, 8975, 236990, 791089, 'Build', 'builds.common', 'Job::Test', 'finished', '7.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-03-04 09:03:50.000000', '2012-03-04 09:05:03.000000', '2012-03-04 09:03:50.089000', '2012-03-04 09:05:03.615000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (791091, 8975, 236990, 791089, 'Build', 'builds.common', 'Job::Test', 'finished', '7.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.configured: true
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-4', '2012-03-04 09:03:50.000000', '2012-03-04 09:05:14.000000', '2012-03-04 09:03:50.100000', '2012-03-04 09:05:14.454000', '', 0, 'f', NULL, NULL, 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1348711, 9657, 363794, 1348710, 'Build', 'builds.common', 'Job::Test', 'finished', '27.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-05-16 19:20:45.000000', '2012-05-16 19:21:19.000000', '2012-05-16 19:20:44.964000', '2012-05-16 19:21:19.382000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1348712, 9657, 363794, 1348710, 'Build', 'builds.common', 'Job::Test', 'finished', '27.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-5', '2012-05-16 19:20:45.000000', '2012-05-16 19:21:22.000000', '2012-05-16 19:20:44.974000', '2012-05-16 19:21:23.244000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1257403, 9657, 341599, 1257402, 'Build', 'builds.common', 'Job::Test', 'finished', '26.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.result: configured
-', NULL, NULL, 'ruby1.worker.travis-ci.org:travis-ruby-2', '2012-05-06 11:13:30.000000', '2012-05-06 11:13:58.000000', '2012-05-06 11:13:30.249000', '2012-05-06 11:13:58.322000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1257404, 9657, 341599, 1257402, 'Build', 'builds.common', 'Job::Test', 'finished', '26.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', NULL, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-1', '2012-05-06 11:13:30.000000', '2012-05-06 11:14:00.000000', '2012-05-06 11:13:30.274000', '2012-05-06 11:14:00.859000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252333, 9657, 340261, 1252332, 'Build', 'builds.common', 'Job::Test', 'finished', '25.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-5', '2012-05-05 11:09:27.000000', '2012-05-05 11:09:55.000000', '2012-05-05 11:09:26.690000', '2012-05-05 11:09:55.535000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252334, 9657, 340261, 1252332, 'Build', 'builds.common', 'Job::Test', 'finished', '25.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-1', '2012-05-05 11:09:27.000000', '2012-05-05 11:09:55.000000', '2012-05-05 11:09:26.735000', '2012-05-05 11:09:55.741000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252324, 9657, 340259, 1252323, 'Build', 'builds.common', 'Job::Test', 'finished', '24.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-5', '2012-05-05 11:08:19.000000', '2012-05-05 11:08:47.000000', '2012-05-05 11:08:19.192000', '2012-05-05 11:08:47.530000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252325, 9657, 340259, 1252323, 'Build', 'builds.common', 'Job::Test', 'finished', '24.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby2.worker.travis-ci.org:travis-ruby-4', '2012-05-05 11:08:19.000000', '2012-05-05 11:08:48.000000', '2012-05-05 11:08:19.222000', '2012-05-05 11:08:48.930000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252326, 9657, 340259, 1252323, 'Build', 'builds.common', 'Job::Test', 'finished', '24.3', '---
-:language: ruby
-:rvm: ree
-:script: bundle exec rspec
-:.result: configured
-', 1, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-6', '2012-05-05 11:08:19.000000', '2012-05-05 11:08:46.000000', '2012-05-05 11:08:19.252000', '2012-05-05 11:08:47.019000', '', 0, 'f', 5100, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252327, 9657, 340259, 1252323, 'Build', 'builds.common', 'Job::Test', 'finished', '24.4', '---
-:language: ruby
-:rvm: 1.8.7
-:script: bundle exec rspec
-:.result: configured
-', 1, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-3', '2012-05-05 11:08:19.000000', '2012-05-05 11:08:46.000000', '2012-05-05 11:08:19.270000', '2012-05-05 11:08:47.160000', '', 0, 'f', 5100, 'User', 1);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252303, 9657, 340251, 1252302, 'Build', 'builds.common', 'Job::Test', 'finished', '23.1', '---
-:language: ruby
-:rvm: 1.9.3
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby3.worker.travis-ci.org:travis-ruby-1', '2012-05-05 11:03:47.000000', '2012-05-05 11:04:15.000000', '2012-05-05 11:03:46.756000', '2012-05-05 11:04:16.328000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO jobs (id, repository_id, commit_id, source_id, source_type, queue, type, state, number, config, status, job_id, worker, started_at, finished_at, created_at, updated_at, tags, retries, allow_failure, owner_id, owner_type, result)
- VALUES (1252304, 9657, 340251, 1252302, 'Build', 'builds.common', 'Job::Test', 'finished', '23.2', '---
-:language: ruby
-:rvm: 1.9.2
-:script: bundle exec rspec
-:.result: configured
-', 0, NULL, 'ruby4.worker.travis-ci.org:travis-ruby-5', '2012-05-05 11:03:47.000000', '2012-05-05 11:04:24.000000', '2012-05-05 11:03:46.768000', '2012-05-05 11:04:25.138000', '', 0, 'f', 5100, 'User', 0);
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515661, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-remote: Counting objects: 346, done.[K
-remote: Compressing objects: 0% (1/154) [Kremote: Compressing objects: 1% (2/154) [Kremote: Compressing objects: 2% (4/154) [Kremote: Compressing objects: 3% (5/154) [Kremote: Compressing objects: 4% (7/154) [Kremote: Compressing objects: 5% (8/154) [Kremote: Compressing objects: 6% (10/154) [Kremote: Compressing objects: 7% (11/154) [Kremote: Compressing objects: 8% (13/154) [Kremote: Compressing objects: 9% (14/154) [Kremote: Compressing objects: 10% (16/154) [Kremote: Compressing objects: 11% (17/154) [Kremote: Compressing objects: 12% (19/154) [Kremote: Compressing objects: 13% (21/154) [Kremote: Compressing objects: 14% (22/154) [Kremote: Compressing objects: 15% (24/154) [Kremote: Compressing objects: 16% (25/154) [Kremote: Compressing objects: 17% (27/154) [Kremote: Compressing objects: 18% (28/154) [Kremote: Compressing objects: 19% (30/154) [Kremote: Compressing objects: 20% (31/154) [Kremote: Compressing objects: 21% (33/154) [Kremote: Compressing objects: 22% (34/154) [Kremote: Compressing objects: 23% (36/154) [Kremote: Compressing objects: 24% (37/154) [Kremote: Compressing objects: 25% (39/154) [Kremote: Compressing objects: 26% (41/154) [Kremote: Compressing objects: 27% (42/154) [Kremote: Compressing objects: 28% (44/154) [Kremote: Compressing objects: 29% (45/154) [Kremote: Compressing objects: 30% (47/154) [Kremote: Compressing objects: 31% (48/154) [Kremote: Compressing objects: 32% (50/154) [Kremote: Compressing objects: 33% (51/154) [Kremote: Compressing objects: 34% (53/154) [Kremote: Compressing objects: 35% (54/154) [Kremote: Compressing objects: 36% (56/154) [Kremote: Compressing objects: 37% (57/154) [Kremote: Compressing objects: 38% (59/154) [Kremote: Compressing objects: 39% (61/154) [Kremote: Compressing objects: 40% (62/154) [Kremote: Compressing objects: 41% (64/154) [Kremote: Compressing objects: 42% (65/154) [Kremote: Compressing objects: 43% (67/154) [Kremote: Compressing objects: 44% (68/154) [Kremote: Compressing objects: 45% (70/154) [Kremote: Compressing objects: 46% (71/154) [Kremote: Compressing objects: 47% (73/154) [Kremote: Compressing objects: 48% (74/154) [Kremote: Compressing objects: 49% (76/154) [Kremote: Compressing objects: 50% (77/154) [Kremote: Compressing objects: 51% (79/154) [Kremote: Compressing objects: 52% (81/154) [Kremote: Compressing objects: 53% (82/154) [Kremote: Compressing objects: 54% (84/154) [Kremote: Compressing objects: 55% (85/154) [Kremote: Compressing objects: 56% (87/154) [Kremote: Compressing objects: 57% (88/154) [Kremote: Compressing objects: 58% (90/154) [Kremote: Compressing objects: 59% (91/154) [Kremote: Compressing objects: 60% (93/154) [Kremote: Compressing objects: 61% (94/154) [Kremote: Compressing objects: 62% (96/154) [Kremote: Compressing objects: 63% (98/154) [Kremote: Compressing objects: 64% (99/154) [Kremote: Compressing objects: 65% (101/154) [Kremote: Compressing objects: 66% (102/154) [Kremote: Compressing objects: 67% (104/154) [Kremote: Compressing objects: 68% (105/154) [Kremote: Compressing objects: 69% (107/154) [Kremote: Compressing objects: 70% (108/154) [Kremote: Compressing objects: 71% (110/154) [Kremote: Compressing objects: 72% (111/154) [Kremote: Compressing objects: 73% (113/154) [Kremote: Compressing objects: 74% (114/154) [Kremote: Compressing objects: 75% (116/154) [Kremote: Compressing objects: 76% (118/154) [Kremote: Compressing objects: 77% (119/154) [Kremote: Compressing objects: 78% (121/154) [Kremote: Compressing objects: 79% (122/154) [Kremote: Compressing objects: 80% (124/154) [Kremote: Compressing objects: 81% (125/154) [Kremote: Compressing objects: 82% (127/154) [Kremote: Compressing objects: 83% (128/154) [Kremote: Compressing objects: 84% (130/154) [Kremote: Compressing objects: 85% (131/154) [Kremote: Compressing objects: 86% (133/154) [Kremote: Compressing objects: 87% (134/154) [Kremote: Compressing objects: 88% (136/154) [Kremote: Compressing objects: 89% (138/154) [Kremote: Compressing objects: 90% (139/154) [Kremote: Compressing objects: 91% (141/154) [Kremote: Compressing objects: 92% (142/154) [Kremote: Compressing objects: 93% (144/154) [Kremote: Compressing objects: 94% (145/154) [Kremote: Compressing objects: 95% (147/154) [Kremote: Compressing objects: 96% (148/154) [Kremote: Compressing objects: 97% (150/154) [Kremote: Compressing objects: 98% (151/154) [Kremote: Compressing objects: 99% (153/154) [Kremote: Compressing objects: 100% (154/154) [Kremote: Compressing objects: 100% (154/154), done.[K
-Receiving objects: 0% (1/346) Receiving objects: 1% (4/346) Receiving objects: 2% (7/346) Receiving objects: 3% (11/346) Receiving objects: 4% (14/346) Receiving objects: 5% (18/346) Receiving objects: 6% (21/346) Receiving objects: 7% (25/346) Receiving objects: 8% (28/346) Receiving objects: 9% (32/346) Receiving objects: 10% (35/346) Receiving objects: 11% (39/346) Receiving objects: 12% (42/346) Receiving objects: 13% (45/346) Receiving objects: 14% (49/346) Receiving objects: 15% (52/346) Receiving objects: 16% (56/346) Receiving objects: 17% (59/346) Receiving objects: 18% (63/346) Receiving objects: 19% (66/346) Receiving objects: 20% (70/346) Receiving objects: 21% (73/346) Receiving objects: 22% (77/346) Receiving objects: 23% (80/346) Receiving objects: 24% (84/346) Receiving objects: 25% (87/346) Receiving objects: 26% (90/346) Receiving objects: 27% (94/346) Receiving objects: 28% (97/346) remote: Total 346 (delta 190), reused 331 (delta 187)[K
-Receiving objects: 29% (101/346) Receiving objects: 30% (104/346) Receiving objects: 31% (108/346) Receiving objects: 32% (111/346) Receiving objects: 33% (115/346) Receiving objects: 34% (118/346) Receiving objects: 35% (122/346) Receiving objects: 36% (125/346) Receiving objects: 37% (129/346) Receiving objects: 38% (132/346) Receiving objects: 39% (135/346) Receiving objects: 40% (139/346) Receiving objects: 41% (142/346) Receiving objects: 42% (146/346) Receiving objects: 43% (149/346) Receiving objects: 44% (153/346) Receiving objects: 45% (156/346) Receiving objects: 46% (160/346) Receiving objects: 47% (163/346) Receiving objects: 48% (167/346) Receiving objects: 49% (170/346) Receiving objects: 50% (173/346) Receiving objects: 51% (177/346) Receiving objects: 52% (180/346) Receiving objects: 53% (184/346) Receiving objects: 54% (187/346) Receiving objects: 55% (191/346) Receiving objects: 56% (194/346) Receiving objects: 57% (198/346) Receiving objects: 58% (201/346) Receiving objects: 59% (205/346) Receiving objects: 60% (208/346) Receiving objects: 61% (212/346) Receiving objects: 62% (215/346) Receiving objects: 63% (218/346) Receiving objects: 64% (222/346) Receiving objects: 65% (225/346) Receiving objects: 66% (229/346) Receiving objects: 67% (232/346) Receiving objects: 68% (236/346) Receiving objects: 69% (239/346) Receiving objects: 70% (243/346) Receiving objects: 71% (246/346) Receiving objects: 72% (250/346) Receiving objects: 73% (253/346) Receiving objects: 74% (257/346) Receiving objects: 75% (260/346) Receiving objects: 76% (263/346) Receiving objects: 77% (267/346) Receiving objects: 78% (270/346) Receiving objects: 79% (274/346) Receiving objects: 80% (277/346) Receiving objects: 81% (281/346) Receiving objects: 82% (284/346) Receiving objects: 83% (288/346) Receiving objects: 84% (291/346) Receiving objects: 85% (295/346) Receiving objects: 86% (298/346) Receiving objects: 87% (302/346) Receiving objects: 88% (305/346) Receiving objects: 89% (308/346) Receiving objects: 90% (312/346) Receiving objects: 91% (315/346) Receiving objects: 92% (319/346) Receiving objects: 93% (322/346) Receiving objects: 94% (326/346) Receiving objects: 95% (329/346) Receiving objects: 96% (333/346) Receiving objects: 97% (336/346) Receiving objects: 98% (340/346) Receiving objects: 99% (343/346) Receiving objects: 100% (346/346) Receiving objects: 100% (346/346), 45.42 KiB, done.
-Resolving deltas: 0% (0/190) Resolving deltas: 15% (29/190) Resolving deltas: 25% (49/190) Resolving deltas: 26% (50/190) Resolving deltas: 28% (54/190) Resolving deltas: 30% (57/190) Resolving deltas: 31% (59/190) Resolving deltas: 34% (65/190) Resolving deltas: 37% (71/190) Resolving deltas: 38% (73/190) Resolving deltas: 42% (81/190) Resolving deltas: 46% (88/190) Resolving deltas: 47% (90/190) Resolving deltas: 48% (92/190) Resolving deltas: 52% (99/190) Resolving deltas: 54% (103/190) Resolving deltas: 56% (108/190) Resolving deltas: 62% (118/190) Resolving deltas: 63% (120/190) Resolving deltas: 64% (122/190) Resolving deltas: 65% (124/190) Resolving deltas: 66% (126/190) Resolving deltas: 68% (130/190) Resolving deltas: 74% (142/190) Resolving deltas: 75% (143/190) Resolving deltas: 85% (163/190) Resolving deltas: 87% (166/190) Resolving deltas: 89% (170/190) Resolving deltas: 92% (175/190) Resolving deltas: 93% (178/190) Resolving deltas: 97% (185/190) Resolving deltas: 100% (190/190) Resolving deltas: 100% (190/190), done.
-Fetching https://github.com/roidrage/hubble.git
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Unpacking objects: 6% (1/16) Unpacking objects: 12% (2/16) Unpacking objects: 18% (3/16) Unpacking objects: 25% (4/16) Unpacking objects: 31% (5/16) Unpacking objects: 37% (6/16) Unpacking objects: 43% (7/16) Unpacking objects: 50% (8/16) Unpacking objects: 56% (9/16) Unpacking objects: 62% (10/16) Unpacking objects: 68% (11/16) Unpacking objects: 75% (12/16) Unpacking objects: 81% (13/16) Unpacking objects: 87% (14/16) Unpacking objects: 93% (15/16) Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing amq-protocol (0.9.4)
-Installing eventmachine (0.12.10) with native extensions
-Installing amq-client (0.9.4)
-Installing amqp (0.9.7)
-Installing atomic (1.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from amqp:
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] A couple of concurrency issues (race conditions) fixed for apps that actively close and/or reuse channels
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] AMQP::Queue#initialize with :nowait => true no longer fails with NoMethodError
-[[32mVersion 0.9.0 to 0.9.4[0m] [FEATURE] Automatic recovery mode now works for publishers
-[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-................................................................................
-
-Finished in 2.02 seconds
-80 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827970, 'Artifact::Log', '2012-07-10 17:03:09.771000', '2012-07-10 17:03:11.279000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515662, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.22 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827971, 'Artifact::Log', '2012-07-10 17:03:09.791000', '2012-07-10 17:03:10.370000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515663, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.6 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827972, 'Artifact::Log', '2012-07-10 17:03:09.809000', '2012-07-10 17:03:11.912000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515664, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 2.97 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827973, 'Artifact::Log', '2012-07-10 17:03:09.825000', '2012-07-10 17:03:12.092000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515665, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.24 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827974, 'Artifact::Log', '2012-07-10 17:03:09.841000', '2012-07-10 17:03:11.609000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515666, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.74 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827975, 'Artifact::Log', '2012-07-10 17:03:09.858000', '2012-07-10 17:03:12.204000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515667, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.18 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827976, 'Artifact::Log', '2012-07-10 17:03:09.876000', '2012-07-10 17:03:12.649000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515668, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.37 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827977, 'Artifact::Log', '2012-07-10 17:03:09.900000', '2012-07-10 17:03:12.928000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515669, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.71 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827978, 'Artifact::Log', '2012-07-10 17:03:09.926000', '2012-07-10 17:03:13.089000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1515670, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 4393c5d2501bea3f921a0a31806717d93add05fe
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.06 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1827979, 'Artifact::Log', '2012-07-10 17:03:09.948000', '2012-07-10 17:03:13.297000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514900, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-remote: Counting objects: 346, done.[K
-remote: Compressing objects: 0% (1/154) [Kremote: Compressing objects: 1% (2/154) [Kremote: Compressing objects: 2% (4/154) [Kremote: Compressing objects: 3% (5/154) [Kremote: Compressing objects: 4% (7/154) [Kremote: Compressing objects: 5% (8/154) [Kremote: Compressing objects: 6% (10/154) [Kremote: Compressing objects: 7% (11/154) [Kremote: Compressing objects: 8% (13/154) [Kremote: Compressing objects: 9% (14/154) [Kremote: Compressing objects: 10% (16/154) [Kremote: Compressing objects: 11% (17/154) [Kremote: Compressing objects: 12% (19/154) [Kremote: Compressing objects: 13% (21/154) [Kremote: Compressing objects: 14% (22/154) [Kremote: Compressing objects: 15% (24/154) [Kremote: Compressing objects: 16% (25/154) [Kremote: Compressing objects: 17% (27/154) [Kremote: Compressing objects: 18% (28/154) [Kremote: Compressing objects: 19% (30/154) [Kremote: Compressing objects: 20% (31/154) [Kremote: Compressing objects: 21% (33/154) [Kremote: Compressing objects: 22% (34/154) [Kremote: Compressing objects: 23% (36/154) [Kremote: Compressing objects: 24% (37/154) [Kremote: Compressing objects: 25% (39/154) [Kremote: Compressing objects: 26% (41/154) [Kremote: Compressing objects: 27% (42/154) [Kremote: Compressing objects: 28% (44/154) [Kremote: Compressing objects: 29% (45/154) [Kremote: Compressing objects: 30% (47/154) [Kremote: Compressing objects: 31% (48/154) [Kremote: Compressing objects: 32% (50/154) [Kremote: Compressing objects: 33% (51/154) [Kremote: Compressing objects: 34% (53/154) [Kremote: Compressing objects: 35% (54/154) [Kremote: Compressing objects: 36% (56/154) [Kremote: Compressing objects: 37% (57/154) [Kremote: Compressing objects: 38% (59/154) [Kremote: Compressing objects: 39% (61/154) [Kremote: Compressing objects: 40% (62/154) [Kremote: Compressing objects: 41% (64/154) [Kremote: Compressing objects: 42% (65/154) [Kremote: Compressing objects: 43% (67/154) [Kremote: Compressing objects: 44% (68/154) [Kremote: Compressing objects: 45% (70/154) [Kremote: Compressing objects: 46% (71/154) [Kremote: Compressing objects: 47% (73/154) [Kremote: Compressing objects: 48% (74/154) [Kremote: Compressing objects: 49% (76/154) [Kremote: Compressing objects: 50% (77/154) [Kremote: Compressing objects: 51% (79/154) [Kremote: Compressing objects: 52% (81/154) [Kremote: Compressing objects: 53% (82/154) [Kremote: Compressing objects: 54% (84/154) [Kremote: Compressing objects: 55% (85/154) [Kremote: Compressing objects: 56% (87/154) [Kremote: Compressing objects: 57% (88/154) [Kremote: Compressing objects: 58% (90/154) [Kremote: Compressing objects: 59% (91/154) [Kremote: Compressing objects: 60% (93/154) [Kremote: Compressing objects: 61% (94/154) [Kremote: Compressing objects: 62% (96/154) [Kremote: Compressing objects: 63% (98/154) [Kremote: Compressing objects: 64% (99/154) [Kremote: Compressing objects: 65% (101/154) [Kremote: Compressing objects: 66% (102/154) [Kremote: Compressing objects: 67% (104/154) [Kremote: Compressing objects: 68% (105/154) [Kremote: Compressing objects: 69% (107/154) [Kremote: Compressing objects: 70% (108/154) [Kremote: Compressing objects: 71% (110/154) [Kremote: Compressing objects: 72% (111/154) [Kremote: Compressing objects: 73% (113/154) [Kremote: Compressing objects: 74% (114/154) [Kremote: Compressing objects: 75% (116/154) [Kremote: Compressing objects: 76% (118/154) [Kremote: Compressing objects: 77% (119/154) [Kremote: Compressing objects: 78% (121/154) [Kremote: Compressing objects: 79% (122/154) [Kremote: Compressing objects: 80% (124/154) [Kremote: Compressing objects: 81% (125/154) [Kremote: Compressing objects: 82% (127/154) [Kremote: Compressing objects: 83% (128/154) [Kremote: Compressing objects: 84% (130/154) [Kremote: Compressing objects: 85% (131/154) [Kremote: Compressing objects: 86% (133/154) [Kremote: Compressing objects: 87% (134/154) [Kremote: Compressing objects: 88% (136/154) [Kremote: Compressing objects: 89% (138/154) [Kremote: Compressing objects: 90% (139/154) [Kremote: Compressing objects: 91% (141/154) [Kremote: Compressing objects: 92% (142/154) [Kremote: Compressing objects: 93% (144/154) [Kremote: Compressing objects: 94% (145/154) [Kremote: Compressing objects: 95% (147/154) [Kremote: Compressing objects: 96% (148/154) [Kremote: Compressing objects: 97% (150/154) [Kremote: Compressing objects: 98% (151/154) [Kremote: Compressing objects: 99% (153/154) [Kremote: Compressing objects: 100% (154/154) [Kremote: Compressing objects: 100% (154/154), done.[K
-Receiving objects: 0% (1/346) Receiving objects: 1% (4/346) Receiving objects: 2% (7/346) Receiving objects: 3% (11/346) Receiving objects: 4% (14/346) Receiving objects: 5% (18/346) Receiving objects: 6% (21/346) Receiving objects: 7% (25/346) Receiving objects: 8% (28/346) Receiving objects: 9% (32/346) Receiving objects: 10% (35/346) Receiving objects: 11% (39/346) Receiving objects: 12% (42/346) Receiving objects: 13% (45/346) Receiving objects: 14% (49/346) Receiving objects: 15% (52/346) Receiving objects: 16% (56/346) Receiving objects: 17% (59/346) Receiving objects: 18% (63/346) Receiving objects: 19% (66/346) Receiving objects: 20% (70/346) Receiving objects: 21% (73/346) Receiving objects: 22% (77/346) Receiving objects: 23% (80/346) Receiving objects: 24% (84/346) Receiving objects: 25% (87/346) Receiving objects: 26% (90/346) Receiving objects: 27% (94/346) Receiving objects: 28% (97/346) Receiving objects: 29% (101/346) Receiving objects: 30% (104/346) Receiving objects: 31% (108/346) Receiving objects: 32% (111/346) Receiving objects: 33% (115/346) Receiving objects: 34% (118/346) Receiving objects: 35% (122/346) Receiving objects: 36% (125/346) Receiving objects: 37% (129/346) Receiving objects: 38% (132/346) Receiving objects: 39% (135/346) Receiving objects: 40% (139/346) Receiving objects: 41% (142/346) Receiving objects: 42% (146/346) Receiving objects: 43% (149/346) Receiving objects: 44% (153/346) Receiving objects: 45% (156/346) Receiving objects: 46% (160/346) Receiving objects: 47% (163/346) Receiving objects: 48% (167/346) Receiving objects: 49% (170/346) Receiving objects: 50% (173/346) Receiving objects: 51% (177/346) Receiving objects: 52% (180/346) Receiving objects: 53% (184/346) Receiving objects: 54% (187/346) Receiving objects: 55% (191/346) Receiving objects: 56% (194/346) Receiving objects: 57% (198/346) Receiving objects: 58% (201/346) Receiving objects: 59% (205/346) Receiving objects: 60% (208/346) Receiving objects: 61% (212/346) Receiving objects: 62% (215/346) Receiving objects: 63% (218/346) Receiving objects: 64% (222/346) Receiving objects: 65% (225/346) Receiving objects: 66% (229/346) Receiving objects: 67% (232/346) Receiving objects: 68% (236/346) Receiving objects: 69% (239/346) Receiving objects: 70% (243/346) Receiving objects: 71% (246/346) Receiving objects: 72% (250/346) Receiving objects: 73% (253/346) Receiving objects: 74% (257/346) Receiving objects: 75% (260/346) Receiving objects: 76% (263/346) Receiving objects: 77% (267/346) Receiving objects: 78% (270/346) Receiving objects: 79% (274/346) Receiving objects: 80% (277/346) Receiving objects: 81% (281/346) remote: Total 346 (delta 190), reused 331 (delta 187)[K
-Receiving objects: 82% (284/346) Receiving objects: 83% (288/346) Receiving objects: 84% (291/346) Receiving objects: 85% (295/346) Receiving objects: 86% (298/346) Receiving objects: 87% (302/346) Receiving objects: 88% (305/346) Receiving objects: 89% (308/346) Receiving objects: 90% (312/346) Receiving objects: 91% (315/346) Receiving objects: 92% (319/346) Receiving objects: 93% (322/346) Receiving objects: 94% (326/346) Receiving objects: 95% (329/346) Receiving objects: 96% (333/346) Receiving objects: 97% (336/346) Receiving objects: 98% (340/346) Receiving objects: 99% (343/346) Receiving objects: 100% (346/346) Receiving objects: 100% (346/346), 45.42 KiB, done.
-Resolving deltas: 0% (0/190) Resolving deltas: 15% (29/190) Resolving deltas: 25% (49/190) Resolving deltas: 26% (50/190) Resolving deltas: 28% (54/190) Resolving deltas: 30% (57/190) Resolving deltas: 31% (59/190) Resolving deltas: 34% (65/190) Resolving deltas: 37% (71/190) Resolving deltas: 38% (73/190) Resolving deltas: 42% (81/190) Resolving deltas: 46% (88/190) Resolving deltas: 47% (90/190) Resolving deltas: 48% (92/190) Resolving deltas: 52% (99/190) Resolving deltas: 54% (103/190) Resolving deltas: 56% (108/190) Resolving deltas: 62% (118/190) Resolving deltas: 63% (120/190) Resolving deltas: 64% (122/190) Resolving deltas: 65% (124/190) Resolving deltas: 66% (126/190) Resolving deltas: 68% (130/190) Resolving deltas: 74% (142/190) Resolving deltas: 75% (143/190) Resolving deltas: 85% (163/190) Resolving deltas: 87% (166/190) Resolving deltas: 89% (170/190) Resolving deltas: 92% (175/190) Resolving deltas: 93% (178/190) Resolving deltas: 97% (185/190) Resolving deltas: 100% (190/190) Resolving deltas: 100% (190/190), done.
-Fetching https://github.com/roidrage/hubble.git
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Unpacking objects: 6% (1/16) Unpacking objects: 12% (2/16) Unpacking objects: 18% (3/16) Unpacking objects: 25% (4/16) Unpacking objects: 31% (5/16) Unpacking objects: 37% (6/16) Unpacking objects: 43% (7/16) Unpacking objects: 50% (8/16) Unpacking objects: 56% (9/16) Unpacking objects: 62% (10/16) Unpacking objects: 68% (11/16) Unpacking objects: 75% (12/16) Unpacking objects: 81% (13/16) Unpacking objects: 87% (14/16) Unpacking objects: 93% (15/16) Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing amq-protocol (0.9.4)
-Installing eventmachine (0.12.10) with native extensions
-Installing amq-client (0.9.4)
-Installing amqp (0.9.7)
-Installing atomic (1.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from amqp:
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] A couple of concurrency issues (race conditions) fixed for apps that actively close and/or reuse channels
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] AMQP::Queue#initialize with :nowait => true no longer fails with NoMethodError
-[[32mVersion 0.9.0 to 0.9.4[0m] [FEATURE] Automatic recovery mode now works for publishers
-[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-................................................................................
-
-Finished in 2.07 seconds
-80 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826894, 'Artifact::Log', '2012-07-10 15:15:50.461000', '2012-07-10 15:16:03.175000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514901, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0) #
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0xb21d3ffb, pid=2332, tid=3077819248
-#
-# JRE version: 6.0_23-b23
-# Java VM: OpenJDK Server VM (20.0-b11 mixed mode linux-x86 )
-# Derivative: IcedTea6 1.11pre
-# Distribution: Ubuntu 11.10, package 6b23~pre11-0ubuntu1.11.10.2
-# Problematic frame:
-# J rubyjit.Gem::Specification#required_rubygems_version=_74259DD2BDD16720E9AFE77875B6790139390B56.__file__(Lrubyjit/Gem::Specification#required_rubygems_version=_74259DD2BDD16720E9AFE77875B6790139390B56;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2332.log
-#
-# If you would like to submit a bug report, please include
-# instructions how to reproduce the bug and visit:
-# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
-#
-Aborted
-
-
-install: ''bundle install'' returned false.
-Done. Build script exited with: 1
-', 1826895, 'Artifact::Log', '2012-07-10 15:15:50.490000', '2012-07-10 15:16:03.801000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514902, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.21 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826896, 'Artifact::Log', '2012-07-10 15:15:50.512000', '2012-07-10 15:16:03.616000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514903, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 2.89 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826897, 'Artifact::Log', '2012-07-10 15:15:50.583000', '2012-07-10 15:16:04.107000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514904, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.06 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826898, 'Artifact::Log', '2012-07-10 15:15:50.599000', '2012-07-10 15:16:04.338000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514905, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.18 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826899, 'Artifact::Log', '2012-07-10 15:15:50.622000', '2012-07-10 15:16:04.750000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514906, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.03 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826900, 'Artifact::Log', '2012-07-10 15:15:50.718000', '2012-07-10 15:16:04.577000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514907, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 2.94 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826901, 'Artifact::Log', '2012-07-10 15:15:50.732000', '2012-07-10 15:16:04.926000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514908, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.33 seconds
-74 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1826902, 'Artifact::Log', '2012-07-10 15:15:50.751000', '2012-07-10 15:16:05.266000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1514909, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf f9ff4f7922770e7a11fa3e04f85f1cd734596581
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..........................................................................
-
-Finished in 3.37 seconds
-74 examples, 0 failures
-
-
-Done. Build script exited with: 0
-', 1826903, 'Artifact::Log', '2012-07-10 15:15:50.767000', '2012-07-10 15:16:05.571000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507136, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-remote: Counting objects: 346, done.[K
-remote: Compressing objects: 0% (1/154) [Kremote: Compressing objects: 1% (2/154) [Kremote: Compressing objects: 2% (4/154) [Kremote: Compressing objects: 3% (5/154) [Kremote: Compressing objects: 4% (7/154) [Kremote: Compressing objects: 5% (8/154) [Kremote: Compressing objects: 6% (10/154) [Kremote: Compressing objects: 7% (11/154) [Kremote: Compressing objects: 8% (13/154) [Kremote: Compressing objects: 9% (14/154) [Kremote: Compressing objects: 10% (16/154) [Kremote: Compressing objects: 11% (17/154) [Kremote: Compressing objects: 12% (19/154) [Kremote: Compressing objects: 13% (21/154) [Kremote: Compressing objects: 14% (22/154) [Kremote: Compressing objects: 15% (24/154) [Kremote: Compressing objects: 16% (25/154) [Kremote: Compressing objects: 17% (27/154) [Kremote: Compressing objects: 18% (28/154) [Kremote: Compressing objects: 19% (30/154) [Kremote: Compressing objects: 20% (31/154) [Kremote: Compressing objects: 21% (33/154) [Kremote: Compressing objects: 22% (34/154) [Kremote: Compressing objects: 23% (36/154) [Kremote: Compressing objects: 24% (37/154) [Kremote: Compressing objects: 25% (39/154) [Kremote: Compressing objects: 26% (41/154) [Kremote: Compressing objects: 27% (42/154) [Kremote: Compressing objects: 28% (44/154) [Kremote: Compressing objects: 29% (45/154) [Kremote: Compressing objects: 30% (47/154) [Kremote: Compressing objects: 31% (48/154) [Kremote: Compressing objects: 32% (50/154) [Kremote: Compressing objects: 33% (51/154) [Kremote: Compressing objects: 34% (53/154) [Kremote: Compressing objects: 35% (54/154) [Kremote: Compressing objects: 36% (56/154) [Kremote: Compressing objects: 37% (57/154) [Kremote: Compressing objects: 38% (59/154) [Kremote: Compressing objects: 39% (61/154) [Kremote: Compressing objects: 40% (62/154) [Kremote: Compressing objects: 41% (64/154) [Kremote: Compressing objects: 42% (65/154) [Kremote: Compressing objects: 43% (67/154) [Kremote: Compressing objects: 44% (68/154) [Kremote: Compressing objects: 45% (70/154) [Kremote: Compressing objects: 46% (71/154) [Kremote: Compressing objects: 47% (73/154) [Kremote: Compressing objects: 48% (74/154) [Kremote: Compressing objects: 49% (76/154) [Kremote: Compressing objects: 50% (77/154) [Kremote: Compressing objects: 51% (79/154) [Kremote: Compressing objects: 52% (81/154) [Kremote: Compressing objects: 53% (82/154) [Kremote: Compressing objects: 54% (84/154) [Kremote: Compressing objects: 55% (85/154) [Kremote: Compressing objects: 56% (87/154) [Kremote: Compressing objects: 57% (88/154) [Kremote: Compressing objects: 58% (90/154) [Kremote: Compressing objects: 59% (91/154) [Kremote: Compressing objects: 60% (93/154) [Kremote: Compressing objects: 61% (94/154) [Kremote: Compressing objects: 62% (96/154) [Kremote: Compressing objects: 63% (98/154) [Kremote: Compressing objects: 64% (99/154) [Kremote: Compressing objects: 65% (101/154) [Kremote: Compressing objects: 66% (102/154) [Kremote: Compressing objects: 67% (104/154) [Kremote: Compressing objects: 68% (105/154) [Kremote: Compressing objects: 69% (107/154) [Kremote: Compressing objects: 70% (108/154) [Kremote: Compressing objects: 71% (110/154) [Kremote: Compressing objects: 72% (111/154) [Kremote: Compressing objects: 73% (113/154) [Kremote: Compressing objects: 74% (114/154) [Kremote: Compressing objects: 75% (116/154) [Kremote: Compressing objects: 76% (118/154) [Kremote: Compressing objects: 77% (119/154) [Kremote: Compressing objects: 78% (121/154) [Kremote: Compressing objects: 79% (122/154) [Kremote: Compressing objects: 80% (124/154) [Kremote: Compressing objects: 81% (125/154) [Kremote: Compressing objects: 82% (127/154) [Kremote: Compressing objects: 83% (128/154) [Kremote: Compressing objects: 84% (130/154) [Kremote: Compressing objects: 85% (131/154) [Kremote: Compressing objects: 86% (133/154) [Kremote: Compressing objects: 87% (134/154) [Kremote: Compressing objects: 88% (136/154) [Kremote: Compressing objects: 89% (138/154) [Kremote: Compressing objects: 90% (139/154) [Kremote: Compressing objects: 91% (141/154) [Kremote: Compressing objects: 92% (142/154) [Kremote: Compressing objects: 93% (144/154) [Kremote: Compressing objects: 94% (145/154) [Kremote: Compressing objects: 95% (147/154) [Kremote: Compressing objects: 96% (148/154) [Kremote: Compressing objects: 97% (150/154) [Kremote: Compressing objects: 98% (151/154) [Kremote: Compressing objects: 99% (153/154) [Kremote: Compressing objects: 100% (154/154) [Kremote: Compressing objects: 100% (154/154), done.[K
-Receiving objects: 0% (1/346) Receiving objects: 1% (4/346) Receiving objects: 2% (7/346) Receiving objects: 3% (11/346) Receiving objects: 4% (14/346) Receiving objects: 5% (18/346) Receiving objects: 6% (21/346) Receiving objects: 7% (25/346) Receiving objects: 8% (28/346) Receiving objects: 9% (32/346) Receiving objects: 10% (35/346) Receiving objects: 11% (39/346) Receiving objects: 12% (42/346) Receiving objects: 13% (45/346) remote: Total 346 (delta 190), reused 331 (delta 187)[K
-Receiving objects: 14% (49/346) Receiving objects: 15% (52/346) Receiving objects: 16% (56/346) Receiving objects: 17% (59/346) Receiving objects: 18% (63/346) Receiving objects: 19% (66/346) Receiving objects: 20% (70/346) Receiving objects: 21% (73/346) Receiving objects: 22% (77/346) Receiving objects: 23% (80/346) Receiving objects: 24% (84/346) Receiving objects: 25% (87/346) Receiving objects: 26% (90/346) Receiving objects: 27% (94/346) Receiving objects: 28% (97/346), 28.00 KiB | 37 KiB/s Receiving objects: 29% (101/346), 28.00 KiB | 37 KiB/s Receiving objects: 30% (104/346), 28.00 KiB | 37 KiB/s Receiving objects: 31% (108/346), 28.00 KiB | 37 KiB/s Receiving objects: 32% (111/346), 28.00 KiB | 37 KiB/s Receiving objects: 33% (115/346), 28.00 KiB | 37 KiB/s Receiving objects: 34% (118/346), 28.00 KiB | 37 KiB/s Receiving objects: 35% (122/346), 28.00 KiB | 37 KiB/s Receiving objects: 36% (125/346), 28.00 KiB | 37 KiB/s Receiving objects: 37% (129/346), 28.00 KiB | 37 KiB/s Receiving objects: 38% (132/346), 28.00 KiB | 37 KiB/s Receiving objects: 39% (135/346), 28.00 KiB | 37 KiB/s Receiving objects: 40% (139/346), 28.00 KiB | 37 KiB/s Receiving objects: 41% (142/346), 28.00 KiB | 37 KiB/s Receiving objects: 42% (146/346), 28.00 KiB | 37 KiB/s Receiving objects: 43% (149/346), 28.00 KiB | 37 KiB/s Receiving objects: 44% (153/346), 28.00 KiB | 37 KiB/s Receiving objects: 45% (156/346), 28.00 KiB | 37 KiB/s Receiving objects: 46% (160/346), 28.00 KiB | 37 KiB/s Receiving objects: 47% (163/346), 28.00 KiB | 37 KiB/s Receiving objects: 48% (167/346), 28.00 KiB | 37 KiB/s Receiving objects: 49% (170/346), 28.00 KiB | 37 KiB/s Receiving objects: 50% (173/346), 28.00 KiB | 37 KiB/s Receiving objects: 51% (177/346), 28.00 KiB | 37 KiB/s Receiving objects: 52% (180/346), 28.00 KiB | 37 KiB/s Receiving objects: 53% (184/346), 28.00 KiB | 37 KiB/s Receiving objects: 54% (187/346), 28.00 KiB | 37 KiB/s Receiving objects: 55% (191/346), 28.00 KiB | 37 KiB/s Receiving objects: 56% (194/346), 28.00 KiB | 37 KiB/s Receiving objects: 57% (198/346), 28.00 KiB | 37 KiB/s Receiving objects: 58% (201/346), 28.00 KiB | 37 KiB/s Receiving objects: 59% (205/346), 28.00 KiB | 37 KiB/s Receiving objects: 60% (208/346), 28.00 KiB | 37 KiB/s Receiving objects: 61% (212/346), 28.00 KiB | 37 KiB/s Receiving objects: 62% (215/346), 28.00 KiB | 37 KiB/s Receiving objects: 63% (218/346), 28.00 KiB | 37 KiB/s Receiving objects: 64% (222/346), 28.00 KiB | 37 KiB/s Receiving objects: 65% (225/346), 28.00 KiB | 37 KiB/s Receiving objects: 66% (229/346), 28.00 KiB | 37 KiB/s Receiving objects: 67% (232/346), 28.00 KiB | 37 KiB/s Receiving objects: 68% (236/346), 28.00 KiB | 37 KiB/s Receiving objects: 69% (239/346), 28.00 KiB | 37 KiB/s Receiving objects: 70% (243/346), 28.00 KiB | 37 KiB/s Receiving objects: 71% (246/346), 28.00 KiB | 37 KiB/s Receiving objects: 72% (250/346), 28.00 KiB | 37 KiB/s Receiving objects: 73% (253/346), 28.00 KiB | 37 KiB/s Receiving objects: 74% (257/346), 28.00 KiB | 37 KiB/s Receiving objects: 75% (260/346), 28.00 KiB | 37 KiB/s Receiving objects: 76% (263/346), 28.00 KiB | 37 KiB/s Receiving objects: 77% (267/346), 28.00 KiB | 37 KiB/s Receiving objects: 78% (270/346), 28.00 KiB | 37 KiB/s Receiving objects: 79% (274/346), 28.00 KiB | 37 KiB/s Receiving objects: 80% (277/346), 28.00 KiB | 37 KiB/s Receiving objects: 81% (281/346), 28.00 KiB | 37 KiB/s Receiving objects: 82% (284/346), 28.00 KiB | 37 KiB/s Receiving objects: 83% (288/346), 28.00 KiB | 37 KiB/s Receiving objects: 84% (291/346), 28.00 KiB | 37 KiB/s Receiving objects: 85% (295/346), 28.00 KiB | 37 KiB/s Receiving objects: 86% (298/346), 28.00 KiB | 37 KiB/s Receiving objects: 87% (302/346), 28.00 KiB | 37 KiB/s Receiving objects: 88% (305/346), 28.00 KiB | 37 KiB/s Receiving objects: 89% (308/346), 28.00 KiB | 37 KiB/s Receiving objects: 90% (312/346), 28.00 KiB | 37 KiB/s Receiving objects: 91% (315/346), 28.00 KiB | 37 KiB/s Receiving objects: 92% (319/346), 28.00 KiB | 37 KiB/s Receiving objects: 93% (322/346), 28.00 KiB | 37 KiB/s Receiving objects: 94% (326/346), 28.00 KiB | 37 KiB/s Receiving objects: 95% (329/346), 28.00 KiB | 37 KiB/s Receiving objects: 96% (333/346), 28.00 KiB | 37 KiB/s Receiving objects: 97% (336/346), 28.00 KiB | 37 KiB/s Receiving objects: 98% (340/346), 28.00 KiB | 37 KiB/s Receiving objects: 99% (343/346), 28.00 KiB | 37 KiB/s Receiving objects: 100% (346/346), 28.00 KiB | 37 KiB/s Receiving objects: 100% (346/346), 45.42 KiB | 37 KiB/s, done.
-Resolving deltas: 0% (0/190) Resolving deltas: 15% (29/190) Resolving deltas: 25% (49/190) Resolving deltas: 26% (50/190) Resolving deltas: 28% (54/190) Resolving deltas: 30% (57/190) Resolving deltas: 31% (59/190) Resolving deltas: 34% (65/190) Resolving deltas: 37% (71/190) Resolving deltas: 38% (73/190) Resolving deltas: 42% (81/190) Resolving deltas: 46% (88/190) Resolving deltas: 47% (90/190) Resolving deltas: 48% (92/190) Resolving deltas: 52% (99/190) Resolving deltas: 54% (103/190) Resolving deltas: 56% (108/190) Resolving deltas: 62% (118/190) Resolving deltas: 63% (120/190) Resolving deltas: 64% (122/190) Resolving deltas: 65% (124/190) Resolving deltas: 66% (126/190) Resolving deltas: 68% (130/190) Resolving deltas: 74% (142/190) Resolving deltas: 75% (143/190) Resolving deltas: 85% (163/190) Resolving deltas: 87% (166/190) Resolving deltas: 89% (170/190) Resolving deltas: 92% (175/190) Resolving deltas: 93% (178/190) Resolving deltas: 97% (185/190) Resolving deltas: 100% (190/190) Resolving deltas: 100% (190/190), done.
-Fetching https://github.com/roidrage/hubble.git
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Unpacking objects: 6% (1/16) Unpacking objects: 12% (2/16) Unpacking objects: 18% (3/16) Unpacking objects: 25% (4/16) Unpacking objects: 31% (5/16) Unpacking objects: 37% (6/16) Unpacking objects: 43% (7/16) Unpacking objects: 50% (8/16) Unpacking objects: 56% (9/16) Unpacking objects: 62% (10/16) Unpacking objects: 68% (11/16) Unpacking objects: 75% (12/16) Unpacking objects: 81% (13/16) Unpacking objects: 87% (14/16) Unpacking objects: 93% (15/16) Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing amq-protocol (0.9.4)
-Installing eventmachine (0.12.10) with native extensions
-Installing amq-client (0.9.4)
-Installing amqp (0.9.7)
-Installing atomic (1.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from amqp:
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] A couple of concurrency issues (race conditions) fixed for apps that actively close and/or reuse channels
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] AMQP::Queue#initialize with :nowait => true no longer fails with NoMethodError
-[[32mVersion 0.9.0 to 0.9.4[0m] [FEATURE] Automatic recovery mode now works for publishers
-[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.............................................................................
-
-Finished in 2.17 seconds
-77 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816251, 'Artifact::Log', '2012-07-09 12:05:22.481000', '2012-07-09 12:05:23.744000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507137, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.79 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816252, 'Artifact::Log', '2012-07-09 12:05:22.491000', '2012-07-09 12:05:23.478000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507138, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 3.15 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816253, 'Artifact::Log', '2012-07-09 12:05:22.503000', '2012-07-09 12:05:23.537000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507139, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.82 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816254, 'Artifact::Log', '2012-07-09 12:05:22.517000', '2012-07-09 12:05:23.637000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507140, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-#
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0xb1c31fe2, pid=2466, tid=3078531952
-#
-# JRE version: 6.0_23-b23
-# Java VM: OpenJDK Server VM (20.0-b11 mixed mode linux-x86 )
-# Derivative: IcedTea6 1.11pre
-# Distribution: Ubuntu 11.10, package 6b23~pre11-0ubuntu1.11.10.2
-# Problematic frame:
-# J rubyjit.Gem::Dependency#hash_B0EF950F4A9397DE272EB604BFFDCCBBFECBAF13.__file__(Lrubyjit/Gem::Dependency#hash_B0EF950F4A9397DE272EB604BFFDCCBBFECBAF13;Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2466.log
-#
-# If you would like to submit a bug report, please include
-# instructions how to reproduce the bug and visit:
-# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
-#
-Aborted
-
-Done. Build script exited with: 1
-', 1816255, 'Artifact::Log', '2012-07-09 12:05:22.530000', '2012-07-09 12:05:23.316000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507141, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 3.01 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816256, 'Artifact::Log', '2012-07-09 12:05:22.540000', '2012-07-09 12:05:23.043000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507142, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-#
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0xb18ff900, pid=2461, tid=3077524336
-#
-# JRE version: 7.0_05-b05
-# Java VM: Java HotSpot(TM) Server VM (23.1-b03 mixed mode linux-x86 )
-# Problematic frame:
-# J org.jruby.lexer.yacc.RubyYaccLexer.yylex()I
-#
-# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2461.log
-#
-# If you would like to submit a bug report, please visit:
-# http://bugreport.sun.com/bugreport/crash.jsp
-#
-Aborted
-
-Done. Build script exited with: 1
-', 1816257, 'Artifact::Log', '2012-07-09 12:05:22.550000', '2012-07-09 12:05:24.142000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507143, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.68 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816258, 'Artifact::Log', '2012-07-09 12:05:22.560000', '2012-07-09 12:05:23.927000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507144, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-Invalid gemspec in [/home/vagrant/.rvm/gems/jruby-head/specifications/simplecov-html-0.5.3.gemspec]: null: /\A\s*([0-9]+(\.[0-9a-zA-Z]+)*)*\s*\z/
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.69 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816259, 'Artifact::Log', '2012-07-09 12:05:22.574000', '2012-07-09 12:05:24.247000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507145, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 193acbc858154b0d86a0ee41d932ca0083933731
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 3.13 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816260, 'Artifact::Log', '2012-07-09 12:05:22.583000', '2012-07-09 12:05:23.999000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507109, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-remote: Counting objects: 346, done.[K
-remote: Compressing objects: 0% (1/154) [Kremote: Compressing objects: 1% (2/154) [Kremote: Compressing objects: 2% (4/154) [Kremote: Compressing objects: 3% (5/154) [Kremote: Compressing objects: 4% (7/154) [Kremote: Compressing objects: 5% (8/154) [Kremote: Compressing objects: 6% (10/154) [Kremote: Compressing objects: 7% (11/154) [Kremote: Compressing objects: 8% (13/154) [Kremote: Compressing objects: 9% (14/154) [Kremote: Compressing objects: 10% (16/154) [Kremote: Compressing objects: 11% (17/154) [Kremote: Compressing objects: 12% (19/154) [Kremote: Compressing objects: 13% (21/154) [Kremote: Compressing objects: 14% (22/154) [Kremote: Compressing objects: 15% (24/154) [Kremote: Compressing objects: 16% (25/154) [Kremote: Compressing objects: 17% (27/154) [Kremote: Compressing objects: 18% (28/154) [Kremote: Compressing objects: 19% (30/154) [Kremote: Compressing objects: 20% (31/154) [Kremote: Compressing objects: 21% (33/154) [Kremote: Compressing objects: 22% (34/154) [Kremote: Compressing objects: 23% (36/154) [Kremote: Compressing objects: 24% (37/154) [Kremote: Compressing objects: 25% (39/154) [Kremote: Compressing objects: 26% (41/154) [Kremote: Compressing objects: 27% (42/154) [Kremote: Compressing objects: 28% (44/154) [Kremote: Compressing objects: 29% (45/154) [Kremote: Compressing objects: 30% (47/154) [Kremote: Compressing objects: 31% (48/154) [Kremote: Compressing objects: 32% (50/154) [Kremote: Compressing objects: 33% (51/154) [Kremote: Compressing objects: 34% (53/154) [Kremote: Compressing objects: 35% (54/154) [Kremote: Compressing objects: 36% (56/154) [Kremote: Compressing objects: 37% (57/154) [Kremote: Compressing objects: 38% (59/154) [Kremote: Compressing objects: 39% (61/154) [Kremote: Compressing objects: 40% (62/154) [Kremote: Compressing objects: 41% (64/154) [Kremote: Compressing objects: 42% (65/154) [Kremote: Compressing objects: 43% (67/154) [Kremote: Compressing objects: 44% (68/154) [Kremote: Compressing objects: 45% (70/154) [Kremote: Compressing objects: 46% (71/154) [Kremote: Compressing objects: 47% (73/154) [Kremote: Compressing objects: 48% (74/154) [Kremote: Compressing objects: 49% (76/154) [Kremote: Compressing objects: 50% (77/154) [Kremote: Compressing objects: 51% (79/154) [Kremote: Compressing objects: 52% (81/154) [Kremote: Compressing objects: 53% (82/154) [Kremote: Compressing objects: 54% (84/154) [Kremote: Compressing objects: 55% (85/154) [Kremote: Compressing objects: 56% (87/154) [Kremote: Compressing objects: 57% (88/154) [Kremote: Compressing objects: 58% (90/154) [Kremote: Compressing objects: 59% (91/154) [Kremote: Compressing objects: 60% (93/154) [Kremote: Compressing objects: 61% (94/154) [Kremote: Compressing objects: 62% (96/154) [Kremote: Compressing objects: 63% (98/154) [Kremote: Compressing objects: 64% (99/154) [Kremote: Compressing objects: 65% (101/154) [Kremote: Compressing objects: 66% (102/154) [Kremote: Compressing objects: 67% (104/154) [Kremote: Compressing objects: 68% (105/154) [Kremote: Compressing objects: 69% (107/154) [Kremote: Compressing objects: 70% (108/154) [Kremote: Compressing objects: 71% (110/154) [Kremote: Compressing objects: 72% (111/154) [Kremote: Compressing objects: 73% (113/154) [Kremote: Compressing objects: 74% (114/154) [Kremote: Compressing objects: 75% (116/154) [Kremote: Compressing objects: 76% (118/154) [Kremote: Compressing objects: 77% (119/154) [Kremote: Compressing objects: 78% (121/154) [Kremote: Compressing objects: 79% (122/154) [Kremote: Compressing objects: 80% (124/154) [Kremote: Compressing objects: 81% (125/154) [Kremote: Compressing objects: 82% (127/154) [Kremote: Compressing objects: 83% (128/154) [Kremote: Compressing objects: 84% (130/154) [Kremote: Compressing objects: 85% (131/154) [Kremote: Compressing objects: 86% (133/154) [Kremote: Compressing objects: 87% (134/154) [Kremote: Compressing objects: 88% (136/154) [Kremote: Compressing objects: 89% (138/154) [Kremote: Compressing objects: 90% (139/154) [Kremote: Compressing objects: 91% (141/154) [Kremote: Compressing objects: 92% (142/154) [Kremote: Compressing objects: 93% (144/154) [Kremote: Compressing objects: 94% (145/154) [Kremote: Compressing objects: 95% (147/154) [Kremote: Compressing objects: 96% (148/154) [Kremote: Compressing objects: 97% (150/154) [Kremote: Compressing objects: 98% (151/154) [Kremote: Compressing objects: 99% (153/154) [Kremote: Compressing objects: 100% (154/154) [Kremote: Compressing objects: 100% (154/154), done.[K
-Receiving objects: 0% (1/346) Receiving objects: 1% (4/346) Receiving objects: 2% (7/346) Receiving objects: 3% (11/346) Receiving objects: 4% (14/346) Receiving objects: 5% (18/346) Receiving objects: 6% (21/346) Receiving objects: 7% (25/346) Receiving objects: 8% (28/346) Receiving objects: 9% (32/346) Receiving objects: 10% (35/346) Receiving objects: 11% (39/346) Receiving objects: 12% (42/346) Receiving objects: 13% (45/346) Receiving objects: 14% (49/346) Receiving objects: 15% (52/346) Receiving objects: 16% (56/346) Receiving objects: 17% (59/346) Receiving objects: 18% (63/346) Receiving objects: 19% (66/346) Receiving objects: 20% (70/346) Receiving objects: 21% (73/346) Receiving objects: 22% (77/346) Receiving objects: 23% (80/346) Receiving objects: 24% (84/346) Receiving objects: 25% (87/346) Receiving objects: 26% (90/346) Receiving objects: 27% (94/346) remote: Total 346 (delta 190), reused 331 (delta 187)[K
-Receiving objects: 28% (97/346), 28.00 KiB | 36 KiB/s Receiving objects: 29% (101/346), 28.00 KiB | 36 KiB/s Receiving objects: 30% (104/346), 28.00 KiB | 36 KiB/s Receiving objects: 31% (108/346), 28.00 KiB | 36 KiB/s Receiving objects: 32% (111/346), 28.00 KiB | 36 KiB/s Receiving objects: 33% (115/346), 28.00 KiB | 36 KiB/s Receiving objects: 34% (118/346), 28.00 KiB | 36 KiB/s Receiving objects: 35% (122/346), 28.00 KiB | 36 KiB/s Receiving objects: 36% (125/346), 28.00 KiB | 36 KiB/s Receiving objects: 37% (129/346), 28.00 KiB | 36 KiB/s Receiving objects: 38% (132/346), 28.00 KiB | 36 KiB/s Receiving objects: 39% (135/346), 28.00 KiB | 36 KiB/s Receiving objects: 40% (139/346), 28.00 KiB | 36 KiB/s Receiving objects: 41% (142/346), 28.00 KiB | 36 KiB/s Receiving objects: 42% (146/346), 28.00 KiB | 36 KiB/s Receiving objects: 43% (149/346), 28.00 KiB | 36 KiB/s Receiving objects: 44% (153/346), 28.00 KiB | 36 KiB/s Receiving objects: 45% (156/346), 28.00 KiB | 36 KiB/s Receiving objects: 46% (160/346), 28.00 KiB | 36 KiB/s Receiving objects: 47% (163/346), 28.00 KiB | 36 KiB/s Receiving objects: 48% (167/346), 28.00 KiB | 36 KiB/s Receiving objects: 49% (170/346), 28.00 KiB | 36 KiB/s Receiving objects: 50% (173/346), 28.00 KiB | 36 KiB/s Receiving objects: 51% (177/346), 28.00 KiB | 36 KiB/s Receiving objects: 52% (180/346), 28.00 KiB | 36 KiB/s Receiving objects: 53% (184/346), 28.00 KiB | 36 KiB/s Receiving objects: 54% (187/346), 28.00 KiB | 36 KiB/s Receiving objects: 55% (191/346), 28.00 KiB | 36 KiB/s Receiving objects: 56% (194/346), 28.00 KiB | 36 KiB/s Receiving objects: 57% (198/346), 28.00 KiB | 36 KiB/s Receiving objects: 58% (201/346), 28.00 KiB | 36 KiB/s Receiving objects: 59% (205/346), 28.00 KiB | 36 KiB/s Receiving objects: 60% (208/346), 28.00 KiB | 36 KiB/s Receiving objects: 61% (212/346), 28.00 KiB | 36 KiB/s Receiving objects: 62% (215/346), 28.00 KiB | 36 KiB/s Receiving objects: 63% (218/346), 28.00 KiB | 36 KiB/s Receiving objects: 64% (222/346), 28.00 KiB | 36 KiB/s Receiving objects: 65% (225/346), 28.00 KiB | 36 KiB/s Receiving objects: 66% (229/346), 28.00 KiB | 36 KiB/s Receiving objects: 67% (232/346), 28.00 KiB | 36 KiB/s Receiving objects: 68% (236/346), 28.00 KiB | 36 KiB/s Receiving objects: 69% (239/346), 28.00 KiB | 36 KiB/s Receiving objects: 70% (243/346), 28.00 KiB | 36 KiB/s Receiving objects: 71% (246/346), 28.00 KiB | 36 KiB/s Receiving objects: 72% (250/346), 28.00 KiB | 36 KiB/s Receiving objects: 73% (253/346), 28.00 KiB | 36 KiB/s Receiving objects: 74% (257/346), 28.00 KiB | 36 KiB/s Receiving objects: 75% (260/346), 28.00 KiB | 36 KiB/s Receiving objects: 76% (263/346), 28.00 KiB | 36 KiB/s Receiving objects: 77% (267/346), 28.00 KiB | 36 KiB/s Receiving objects: 78% (270/346), 28.00 KiB | 36 KiB/s Receiving objects: 79% (274/346), 28.00 KiB | 36 KiB/s Receiving objects: 80% (277/346), 28.00 KiB | 36 KiB/s Receiving objects: 81% (281/346), 28.00 KiB | 36 KiB/s Receiving objects: 82% (284/346), 28.00 KiB | 36 KiB/s Receiving objects: 83% (288/346), 28.00 KiB | 36 KiB/s Receiving objects: 84% (291/346), 28.00 KiB | 36 KiB/s Receiving objects: 85% (295/346), 28.00 KiB | 36 KiB/s Receiving objects: 86% (298/346), 28.00 KiB | 36 KiB/s Receiving objects: 87% (302/346), 28.00 KiB | 36 KiB/s Receiving objects: 88% (305/346), 28.00 KiB | 36 KiB/s Receiving objects: 89% (308/346), 28.00 KiB | 36 KiB/s Receiving objects: 90% (312/346), 28.00 KiB | 36 KiB/s Receiving objects: 91% (315/346), 28.00 KiB | 36 KiB/s Receiving objects: 92% (319/346), 28.00 KiB | 36 KiB/s Receiving objects: 93% (322/346), 28.00 KiB | 36 KiB/s Receiving objects: 94% (326/346), 28.00 KiB | 36 KiB/s Receiving objects: 95% (329/346), 28.00 KiB | 36 KiB/s Receiving objects: 96% (333/346), 28.00 KiB | 36 KiB/s Receiving objects: 97% (336/346), 28.00 KiB | 36 KiB/s Receiving objects: 98% (340/346), 28.00 KiB | 36 KiB/s Receiving objects: 99% (343/346), 28.00 KiB | 36 KiB/s Receiving objects: 100% (346/346), 28.00 KiB | 36 KiB/s Receiving objects: 100% (346/346), 45.42 KiB | 36 KiB/s, done.
-Resolving deltas: 0% (0/190) Resolving deltas: 15% (29/190) Resolving deltas: 25% (49/190) Resolving deltas: 26% (50/190) Resolving deltas: 28% (54/190) Resolving deltas: 30% (57/190) Resolving deltas: 31% (59/190) Resolving deltas: 34% (65/190) Resolving deltas: 37% (71/190) Resolving deltas: 38% (73/190) Resolving deltas: 42% (81/190) Resolving deltas: 46% (88/190) Resolving deltas: 47% (90/190) Resolving deltas: 48% (92/190) Resolving deltas: 52% (99/190) Resolving deltas: 54% (103/190) Resolving deltas: 56% (108/190) Resolving deltas: 62% (118/190) Resolving deltas: 63% (120/190) Resolving deltas: 64% (122/190) Resolving deltas: 65% (124/190) Resolving deltas: 66% (126/190) Resolving deltas: 68% (130/190) Resolving deltas: 74% (142/190) Resolving deltas: 75% (143/190) Resolving deltas: 85% (163/190) Resolving deltas: 87% (166/190) Resolving deltas: 89% (170/190) Resolving deltas: 92% (175/190) Resolving deltas: 93% (178/190) Resolving deltas: 97% (185/190) Resolving deltas: 100% (190/190) Resolving deltas: 100% (190/190), done.
-Fetching https://github.com/roidrage/hubble.git
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Unpacking objects: 6% (1/16) Unpacking objects: 12% (2/16) Unpacking objects: 18% (3/16) Unpacking objects: 25% (4/16) Unpacking objects: 31% (5/16) Unpacking objects: 37% (6/16) Unpacking objects: 43% (7/16) Unpacking objects: 50% (8/16) Unpacking objects: 56% (9/16) Unpacking objects: 62% (10/16) Unpacking objects: 68% (11/16) Unpacking objects: 75% (12/16) Unpacking objects: 81% (13/16) Unpacking objects: 87% (14/16) Unpacking objects: 93% (15/16) Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing amq-protocol (0.9.4)
-Installing eventmachine (0.12.10) with native extensions
-Installing amq-client (0.9.4)
-Installing amqp (0.9.7)
-Installing atomic (1.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from amqp:
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] A couple of concurrency issues (race conditions) fixed for apps that actively close and/or reuse channels
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] AMQP::Queue#initialize with :nowait => true no longer fails with NoMethodError
-[[32mVersion 0.9.0 to 0.9.4[0m] [FEATURE] Automatic recovery mode now works for publishers
-[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.............................................................................
-
-Finished in 2.03 seconds
-77 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816213, 'Artifact::Log', '2012-07-09 11:59:25.284000', '2012-07-09 11:59:26.097000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507110, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.73 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816214, 'Artifact::Log', '2012-07-09 11:59:25.294000', '2012-07-09 11:59:25.764000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507111, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.79 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816215, 'Artifact::Log', '2012-07-09 11:59:25.305000', '2012-07-09 11:59:26.328000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507112, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 3.16 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816216, 'Artifact::Log', '2012-07-09 11:59:25.317000', '2012-07-09 11:59:26.227000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507113, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.82 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816217, 'Artifact::Log', '2012-07-09 11:59:25.327000', '2012-07-09 11:59:26.499000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507114, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 3.77 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816218, 'Artifact::Log', '2012-07-09 11:59:25.336000', '2012-07-09 11:59:26.563000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507115, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-08 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.64 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816219, 'Artifact::Log', '2012-07-09 11:59:25.362000', '2012-07-09 11:59:26.430000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507116, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-.......................................................................
-
-Finished in 2.71 seconds
-71 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1816220, 'Artifact::Log', '2012-07-09 11:59:25.376000', '2012-07-09 11:59:26.820000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507117, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.0)
-Installing rspec (2.11.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-#
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# Internal Error (sharedRuntime.cpp:835), pid=2481, tid=3078273904
-# guarantee(cb->is_adapter_blob() || cb->is_method_handles_adapter_blob()) failed: exception happened outside interpreter, nmethods and vtable stubs (1)
-#
-# JRE version: 7.0_147-b147
-# Java VM: OpenJDK Server VM (21.0-b17 mixed mode linux-x86 )
-# Derivative: IcedTea7 2.0
-# Distribution: Ubuntu 11.10, package 7~b147-2.0-0ubuntu0.11.10.1
-# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2481.log
-Segmentation fault
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb failed
-
-Tasks: TOP => default => spec
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1816221, 'Artifact::Log', '2012-07-09 11:59:25.387000', '2012-07-09 11:59:26.881000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1507118, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf ec52ebda6aa2e4f77b8f89f13addea6cd4090ea5
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-08 b836c0f) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-#
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0x001d001e, pid=2297, tid=2625280880
-#
-# JRE version: 7.0_05-b05
-# Java VM: Java HotSpot(TM) Server VM (23.1-b03 mixed mode linux-x86 )
-# Problematic frame:
-# C 0x001d001e
-#
-# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2297.log
-#
-# If you would like to submit a bug report, please visit:
-# http://bugreport.sun.com/bugreport/crash.jsp
-#
-Aborted
-
-
-install: ''bundle install'' returned false.
-Done. Build script exited with: 1
-', 1816222, 'Artifact::Log', '2012-07-09 11:59:25.398000', '2012-07-09 11:59:26.727000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498620, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-remote: Counting objects: 346, done.[K
-remote: Compressing objects: 0% (1/154) [Kremote: Compressing objects: 1% (2/154) [Kremote: Compressing objects: 2% (4/154) [Kremote: Compressing objects: 3% (5/154) [Kremote: Compressing objects: 4% (7/154) [Kremote: Compressing objects: 5% (8/154) [Kremote: Compressing objects: 6% (10/154) [Kremote: Compressing objects: 7% (11/154) [Kremote: Compressing objects: 8% (13/154) [Kremote: Compressing objects: 9% (14/154) [Kremote: Compressing objects: 10% (16/154) [Kremote: Compressing objects: 11% (17/154) [Kremote: Compressing objects: 12% (19/154) [Kremote: Compressing objects: 13% (21/154) [Kremote: Compressing objects: 14% (22/154) [Kremote: Compressing objects: 15% (24/154) [Kremote: Compressing objects: 16% (25/154) [Kremote: Compressing objects: 17% (27/154) [Kremote: Compressing objects: 18% (28/154) [Kremote: Compressing objects: 19% (30/154) [Kremote: Compressing objects: 20% (31/154) [Kremote: Compressing objects: 21% (33/154) [Kremote: Compressing objects: 22% (34/154) [Kremote: Compressing objects: 23% (36/154) [Kremote: Compressing objects: 24% (37/154) [Kremote: Compressing objects: 25% (39/154) [Kremote: Compressing objects: 26% (41/154) [Kremote: Compressing objects: 27% (42/154) [Kremote: Compressing objects: 28% (44/154) [Kremote: Compressing objects: 29% (45/154) [Kremote: Compressing objects: 30% (47/154) [Kremote: Compressing objects: 31% (48/154) [Kremote: Compressing objects: 32% (50/154) [Kremote: Compressing objects: 33% (51/154) [Kremote: Compressing objects: 34% (53/154) [Kremote: Compressing objects: 35% (54/154) [Kremote: Compressing objects: 36% (56/154) [Kremote: Compressing objects: 37% (57/154) [Kremote: Compressing objects: 38% (59/154) [Kremote: Compressing objects: 39% (61/154) [Kremote: Compressing objects: 40% (62/154) [Kremote: Compressing objects: 41% (64/154) [Kremote: Compressing objects: 42% (65/154) [Kremote: Compressing objects: 43% (67/154) [Kremote: Compressing objects: 44% (68/154) [Kremote: Compressing objects: 45% (70/154) [Kremote: Compressing objects: 46% (71/154) [Kremote: Compressing objects: 47% (73/154) [Kremote: Compressing objects: 48% (74/154) [Kremote: Compressing objects: 49% (76/154) [Kremote: Compressing objects: 50% (77/154) [Kremote: Compressing objects: 51% (79/154) [Kremote: Compressing objects: 52% (81/154) [Kremote: Compressing objects: 53% (82/154) [Kremote: Compressing objects: 54% (84/154) [Kremote: Compressing objects: 55% (85/154) [Kremote: Compressing objects: 56% (87/154) [Kremote: Compressing objects: 57% (88/154) [Kremote: Compressing objects: 58% (90/154) [Kremote: Compressing objects: 59% (91/154) [Kremote: Compressing objects: 60% (93/154) [Kremote: Compressing objects: 61% (94/154) [Kremote: Compressing objects: 62% (96/154) [Kremote: Compressing objects: 63% (98/154) [Kremote: Compressing objects: 64% (99/154) [Kremote: Compressing objects: 65% (101/154) [Kremote: Compressing objects: 66% (102/154) [Kremote: Compressing objects: 67% (104/154) [Kremote: Compressing objects: 68% (105/154) [Kremote: Compressing objects: 69% (107/154) [Kremote: Compressing objects: 70% (108/154) [Kremote: Compressing objects: 71% (110/154) [Kremote: Compressing objects: 72% (111/154) [Kremote: Compressing objects: 73% (113/154) [Kremote: Compressing objects: 74% (114/154) [Kremote: Compressing objects: 75% (116/154) [Kremote: Compressing objects: 76% (118/154) [Kremote: Compressing objects: 77% (119/154) [Kremote: Compressing objects: 78% (121/154) [Kremote: Compressing objects: 79% (122/154) [Kremote: Compressing objects: 80% (124/154) [Kremote: Compressing objects: 81% (125/154) [Kremote: Compressing objects: 82% (127/154) [Kremote: Compressing objects: 83% (128/154) [Kremote: Compressing objects: 84% (130/154) [Kremote: Compressing objects: 85% (131/154) [Kremote: Compressing objects: 86% (133/154) [Kremote: Compressing objects: 87% (134/154) [Kremote: Compressing objects: 88% (136/154) [Kremote: Compressing objects: 89% (138/154) [Kremote: Compressing objects: 90% (139/154) [Kremote: Compressing objects: 91% (141/154) [Kremote: Compressing objects: 92% (142/154) [Kremote: Compressing objects: 93% (144/154) [Kremote: Compressing objects: 94% (145/154) [Kremote: Compressing objects: 95% (147/154) [Kremote: Compressing objects: 96% (148/154) [Kremote: Compressing objects: 97% (150/154) [Kremote: Compressing objects: 98% (151/154) [Kremote: Compressing objects: 99% (153/154) [Kremote: Compressing objects: 100% (154/154) [Kremote: Compressing objects: 100% (154/154), done.[K
-remote: Total 346 (delta 190), reused 331 (delta 187)[K
-Receiving objects: 0% (1/346) Receiving objects: 1% (4/346) Receiving objects: 2% (7/346) Receiving objects: 3% (11/346) Receiving objects: 4% (14/346) Receiving objects: 5% (18/346) Receiving objects: 6% (21/346) Receiving objects: 7% (25/346) Receiving objects: 8% (28/346) Receiving objects: 9% (32/346) Receiving objects: 10% (35/346) Receiving objects: 11% (39/346) Receiving objects: 12% (42/346) Receiving objects: 13% (45/346) Receiving objects: 14% (49/346) Receiving objects: 15% (52/346) Receiving objects: 16% (56/346) Receiving objects: 17% (59/346) Receiving objects: 18% (63/346) Receiving objects: 19% (66/346) Receiving objects: 20% (70/346) Receiving objects: 21% (73/346) Receiving objects: 22% (77/346) Receiving objects: 23% (80/346) Receiving objects: 24% (84/346) Receiving objects: 25% (87/346) Receiving objects: 26% (90/346) Receiving objects: 27% (94/346) Receiving objects: 28% (97/346) Receiving objects: 29% (101/346) Receiving objects: 30% (104/346) Receiving objects: 31% (108/346) Receiving objects: 32% (111/346) Receiving objects: 33% (115/346) Receiving objects: 34% (118/346) Receiving objects: 35% (122/346) Receiving objects: 36% (125/346) Receiving objects: 37% (129/346) Receiving objects: 38% (132/346) Receiving objects: 39% (135/346) Receiving objects: 40% (139/346) Receiving objects: 41% (142/346) Receiving objects: 42% (146/346) Receiving objects: 43% (149/346) Receiving objects: 44% (153/346) Receiving objects: 45% (156/346) Receiving objects: 46% (160/346) Receiving objects: 47% (163/346) Receiving objects: 48% (167/346) Receiving objects: 49% (170/346) Receiving objects: 50% (173/346) Receiving objects: 51% (177/346) Receiving objects: 52% (180/346) Receiving objects: 53% (184/346) Receiving objects: 54% (187/346) Receiving objects: 55% (191/346) Receiving objects: 56% (194/346) Receiving objects: 57% (198/346) Receiving objects: 58% (201/346) Receiving objects: 59% (205/346) Receiving objects: 60% (208/346) Receiving objects: 61% (212/346) Receiving objects: 62% (215/346) Receiving objects: 63% (218/346) Receiving objects: 64% (222/346) Receiving objects: 65% (225/346) Receiving objects: 66% (229/346) Receiving objects: 67% (232/346) Receiving objects: 68% (236/346) Receiving objects: 69% (239/346) Receiving objects: 70% (243/346) Receiving objects: 71% (246/346) Receiving objects: 72% (250/346) Receiving objects: 73% (253/346) Receiving objects: 74% (257/346) Receiving objects: 75% (260/346) Receiving objects: 76% (263/346) Receiving objects: 77% (267/346) Receiving objects: 78% (270/346) Receiving objects: 79% (274/346) Receiving objects: 80% (277/346) Receiving objects: 81% (281/346) Receiving objects: 82% (284/346) Receiving objects: 83% (288/346) Receiving objects: 84% (291/346) Receiving objects: 85% (295/346) Receiving objects: 86% (298/346) Receiving objects: 87% (302/346) Receiving objects: 88% (305/346) Receiving objects: 89% (308/346) Receiving objects: 90% (312/346) Receiving objects: 91% (315/346) Receiving objects: 92% (319/346) Receiving objects: 93% (322/346) Receiving objects: 94% (326/346) Receiving objects: 95% (329/346) Receiving objects: 96% (333/346) Receiving objects: 97% (336/346) Receiving objects: 98% (340/346) Receiving objects: 99% (343/346) Receiving objects: 100% (346/346) Receiving objects: 100% (346/346), 45.42 KiB, done.
-Resolving deltas: 0% (0/190) Resolving deltas: 15% (29/190) Resolving deltas: 25% (49/190) Resolving deltas: 26% (50/190) Resolving deltas: 28% (54/190) Resolving deltas: 30% (57/190) Resolving deltas: 31% (59/190) Resolving deltas: 34% (65/190) Resolving deltas: 37% (71/190) Resolving deltas: 38% (73/190) Resolving deltas: 42% (81/190) Resolving deltas: 46% (88/190) Resolving deltas: 47% (90/190) Resolving deltas: 48% (92/190) Resolving deltas: 52% (99/190) Resolving deltas: 54% (103/190) Resolving deltas: 56% (108/190) Resolving deltas: 62% (118/190) Resolving deltas: 63% (120/190) Resolving deltas: 64% (122/190) Resolving deltas: 65% (124/190) Resolving deltas: 66% (126/190) Resolving deltas: 68% (130/190) Resolving deltas: 74% (142/190) Resolving deltas: 75% (143/190) Resolving deltas: 85% (163/190) Resolving deltas: 87% (166/190) Resolving deltas: 89% (170/190) Resolving deltas: 92% (175/190) Resolving deltas: 93% (178/190) Resolving deltas: 97% (185/190) Resolving deltas: 100% (190/190) Resolving deltas: 100% (190/190), done.
-Fetching https://github.com/roidrage/hubble.git
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Unpacking objects: 6% (1/16) Unpacking objects: 12% (2/16) Unpacking objects: 18% (3/16) Unpacking objects: 25% (4/16) Unpacking objects: 31% (5/16) Unpacking objects: 37% (6/16) Unpacking objects: 43% (7/16) Unpacking objects: 50% (8/16) Unpacking objects: 56% (9/16) Unpacking objects: 62% (10/16) Unpacking objects: 68% (11/16) Unpacking objects: 75% (12/16) Unpacking objects: 81% (13/16) Unpacking objects: 87% (14/16) Unpacking objects: 93% (15/16) Unpacking objects: 100% (16/16) Unpacking objects: 100% (16/16), done.
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing amq-protocol (0.9.4)
-Installing eventmachine (0.12.10) with native extensions
-Installing amq-client (0.9.4)
-Installing amqp (0.9.7)
-Installing atomic (1.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from amqp:
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] A couple of concurrency issues (race conditions) fixed for apps that actively close and/or reuse channels
-[[32mVersion 0.9.0 to 0.9.4[0m] [BUG] AMQP::Queue#initialize with :nowait => true no longer fails with NoMethodError
-[[32mVersion 0.9.0 to 0.9.4[0m] [FEATURE] Automatic recovery mode now works for publishers
-[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-..............................................................................
-
-Finished in 2.02 seconds
-78 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804637, 'Artifact::Log', '2012-07-07 18:45:30.712000', '2012-07-07 18:46:03.630000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498621, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.67 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804638, 'Artifact::Log', '2012-07-07 18:45:30.733000', '2012-07-07 18:46:04.856000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498622, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.85 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804639, 'Artifact::Log', '2012-07-07 18:45:30.752000', '2012-07-07 18:46:05.863000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498623, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.98 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804640, 'Artifact::Log', '2012-07-07 18:45:30.768000', '2012-07-07 18:46:07.083000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498624, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-06-28 26e08ba) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.5 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804641, 'Artifact::Log', '2012-07-07 18:45:30.793000', '2012-07-07 18:46:13.943000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498625, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-06-28 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.66 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804642, 'Artifact::Log', '2012-07-07 18:45:30.808000', '2012-07-07 18:46:18.672000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498626, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-06-28 26e08ba) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 2.66 seconds
-72 examples, 0 failures
-
-
-Done. Build script exited with: 0
-', 1804643, 'Artifact::Log', '2012-07-07 18:45:30.820000', '2012-07-07 18:46:37.285000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498627, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_23"
-OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
-OpenJDK Client VM (build 20.0-b11, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_23
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-06-28 fd36036) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.08 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804644, 'Artifact::Log', '2012-07-07 18:45:30.835000', '2012-07-07 18:46:53.017000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498628, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=openjdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk7
-Switching to OpenJDK7 (java-1.7.0-openjdk-i386), JAVA_HOME will be set to /usr/lib/jvm/java-7-openjdk-i386
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.7.0_147-icedtea"
-OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
-OpenJDK Client VM (build 21.0-b17, mixed mode, sharing)
-$ javac -version
-javac 1.7.0_147
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-06-28 fd36036) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0) #
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0xb1faf66a, pid=2144, tid=3077933936
-#
-# JRE version: 7.0_147-b147
-# Java VM: OpenJDK Server VM (21.0-b17 mixed mode linux-x86 )
-# Derivative: IcedTea7 2.0
-# Distribution: Ubuntu 11.10, package 7~b147-2.0-0ubuntu0.11.10.1
-# Problematic frame:
-# J com.jcraft.jzlib.InfBlocks.proc(Lcom/jcraft/jzlib/ZStream;I)I
-#
-# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-support/hs_err_pid2144.log
-#
-# If you would like to submit a bug report, please include
-# instructions on how to reproduce the bug and visit:
-# https://bugs.launchpad.net/ubuntu/+source/openjdk-7/
-#
-Aborted
-
-
-install: ''bundle install'' returned false.
-Done. Build script exited with: 1
-', 1804645, 'Artifact::Log', '2012-07-07 18:45:30.854000', '2012-07-07 18:47:31.464000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1498629, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-support.git travis-ci/travis-support
-$ cd travis-ci/travis-support
-$ git checkout -qf 1e76ebd1108dd918bd0d17c5f241a7984292b31f
-$ export TRAVIS_JDK_VERSION=oraclejdk7
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use oraclejdk7
-Switching to Oracle JDK7 (java-7-oracle), JAVA_HOME will be set to /usr/lib/jvm/java-7-oracle
-update-alternatives: error: no alternatives for -javaplugin.so.
-$ java -version
-java version "1.7.0_05"
-Java(TM) SE Runtime Environment (build 1.7.0_05-b05)
-Java HotSpot(TM) Client VM (build 23.1-b03, mixed mode)
-$ javac -version
-javac 1.7.0_05
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-06-28 fd36036) (Java HotSpot(TM) Server VM 1.7.0_05) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-support/Gemfile
-$ bundle install
-Fetching https://github.com/roidrage/metriks.git
-Fetching https://github.com/roidrage/hubble.git
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing atomic (1.0.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing diff-lcs (1.1.3)
-Installing gem-patching (0.0.3)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from https://github.com/roidrage/hubble.git (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Using metriks (0.8.0) from https://github.com/roidrage/metriks.git (at source)
-Installing mocha (0.11.4)
-Installing net-ssh (2.1.4)
-Installing net-ssh-shell (0.2.0)
-Installing newrelic_rpm (3.3.5)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing simplecov-html (0.5.3)
-Installing simplecov (0.6.4)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/core_ext/array/flatten_once_spec.rb ./spec/core_ext/ostruct/hash_access_spec.rb ./spec/core_ext/module/include_spec.rb ./spec/core_ext/module/prepend_to_spec.rb ./spec/core_ext/hash/slice_spec.rb ./spec/core_ext/hash/deep_symbolize_keys_spec.rb ./spec/core_ext/hash/deep_merge_spec.rb ./spec/core_ext/active_record/base_spec.rb ./spec/travis/helpers_spec.rb ./spec/travis/instrumentation_spec.rb ./spec/travis/event_logger_spec.rb ./spec/travis/new_relic_spec.rb ./spec/travis/async_spec.rb ./spec/travis/logging_spec.rb ./spec/travis/assertions_spec.rb ./spec/travis/exceptions/handling_spec.rb ./spec/travis/exceptions/reporter_spec.rb ./spec/travis/support/amqp/bunny_spec.rb ./spec/travis/support/amqp/bunny/publisher_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-support/config/newrelic.yml
-........................................................................
-
-Finished in 3.43 seconds
-72 examples, 0 failures
-
-Done. Build script exited with: 0
-', 1804646, 'Artifact::Log', '2012-07-07 18:45:30.869000', '2012-07-07 18:47:39.779000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572765, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/81/merge:
-remote: Counting objects: 14, done.[K
-remote: Compressing objects: 25% (1/4) [Kremote: Compressing objects: 50% (2/4) [Kremote: Compressing objects: 75% (3/4) [Kremote: Compressing objects: 100% (4/4) [Kremote: Compressing objects: 100% (4/4), done.[K
-remote: Total 8 (delta 4), reused 8 (delta 4)[K
-Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/81/merge -> FETCH_HEAD
-$ git checkout -qf 42b82fb8fc99986c6d1999c8f39272a292731b4e
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081), 148.00 KiB | 274 KiB/s Receiving objects: 94% (1017/1081), 148.00 KiB | 274 KiB/s Receiving objects: 95% (1027/1081), 148.00 KiB | 274 KiB/s Receiving objects: 96% (1038/1081), 148.00 KiB | 274 KiB/s Receiving objects: 97% (1049/1081), 148.00 KiB | 274 KiB/s Receiving objects: 98% (1060/1081), 148.00 KiB | 274 KiB/s Receiving objects: 99% (1071/1081), 148.00 KiB | 274 KiB/s Receiving objects: 100% (1081/1081), 148.00 KiB | 274 KiB/s Receiving objects: 100% (1081/1081), 157.95 KiB | 274 KiB/s, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://gist.github.com/2087829.git
-remote: Counting objects: 5, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 5 (delta 0), reused 0 (delta 0)[K
-Receiving objects: 20% (1/5) Receiving objects: 40% (2/5) Receiving objects: 60% (3/5) Receiving objects: 80% (4/5) Receiving objects: 100% (5/5) Receiving objects: 100% (5/5), done.
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Installing bunny (0.7.9)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.7.8[0m] test suite cleanup (eliminated some race conditions related to queue.message_count)
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0124s
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0047s
--- create_table("builds", {:force=>true})
- -> 0.0054s
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0031s
--- create_table("commits", {:force=>true})
- -> 0.0064s
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0026s
--- create_table("jobs", {:force=>true})
- -> 0.0124s
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0036s
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0066s
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0037s
--- create_table("memberships", {:force=>true})
- -> 0.0033s
--- create_table("organizations", {:force=>true})
- -> 0.0040s
--- create_table("permissions", {:force=>true})
- -> 0.0034s
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0022s
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0029s
--- create_table("repositories", {:force=>true})
- -> 0.0043s
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0024s
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0029s
--- create_table("requests", {:force=>true})
- -> 0.0050s
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0023s
--- create_table("ssl_keys", {:force=>true})
- -> 0.0039s
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0020s
--- create_table("tokens", {:force=>true})
- -> 0.0034s
--- create_table("urls", {:force=>true})
- -> 0.0039s
--- create_table("users", {:force=>true})
- -> 0.0039s
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0025s
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0027s
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0034s
--- create_table("workers", {:force=>true})
- -> 0.0044s
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0025s
--- initialize_schema_migrations_table()
- -> 0.0041s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0290s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-lib/travis/config.rb:71: warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 53.1 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1905993, 'Artifact::Log', '2012-07-19 16:51:13.999000', '2012-07-19 16:51:14.992000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572766, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/81/merge:
-remote: Counting objects: 14, done.[K
-remote: Compressing objects: 25% (1/4) [Kremote: Compressing objects: 50% (2/4) [Kremote: Compressing objects: 75% (3/4) [Kremote: Compressing objects: 100% (4/4) [Kremote: Compressing objects: 100% (4/4), done.[K
-remote: Total 8 (delta 4), reused 8 (delta 4)[K
-Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/81/merge -> FETCH_HEAD
-$ git checkout -qf 42b82fb8fc99986c6d1999c8f39272a292731b4e
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0140s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0260s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0370s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0480s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0210s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0160s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0240s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0180s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0160s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0600s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0870s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0360s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0420s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0750s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0300s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0290s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0200s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0280s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0380s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0220s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0990s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
- pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-./lib/travis/config.rb:71 warning: already initialized constant HOSTS
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 168.91 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1905994, 'Artifact::Log', '2012-07-19 16:51:14.014000', '2012-07-19 16:51:14.612000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572767, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/81/merge:
-remote: Counting objects: 14, done.[K
-remote: Compressing objects: 25% (1/4) [Kremote: Compressing objects: 50% (2/4) [Kremote: Compressing objects: 75% (3/4) [Kremote: Compressing objects: 100% (4/4) [Kremote: Compressing objects: 100% (4/4), done.[K
-remote: Total 8 (delta 4), reused 8 (delta 4)[K
-Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/81/merge -> FETCH_HEAD
-$ git checkout -qf 42b82fb8fc99986c6d1999c8f39272a292731b4e
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-15 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0400s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0200s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0490s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0120s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0250s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0140s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0180s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0130s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0630s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0830s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0280s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0490s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0570s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0240s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0210s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0610s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0230s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.1050s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use th/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:71 warning: already initialized constant HOSTS
-e Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 169.62 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1905995, 'Artifact::Log', '2012-07-19 16:51:14.030000', '2012-07-19 16:51:15.449000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572768, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.9
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/81/merge:
-remote: Counting objects: 14, done.[K
-remote: Compressing objects: 25% (1/4) [Kremote: Compressing objects: 50% (2/4) [Kremote: Compressing objects: 75% (3/4) [Kremote: Compressing objects: 100% (4/4) [Kremote: Compressing objects: 100% (4/4), done.[K
-remote: Total 8 (delta 4), reused 8 (delta 4)[K
-Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/81/merge -> FETCH_HEAD
-$ git checkout -qf 42b82fb8fc99986c6d1999c8f39272a292731b4e
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0080s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0270s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0060s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0130s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0320s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0080s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0110s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0230s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0050s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0060s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0100s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0590s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 158.89 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1905996, 'Artifact::Log', '2012-07-19 16:51:14.046000', '2012-07-19 16:51:15.875000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572769, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.8
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/81/merge:
-remote: Counting objects: 14, done.[K
-remote: Compressing objects: 25% (1/4) [Kremote: Compressing objects: 50% (2/4) [Kremote: Compressing objects: 75% (3/4) [Kremote: Compressing objects: 100% (4/4) [Kremote: Compressing objects: 100% (4/4), done.[K
-remote: Total 8 (delta 4), reused 8 (delta 4)[K
-Unpacking objects: 12% (1/8) Unpacking objects: 25% (2/8) Unpacking objects: 37% (3/8) Unpacking objects: 50% (4/8) Unpacking objects: 62% (5/8) Unpacking objects: 75% (6/8) Unpacking objects: 87% (7/8) Unpacking objects: 100% (8/8) Unpacking objects: 100% (8/8), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/81/merge -> FETCH_HEAD
-$ git checkout -qf 42b82fb8fc99986c6d1999c8f39272a292731b4e
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.8.7-p357) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0240s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0190s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0190s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0130s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0160s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0290s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0160s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0070s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0140s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0640s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-./lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 177.25 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1905997, 'Artifact::Log', '2012-07-19 16:51:14.059000', '2012-07-19 16:51:16.458000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571665, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 33, done.[K
-remote: Compressing objects: 8% (1/12) [Kremote: Compressing objects: 16% (2/12) [Kremote: Compressing objects: 25% (3/12) [Kremote: Compressing objects: 33% (4/12) [Kremote: Compressing objects: 41% (5/12) [Kremote: Compressing objects: 50% (6/12) [Kremote: Compressing objects: 58% (7/12) [Kremote: Compressing objects: 66% (8/12) [Kremote: Compressing objects: 75% (9/12) [Kremote: Compressing objects: 83% (10/12) [Kremote: Compressing objects: 91% (11/12) [Kremote: Compressing objects: 100% (12/12) [Kremote: Compressing objects: 100% (12/12), done.[K
-remote: Total 21 (delta 14), reused 15 (delta 9)[K
-Unpacking objects: 4% (1/21) Unpacking objects: 9% (2/21) Unpacking objects: 14% (3/21) Unpacking objects: 19% (4/21) Unpacking objects: 23% (5/21) Unpacking objects: 28% (6/21) Unpacking objects: 33% (7/21) Unpacking objects: 38% (8/21) Unpacking objects: 42% (9/21) Unpacking objects: 47% (10/21) Unpacking objects: 52% (11/21) Unpacking objects: 57% (12/21) Unpacking objects: 61% (13/21) Unpacking objects: 66% (14/21) Unpacking objects: 71% (15/21) Unpacking objects: 76% (16/21) Unpacking objects: 80% (17/21) Unpacking objects: 85% (18/21) Unpacking objects: 90% (19/21) Unpacking objects: 95% (20/21) Unpacking objects: 100% (21/21) Unpacking objects: 100% (21/21), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf dc201083ae994aa29793570f24abba427e2513a5
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://gist.github.com/2087829.git
-remote: Counting objects: 5, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-Receiving objects: 20% (1/5) Receiving objects: 40% (2/5) Receiving objects: 60% (3/5) Receiving objects: 80% (4/5) Receiving objects: 100% (5/5) Receiving objects: 100% (5/5), done.
-remote: Total 5 (delta 0), reused 0 (delta 0)[K
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Installing bunny (0.7.9)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.7.8[0m] test suite cleanup (eliminated some race conditions related to queue.message_count)
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0135s
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0047s
--- create_table("builds", {:force=>true})
- -> 0.0056s
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0028s
--- create_table("commits", {:force=>true})
- -> 0.0047s
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0028s
--- create_table("jobs", {:force=>true})
- -> 0.0092s
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0028s
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0045s
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0040s
--- create_table("memberships", {:force=>true})
- -> 0.0033s
--- create_table("organizations", {:force=>true})
- -> 0.0038s
--- create_table("permissions", {:force=>true})
- -> 0.0033s
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0026s
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0030s
--- create_table("repositories", {:force=>true})
- -> 0.0045s
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0026s
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0035s
--- create_table("requests", {:force=>true})
- -> 0.0048s
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0025s
--- create_table("ssl_keys", {:force=>true})
- -> 0.0040s
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0022s
--- create_table("tokens", {:force=>true})
- -> 0.0033s
--- create_table("urls", {:force=>true})
- -> 0.0036s
--- create_table("users", {:force=>true})
- -> 0.0048s
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0032s
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0030s
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0036s
--- create_table("workers", {:force=>true})
- -> 0.0038s
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0028s
--- initialize_schema_migrations_table()
- -> 0.0043s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0274s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Task::Irc
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1904442, 'Artifact::Log', '2012-07-19 13:58:44.143000', '2012-07-19 13:58:44.577000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571666, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 33, done.[K
-remote: Compressing objects: 8% (1/12) [Kremote: Compressing objects: 16% (2/12) [Kremote: Compressing objects: 25% (3/12) [Kremote: Compressing objects: 33% (4/12) [Kremote: Compressing objects: 41% (5/12) [Kremote: Compressing objects: 50% (6/12) [Kremote: Compressing objects: 58% (7/12) [Kremote: Compressing objects: 66% (8/12) [Kremote: Compressing objects: 75% (9/12) [Kremote: Compressing objects: 83% (10/12) [Kremote: Compressing objects: 91% (11/12) [Kremote: Compressing objects: 100% (12/12) [Kremote: Compressing objects: 100% (12/12), done.[K
-remote: Total 21 (delta 14), reused 15 (delta 9)[K
-Unpacking objects: 4% (1/21) Unpacking objects: 9% (2/21) Unpacking objects: 14% (3/21) Unpacking objects: 19% (4/21) Unpacking objects: 23% (5/21) Unpacking objects: 28% (6/21) Unpacking objects: 33% (7/21) Unpacking objects: 38% (8/21) Unpacking objects: 42% (9/21) Unpacking objects: 47% (10/21) Unpacking objects: 52% (11/21) Unpacking objects: 57% (12/21) Unpacking objects: 61% (13/21) Unpacking objects: 66% (14/21) Unpacking objects: 71% (15/21) Unpacking objects: 76% (16/21) Unpacking objects: 80% (17/21) Unpacking objects: 85% (18/21) Unpacking objects: 90% (19/21) Unpacking objects: 95% (20/21) Unpacking objects: 100% (21/21) Unpacking objects: 100% (21/21), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf dc201083ae994aa29793570f24abba427e2513a5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0660s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0180s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0240s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0390s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0140s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0220s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0200s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0260s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0160s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0220s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0230s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0660s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0810s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0190s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0300s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0310s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0520s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0170s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.1030s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the e/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
-./lib/travis/config.rb:71 warning: already initialized constant HOSTS
-xample config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1904443, 'Artifact::Log', '2012-07-19 13:58:44.166000', '2012-07-19 13:58:45.145000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571667, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 33, done.[K
-remote: Compressing objects: 8% (1/12) [Kremote: Compressing objects: 16% (2/12) [Kremote: Compressing objects: 25% (3/12) [Kremote: Compressing objects: 33% (4/12) [Kremote: Compressing objects: 41% (5/12) [Kremote: Compressing objects: 50% (6/12) [Kremote: Compressing objects: 58% (7/12) [Kremote: Compressing objects: 66% (8/12) [Kremote: Compressing objects: 75% (9/12) [Kremote: Compressing objects: 83% (10/12) [Kremote: Compressing objects: 91% (11/12) [Kremote: Compressing objects: 100% (12/12) [Kremote: Compressing objects: 100% (12/12), done.[K
-remote: Total 21 (delta 14), reused 15 (delta 9)[K
-Unpacking objects: 4% (1/21) Unpacking objects: 9% (2/21) Unpacking objects: 14% (3/21) Unpacking objects: 19% (4/21) Unpacking objects: 23% (5/21) Unpacking objects: 28% (6/21) Unpacking objects: 33% (7/21) Unpacking objects: 38% (8/21) Unpacking objects: 42% (9/21) Unpacking objects: 47% (10/21) Unpacking objects: 52% (11/21) Unpacking objects: 57% (12/21) Unpacking objects: 61% (13/21) Unpacking objects: 66% (14/21) Unpacking objects: 71% (15/21) Unpacking objects: 76% (16/21) Unpacking objects: 80% (17/21) Unpacking objects: 85% (18/21) Unpacking objects: 90% (19/21) Unpacking objects: 95% (20/21) Unpacking objects: 100% (21/21) Unpacking objects: 100% (21/21), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf dc201083ae994aa29793570f24abba427e2513a5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-15 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0400s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0240s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0190s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0420s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0110s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0160s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0100s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.1000s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0480s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0430s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0370s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0200s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0210s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0170s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0300s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0890s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use th/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:71 warning: already initialized constant HOSTS
-e Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1904444, 'Artifact::Log', '2012-07-19 13:58:44.180000', '2012-07-19 13:58:44.902000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571668, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.9
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 33, done.[K
-remote: Compressing objects: 8% (1/12) [Kremote: Compressing objects: 16% (2/12) [Kremote: Compressing objects: 25% (3/12) [Kremote: Compressing objects: 33% (4/12) [Kremote: Compressing objects: 41% (5/12) [Kremote: Compressing objects: 50% (6/12) [Kremote: Compressing objects: 58% (7/12) [Kremote: Compressing objects: 66% (8/12) [Kremote: Compressing objects: 75% (9/12) [Kremote: Compressing objects: 83% (10/12) [Kremote: Compressing objects: 91% (11/12) [Kremote: Compressing objects: 100% (12/12) [Kremote: Compressing objects: 100% (12/12), done.[K
-remote: Total 21 (delta 14), reused 15 (delta 9)[K
-Unpacking objects: 4% (1/21) Unpacking objects: 9% (2/21) Unpacking objects: 14% (3/21) Unpacking objects: 19% (4/21) Unpacking objects: 23% (5/21) Unpacking objects: 28% (6/21) Unpacking objects: 33% (7/21) Unpacking objects: 38% (8/21) Unpacking objects: 42% (9/21) Unpacking objects: 47% (10/21) Unpacking objects: 52% (11/21) Unpacking objects: 57% (12/21) Unpacking objects: 61% (13/21) Unpacking objects: 66% (14/21) Unpacking objects: 71% (15/21) Unpacking objects: 76% (16/21) Unpacking objects: 80% (17/21) Unpacking objects: 85% (18/21) Unpacking objects: 90% (19/21) Unpacking objects: 95% (20/21) Unpacking objects: 100% (21/21) Unpacking objects: 100% (21/21), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf dc201083ae994aa29793570f24abba427e2513a5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0080s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0070s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0080s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0090s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0370s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0160s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0110s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0580s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1904445, 'Artifact::Log', '2012-07-19 13:58:44.195000', '2012-07-19 13:58:45.361000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571669, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.8
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 33, done.[K
-remote: Compressing objects: 8% (1/12) [Kremote: Compressing objects: 16% (2/12) [Kremote: Compressing objects: 25% (3/12) [Kremote: Compressing objects: 33% (4/12) [Kremote: Compressing objects: 41% (5/12) [Kremote: Compressing objects: 50% (6/12) [Kremote: Compressing objects: 58% (7/12) [Kremote: Compressing objects: 66% (8/12) [Kremote: Compressing objects: 75% (9/12) [Kremote: Compressing objects: 83% (10/12) [Kremote: Compressing objects: 91% (11/12) [Kremote: Compressing objects: 100% (12/12) [Kremote: Compressing objects: 100% (12/12), done.[K
-remote: Total 21 (delta 14), reused 15 (delta 9)[K
-Unpacking objects: 4% (1/21) Unpacking objects: 9% (2/21) Unpacking objects: 14% (3/21) Unpacking objects: 19% (4/21) Unpacking objects: 23% (5/21) Unpacking objects: 28% (6/21) Unpacking objects: 33% (7/21) Unpacking objects: 38% (8/21) Unpacking objects: 42% (9/21) Unpacking objects: 47% (10/21) Unpacking objects: 52% (11/21) Unpacking objects: 57% (12/21) Unpacking objects: 61% (13/21) Unpacking objects: 66% (14/21) Unpacking objects: 71% (15/21) Unpacking objects: 76% (16/21) Unpacking objects: 80% (17/21) Unpacking objects: 85% (18/21) Unpacking objects: 90% (19/21) Unpacking objects: 95% (20/21) Unpacking objects: 100% (21/21) Unpacking objects: 100% (21/21), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf dc201083ae994aa29793570f24abba427e2513a5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.8.7-p357) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0170s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0260s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0090s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0400s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0170s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0170s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0190s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0560s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-./lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1904446, 'Artifact::Log', '2012-07-19 13:58:44.209000', '2012-07-19 13:58:45.449000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571596, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 14 (delta 9), reused 14 (delta 9)[K
-Unpacking objects: 7% (1/14) Unpacking objects: 14% (2/14) Unpacking objects: 21% (3/14) Unpacking objects: 28% (4/14) Unpacking objects: 35% (5/14) Unpacking objects: 42% (6/14) Unpacking objects: 50% (7/14) Unpacking objects: 57% (8/14) Unpacking objects: 64% (9/14) Unpacking objects: 71% (10/14) Unpacking objects: 78% (11/14) Unpacking objects: 85% (12/14) Unpacking objects: 92% (13/14) Unpacking objects: 100% (14/14) Unpacking objects: 100% (14/14), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf 73d8c83f7d9672fe9181355f8ba285faf8630e60
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://gist.github.com/2087829.git
-remote: Counting objects: 5, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 5 (delta 0), reused 0 (delta 0)[K
-Receiving objects: 20% (1/5) Receiving objects: 40% (2/5) Receiving objects: 60% (3/5) Receiving objects: 80% (4/5) Receiving objects: 100% (5/5) Receiving objects: 100% (5/5), done.
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Installing bunny (0.7.9)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.7.8[0m] test suite cleanup (eliminated some race conditions related to queue.message_count)
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0131s
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0057s
--- create_table("builds", {:force=>true})
- -> 0.0039s
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0020s
--- create_table("commits", {:force=>true})
- -> 0.0034s
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0019s
--- create_table("jobs", {:force=>true})
- -> 0.0089s
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0033s
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0052s
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0047s
--- create_table("memberships", {:force=>true})
- -> 0.0038s
--- create_table("organizations", {:force=>true})
- -> 0.0054s
--- create_table("permissions", {:force=>true})
- -> 0.0049s
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0042s
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0042s
--- create_table("repositories", {:force=>true})
- -> 0.0068s
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0034s
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0046s
--- create_table("requests", {:force=>true})
- -> 0.0067s
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0035s
--- create_table("ssl_keys", {:force=>true})
- -> 0.0057s
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0034s
--- create_table("tokens", {:force=>true})
- -> 0.0060s
--- create_table("urls", {:force=>true})
- -> 0.0068s
--- create_table("users", {:force=>true})
- -> 0.0069s
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0033s
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0040s
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0049s
--- create_table("workers", {:force=>true})
- -> 0.0057s
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0036s
--- initialize_schema_migrations_table()
- -> 0.0062s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0406s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-/home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245:in `load'': /home/vagrant/builds/travis-ci/travis-core/spec/travis/task/irc/client_spec.rb:183: syntax error, unexpected keyword_end, expecting $end (SyntaxError)
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245:in `block in load''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236:in `load_dependency''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245:in `load''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `block in load_spec_files''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `map''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698:in `load_spec_files''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22:in `run''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80:in `run_in_process''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69:in `run''
- from /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:10:in `block in autorun''
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb failed
-
-Tasks: TOP => default => spec
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1904343, 'Artifact::Log', '2012-07-19 13:46:52.982000', '2012-07-19 13:46:53.919000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571597, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 14 (delta 9), reused 14 (delta 9)[K
-Unpacking objects: 7% (1/14) Unpacking objects: 14% (2/14) Unpacking objects: 21% (3/14) Unpacking objects: 28% (4/14) Unpacking objects: 35% (5/14) Unpacking objects: 42% (6/14) Unpacking objects: 50% (7/14) Unpacking objects: 57% (8/14) Unpacking objects: 64% (9/14) Unpacking objects: 71% (10/14) Unpacking objects: 78% (11/14) Unpacking objects: 85% (12/14) Unpacking objects: 92% (13/14) Unpacking objects: 100% (14/14) Unpacking objects: 100% (14/14), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf 73d8c83f7d9672fe9181355f8ba285faf8630e60
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0520s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0210s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0220s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0330s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0110s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0090s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0320s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0050s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0200s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0070s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0530s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0650s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0230s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0100s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0700s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-SyntaxError: /home/vagrant/builds/travis-ci/travis-core/spec/travis/task/irc/client_spec.rb:183: syntax error, unexpected kEND
-
-end
- ^
- load at org/jruby/RubyKernel.java:1058
- load at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- load_dependency at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236
- load at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- load_spec_files at /home/vagrant/builds/travis-ci/travis-core/spec/travis/task/irc/client_spec.rb:698
- collect at org/jruby/RubyArray.java:2331
- load_spec_files at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698
- run at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22
- run_in_process at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.8.0Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-/lib/rspec/core/runner.rb:80
- run at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69
- autorun at /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:10
- call at org/jruby/RubyProc.java:270
- call at org/jruby/RubyProc.java:224
-org.jruby.exceptions.RaiseException: (SystemExit) exit
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb failed
-
-Tasks: TOP => default => spec
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1904344, 'Artifact::Log', '2012-07-19 13:46:53.008000', '2012-07-19 13:46:54.119000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571598, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 14 (delta 9), reused 14 (delta 9)[K
-Unpacking objects: 7% (1/14) Unpacking objects: 14% (2/14) Unpacking objects: 21% (3/14) Unpacking objects: 28% (4/14) Unpacking objects: 35% (5/14) Unpacking objects: 42% (6/14) Unpacking objects: 50% (7/14) Unpacking objects: 57% (8/14) Unpacking objects: 64% (9/14) Unpacking objects: 71% (10/14) Unpacking objects: 78% (11/14) Unpacking objects: 85% (12/14) Unpacking objects: 92% (13/14) Unpacking objects: 100% (14/14) Unpacking objects: 100% (14/14), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf 73d8c83f7d9672fe9181355f8ba285faf8630e60
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-15 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-#
-# A fatal error has been detected by the Java Runtime Environment:
-#
-# SIGSEGV (0xb) at pc=0xb17ddd0a, pid=2380, tid=3078126448
-#
-# JRE version: 6.0_24-b24
-# Java VM: OpenJDK Server VM (20.0-b12 mixed mode linux-x86 )
-# Derivative: IcedTea6 1.11.3
-# Distribution: Ubuntu 11.10, package 6b24-1.11.3-1ubuntu0.11.10.1
-# Problematic frame:
-# J org.jruby.lexer.yacc.RubyYaccLexer.yylex()I
-#
-# An error report file with more information is saved as:
-# /home/vagrant/builds/travis-ci/travis-core/hs_err_pid2380.log
-#
-# If you would like to submit a bug report, please include
-# instructions how to reproduce the bug and visit:
-# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
-#
-Aborted
-
-
-
-install: ''bundle install'' returned false.
-Done. Build script exited with: 1
-', 1904345, 'Artifact::Log', '2012-07-19 13:46:53.035000', '2012-07-19 13:46:53.579000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571599, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.9
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 14 (delta 9), reused 14 (delta 9)[K
-Unpacking objects: 7% (1/14) Unpacking objects: 14% (2/14) Unpacking objects: 21% (3/14) Unpacking objects: 28% (4/14) Unpacking objects: 35% (5/14) Unpacking objects: 42% (6/14) Unpacking objects: 50% (7/14) Unpacking objects: 57% (8/14) Unpacking objects: 64% (9/14) Unpacking objects: 71% (10/14) Unpacking objects: 78% (11/14) Unpacking objects: 85% (12/14) Unpacking objects: 92% (13/14) Unpacking objects: 100% (14/14) Unpacking objects: 100% (14/14), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf 73d8c83f7d9672fe9181355f8ba285faf8630e60
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0110s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0330s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0210s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0110s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0120s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0420s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0100s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0190s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0610s
-
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-SyntaxError: /home/vagrant/builds/travis-ci/travis-core/spec/travis/task/irc/client_spec.rb:183: syntax error, unexpected kEND
-
-end
- ^
- load at org/jruby/RubyKernel.java:1025
- load at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- load_dependency at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236
- load at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- (root) at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:1
- collect at org/jruby/RubyArray.java:2341
- map at org/jruby/RubyArray.java:2354
- load_spec_files at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698
- load_spec_files at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698
- run at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22
- run_in_process at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80
- run at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69
- call at org/jruby/RubyProc.java:269
- call at org/jruby/RubyProc.java:223
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb failed
-
-Tasks: TOP => default => spec
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1904346, 'Artifact::Log', '2012-07-19 13:46:53.065000', '2012-07-19 13:46:54.249000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1571600, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.8
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/80/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 14 (delta 9), reused 14 (delta 9)[K
-Unpacking objects: 7% (1/14) Unpacking objects: 14% (2/14) Unpacking objects: 21% (3/14) Unpacking objects: 28% (4/14) Unpacking objects: 35% (5/14) Unpacking objects: 42% (6/14) Unpacking objects: 50% (7/14) Unpacking objects: 57% (8/14) Unpacking objects: 64% (9/14) Unpacking objects: 71% (10/14) Unpacking objects: 78% (11/14) Unpacking objects: 85% (12/14) Unpacking objects: 92% (13/14) Unpacking objects: 100% (14/14) Unpacking objects: 100% (14/14), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/80/merge -> FETCH_HEAD
-$ git checkout -qf 73d8c83f7d9672fe9181355f8ba285faf8630e60
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.8.7-p357) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0130s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0070s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0090s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0100s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0410s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0060s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0110s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0520s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-SyntaxError: /home/vagrant/builds/travis-ci/travis-core/spec/travis/task/irc/client_spec.rb:183: syntax error, unexpected kEND
-
-end
- ^
- load at org/jruby/RubyKernel.java:1015
- load at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- load_dependency at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:236
- load at /home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:245
- (root) at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:1
- collect at org/jruby/RubyArray.java:2341
- load_spec_files at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698
- load_spec_files at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/configuration.rb:698
- run at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/command_line.rb:22
- run_in_process at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:80
- run at /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.8.0/lib/rspec/core/runner.rb:69
- call at org/jruby/RubyProc.java:269
- call at org/jruby/RubyProc.java:223
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb failed
-
-Tasks: TOP => default => spec
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1904347, 'Artifact::Log', '2012-07-19 13:46:53.103000', '2012-07-19 13:46:54.405000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1564497, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/78/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 19 (delta 14), reused 18 (delta 14)[K
-Unpacking objects: 5% (1/19) Unpacking objects: 10% (2/19) Unpacking objects: 15% (3/19) Unpacking objects: 21% (4/19) Unpacking objects: 26% (5/19) Unpacking objects: 31% (6/19) Unpacking objects: 36% (7/19) Unpacking objects: 42% (8/19) Unpacking objects: 47% (9/19) Unpacking objects: 52% (10/19) Unpacking objects: 57% (11/19) Unpacking objects: 63% (12/19) Unpacking objects: 68% (13/19) Unpacking objects: 73% (14/19) Unpacking objects: 78% (15/19) Unpacking objects: 84% (16/19) Unpacking objects: 89% (17/19) Unpacking objects: 94% (18/19) Unpacking objects: 100% (19/19) Unpacking objects: 100% (19/19), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/78/merge -> FETCH_HEAD
-$ git checkout -qf 62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://gist.github.com/2087829.git
-remote: Counting objects: 5, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 5 (delta 0), reused 0 (delta 0)[K
-Receiving objects: 20% (1/5) Receiving objects: 40% (2/5) Receiving objects: 60% (3/5) Receiving objects: 80% (4/5) Receiving objects: 100% (5/5) Receiving objects: 100% (5/5), done.
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Installing bunny (0.7.9)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.7.8[0m] test suite cleanup (eliminated some race conditions related to queue.message_count)
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0121s
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0042s
--- create_table("builds", {:force=>true})
- -> 0.0044s
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0021s
--- create_table("commits", {:force=>true})
- -> 0.0043s
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0037s
--- create_table("jobs", {:force=>true})
- -> 0.0091s
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0033s
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0039s
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0038s
--- create_table("memberships", {:force=>true})
- -> 0.0034s
--- create_table("organizations", {:force=>true})
- -> 0.0039s
--- create_table("permissions", {:force=>true})
- -> 0.0036s
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0024s
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0028s
--- create_table("repositories", {:force=>true})
- -> 0.0047s
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0025s
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0027s
--- create_table("requests", {:force=>true})
- -> 0.0046s
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0024s
--- create_table("ssl_keys", {:force=>true})
- -> 0.0040s
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0018s
--- create_table("tokens", {:force=>true})
- -> 0.0025s
--- create_table("urls", {:force=>true})
- -> 0.0039s
--- create_table("users", {:force=>true})
- -> 0.0043s
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0024s
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0029s
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0034s
--- create_table("workers", {:force=>true})
- -> 0.0038s
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0035s
--- initialize_schema_migrations_table()
- -> 0.0046s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0237s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-lib/travis/config.rb:71: warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 53.2 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1894741, 'Artifact::Log', '2012-07-18 12:50:12.110000', '2012-07-18 12:50:12.633000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1564498, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/78/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 19 (delta 14), reused 18 (delta 14)[K
-Unpacking objects: 5% (1/19) Unpacking objects: 10% (2/19) Unpacking objects: 15% (3/19) Unpacking objects: 21% (4/19) Unpacking objects: 26% (5/19) Unpacking objects: 31% (6/19) Unpacking objects: 36% (7/19) Unpacking objects: 42% (8/19) Unpacking objects: 47% (9/19) Unpacking objects: 52% (10/19) Unpacking objects: 57% (11/19) Unpacking objects: 63% (12/19) Unpacking objects: 68% (13/19) Unpacking objects: 73% (14/19) Unpacking objects: 78% (15/19) Unpacking objects: 84% (16/19) Unpacking objects: 89% (17/19) Unpacking objects: 94% (18/19) Unpacking objects: 100% (19/19) Unpacking objects: 100% (19/19), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/78/merge -> FETCH_HEAD
-$ git checkout -qf 62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0470s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0270s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0450s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0170s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0170s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0260s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0270s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0160s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0170s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0140s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0660s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0880s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0270s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0370s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0230s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0140s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.1020s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the e/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
-xample config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-./lib/travis/config.rb:71 warning: already initialized constant HOSTS
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 160.57 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1894742, 'Artifact::Log', '2012-07-18 12:50:12.125000', '2012-07-18 12:50:12.927000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1564499, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/78/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 19 (delta 14), reused 18 (delta 14)[K
-Unpacking objects: 5% (1/19) Unpacking objects: 10% (2/19) Unpacking objects: 15% (3/19) Unpacking objects: 21% (4/19) Unpacking objects: 26% (5/19) Unpacking objects: 31% (6/19) Unpacking objects: 36% (7/19) Unpacking objects: 42% (8/19) Unpacking objects: 47% (9/19) Unpacking objects: 52% (10/19) Unpacking objects: 57% (11/19) Unpacking objects: 63% (12/19) Unpacking objects: 68% (13/19) Unpacking objects: 73% (14/19) Unpacking objects: 78% (15/19) Unpacking objects: 84% (16/19) Unpacking objects: 89% (17/19) Unpacking objects: 94% (18/19) Unpacking objects: 100% (19/19) Unpacking objects: 100% (19/19), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/78/merge -> FETCH_HEAD
-$ git checkout -qf 62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-15 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0300s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0310s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0540s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0060s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0070s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0060s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0420s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0350s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0420s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0620s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0150s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0340s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0130s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.1080s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:71 warning: already initialized constant HOSTS
- pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 168.17 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1894743, 'Artifact::Log', '2012-07-18 12:50:12.137000', '2012-07-18 12:50:13.128000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1564500, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.9
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/78/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 19 (delta 14), reused 18 (delta 14)[K
-Unpacking objects: 5% (1/19) Unpacking objects: 10% (2/19) Unpacking objects: 15% (3/19) Unpacking objects: 21% (4/19) Unpacking objects: 26% (5/19) Unpacking objects: 31% (6/19) Unpacking objects: 36% (7/19) Unpacking objects: 42% (8/19) Unpacking objects: 47% (9/19) Unpacking objects: 52% (10/19) Unpacking objects: 57% (11/19) Unpacking objects: 63% (12/19) Unpacking objects: 68% (13/19) Unpacking objects: 73% (14/19) Unpacking objects: 78% (15/19) Unpacking objects: 84% (16/19) Unpacking objects: 89% (17/19) Unpacking objects: 94% (18/19) Unpacking objects: 100% (19/19) Unpacking objects: 100% (19/19), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/78/merge -> FETCH_HEAD
-$ git checkout -qf 62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0110s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0080s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0080s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0250s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0130s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0100s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0750s
-
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 141.74 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1894744, 'Artifact::Log', '2012-07-18 12:50:12.148000', '2012-07-18 12:50:13.433000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1564501, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.8
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git fetch origin +refs/pull/78/merge:
-remote: Counting objects: 26, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 19 (delta 14), reused 18 (delta 14)[K
-Unpacking objects: 5% (1/19) Unpacking objects: 10% (2/19) Unpacking objects: 15% (3/19) Unpacking objects: 21% (4/19) Unpacking objects: 26% (5/19) Unpacking objects: 31% (6/19) Unpacking objects: 36% (7/19) Unpacking objects: 42% (8/19) Unpacking objects: 47% (9/19) Unpacking objects: 52% (10/19) Unpacking objects: 57% (11/19) Unpacking objects: 63% (12/19) Unpacking objects: 68% (13/19) Unpacking objects: 73% (14/19) Unpacking objects: 78% (15/19) Unpacking objects: 84% (16/19) Unpacking objects: 89% (17/19) Unpacking objects: 94% (18/19) Unpacking objects: 100% (19/19) Unpacking objects: 100% (19/19), done.
-From git://github.com/travis-ci/travis-core
- * branch refs/pull/78/merge -> FETCH_HEAD
-$ git checkout -qf 62f8e2f5cef3c309b7b2d50894cf81b53de3cbf5
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.8.7-p357) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0270s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0240s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0210s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0330s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0120s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0120s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0100s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0410s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0130s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0170s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0140s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0740s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-./lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 164.39 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1894745, 'Artifact::Log', '2012-07-18 12:50:12.163000', '2012-07-18 12:50:13.278000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558345, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git checkout -qf 2531cab2f6584faf311eae19dda0fe6c34fb7264
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://gist.github.com/2087829.git
-remote: Counting objects: 5, done.[K
-remote: Compressing objects: 20% (1/5) [Kremote: Compressing objects: 40% (2/5) [Kremote: Compressing objects: 60% (3/5) [Kremote: Compressing objects: 80% (4/5) [Kremote: Compressing objects: 100% (5/5) [Kremote: Compressing objects: 100% (5/5), done.[K
-remote: Total 5 (delta 0), reused 0 (delta 0)[K
-Receiving objects: 20% (1/5) Receiving objects: 40% (2/5) Receiving objects: 60% (3/5) Receiving objects: 80% (4/5) Receiving objects: 100% (5/5) Receiving objects: 100% (5/5), done.
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Installing bunny (0.7.9)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing json (1.6.7) with native extensions
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.7.8[0m] test suite cleanup (eliminated some race conditions related to queue.message_count)
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0129s
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0042s
--- create_table("builds", {:force=>true})
- -> 0.0047s
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0040s
--- create_table("commits", {:force=>true})
- -> 0.0041s
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0049s
--- create_table("jobs", {:force=>true})
- -> 0.0105s
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0037s
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0057s
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0050s
--- create_table("memberships", {:force=>true})
- -> 0.0048s
--- create_table("organizations", {:force=>true})
- -> 0.0057s
--- create_table("permissions", {:force=>true})
- -> 0.0061s
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0034s
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0044s
--- create_table("repositories", {:force=>true})
- -> 0.0069s
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0038s
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0044s
--- create_table("requests", {:force=>true})
- -> 0.0070s
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0032s
--- create_table("ssl_keys", {:force=>true})
- -> 0.0061s
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0049s
--- create_table("tokens", {:force=>true})
- -> 0.0042s
--- create_table("urls", {:force=>true})
- -> 0.0058s
--- create_table("users", {:force=>true})
- -> 0.0062s
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0033s
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0027s
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0034s
--- create_table("workers", {:force=>true})
- -> 0.0032s
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0023s
--- initialize_schema_migrations_table()
- -> 0.0045s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0263s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb ./spec/travis/features_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-lib/travis/config.rb:71: warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 53.7 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1886297, 'Artifact::Log', '2012-07-17 15:19:31.563000', '2012-07-17 15:19:32.454000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558346, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git checkout -qf 2531cab2f6584faf311eae19dda0fe6c34fb7264
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0790s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0310s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0270s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0490s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0780s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0260s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0310s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0230s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0450s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0220s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0260s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0330s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0160s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0730s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.1150s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0200s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0190s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0150s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0110s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0480s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-./lib/travis/config.rb:71 warning: already initialized constant HOSTS
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 145.89 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1886298, 'Artifact::Log', '2012-07-17 15:19:31.582000', '2012-07-17 15:19:32.558000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558347, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git checkout -qf 2531cab2f6584faf311eae19dda0fe6c34fb7264
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-15 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0920s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0190s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0350s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0800s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0100s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0070s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0450s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0530s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0180s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0460s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0890s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0330s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0170s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0460s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:71 warning: already initialized constant HOSTS
- pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:34 warning: regexp match /.../n against to UTF-8 string
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 141.25 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-Done. Build script exited with: 0
-', 1886299, 'Artifact::Log', '2012-07-17 15:19:31.601000', '2012-07-17 15:19:32.117000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558348, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.9
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-$ cd travis-ci/travis-core
-$ git checkout -qf 2531cab2f6584faf311eae19dda0fe6c34fb7264
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0120s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0310s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0340s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0150s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0170s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0880s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-/home/vagrant/builds/travis-ci/travis-core/lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"always"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"change"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"change"}}[0m
-[32m returns false if the previous build is missing, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build passed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns false if the previous build failed, the current build passed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build passed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build failed, the current build failed and config is {:notifications=>{:on_success=>"never"}}[0m
-[32m returns true if the previous build is missing, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns true if the previous build failed, the current build passed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build is missing, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build passed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
-[32m returns false if the previous build failed, the current build failed and config is {:notifications=>{:on_failure=>"never"}}[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m delivers to the repository owner, committer and commit author[0m
-/home/vagrant/.rvm/gems/jruby-head/gems/activesupport-3.2.6/lib/active_support/core_ext/string/output_safety.rb:35 warning: regexp match /.../n against to UTF-8 string
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 142.02 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1886300, 'Artifact::Log', '2012-07-17 15:19:31.623000', '2012-07-17 15:19:32.883000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558349, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ export JRUBY_OPTS=--1.8
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-core.git travis-ci/travis-core
-
-$ cd travis-ci/travis-core
-$ git checkout -qf 2531cab2f6584faf311eae19dda0fe6c34fb7264
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.8.7-p357) (2012-07-15 412049f) (OpenJDK Client VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-core/Gemfile
-$ bundle install
-Fetching git://github.com/travis-ci/travis-support
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching gem metadata from http://rubygems.org/........
-Fetching gem metadata from http://rubygems.org/..
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing factory_girl (2.6.4)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Installing rollout (1.1.0)
-Installing rspec-core (2.8.0)
-Installing rspec-expectations (2.8.0)
-Installing rspec-mocks (2.8.0)
-Installing rspec (2.8.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from source at /home/vagrant/builds/travis-ci/travis-core
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Invoke db:load_config (first_time)
-** Invoke rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0210s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0120s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0110s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0150s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0110s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0480s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0280s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0130s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0140s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0100s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0160s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-core/db/migrate"])
- -> 0.0790s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/api_spec.rb ./spec/travis/config_spec.rb ./spec/travis/features_spec.rb ./spec/travis/event/subscription_spec.rb ./spec/travis/event/secure_config_spec.rb ./spec/travis/event/handler/worker_spec.rb ./spec/travis/event/handler/irc_spec.rb ./spec/travis/event/handler/email_spec.rb ./spec/travis/event/handler/archive_spec.rb ./spec/travis/event/handler/github_spec.rb ./spec/travis/event/handler/pusher_spec.rb ./spec/travis/event/handler/campfire_spec.rb ./spec/travis/event/handler/webhook_spec.rb ./spec/travis/event/config/irc_spec.rb ./spec/travis/event/config/email_spec.rb ./spec/travis/event/config/campfire_spec.rb ./spec/travis/event/config/webhook_spec.rb ./spec/travis/model/commit_spec.rb ./spec/travis/model/user_spec.rb ./spec/travis/model/worker_spec.rb ./spec/travis/model/job_spec.rb ./spec/travis/model/token_spec.rb ./spec/travis/model/service_hook_spec.rb ./spec/travis/model/ssl_key_spec.rb ./spec/travis/model/repository_spec.rb ./spec/travis/model/url_spec.rb ./spec/travis/model/request_spec.rb ./spec/travis/model/build_spec.rb ./spec/travis/model/job/compat_spec.rb ./spec/travis/model/job/tagging_spec.rb ./spec/travis/model/job/sponsors_spec.rb ./spec/travis/model/job/queue_spec.rb ./spec/travis/model/job/cleanup_spec.rb ./spec/travis/model/job/test/states_spec.rb ./spec/travis/model/worker/states_spec.rb ./spec/travis/model/build/states_spec.rb ./spec/travis/model/build/denormalize_spec.rb ./spec/travis/model/build/messages_spec.rb ./spec/travis/model/build/compat_spec.rb ./spec/travis/model/build/matrix_spec.rb ./spec/travis/model/build/metrics_spec.rb ./spec/travis/model/build/matrix/config_spec.rb ./spec/travis/model/user/oauth_spec.rb ./spec/travis/model/artifact/log_spec.rb ./spec/travis/model/request/states_spec.rb ./spec/travis/model/request/branches_spec.rb ./spec/travis/model/request/approval_spec.rb ./spec/travis/model/request/factory_spec.rb ./spec/travis/model/repository/compat_spec.rb ./spec/travis/notification/instrument_spec.rb ./spec/travis/notification/publisher/redis_spec.rb ./spec/travis/notification/publisher/log_spec.rb ./spec/travis/notification/instrument/event/worker_spec.rb ./spec/travis/notification/instrument/event/irc_spec.rb ./spec/travis/notification/instrument/event/email_spec.rb ./spec/travis/notification/instrument/event/archive_spec.rb ./spec/travis/notification/instrument/event/github_spec.rb ./spec/travis/notification/instrument/event/pusher_spec.rb ./spec/travis/notification/instrument/event/campfire_spec.rb ./spec/travis/notification/instrument/event/webhook_spec.rb ./spec/travis/notification/instrument/task/irc_spec.rb ./spec/travis/notification/instrument/task/email_spec.rb ./spec/travis/notification/instrument/task/archive_spec.rb ./spec/travis/notification/instrument/task/github_spec.rb ./spec/travis/notification/instrument/task/pusher_spec.rb ./spec/travis/notification/instrument/task/campfire_spec.rb ./spec/travis/notification/instrument/task/webhook_spec.rb ./spec/travis/notification/instrument/request/factory_spec.rb ./spec/travis/notification/instrument/github/config_spec.rb ./spec/travis/notification/instrument/github/sync/repositories_spec.rb ./spec/travis/notification/instrument/github/sync/organizations_spec.rb ./spec/travis/mailer/build_spec.rb ./spec/travis/mailer/helper/build_spec.rb ./spec/travis/task/irc_spec.rb ./spec/travis/task/email_spec.rb ./spec/travis/task/archive_spec.rb ./spec/travis/task/github_spec.rb ./spec/travis/task/pusher_spec.rb ./spec/travis/task/campfire_spec.rb ./spec/travis/task/webhook_spec.rb ./spec/travis/task/irc/client_spec.rb ./spec/travis/task/irc/template_spec.rb ./spec/travis/github/config_spec.rb ./spec/travis/github/payload/push_spec.rb ./spec/travis/github/payload/pull_request_spec.rb ./spec/travis/github/sync/repositories_spec.rb ./spec/travis/github/sync/organizations_spec.rb ./spec/travis/github/sync/repository_spec.rb ./spec/travis/api/v0/worker/job/test_spec.rb ./spec/travis/api/v1/archive/build_spec.rb ./spec/travis/api/v1/pusher/worker_spec.rb ./spec/travis/api/v1/pusher/job/created_spec.rb ./spec/travis/api/v1/pusher/job/finished_spec.rb ./spec/travis/api/v1/pusher/job/started_spec.rb ./spec/travis/api/v1/pusher/job/log_spec.rb ./spec/travis/api/v1/pusher/build/finished_spec.rb ./spec/travis/api/v1/pusher/build/started_spec.rb ./spec/travis/api/v1/webhook/build/finished_spec.rb ./spec/travis/api/v1/http/user_spec.rb ./spec/travis/api/v1/http/job_spec.rb ./spec/travis/api/v1/http/branches_spec.rb ./spec/travis/api/v1/http/builds_spec.rb ./spec/travis/api/v1/http/repositories_spec.rb ./spec/travis/api/v1/http/jobs_spec.rb ./spec/travis/api/v1/http/workers_spec.rb ./spec/travis/api/v1/http/repository_spec.rb ./spec/travis/api/v1/http/build_spec.rb ./spec/travis/api/v2/pusher/worker_spec.rb ./spec/travis/api/v2/pusher/job/created_spec.rb ./spec/travis/api/v2/pusher/job/finished_spec.rb ./spec/travis/api/v2/pusher/job/started_spec.rb ./spec/travis/api/v2/pusher/job/log_spec.rb ./spec/travis/api/v2/pusher/build/finished_spec.rb ./spec/travis/api/v2/pusher/build/started_spec.rb ./spec/travis/api/v2/http/user_spec.rb ./spec/travis/api/v2/http/job_spec.rb ./spec/travis/api/v2/http/artifact_spec.rb ./spec/travis/api/v2/http/branches_spec.rb ./spec/travis/api/v2/http/builds_spec.rb ./spec/travis/api/v2/http/repositories_spec.rb ./spec/travis/api/v2/http/jobs_spec.rb ./spec/travis/api/v2/http/workers_spec.rb ./spec/travis/api/v2/http/repository_spec.rb ./spec/travis/api/v2/http/build_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-Cannot find or read /home/vagrant/builds/travis-ci/travis-core/config/newrelic.yml
-Run options: include {:focused=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-Travis::Api
- data
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[32m returns the data from the builder instance[0m
- instantiates a builder and returns the data
-[32m given an object that responds to :base_class (aka ActiveRecord::Base)[0m
-[32m given an object that responds to :klass (aka Arel::Relation)[0m
-
-Travis::Config
-[32m deep symbolizes arrays, too[0m
- Hashr behaviour
-[32m is a Hashr instance[0m
-[32m returns Hashr instances on subkeys[0m
-[32m returns Hashr instances on subkeys that were set to Ruby Hashes[0m
- defaults
-[32m notifications defaults to [][0m
-[32m notifications.email defaults to {}[0m
-[32m queues defaults to [][0m
-[32m ampq.host defaults to "localhost"[0m
-[32m ampq.prefetch defaults to 1[0m
-[32m database[0m
- using DATABASE_URL for database configuration if present
-[32m works when given a url with a port[0m
-[32m works when given a url without a port[0m
- the example config file
-[32m can access pusher[0m
-[32m can access all keys recursively[0m
-
-Travis::Features
- connecting
-[32m should connect to localhost by default[0m
-[32m should set up rollout[0m
-[32m should delegate to rollout[0m
- with environment variable set
-./lib/travis/config.rb:72 warning: already initialized constant HOSTS
-[32m should use the environment variable if available[0m
- with Travis.config
-[32m should use the Travis.config if set[0m
- feature checks
-[32m should return true if the repository''s owner is activated[0m
-[32m should return false if the repository''s owner isn''t activated[0m
-[32m should allow enabling the repository[0m
-[32m should be active when the repository was activated[0m
-[32m shouldn''t be active when the repository was deactivated[0m
- for users
-[32m should be active when enabled for a user[0m
-[32m shouldn''t be active when disable for a user[0m
- for features
-[32m should allow enabling features completely[0m
-[32m shouldn''t be active when the feature was disabled completely[0m
-
-Travis::Event::Subscription
- triggering a notification
-[32m should notify when the event matches[0m
-[32m should increment a counter when the event is triggered[0m
-[32m shouldn''t notify when the event doesn''t match[0m
-
-Travis::Event::SecureConfig
-[32m returns the original value if the config is not a hash[0m
-[32m decrypts a string[0m
-[32m decrypts with a string as a key[0m
-[32m decrypts an array with a secure entry and a string[0m
-[32m decrypts a hash with a secure entry[0m
-[32m decrypts a complex object of nested arrays and strings[0m
-[32m decrypts a realistic complex build config[0m
-[32m keeps the string similar if it couldn''t be decoded[0m
-
-Travis::Event::Handler::Worker
- notify
-[32m fetches a publisher for the given queue name (routing_key)[0m
-[32m publishes the payload to the publisher[0m
- publisher
-[32m returns a publisher for "builds.common" for a test job[0m
- payload_for
-[32m returns Travis::Event::Worker::Job::Test for a test job[0m
- instrumentation
-[32m instruments with "travis.event.handler.worker.notify:*"[0m
-[32m meters on "travis.event.handler.worker.notify:completed"[0m
-
-Travis::Event::Handler::Irc
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.irc.notify"[0m
-[32m meters on "travis.event.handler.irc.notify:completed"[0m
-
-Travis::Event::Handler::Email
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- recipients
-[32m includes valid email addresses[0m
-[32m includes ignores email addresses (me@email)[0m
-[32m contains the author emails if the build has them set[0m
-[32m contains the committer emails if the build has them set[0m
-[32m contains the build''s repository owner_email if it has one[0m
-[32m contains the build''s repository owner_email if it has a configuration but no emails specified[0m
-
-Travis::Event::Handler::Archive
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.archive.notify:completed"[0m
-[32m meters on "travis.event.handler.archive.notify"[0m
-
-Travis::Event::Handler::Github
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- given the request is not a pull_request event
-[32m does not handle the notification[0m
- given the request is a pull_request event
-[32m handles the notification[0m
- instrumentation
-[32m instruments with "travis.event.handler.github.notify"[0m
-[32m meters on "travis.event.handler.github.notify:complete"[0m
-
-Travis::Event::Handler::Pusher
- subscription
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- instrumentation
-[32m instruments with "travis.event.handler.pusher.notify"[0m
-[32m meters on "travis.event.handler.pusher.notify:completed"[0m
-
-Travis::Event::Handler::Campfire
- subscription
-[32m build:started does not notify[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with notify.campfire.handler.event.travis[0m
-[32m meters on "travis.event.handler.campfire.notify:completed"[0m
-
-Travis::Event::Handler::Webhook
- subscription
-[32m build:started notifies[0m
-[32m build:finish notifies[0m
- instrumentation
-[32m instruments with "travis.event.handler.webhook.notify"[0m
-[32m meters on "travis.event.handler.webhook.notify:completed"[0m
-
-Travis::Event::Config::Irc
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- channels
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of urls when given a string on the channels key[0m
-[32m returns an array of urls when given an array on the channels key[0m
-[32m groups irc channels by host & port, so notifications can be sent with one connection[0m
-[32m groups irc channels by host, port & ssl flag[0m
-
-Travis::Event::Config::Email
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- recipients
-[32m equals the recipients specified in the build configuration if any (given as an array)[0m
-[32m equals the recipients specified in the build configuration if any (given as a string)[0m
-
-Travis::Event::Config::Campfire
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- rooms
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
-
-Travis::Event::Config::Webhook
- send_on_finish?
- behaves like a build configuration
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successalways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_failurealways[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_successchange[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successchange[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurechange[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurechange[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurechange[0m
-[32m returns false if the previous build is missing, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build passed, the current build passed and config is notificationson_successnever[0m
-[32m returns false if the previous build failed, the current build passed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build passed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build failed, the current build failed and config is notificationson_successnever[0m
-[32m returns true if the previous build is missing, the current build passed and config is notificationson_failurenever[0m
-[32m returns true if the previous build failed, the current build passed and config is notificationson_failurenever[0m
-[32m returns false if the previous build is missing, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build passed, the current build failed and config is notificationson_failurenever[0m
-[32m returns false if the previous build failed, the current build failed and config is notificationson_failurenever[0m
- webhooks
-[32m returns an array of urls when given a string[0m
-[32m returns an array of urls when given an array[0m
-[32m returns an array of multiple urls when given a comma separated string[0m
-[32m returns an array of urls if the build configuration specifies an array of urls[0m
-[32m returns an array of values if the build configuration specifies an array of urls within a config hash[0m
- does not explode on invalid .travis.yml syntax
-[32m when :notifications contains an array[0m
-
-Commit
- config_url
-[32m returns the raw url to the .travis.yml file on github[0m
- pull_request?
-[32m is false for a nil ref[0m
-[32m is false for a ref named ref/branch/master[0m
-[32m is false for a ref named ref/pull/180/head[0m
-[32m is true for a ref named ref/pull/180/merge[0m
-
-User
- find_or_create_for_oauth
-[32m marks new users as such[0m
-[32m updates changed attributes[0m
- organization_ids
-[32m contains the ids of organizations that the user is a member of[0m
-[32m does not contain the ids of organizations that the user is not a member of[0m
- repository_ids
-[32m contains the ids of repositories the user is permitted to see[0m
-[32m does not contain the ids of repositories the user is not permitted to see[0m
- profile_image_hash
-[32m returns gravatar_id if it''s present[0m
-[32m returns a MD5 hash of the email if no gravatar_id and an email is set[0m
-[32m returns 32 zeros if no gravatar_id or email is set[0m
- authenticated_on_github
-[32m should log the user in[0m
- authenticate_by
- given a valid token and login
-[32m authenticates the user[0m
- given a wrong token
-[32m does not authenticate the user[0m
- given a wrong login
-[32m does not authenticate the user[0m
- service_hooks
-[32m contains repositories where the user has an admin role[0m
-[32m does not contain repositories where the user does not have an admin role[0m
- syncing
-[32m returns the block value[0m
-[32m sets is_syncing?[0m
-[32m sets synced_at[0m
-
-Worker
- full_name
-[32m returns a name consisting of host and name[0m
- serialization
-[32m serializes the payload[0m
-
-Job
- .queued
-[32m returns jobs that are created but not started or finished[0m
- append_log!
-[32m appends chars to the log artifact[0m
-[32m notifies observers[0m
- before_create
-[32m instantiates the log artifact[0m
-[32m sets the state attribute[0m
-[32m sets the queue attribute[0m
- duration
-[32m returns nil if both started_at is not populated[0m
-[32m returns nil if both finished_at is not populated[0m
-[32m returns the duration if both started_at and finished_at are populated[0m
- tagging
-[32m should tag a job its log contains a particular string[0m
- obfuscated config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- when job is from a pull request
-[32m removes secure env vars[0m
- #pull_request?
-[32m is delegated to commit[0m
- decrypted config
-[32m handles nil env[0m
-[32m leaves regular vars untouched[0m
- when job is from a pull request
-[32m removes secure env vars[0m
-[32m removes only secured env vars[0m
- when job is *not* from pull request
-[32m decrypts env vars[0m
-[32m decrypts only secured env vars[0m
-
-Token
-[32m generate_token sets the token to a 20 character value[0m
-
-ServiceHook
- set
-[32m activates a service hook[0m
-[32m activates a service hook with a custom service hook url[0m
-[32m removes a service hook[0m
-
-SslKey
-[32m is a SslKey[0m
- generate_keys
-[32m generates the public key[0m
-[32m generates the private key[0m
-[32m does not generate a new public key if one already exists[0m
-[32m does not generate a new private key if one already exists[0m
- generate_keys!
-[32m generates a new public key even if one already exists[0m
-[32m generates a new private key even if one already exists[0m
- encrypt
-[32m encrypts something[0m
-[32m is decryptable[0m
- decrypt
-[32m decrypts something[0m
-
-Repository
-[32m last_build returns the most recent build[0m
- validates
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m uniqueness of :owner_name/:name[0m
- associations
- owner
-[32m can be a user[0m
-[32m can be an organization[0m
- class methods
- find_by
-[32m should find a repository by it''s id[0m
-[32m should find a repository by it''s name and owner_name[0m
-[32m should raise an error when a repository couldn''t be found using params[0m
- timeline
-[32m sorts the most repository with the most recent build to the top[0m
- search
-[32m performs searches case-insensitive[0m
-[32m performs searches with / entered[0m
-[32m performs searches with \ entered[0m
- source_url
-[32m returns the public git source url for a public repository[0m
-[32m returns the private git source url for a private repository[0m
- last_build_result_on
-[32m returns last_build_result if params is empty[0m
-[32m returns 0 (passing) if all specified builds are passing[0m
-[32m returns 1 (failing) if at least one specified build is failing[0m
- keys
-[32m should return the public key[0m
-[32m should create a new key when the repository is created[0m
- branches
-[32m retrieves branches only from last 25 builds[0m
-[32m is empty for empty repository[0m
- last_finished_builds_by_branches
-[32m retrieves last builds on all branches[0m
-
-Url
- .shorten
-[32m creates a new Url object if the url has not been shortened[0m
-[32m retrieves a Url which has already been shortened[0m
- #code
-[32m sets the code automatically[0m
- #short_url
-[32m returns the full short url[0m
-
-Build
- class methods
- recent
-[32m returns recent builds that at least are started ordered by creation time descending[0m
- was_started
-[32m returns builds that are either started or finished[0m
- on_branch
-[32m returns builds that are on any of the given branches[0m
-[32m does not include pull requests[0m
- older_than
- when a Build is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when a number is passed in
-[32m should limit the results[0m
-[32m should return older than the passed build[0m
- when not passing a build
-[32m should limit the results[0m
- paged
-[32m limits the results to the `per_page` value[0m
-[32m uses an offset[0m
- next_number
-[32m returns the next build number[0m
- pushes
-[32m returns only builds which have Requests with an event_type of push[0m
- pull_requests
-[32m returns only builds which have Requests with an event_type of pull_request[0m
- instance methods
-[32m sets its number to the next build number on creation[0m
-[32m sets previous_build_result to nil if no last build exists on the same branch[0m
-[32m sets previous_build_result to the result of the last build on the same branch if exists[0m
- config
-[32m defaults to an empty hash[0m
-[32m deep_symbolizes keys on write[0m
-[32m tries to deserialize the config itself if a String is returned[0m
- obfuscated config
-[32m leaves regular vars untouched[0m
-[32m obfuscates env vars[0m
- pending?
-[32m returns true if the build is finished[0m
-[32m returns true if the build is not finished[0m
- passed?
-[32m passed? returns true if result is 0[0m
-[32m passed? returns true if result is 1[0m
- color
-[32m returns "green" if the build has passed[0m
-[32m returns "red" if the build has failed[0m
-[32m returns "yellow" if the build is pending[0m
-
-Job::Compat
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[DEPRECATED] setting Job#status is deprecated. Please use Job#result=
-[32m writes status to result[0m
-
-Job::Tagging
- add_tags
-[32m tags the job according to the rules[0m
-
-Job::Tagging
- worker
-[32m returns the worker name extracted from the log[0m
- sponsor
-[32m returns the sponsor for the current test[0m
-
-Job::Queue
- Queue.for
-[32m returns the default build queue when neither slug or language match the given configuration hash[0m
-[32m returns the queue when slug matches the given configuration hash[0m
-[32m returns the queue when language matches the given configuration hash[0m
- Queue.queues
-[32m returns an array of Queues for the config hash[0m
- matches?
-[32m returns false when neither of slug or language match[0m
-[32m returns true when the given slug matches[0m
-[32m returns true when the given language matches[0m
-
-Job::Cleanup
- scopes
- unfinished
-[32m finds unfinished jobs[0m
- stalled
-[32m finds stalled jobs[0m
- enqueue
-[32m enqueues the job[0m
-[32m increments the retries count[0m
- force_finish
-[33m appends a message to the log (PENDING: Temporarily disabled with xit)[0m
-[32m finishes the job[0m
-
-Job::Test::States
- events
- starting the job
-[32m sets the state to :started[0m
-[32m sets the worker from the payload[0m
-[32m resets the log artifact''s content[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- finishing the job
-[32m sets the state to :finished[0m
-[32m notifies observers[0m
-[32m propagates the event to the source[0m
- update_attributes
- given starting attributes
-[32m updates the job with the given attributes[0m
-[32m starts the job[0m
- given finishing attributes
-[32m updates the job with the given attributes[0m
-[32m finishes the job[0m
- append_log!
-[32m appends the given chars to the log[0m
-[32m notifies observers[0m
-
-Worker::States
- ping
-[32m sets the state[0m
-[32m notifies observers[0m
-
-Build::States
- events
- starting the build
- when the build is not already started
-[32m sets the state to :started[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-[32m gets skipped if the build is already started[0m
- when the build is already started
-[32m does not denormalize attributes[0m
-[32m does not notify observers[0m
- finishing the build
- when the matrix is not finished
-[32m does not change the state[0m
-[32m does not denormalizes attributes[0m
-[32m does not notify observers[0m
- when the matrix is finished
-[32m sets the state to :finished[0m
-[32m calculates the duration based on the matrix durations[0m
-[32m denormalizes attributes[0m
-[32m notifies observers[0m
-
-Build denormalization
- on build:started
-[32m denormalizes last_build_id to its repository[0m
-[32m denormalizes last_build_number to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_started_at to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
- on build:finished
-[32m denormalizes last_build_result to its repository[0m
-[32m denormalizes last_build_duration to its repository[0m
-[32m denormalizes last_build_finished_at to its repository[0m
-
-Build::Messages
- result_key
-[32m returns :pending if the build is pending[0m
-[32m returns :passed if the build has passed for the first time[0m
-[32m returns :failed if the build has failed for the first time[0m
-[32m returns :passed if the build has passed again[0m
-[32m returns :broken if the build was broken[0m
-[32m returns :fixed if the build was fixed[0m
-[32m returns :still_failing if the build has failed again[0m
-
-Build::Compat
-[DEPRECATED] setting Build#status is deprecated. Please use Build#result=
-[32m writes status to result[0m
-
-Build matrix
- matrix_finished?
- if at least one job has not finished
-[32m returns false[0m
- if all jobs have finished
-[32m returns true[0m
- matrix_result
- if any job has the result 1
-[32m returns 1 [0m
- if all jobs have the result 0
-[32m returns 0[0m
- if a failed job is allowed to fail
-[32m returns 0[0m
- if all jobs fail and one is allowed to fail
-[32m returns 1[0m
- matrix_duration
- if the matrix is finished
-[32m returns the sum of the matrix job durations[0m
- if the matrix is not finished
-[32m returns nil[0m
- for Ruby projects
- expand_matrix_config
-[32m does not decrypt secure env vars (single test config)[0m
-[32m does not encrypt (multiple tests config)[0m
-[32m expands the build matrix configuration (single test config)[0m
-[32m expands the build matrix configuration (multiple tests config)[0m
- expand_matrix
-[32m sets the config to the jobs (no config)[0m
-[32m sets the config to the jobs (no matrix config)[0m
-[32m sets the config to the jobs (single test config)[0m
-[32m sets the config to the jobs (multiple tests config)[0m
-[32m sets the config to the jobs (allow failures config)[0m
-[32m copies build attributes[0m
-[32m adds a sub-build number to the job number[0m
- exclude_matrix_config
-[32m excludes a matrix config when all config items are defined in the exclusion[0m
-[32m does not exclude a matrix config when the matrix exclusion definition is incomplete[0m
- include_matrix_config
-[32m includes a matrix config[0m
- matrix_config
-[32m with string values[0m
-[32m does not decrypt secure env vars[0m
-[32m with two Rubies and Gemfiles[0m
-[32m with unequal number of Rubies, env variables and Gemfiles[0m
-[32m with an array of Rubies and a single Gemfile[0m
- for Scala projects
-[32m with a single Scala version given as a string[0m
-[32m with multiple Scala versions and no env variables[0m
-[32m with a single Scala version passed in as array and two env variables[0m
- matrix_for
-[32m selects matching builds[0m
-[32m does not select builds with non-matching values[0m
-[32m does not select builds with non-matching keys[0m
- matrix_keys_for
-[32m only selects ENV_KEYS[0m
-[32m selects symbolized ENV_KEYS[0m
-
-Build::Metrics
-[32m measures on "travis.builds.start.delay"[0m
-[32m measures the time it takes from creating the request until starting the build[0m
-
-Build::Matrix::Config
-[32m can handle nil values in exclude matrix[0m
-
-User::Oauth
- find_or_create_by
-[32m marks users as recently_signed_up[0m
-[32m does not mark existing users as recently_signed_up[0m
-[32m updates changed attributes[0m
- attributes_from
-[32m returns required data[0m
-
-Artifact::Log
- class methods
- .append
-[32m appends streamed build log chunks[0m
-
-Request::States
-[32m has the state :created when just created[0m
- start
- with an accepted request
-[32m configures the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- with a rejected request
-[32m does not configure the request[0m
-[32m finishes the request[0m
-[32m sets the state to started[0m
- configure
-[32m fetches the .travis.yml config from Github[0m
-[32m stores the config on the request[0m
-[32m sets the state to configured[0m
- finish
- with an approved request
-[32m builds the build[0m
-[32m sets the state to finished[0m
- with an unapproved request
-[32m does not build the build[0m
-[32m sets the state to finished[0m
-
-Request::Branches
- #included?
-[32m defaults to true if no branches are included[0m
- returns true if the included branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the included branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the included branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- #excluded?
-[32m defaults to false if no branches are excluded[0m
- returns true if the excluded branches include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns true if the given branch matches a pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
- returns false if the excluded branches do not include the given branch
-[32m given as a string[0m
-[32m given as a comma separated list of branches[0m
-[32m given as an array of branches[0m
- returns false if the given branch does not match any pattern from the excluded branches
-[32m given as a string[0m
-[32m given as a comma separated list of patterns[0m
-[32m given as an array of patterns[0m
-
-Request::Approval
- accepted?
-[32m accepts a request that has a commit, belongs to a public repository, is not skipped and does not belong to the github_pages branch and it is not a rails fork[0m
-[32m does not accept a request that does not have a commit[0m
-[32m does not accept a request that belongs to a private repository[0m
-[32m does not accept a request that belongs to a rails fork[0m
-[32m does not accept a request that is skipped (using the commit message)[0m
-[32m does not accept a request that belongs to the github_pages branch[0m
- approved?
-[33m should be specified (PENDING: Temporarily disabled with xit)[0m
- skipped?
-[32m returns true when the commit message contains [ci skip][0m
-[32m returns true when the commit message contains [CI skip][0m
-[32m returns true when the commit message contains [ci:skip][0m
-[32m returns false when the commit message contains [ci unknown-command][0m
- github_pages?
-[32m returns true for a branch named gh-pages[0m
-[32m returns true for a branch named gh_pages[0m
-[32m returns false for a branch named master[0m
- rails_fork?
-[32m returns true if the repository is a rails fork[0m
-[32m returns false if the repository is rails/rails[0m
-[32m returns false if the repository is not owned by the rails org[0m
-
-Request::Factory
- a github push event
- for repository belonging to a user
- if the user exists
- it should behave like a created request
- it should behave like creates a request and repository
-[32m creates a request for the given payload[0m
-[32m creates a repository[0m
-[32m sets the payload to the request[0m
-[32m sets the token to the request[0m
- it should behave like sets the owner for the request and repository to the expected type and login
-[32m sets the repository owner[0m
-[32m sets the request owner[0m
- it should behave like has the expected login for the request and repository owner
-[32m has the repository owner login[0m
-[32m has the request owner login[0m
- it should behave like does not create a user
-[32m does not create a user[0m
-
-Repository::Compat
-[DEPRECATED] setting Repository#last_build_status is deprecated. Please use Repository#last_build_result=
-[32m writes status to result[0m
-
-Travis::Notification::Instrument
-[32m automatically generates a received event[0m
-[32m automatically generates a failed event[0m
-
-Travis::Notification::Publisher::Redis
-[32m adds to the list[0m
-[32m sets a ttl[0m
-[32m encodes the payload in json[0m
-[32m queues new messages on the right[0m
-[32m sends out events over pubsub[0m
-
-Travis::Notification::Publisher::Log
-[32m writes to Travis.logger[0m
-[32m prints out the :msg value[0m
-[32m defaults to INFO[0m
-[32m uses ERROR if an exception occured[0m
-[32m does not include extra information if no exception occured[0m
-[32m does include extra information if no exception occured but log level is DEBUG[0m
-[32m does include extra information if an exception occured[0m
-
-Travis::Notification::Instrument::Event::Handler::Worker
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Archive
-[32m sends out a received event[0m
-[32m it sends out a completed event[0m
-
-Travis::Notification::Instrument::Event::Handler::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Event::Handler::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Irc
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Email
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Archive
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Github
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Pusher
- given a job:started event
-[32m publishes a payload[0m
- given a build:finished event
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Campfire
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Task::Webhook
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Request::Factory
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Config
-[32m publishes a payload[0m
-
-Travis::Notification::Instrument::Github::Sync::Repositories
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Notification::Instrument::Github::Sync::Organizations
-[32m publishes a payload on :run[0m
-[32m publishes a payload on :fetch[0m
-
-Travis::Mailer::Build
- finished build email notification
-[32m delivers to the repository owner, committer and commit author[0m
-[32m is a multipart email[0m
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
- with no custom from address configured
-[32m has "notifications@[hostname]" as a from address[0m
- with a custom from address configured
-[32m has that address as a from address[0m
- in HTML
-[32m escapes newlines in the commit message[0m
-[32m inlines css[0m
-[32m correctly encodes UTF-8 characters[0m
- sponsors
-[32m adds a sponsor image[0m
-[32m does not escape tags contained in the sponsor text[0m
- for a successful build
-[32m subject[0m
- for a broken build
-[32m subject[0m
- for a broken build with tags
-[32m contains the expected text part[0m
-[32m contains the expected html part[0m
-
-Travis::Mailer::Helper::Build
-[32m #title returns title for the build[0m
- header_result
-[32m returns success header class for a successful build[0m
-[32m returns failure header class for a failed build[0m
-
-Travis::Task::Irc
-[32m one irc notification[0m
-[32m one irc notification using notice[0m
-[32m one irc notification without joining the channel[0m
-[32m with a custom message template[0m
-[32m with multiple custom message templates[0m
-[32m with two irc notifications to different hosts[0m
-[32m does not disconnect for notifications to channels on the same host[0m
- when configured to IRC+SSL server
-[32m should wrap socket with ssl (in client private)[0m
-
-Travis::Task::Email
- run
-[32m creates an email for the build email recipients[0m
-[32m sends the email[0m
-
-Travis::Task::Archive
- run
-[32m stores the build payload to the storage[0m
-[32m sets the build to be archived[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Github
- run
-[32m posts to the request comments_url[0m
-[32m authenticates as travisbot using the token[0m
- using a passing build
-[32m posts a comment to github[0m
- using a failing build
-[32m posts a comment to github[0m
- logging
-[32m logs a successful request[0m
-[32m warns about a failed request[0m
-
-Travis::Task::Pusher
- run
-[32m job:test:created[0m
-[32m job:test:started[0m
-[32m job:log[0m
-[32m job:test:finished[0m
-[32m build:started[0m
-[32m build:finished[0m
-[32m worker:started[0m
- channels
-[32m returns "common" for the event "job:created"[0m
-[32m returns "common" for the event "job:started"[0m
-[32m returns "job-1" for the event "job:log"[0m
-[32m returns "common" for the event "job:finished"[0m
-[32m returns "common" for the event "build:started"[0m
-[32m returns "common" for the event "build:finished"[0m
-[32m returns "common" for the event "worker:started"[0m
-
-Travis::Task::Campfire
-[32m sends campfire notifications to the room[0m
-
-Travis::Task::Webhook
-[32m sends webhook notifications to a url given as a string[0m
-[32m sends webhook notifications to the urls given as an array[0m
-[32m sends no webhook if the given url is blank[0m
-[32m sends webhook notifications to a url given at a "urls" key[0m
-[32m sends webhook notifications to the urls given at a "urls" key[0m
-[32m sends webhook notifications on start to a url given at a "urls" key[0m
-[32m sends webhook notifications on start when configured as "always"[0m
-[32m sends webhook notifications on start to the urls given as an array[0m
-[32m sends no webhook on start by default[0m
-
-Travis::Task::Irc::Client
- on initialization
- with no port specified
-[32m should open a socket on the server for port 6667[0m
- with port specified
-[32m should open a socket on the server for the given port[0m
- should connect to the server
- without a password
-[32m by sending NICK then USER[0m
- with a password
-[32m by sending PASS then NICK then USER[0m
- should connect to a server which requires ping/pong
- without a password
-[32m by sending NICK then USER[0m
- with connection established
-[32m can message a channel before joining[0m
-[32m can notice a channel before joining[0m
-[32m can join a channel[0m
-[32m can join a channel with a key[0m
-[32m can run a series of commands[0m
-[32m can abandon the connection[0m
- and channel joined
-[32m can leave the channel[0m
-[32m can message the channel[0m
-[32m can notice the channel[0m
-
-Travis::Task::Irc::Template
- interpolation
-[32m replaces the repository[0m
-[32m replaces the build number[0m
-[32m replaces the branch[0m
-[32m replaces the author[0m
-[32m replaces the commit message[0m
-[32m replaces the message[0m
- with shortening enabled
-[32m replaces the build url in short form[0m
-[32m replaces the compare url in short form[0m
- with shortening disabled
-[32m replaces the compare url the full form[0m
-[32m replaces the build url the full form[0m
-
-Travis::Github::Config
- config
-[32m returns a hash[0m
-[32m yaml parses the response body if the response is successful[0m
-[32m merges { ''.result'' => ''configured'' } to the actual configuration[0m
-[32m returns { ''.result'' => ''not_found'' } if the repository has not .travis.yml[0m
-[32m returns { ''.result'' => ''server_error'' } if a 500 server error is returned[0m
-[32m returns { ''.result'' => ''parsing_error'' } if the .travis.yml is invalid[0m
- http_options
-[32m returns a hash containing a :ca_path value if present[0m
-[32m returns a hash containing a :ca_file value if present[0m
-
-Travis::Github::Payload::Push
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Payload::PullRequest
- accept
- given action is "opened"
-[32m returns true[0m
- given action is "reopened"
-[32m returns true[0m
- given action is "synchronize"
-[32m returns true if head has changed[0m
-[32m returns false if base has not changed[0m
- given action is "comment"
-[32m returns false[0m
- repository
-[32m returns all attributes required for a Repository[0m
- owner
-[32m returns all attributes required for an Owner[0m
- request
-[32m returns all attributes required for a Request[0m
- commit
-[32m returns all attributes required for a Commit[0m
-
-Travis::Github::Sync::Repositories
-[32m fetches the user''s repositories[0m
-[32m fetches the user''s orgs'' repositories[0m
-[32m removes repositories from the user''s permissions which are not listed in the data from Github[0m
- given type is set to public
-[32m synchronizes each of the public repositories[0m
-[32m does not synchronize private repositories[0m
- given type is set to private
-[32m synchronizes each of the private repositories[0m
-[32m does not synchronize public repositories[0m
-
-Travis::Github::Sync::Organizations
- sync_for
-[32m finds existing organizations[0m
-[32m finds existing organizations[0m
-[32m creates missing organizations[0m
-
-Travis::Github::Sync::Repositories
-[32m creates a new repository per record if not yet present[0m
-[32m does not create a new repository if one exists[0m
-[32m creates a new permission for the user/repo if none exists[0m
-[32m does not create a new permission for the user/repo if one exists[0m
-
-Travis::Api::V0::Worker::Job::Test
- for a push request
-[32m contains the expected data[0m
- for a pull request
-[32m contains the expected data[0m
-
-Travis::Api::V1::Archive::Build
-[32m data[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Created
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Finished
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Started
-[32m data[0m
-
-Travis::Api::V1::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V1::Pusher::Build::Finished
-[32m build[0m
-[32m repository[0m
-
-Travis::Api::V1::Pusher::Build::Started
-[32m build[0m
-[32m matrix[0m
-[32m repository[0m
-
-Travis::Api::V1::Webhook::Build::Finished
-[32m data[0m
-[32m repository[0m
-[32m matrix[0m
-
-Travis::Api::V1::Http::User
-[32m data[0m
-
-Travis::Api::V1::Http::Job
-[32m data[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V1::Http::Branches
-[32m data[0m
-
-Travis::Api::V1::Http::Builds
-[32m builds[0m
-
-Travis::Api::V1::Http::Repositories
-[32m data[0m
-
-Travis::Api::V1::Http::Jobs
-[32m tests[0m
-
-Travis::Api::V1::Http::Workers
-[32m workers[0m
-
-Travis::Api::V1::Http::Repository
-[32m data[0m
-[32m public_key[0m
-
-Travis::Api::V1::Http::Build
-[32m build[0m
-[32m matrix[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Pusher::Worker
-[32m data[0m
-
-Travis::Api::V2::Pusher::Job::Created
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Finished
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Started
-[32m job[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Job::Log
-[32m data[0m
-
-Travis::Api::V2::Pusher::Build::Finished
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Pusher::Build::Started
-[32m repository[0m
-[32m build[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::User
-[32m data[0m
-
-Travis::Api::V2::Http::Job
-[32m job[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Travis::Api::V2::Http::Build
-[32m artifact[0m
-
-Travis::Api::V2::Http::Branches
-[32m branches[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Builds
-[32m builds[0m
-[32m commit[0m
-
-Travis::Api::V2::Http::Repositories
-[32m repositories[0m
-
-Travis::Api::V2::Http::Jobs
-[32m jobs[0m
-[32m commits[0m
-
-Travis::Api::V2::Http::Workers
-[32m workers[0m
-
-Travis::Api::V2::Http::Repository
-[32m repository[0m
-
-Travis::Api::V2::Http::Build
-[32m build[0m
-[32m commit[0m
- with encrypted env vars
-[32m shows encrypted env vars in human readable way[0m
-
-Pending:
-[33m Job::Cleanup force_finish appends a message to the log[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/job/cleanup_spec.rb:48[0m
-[33m Request::Approval approved? should be specified[0m
-[36m # Temporarily disabled with xit[0m
-[36m # ./spec/travis/model/request/approval_spec.rb:40[0m
-
-Finished in 144.99 seconds
-[33m744 examples, 0 failures, 2 pending[0m
-
-
-Executing your script (bundle exec rake) took longer than 1500 seconds and was terminated. Consider rewriting your stuff in AssemblyScript, we''ve heard it handles Web Scale™
-
-
-Done. Build script exited with: 1
-', 1886301, 'Artifact::Log', '2012-07-17 15:19:31.653000', '2012-07-17 15:19:32.747000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1572810, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-ci.git travis-ci/travis-ci
-$ cd travis-ci/travis-ci
-$ git checkout -qf ac6ddfa94b5ce53a644e78d63c98a0ab6dcc6c07
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-ci/Gemfile
-$ gem install bundler --pre
-Fetching: bundler-1.2.0.rc.gemFetching: bundler-1.2.0.rc.gem ( 6%)Fetching: bundler-1.2.0.rc.gem ( 9%)Fetching: bundler-1.2.0.rc.gem ( 13%)Fetching: bundler-1.2.0.rc.gem ( 16%)Fetching: bundler-1.2.0.rc.gem ( 20%)Fetching: bundler-1.2.0.rc.gem ( 26%)Fetching: bundler-1.2.0.rc.gem ( 29%)Fetching: bundler-1.2.0.rc.gem ( 30%)Fetching: bundler-1.2.0.rc.gem ( 31%)Fetching: bundler-1.2.0.rc.gem ( 38%)Fetching: bundler-1.2.0.rc.gem ( 44%)Fetching: bundler-1.2.0.rc.gem ( 52%)Fetching: bundler-1.2.0.rc.gem ( 60%)Fetching: bundler-1.2.0.rc.gem ( 67%)Fetching: bundler-1.2.0.rc.gem ( 74%)Fetching: bundler-1.2.0.rc.gem ( 82%)Fetching: bundler-1.2.0.rc.gem ( 89%)Fetching: bundler-1.2.0.rc.gem ( 96%)Fetching: bundler-1.2.0.rc.gem (100%)Fetching: bundler-1.2.0.rc.gem (100%)
-Successfully installed bundler-1.2.0.rc
-1 gem installed
-$ bundle install --without development
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://github.com/rack/rack-contrib
-remote: Counting objects: 1054, done.[K
-remote: Compressing objects: 0% (1/443) [Kremote: Compressing objects: 1% (5/443) [Kremote: Compressing objects: 2% (9/443) [Kremote: Compressing objects: 3% (14/443) [Kremote: Compressing objects: 4% (18/443) [Kremote: Compressing objects: 5% (23/443) [Kremote: Compressing objects: 6% (27/443) [Kremote: Compressing objects: 7% (32/443) [Kremote: Compressing objects: 8% (36/443) [Kremote: Compressing objects: 9% (40/443) [Kremote: Compressing objects: 10% (45/443) [Kremote: Compressing objects: 11% (49/443) [Kremote: Compressing objects: 12% (54/443) [Kremote: Compressing objects: 13% (58/443) [Kremote: Compressing objects: 14% (63/443) [Kremote: Compressing objects: 15% (67/443) [Kremote: Compressing objects: 16% (71/443) [Kremote: Compressing objects: 17% (76/443) [Kremote: Compressing objects: 18% (80/443) [Kremote: Compressing objects: 19% (85/443) [Kremote: Compressing objects: 20% (89/443) [Kremote: Compressing objects: 21% (94/443) [Kremote: Compressing objects: 22% (98/443) [Kremote: Compressing objects: 23% (102/443) [Kremote: Compressing objects: 24% (107/443) [Kremote: Compressing objects: 25% (111/443) [Kremote: Compressing objects: 26% (116/443) [Kremote: Compressing objects: 27% (120/443) [Kremote: Compressing objects: 28% (125/443) [Kremote: Compressing objects: 29% (129/443) [Kremote: Compressing objects: 30% (133/443) [Kremote: Compressing objects: 31% (138/443) [Kremote: Compressing objects: 32% (142/443) [Kremote: Compressing objects: 33% (147/443) [Kremote: Compressing objects: 34% (151/443) [Kremote: Compressing objects: 35% (156/443) [Kremote: Compressing objects: 36% (160/443) [Kremote: Compressing objects: 37% (164/443) [Kremote: Compressing objects: 38% (169/443) [Kremote: Compressing objects: 39% (173/443) [Kremote: Compressing objects: 40% (178/443) [Kremote: Compressing objects: 41% (182/443) [Kremote: Compressing objects: 42% (187/443) [Kremote: Compressing objects: 43% (191/443) [Kremote: Compressing objects: 44% (195/443) [Kremote: Compressing objects: 45% (200/443) [Kremote: Compressing objects: 46% (204/443) [Kremote: Compressing objects: 47% (209/443) [Kremote: Compressing objects: 48% (213/443) [Kremote: Compressing objects: 49% (218/443) [Kremote: Compressing objects: 50% (222/443) [Kremote: Compressing objects: 51% (226/443) [Kremote: Compressing objects: 52% (231/443) [Kremote: Compressing objects: 53% (235/443) [Kremote: Compressing objects: 54% (240/443) [Kremote: Compressing objects: 55% (244/443) [Kremote: Compressing objects: 56% (249/443) [Kremote: Compressing objects: 57% (253/443) [Kremote: Compressing objects: 58% (257/443) [Kremote: Compressing objects: 59% (262/443) [Kremote: Compressing objects: 60% (266/443) [Kremote: Compressing objects: 61% (271/443) [Kremote: Compressing objects: 62% (275/443) [Kremote: Compressing objects: 63% (280/443) [Kremote: Compressing objects: 64% (284/443) [Kremote: Compressing objects: 65% (288/443) [Kremote: Compressing objects: 66% (293/443) [Kremote: Compressing objects: 67% (297/443) [Kremote: Compressing objects: 68% (302/443) [Kremote: Compressing objects: 69% (306/443) [Kremote: Compressing objects: 70% (311/443) [Kremote: Compressing objects: 71% (315/443) [Kremote: Compressing objects: 72% (319/443) [Kremote: Compressing objects: 73% (324/443) [Kremote: Compressing objects: 74% (328/443) [Kremote: Compressing objects: 75% (333/443) [Kremote: Compressing objects: 76% (337/443) [Kremote: Compressing objects: 77% (342/443) [Kremote: Compressing objects: 78% (346/443) [Kremote: Compressing objects: 79% (350/443) [Kremote: Compressing objects: 80% (355/443) [Kremote: Compressing objects: 81% (359/443) [Kremote: Compressing objects: 82% (364/443) [Kremote: Compressing objects: 83% (368/443) [Kremote: Compressing objects: 84% (373/443) [Kremote: Compressing objects: 85% (377/443) [Kremote: Compressing objects: 86% (381/443) [Kremote: Compressing objects: 87% (386/443) [Kremote: Compressing objects: 88% (390/443) [Kremote: Compressing objects: 89% (395/443) [Kremote: Compressing objects: 90% (399/443) [Kremote: Compressing objects: 91% (404/443) [Kremote: Compressing objects: 92% (408/443) [Kremote: Compressing objects: 93% (412/443) [Kremote: Compressing objects: 94% (417/443) [Kremote: Compressing objects: 95% (421/443) [Kremote: Compressing objects: 96% (426/443) [Kremote: Compressing objects: 97% (430/443) [Kremote: Compressing objects: 98% (435/443) [Kremote: Compressing objects: 99% (439/443) [Kremote: Compressing objects: 100% (443/443) [Kremote: Compressing objects: 100% (443/443), done.[K
-Receiving objects: 0% (1/1054) Receiving objects: 1% (11/1054) Receiving objects: 2% (22/1054) Receiving objects: 3% (32/1054) Receiving objects: 4% (43/1054) Receiving objects: 5% (53/1054) Receiving objects: 6% (64/1054) Receiving objects: 7% (74/1054) Receiving objects: 8% (85/1054) Receiving objects: 9% (95/1054) Receiving objects: 10% (106/1054) Receiving objects: 11% (116/1054) Receiving objects: 12% (127/1054) Receiving objects: 13% (138/1054) Receiving objects: 14% (148/1054) Receiving objects: 15% (159/1054) Receiving objects: 16% (169/1054) Receiving objects: 17% (180/1054) Receiving objects: 18% (190/1054) Receiving objects: 19% (201/1054) Receiving objects: 20% (211/1054) Receiving objects: 21% (222/1054) Receiving objects: 22% (232/1054) Receiving objects: 23% (243/1054) Receiving objects: 24% (253/1054) Receiving objects: 25% (264/1054) Receiving objects: 26% (275/1054) Receiving objects: 27% (285/1054) Receiving objects: 28% (296/1054) Receiving objects: 29% (306/1054) Receiving objects: 30% (317/1054) Receiving objects: 31% (327/1054) Receiving objects: 32% (338/1054) Receiving objects: 33% (348/1054) Receiving objects: 34% (359/1054) Receiving objects: 35% (369/1054) Receiving objects: 36% (380/1054) Receiving objects: 37% (390/1054) Receiving objects: 38% (401/1054) Receiving objects: 39% (412/1054) Receiving objects: 40% (422/1054) Receiving objects: 41% (433/1054) Receiving objects: 42% (443/1054) Receiving objects: 43% (454/1054) Receiving objects: 44% (464/1054) Receiving objects: 45% (475/1054) Receiving objects: 46% (485/1054) Receiving objects: 47% (496/1054) Receiving objects: 48% (506/1054) Receiving objects: 49% (517/1054) Receiving objects: 50% (527/1054) Receiving objects: 51% (538/1054) Receiving objects: 52% (549/1054) Receiving objects: 53% (559/1054) Receiving objects: 54% (570/1054) Receiving objects: 55% (580/1054) Receiving objects: 56% (591/1054) Receiving objects: 57% (601/1054) Receiving objects: 58% (612/1054) Receiving objects: 59% (622/1054) Receiving objects: 60% (633/1054) Receiving objects: 61% (643/1054) Receiving objects: 62% (654/1054) Receiving objects: 63% (665/1054) Receiving objects: 64% (675/1054) Receiving objects: 65% (686/1054) Receiving objects: 66% (696/1054) Receiving objects: 67% (707/1054) Receiving objects: 68% (717/1054) Receiving objects: 69% (728/1054) Receiving objects: 70% (738/1054) Receiving objects: 71% (749/1054) Receiving objects: 72% (759/1054) Receiving objects: 73% (770/1054) Receiving objects: 74% (780/1054) Receiving objects: 75% (791/1054) Receiving objects: 76% (802/1054) Receiving objects: 77% (812/1054) remote: Total 1054 (delta 573), reused 925 (delta 478)[K
-Receiving objects: 78% (823/1054) Receiving objects: 79% (833/1054) Receiving objects: 80% (844/1054) Receiving objects: 81% (854/1054) Receiving objects: 82% (865/1054) Receiving objects: 83% (875/1054) Receiving objects: 84% (886/1054) Receiving objects: 85% (896/1054) Receiving objects: 86% (907/1054) Receiving objects: 87% (917/1054) Receiving objects: 88% (928/1054) Receiving objects: 89% (939/1054) Receiving objects: 90% (949/1054) Receiving objects: 91% (960/1054) Receiving objects: 92% (970/1054) Receiving objects: 93% (981/1054) Receiving objects: 94% (991/1054) Receiving objects: 95% (1002/1054) Receiving objects: 96% (1012/1054) Receiving objects: 97% (1023/1054) Receiving objects: 98% (1033/1054) Receiving objects: 99% (1044/1054) Receiving objects: 100% (1054/1054) Receiving objects: 100% (1054/1054), 136.74 KiB, done.
-Resolving deltas: 0% (0/573) Resolving deltas: 6% (36/573) Resolving deltas: 20% (115/573) Resolving deltas: 30% (174/573) Resolving deltas: 34% (195/573) Resolving deltas: 38% (218/573) Resolving deltas: 41% (240/573) Resolving deltas: 47% (270/573) Resolving deltas: 51% (294/573) Resolving deltas: 55% (320/573) Resolving deltas: 58% (338/573) Resolving deltas: 64% (367/573) Resolving deltas: 71% (409/573) Resolving deltas: 72% (413/573) Resolving deltas: 73% (419/573) Resolving deltas: 74% (425/573) Resolving deltas: 77% (446/573) Resolving deltas: 78% (451/573) Resolving deltas: 79% (454/573) Resolving deltas: 81% (469/573) Resolving deltas: 82% (471/573) Resolving deltas: 85% (489/573) Resolving deltas: 86% (493/573) Resolving deltas: 87% (500/573) Resolving deltas: 88% (506/573) Resolving deltas: 89% (510/573) Resolving deltas: 92% (530/573) Resolving deltas: 93% (533/573) Resolving deltas: 94% (539/573) Resolving deltas: 96% (551/573) Resolving deltas: 97% (557/573) Resolving deltas: 98% (564/573) Resolving deltas: 99% (571/573) Resolving deltas: 100% (573/573) Resolving deltas: 100% (573/573), done.
-Fetching https://github.com/livingsocial/rake-pipeline.git
-remote: Counting objects: 1409, done.[K
-remote: Compressing objects: 0% (1/520) [Kremote: Compressing objects: 1% (6/520) [Kremote: Compressing objects: 2% (11/520) [Kremote: Compressing objects: 3% (16/520) [Kremote: Compressing objects: 4% (21/520) [Kremote: Compressing objects: 5% (26/520) [Kremote: Compressing objects: 6% (32/520) [Kremote: Compressing objects: 7% (37/520) [Kremote: Compressing objects: 8% (42/520) [Kremote: Compressing objects: 9% (47/520) [Kremote: Compressing objects: 10% (52/520) [Kremote: Compressing objects: 11% (58/520) [Kremote: Compressing objects: 12% (63/520) [Kremote: Compressing objects: 13% (68/520) [Kremote: Compressing objects: 14% (73/520) [Kremote: Compressing objects: 15% (78/520) [Kremote: Compressing objects: 16% (84/520) [Kremote: Compressing objects: 17% (89/520) [Kremote: Compressing objects: 18% (94/520) [Kremote: Compressing objects: 19% (99/520) [Kremote: Compressing objects: 20% (104/520) [Kremote: Compressing objects: 21% (110/520) [Kremote: Compressing objects: 22% (115/520) [Kremote: Compressing objects: 23% (120/520) [Kremote: Compressing objects: 24% (125/520) [Kremote: Compressing objects: 25% (130/520) [Kremote: Compressing objects: 26% (136/520) [Kremote: Compressing objects: 27% (141/520) [Kremote: Compressing objects: 28% (146/520) [Kremote: Compressing objects: 29% (151/520) [Kremote: Compressing objects: 30% (156/520) [Kremote: Compressing objects: 31% (162/520) [Kremote: Compressing objects: 32% (167/520) [Kremote: Compressing objects: 33% (172/520) [Kremote: Compressing objects: 34% (177/520) [Kremote: Compressing objects: 35% (182/520) [Kremote: Compressing objects: 36% (188/520) [Kremote: Compressing objects: 37% (193/520) [Kremote: Compressing objects: 38% (198/520) [Kremote: Compressing objects: 39% (203/520) [Kremote: Compressing objects: 40% (208/520) [Kremote: Compressing objects: 41% (214/520) [Kremote: Compressing objects: 42% (219/520) [Kremote: Compressing objects: 43% (224/520) [Kremote: Compressing objects: 44% (229/520) [Kremote: Compressing objects: 45% (234/520) [Kremote: Compressing objects: 46% (240/520) [Kremote: Compressing objects: 47% (245/520) [Kremote: Compressing objects: 48% (250/520) [Kremote: Compressing objects: 49% (255/520) [Kremote: Compressing objects: 50% (260/520) [Kremote: Compressing objects: 51% (266/520) [Kremote: Compressing objects: 52% (271/520) [Kremote: Compressing objects: 53% (276/520) [Kremote: Compressing objects: 54% (281/520) [Kremote: Compressing objects: 55% (286/520) [Kremote: Compressing objects: 56% (292/520) [Kremote: Compressing objects: 57% (297/520) [Kremote: Compressing objects: 58% (302/520) [Kremote: Compressing objects: 59% (307/520) [Kremote: Compressing objects: 60% (312/520) [Kremote: Compressing objects: 61% (318/520) [Kremote: Compressing objects: 62% (323/520) [Kremote: Compressing objects: 63% (328/520) [Kremote: Compressing objects: 64% (333/520) [Kremote: Compressing objects: 65% (338/520) [Kremote: Compressing objects: 66% (344/520) [Kremote: Compressing objects: 67% (349/520) [Kremote: Compressing objects: 68% (354/520) [Kremote: Compressing objects: 69% (359/520) [Kremote: Compressing objects: 70% (364/520) [Kremote: Compressing objects: 71% (370/520) [Kremote: Compressing objects: 72% (375/520) [Kremote: Compressing objects: 73% (380/520) [Kremote: Compressing objects: 74% (385/520) [Kremote: Compressing objects: 75% (390/520) [Kremote: Compressing objects: 76% (396/520) [Kremote: Compressing objects: 77% (401/520) [Kremote: Compressing objects: 78% (406/520) [Kremote: Compressing objects: 79% (411/520) [Kremote: Compressing objects: 80% (416/520) [Kremote: Compressing objects: 81% (422/520) [Kremote: Compressing objects: 82% (427/520) [Kremote: Compressing objects: 83% (432/520) [Kremote: Compressing objects: 84% (437/520) [Kremote: Compressing objects: 85% (442/520) [Kremote: Compressing objects: 86% (448/520) [Kremote: Compressing objects: 87% (453/520) [Kremote: Compressing objects: 88% (458/520) [Kremote: Compressing objects: 89% (463/520) [Kremote: Compressing objects: 90% (468/520) [Kremote: Compressing objects: 91% (474/520) [Kremote: Compressing objects: 92% (479/520) [Kremote: Compressing objects: 93% (484/520) [Kremote: Compressing objects: 94% (489/520) [Kremote: Compressing objects: 95% (494/520) [Kremote: Compressing objects: 96% (500/520) [Kremote: Compressing objects: 97% (505/520) [Kremote: Compressing objects: 98% (510/520) [Kremote: Compressing objects: 99% (515/520) [Kremote: Compressing objects: 100% (520/520) [Kremote: Compressing objects: 100% (520/520), done.[K
-Receiving objects: 0% (1/1409) Receiving objects: 1% (15/1409) Receiving objects: 2% (29/1409) Receiving objects: 3% (43/1409) Receiving objects: 4% (57/1409) Receiving objects: 5% (71/1409) Receiving objects: 6% (85/1409) Receiving objects: 7% (99/1409) Receiving objects: 8% (113/1409) Receiving objects: 9% (127/1409) Receiving objects: 10% (141/1409) Receiving objects: 11% (155/1409) Receiving objects: 12% (170/1409) Receiving objects: 13% (184/1409) Receiving objects: 14% (198/1409) Receiving objects: 15% (212/1409) Receiving objects: 16% (226/1409) Receiving objects: 17% (240/1409) Receiving objects: 18% (254/1409) Receiving objects: 19% (268/1409) Receiving objects: 20% (282/1409) Receiving objects: 21% (296/1409) Receiving objects: 22% (310/1409) Receiving objects: 23% (325/1409) Receiving objects: 24% (339/1409) Receiving objects: 25% (353/1409) Receiving objects: 26% (367/1409) Receiving objects: 27% (381/1409) Receiving objects: 28% (395/1409) Receiving objects: 29% (409/1409) Receiving objects: 30% (423/1409) Receiving objects: 31% (437/1409) Receiving objects: 32% (451/1409) Receiving objects: 33% (465/1409) Receiving objects: 34% (480/1409) Receiving objects: 35% (494/1409) Receiving objects: 36% (508/1409) Receiving objects: 37% (522/1409) Receiving objects: 38% (536/1409) Receiving objects: 39% (550/1409) Receiving objects: 40% (564/1409) Receiving objects: 41% (578/1409) Receiving objects: 42% (592/1409) Receiving objects: 43% (606/1409) Receiving objects: 44% (620/1409) Receiving objects: 45% (635/1409) Receiving objects: 46% (649/1409) Receiving objects: 47% (663/1409) Receiving objects: 48% (677/1409) Receiving objects: 49% (691/1409) Receiving objects: 50% (705/1409) Receiving objects: 51% (719/1409) Receiving objects: 52% (733/1409) Receiving objects: 53% (747/1409) Receiving objects: 54% (761/1409) Receiving objects: 55% (775/1409) Receiving objects: 56% (790/1409) Receiving objects: 57% (804/1409) Receiving objects: 58% (818/1409) Receiving objects: 59% (832/1409) Receiving objects: 60% (846/1409) Receiving objects: 61% (860/1409) Receiving objects: 62% (874/1409) Receiving objects: 63% (888/1409) Receiving objects: 64% (902/1409) Receiving objects: 65% (916/1409) Receiving objects: 66% (930/1409) Receiving objects: 67% (945/1409) Receiving objects: 68% (959/1409) Receiving objects: 69% (973/1409) Receiving objects: 70% (987/1409) Receiving objects: 71% (1001/1409) Receiving objects: 72% (1015/1409) Receiving objects: 73% (1029/1409) Receiving objects: 74% (1043/1409) Receiving objects: 75% (1057/1409) Receiving objects: 76% (1071/1409) Receiving objects: 77% (1085/1409) Receiving objects: 78% (1100/1409) Receiving objects: 79% (1114/1409) Receiving objects: 80% (1128/1409) Receiving objects: 81% (1142/1409) Receiving objects: 82% (1156/1409) Receiving objects: 83% (1170/1409) Receiving objects: 84% (1184/1409) Receiving objects: 85% (1198/1409) Receiving objects: 86% (1212/1409) Receiving objects: 87% (1226/1409) Receiving objects: 88% (1240/1409) Receiving objects: 89% (1255/1409) Receiving objects: 90% (1269/1409) Receiving objects: 91% (1283/1409) Receiving objects: 92% (1297/1409) Receiving objects: 93% (1311/1409) Receiving objects: 94% (1325/1409) remote: Total 1409 (delta 929), reused 1313 (delta 838)[K
-Receiving objects: 95% (1339/1409) Receiving objects: 96% (1353/1409) Receiving objects: 97% (1367/1409) Receiving objects: 98% (1381/1409) Receiving objects: 99% (1395/1409) Receiving objects: 100% (1409/1409) Receiving objects: 100% (1409/1409), 190.71 KiB, done.
-Resolving deltas: 0% (0/929) Resolving deltas: 18% (173/929) Resolving deltas: 20% (191/929) Resolving deltas: 25% (239/929) Resolving deltas: 26% (246/929) Resolving deltas: 28% (261/929) Resolving deltas: 36% (336/929) Resolving deltas: 37% (347/929) Resolving deltas: 43% (400/929) Resolving deltas: 44% (409/929) Resolving deltas: 45% (422/929) Resolving deltas: 46% (428/929) Resolving deltas: 47% (442/929) Resolving deltas: 48% (446/929) Resolving deltas: 52% (484/929) Resolving deltas: 53% (500/929) Resolving deltas: 54% (504/929) Resolving deltas: 55% (515/929) Resolving deltas: 56% (524/929) Resolving deltas: 57% (531/929) Resolving deltas: 63% (587/929) Resolving deltas: 66% (616/929) Resolving deltas: 67% (628/929) Resolving deltas: 69% (647/929) Resolving deltas: 72% (677/929) Resolving deltas: 73% (680/929) Resolving deltas: 74% (688/929) Resolving deltas: 75% (706/929) Resolving deltas: 77% (724/929) Resolving deltas: 78% (730/929) Resolving deltas: 81% (754/929) Resolving deltas: 82% (762/929) Resolving deltas: 83% (773/929) Resolving deltas: 84% (781/929) Resolving deltas: 85% (790/929) Resolving deltas: 87% (811/929) Resolving deltas: 88% (822/929) Resolving deltas: 89% (832/929) Resolving deltas: 92% (857/929) Resolving deltas: 93% (871/929) Resolving deltas: 96% (900/929) Resolving deltas: 97% (908/929) Resolving deltas: 98% (913/929) Resolving deltas: 99% (925/929) Resolving deltas: 100% (929/929) Resolving deltas: 100% (929/929), done.
-Fetching https://github.com/wycats/rake-pipeline-web-filters.git
-remote: Counting objects: 674, done.[K
-remote: Compressing objects: 0% (1/207) [Kremote: Compressing objects: 1% (3/207) [Kremote: Compressing objects: 2% (5/207) [Kremote: Compressing objects: 3% (7/207) [Kremote: Compressing objects: 4% (9/207) [Kremote: Compressing objects: 5% (11/207) [Kremote: Compressing objects: 6% (13/207) [Kremote: Compressing objects: 7% (15/207) [Kremote: Compressing objects: 8% (17/207) [Kremote: Compressing objects: 9% (19/207) [Kremote: Compressing objects: 10% (21/207) [Kremote: Compressing objects: 11% (23/207) [Kremote: Compressing objects: 12% (25/207) [Kremote: Compressing objects: 13% (27/207) [Kremote: Compressing objects: 14% (29/207) [Kremote: Compressing objects: 15% (32/207) [Kremote: Compressing objects: 16% (34/207) [Kremote: Compressing objects: 17% (36/207) [Kremote: Compressing objects: 18% (38/207) [Kremote: Compressing objects: 19% (40/207) [Kremote: Compressing objects: 20% (42/207) [Kremote: Compressing objects: 21% (44/207) [Kremote: Compressing objects: 22% (46/207) [Kremote: Compressing objects: 23% (48/207) [Kremote: Compressing objects: 24% (50/207) [Kremote: Compressing objects: 25% (52/207) [Kremote: Compressing objects: 26% (54/207) [Kremote: Compressing objects: 27% (56/207) [Kremote: Compressing objects: 28% (58/207) [Kremote: Compressing objects: 29% (61/207) [Kremote: Compressing objects: 30% (63/207) [Kremote: Compressing objects: 31% (65/207) [Kremote: Compressing objects: 32% (67/207) [Kremote: Compressing objects: 33% (69/207) [Kremote: Compressing objects: 34% (71/207) [Kremote: Compressing objects: 35% (73/207) [Kremote: Compressing objects: 36% (75/207) [Kremote: Compressing objects: 37% (77/207) [Kremote: Compressing objects: 38% (79/207) [Kremote: Compressing objects: 39% (81/207) [Kremote: Compressing objects: 40% (83/207) [Kremote: Compressing objects: 41% (85/207) [Kremote: Compressing objects: 42% (87/207) [Kremote: Compressing objects: 43% (90/207) [Kremote: Compressing objects: 44% (92/207) [Kremote: Compressing objects: 45% (94/207) [Kremote: Compressing objects: 46% (96/207) [Kremote: Compressing objects: 47% (98/207) [Kremote: Compressing objects: 48% (100/207) [Kremote: Compressing objects: 49% (102/207) [Kremote: Compressing objects: 50% (104/207) [Kremote: Compressing objects: 51% (106/207) [Kremote: Compressing objects: 52% (108/207) [Kremote: Compressing objects: 53% (110/207) [Kremote: Compressing objects: 54% (112/207) [Kremote: Compressing objects: 55% (114/207) [Kremote: Compressing objects: 56% (116/207) [Kremote: Compressing objects: 57% (118/207) [Kremote: Compressing objects: 58% (121/207) [Kremote: Compressing objects: 59% (123/207) [Kremote: Compressing objects: 60% (125/207) [Kremote: Compressing objects: 61% (127/207) [Kremote: Compressing objects: 62% (129/207) [Kremote: Compressing objects: 63% (131/207) [Kremote: Compressing objects: 64% (133/207) [Kremote: Compressing objects: 65% (135/207) [Kremote: Compressing objects: 66% (137/207) [Kremote: Compressing objects: 67% (139/207) [Kremote: Compressing objects: 68% (141/207) [Kremote: Compressing objects: 69% (143/207) [Kremote: Compressing objects: 70% (145/207) [Kremote: Compressing objects: 71% (147/207) [Kremote: Compressing objects: 72% (150/207) [Kremote: Compressing objects: 73% (152/207) [Kremote: Compressing objects: 74% (154/207) [Kremote: Compressing objects: 75% (156/207) [Kremote: Compressing objects: 76% (158/207) [Kremote: Compressing objects: 77% (160/207) [Kremote: Compressing objects: 78% (162/207) [Kremote: Compressing objects: 79% (164/207) [Kremote: Compressing objects: 80% (166/207) [Kremote: Compressing objects: 81% (168/207) [Kremote: Compressing objects: 82% (170/207) [Kremote: Compressing objects: 83% (172/207) [Kremote: Compressing objects: 84% (174/207) [Kremote: Compressing objects: 85% (176/207) [Kremote: Compressing objects: 86% (179/207) [Kremote: Compressing objects: 87% (181/207) [Kremote: Compressing objects: 88% (183/207) [Kremote: Compressing objects: 89% (185/207) [Kremote: Compressing objects: 90% (187/207) [Kremote: Compressing objects: 91% (189/207) [Kremote: Compressing objects: 92% (191/207) [Kremote: Compressing objects: 93% (193/207) [Kremote: Compressing objects: 94% (195/207) [Kremote: Compressing objects: 95% (197/207) [Kremote: Compressing objects: 96% (199/207) [Kremote: Compressing objects: 97% (201/207) [Kremote: Compressing objects: 98% (203/207) [Kremote: Compressing objects: 99% (205/207) [Kremote: Compressing objects: 100% (207/207) [Kremote: Compressing objects: 100% (207/207), done.[K
-Receiving objects: 0% (1/674) Receiving objects: 1% (7/674) Receiving objects: 2% (14/674) Receiving objects: 3% (21/674) Receiving objects: 4% (27/674) Receiving objects: 5% (34/674) Receiving objects: 6% (41/674) Receiving objects: 7% (48/674) Receiving objects: 8% (54/674) Receiving objects: 9% (61/674) Receiving objects: 10% (68/674) Receiving objects: 11% (75/674) Receiving objects: 12% (81/674) Receiving objects: 13% (88/674) Receiving objects: 14% (95/674) Receiving objects: 15% (102/674) Receiving objects: 16% (108/674) Receiving objects: 17% (115/674) Receiving objects: 18% (122/674) Receiving objects: 19% (129/674) Receiving objects: 20% (135/674) Receiving objects: 21% (142/674) Receiving objects: 22% (149/674) Receiving objects: 23% (156/674) Receiving objects: 24% (162/674) Receiving objects: 25% (169/674) Receiving objects: 26% (176/674) Receiving objects: 27% (182/674) Receiving objects: 28% (189/674) Receiving objects: 29% (196/674) Receiving objects: 30% (203/674) Receiving objects: 31% (209/674) Receiving objects: 32% (216/674) Receiving objects: 33% (223/674) Receiving objects: 34% (230/674) Receiving objects: 35% (236/674) Receiving objects: 36% (243/674) Receiving objects: 37% (250/674) Receiving objects: 38% (257/674) Receiving objects: 39% (263/674) Receiving objects: 40% (270/674) Receiving objects: 41% (277/674) Receiving objects: 42% (284/674) Receiving objects: 43% (290/674) Receiving objects: 44% (297/674) Receiving objects: 45% (304/674) Receiving objects: 46% (311/674) Receiving objects: 47% (317/674) Receiving objects: 48% (324/674) Receiving objects: 49% (331/674) Receiving objects: 50% (337/674) Receiving objects: 51% (344/674) Receiving objects: 52% (351/674) Receiving objects: 53% (358/674) Receiving objects: 54% (364/674) Receiving objects: 55% (371/674) Receiving objects: 56% (378/674) Receiving objects: 57% (385/674) Receiving objects: 58% (391/674) Receiving objects: 59% (398/674) Receiving objects: 60% (405/674) Receiving objects: 61% (412/674) Receiving objects: 62% (418/674) Receiving objects: 63% (425/674) Receiving objects: 64% (432/674) Receiving objects: 65% (439/674) Receiving objects: 66% (445/674) Receiving objects: 67% (452/674) Receiving objects: 68% (459/674) Receiving objects: 69% (466/674) Receiving objects: 70% (472/674) Receiving objects: 71% (479/674) Receiving objects: 72% (486/674) Receiving objects: 73% (493/674) Receiving objects: 74% (499/674) Receiving objects: 75% (506/674) Receiving objects: 76% (513/674) remote: Total 674 (delta 491), reused 646 (delta 463)[K
-Receiving objects: 77% (519/674) Receiving objects: 78% (526/674) Receiving objects: 79% (533/674) Receiving objects: 80% (540/674) Receiving objects: 81% (546/674) Receiving objects: 82% (553/674) Receiving objects: 83% (560/674) Receiving objects: 84% (567/674) Receiving objects: 85% (573/674) Receiving objects: 86% (580/674) Receiving objects: 87% (587/674) Receiving objects: 88% (594/674) Receiving objects: 89% (600/674) Receiving objects: 90% (607/674) Receiving objects: 91% (614/674) Receiving objects: 92% (621/674) Receiving objects: 93% (627/674) Receiving objects: 94% (634/674) Receiving objects: 95% (641/674) Receiving objects: 96% (648/674) Receiving objects: 97% (654/674) Receiving objects: 98% (661/674) Receiving objects: 99% (668/674) Receiving objects: 100% (674/674) Receiving objects: 100% (674/674), 90.14 KiB, done.
-Resolving deltas: 0% (0/491) Resolving deltas: 18% (93/491) Resolving deltas: 19% (96/491) Resolving deltas: 28% (140/491) Resolving deltas: 33% (164/491) Resolving deltas: 34% (168/491) Resolving deltas: 39% (192/491) Resolving deltas: 41% (204/491) Resolving deltas: 42% (210/491) Resolving deltas: 47% (232/491) Resolving deltas: 52% (259/491) Resolving deltas: 53% (261/491) Resolving deltas: 54% (268/491) Resolving deltas: 55% (272/491) Resolving deltas: 56% (276/491) Resolving deltas: 57% (280/491) Resolving deltas: 61% (302/491) Resolving deltas: 62% (305/491) Resolving deltas: 65% (321/491) Resolving deltas: 66% (326/491) Resolving deltas: 70% (344/491) Resolving deltas: 72% (355/491) Resolving deltas: 74% (368/491) Resolving deltas: 75% (371/491) Resolving deltas: 78% (386/491) Resolving deltas: 79% (389/491) Resolving deltas: 87% (432/491) Resolving deltas: 91% (451/491) Resolving deltas: 93% (458/491) Resolving deltas: 94% (463/491) Resolving deltas: 98% (482/491) Resolving deltas: 100% (491/491) Resolving deltas: 100% (491/491), done.
-Fetching https://github.com/travis-ci/travis-assets
-remote: Counting objects: 3310, done.[K
-remote: Compressing objects: 0% (1/2323) [Kremote: Compressing objects: 1% (24/2323) [Kremote: Compressing objects: 2% (47/2323) [Kremote: Compressing objects: 3% (70/2323) [Kremote: Compressing objects: 4% (93/2323) [Kremote: Compressing objects: 5% (117/2323) [Kremote: Compressing objects: 6% (140/2323) [Kremote: Compressing objects: 7% (163/2323) [Kremote: Compressing objects: 7% (181/2323) [Kremote: Compressing objects: 8% (186/2323) [Kremote: Compressing objects: 9% (210/2323) [Kremote: Compressing objects: 10% (233/2323) [Kremote: Compressing objects: 11% (256/2323) [Kremote: Compressing objects: 12% (279/2323) [Kremote: Compressing objects: 13% (302/2323) [Kremote: Compressing objects: 13% (319/2323) [Kremote: Compressing objects: 14% (326/2323) [Kremote: Compressing objects: 15% (349/2323) [Kremote: Compressing objects: 16% (372/2323) [Kremote: Compressing objects: 17% (395/2323) [Kremote: Compressing objects: 18% (419/2323) [Kremote: Compressing objects: 19% (442/2323) [Kremote: Compressing objects: 20% (465/2323) [Kremote: Compressing objects: 21% (488/2323) [Kremote: Compressing objects: 22% (512/2323) [Kremote: Compressing objects: 23% (535/2323) [Kremote: Compressing objects: 24% (558/2323) [Kremote: Compressing objects: 25% (581/2323) [Kremote: Compressing objects: 26% (604/2323) [Kremote: Compressing objects: 27% (628/2323) [Kremote: Compressing objects: 28% (651/2323) [Kremote: Compressing objects: 29% (674/2323) [Kremote: Compressing objects: 30% (697/2323) [Kremote: Compressing objects: 31% (721/2323) [Kremote: Compressing objects: 32% (744/2323) [Kremote: Compressing objects: 33% (767/2323) [Kremote: Compressing objects: 34% (790/2323) [Kremote: Compressing objects: 35% (814/2323) [Kremote: Compressing objects: 36% (837/2323) [Kremote: Compressing objects: 37% (860/2323) [Kremote: Compressing objects: 38% (883/2323) [Kremote: Compressing objects: 39% (906/2323) [Kremote: Compressing objects: 40% (930/2323) [Kremote: Compressing objects: 41% (953/2323) [Kremote: Compressing objects: 42% (976/2323) [Kremote: Compressing objects: 43% (999/2323) [Kremote: Compressing objects: 44% (1023/2323) [Kremote: Compressing objects: 45% (1046/2323) [Kremote: Compressing objects: 46% (1069/2323) [Kremote: Compressing objects: 47% (1092/2323) [Kremote: Compressing objects: 48% (1116/2323) [Kremote: Compressing objects: 49% (1139/2323) [Kremote: Compressing objects: 50% (1162/2323) [Kremote: Compressing objects: 51% (1185/2323) [Kremote: Compressing objects: 52% (1208/2323) [Kremote: Compressing objects: 53% (1232/2323) [Kremote: Compressing objects: 54% (1255/2323) [Kremote: Compressing objects: 55% (1278/2323) [Kremote: Compressing objects: 56% (1301/2323) [Kremote: Compressing objects: 57% (1325/2323) [Kremote: Compressing objects: 58% (1348/2323) [Kremote: Compressing objects: 59% (1371/2323) [Kremote: Compressing objects: 60% (1394/2323) [Kremote: Compressing objects: 61% (1418/2323) [Kremote: Compressing objects: 62% (1441/2323) [Kremote: Compressing objects: 63% (1464/2323) [Kremote: Compressing objects: 64% (1487/2323) [Kremote: Compressing objects: 65% (1510/2323) [Kremote: Compressing objects: 66% (1534/2323) [Kremote: Compressing objects: 67% (1557/2323) [Kremote: Compressing objects: 68% (1580/2323) [Kremote: Compressing objects: 69% (1603/2323) [Kremote: Compressing objects: 70% (1627/2323) [Kremote: Compressing objects: 71% (1650/2323) [Kremote: Compressing objects: 72% (1673/2323) [Kremote: Compressing objects: 73% (1696/2323) [Kremote: Compressing objects: 74% (1720/2323) [Kremote: Compressing objects: 75% (1743/2323) [Kremote: Compressing objects: 76% (1766/2323) [Kremote: Compressing objects: 77% (1789/2323) [Kremote: Compressing objects: 78% (1812/2323) [Kremote: Compressing objects: 79% (1836/2323) [Kremote: Compressing objects: 80% (1859/2323) [Kremote: Compressing objects: 81% (1882/2323) [Kremote: Compressing objects: 82% (1905/2323) [Kremote: Compressing objects: 83% (1929/2323) [Kremote: Compressing objects: 84% (1952/2323) [Kremote: Compressing objects: 85% (1975/2323) [Kremote: Compressing objects: 86% (1998/2323) [Kremote: Compressing objects: 87% (2022/2323) [Kremote: Compressing objects: 88% (2045/2323) [Kremote: Compressing objects: 89% (2068/2323) [Kremote: Compressing objects: 90% (2091/2323) [Kremote: Compressing objects: 91% (2114/2323) [Kremote: Compressing objects: 92% (2138/2323) [Kremote: Compressing objects: 93% (2161/2323) [Kremote: Compressing objects: 94% (2184/2323) [Kremote: Compressing objects: 95% (2207/2323) [Kremote: Compressing objects: 96% (2231/2323) [Kremote: Compressing objects: 97% (2254/2323) [Kremote: Compressing objects: 98% (2277/2323) [Kremote: Compressing objects: 99% (2300/2323) [Kremote: Compressing objects: 100% (2323/2323) [Kremote: Compressing objects: 100% (2323/2323), done.[K
-Receiving objects: 0% (1/3310) Receiving objects: 1% (34/3310) Receiving objects: 2% (67/3310) Receiving objects: 3% (100/3310) Receiving objects: 4% (133/3310) Receiving objects: 5% (166/3310) Receiving objects: 6% (199/3310) Receiving objects: 7% (232/3310) Receiving objects: 8% (265/3310) Receiving objects: 9% (298/3310) Receiving objects: 10% (331/3310) Receiving objects: 11% (365/3310) Receiving objects: 12% (398/3310) Receiving objects: 13% (431/3310) Receiving objects: 14% (464/3310) Receiving objects: 15% (497/3310) Receiving objects: 16% (530/3310) Receiving objects: 17% (563/3310) Receiving objects: 18% (596/3310) Receiving objects: 19% (629/3310) Receiving objects: 20% (662/3310) Receiving objects: 21% (696/3310) Receiving objects: 22% (729/3310) Receiving objects: 23% (762/3310) Receiving objects: 24% (795/3310) Receiving objects: 25% (828/3310) Receiving objects: 26% (861/3310) Receiving objects: 27% (894/3310) Receiving objects: 28% (927/3310) Receiving objects: 29% (960/3310) Receiving objects: 30% (993/3310) Receiving objects: 31% (1027/3310) Receiving objects: 32% (1060/3310) Receiving objects: 33% (1093/3310) Receiving objects: 34% (1126/3310), 332.00 KiB | 564 KiB/s Receiving objects: 35% (1159/3310), 332.00 KiB | 564 KiB/s Receiving objects: 36% (1192/3310), 332.00 KiB | 564 KiB/s Receiving objects: 37% (1225/3310), 332.00 KiB | 564 KiB/s Receiving objects: 38% (1258/3310), 332.00 KiB | 564 KiB/s Receiving objects: 38% (1268/3310), 332.00 KiB | 564 KiB/s Receiving objects: 39% (1291/3310), 1.03 MiB | 901 KiB/s Receiving objects: 40% (1324/3310), 1.03 MiB | 901 KiB/s Receiving objects: 41% (1358/3310), 1.03 MiB | 901 KiB/s Receiving objects: 42% (1391/3310), 1.03 MiB | 901 KiB/s Receiving objects: 43% (1424/3310), 1.03 MiB | 901 KiB/s Receiving objects: 44% (1457/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 45% (1490/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 46% (1523/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 47% (1556/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 48% (1589/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 49% (1622/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 50% (1655/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 50% (1667/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 51% (1689/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 52% (1722/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 53% (1755/3310), 1.77 MiB | 1.06 MiB/s Receiving objects: 53% (1768/3310), 3.08 MiB | 1019 KiB/s Receiving objects: 54% (1788/3310), 3.08 MiB | 1019 KiB/s Receiving objects: 55% (1821/3310), 3.08 MiB | 1019 KiB/s Receiving objects: 56% (1854/3310), 3.41 MiB | 970 KiB/s Receiving objects: 57% (1887/3310), 3.41 MiB | 970 KiB/s Receiving objects: 58% (1920/3310), 3.41 MiB | 970 KiB/s Receiving objects: 59% (1953/3310), 3.41 MiB | 970 KiB/s Receiving objects: 60% (1986/3310), 3.41 MiB | 970 KiB/s Receiving objects: 61% (2020/3310), 3.41 MiB | 970 KiB/s Receiving objects: 62% (2053/3310), 3.41 MiB | 970 KiB/s Receiving objects: 62% (2071/3310), 3.79 MiB | 931 KiB/s Receiving objects: 63% (2086/3310), 3.79 MiB | 931 KiB/s Receiving objects: 64% (2119/3310), 3.79 MiB | 931 KiB/s Receiving objects: 65% (2152/3310), 3.79 MiB | 931 KiB/s Receiving objects: 66% (2185/3310), 3.79 MiB | 931 KiB/s Receiving objects: 67% (2218/3310), 3.79 MiB | 931 KiB/s Receiving objects: 68% (2251/3310), 3.79 MiB | 931 KiB/s Receiving objects: 69% (2284/3310), 3.79 MiB | 931 KiB/s Receiving objects: 70% (2317/3310), 3.79 MiB | 931 KiB/s Receiving objects: 71% (2351/3310), 3.79 MiB | 931 KiB/s Receiving objects: 72% (2384/3310), 3.79 MiB | 931 KiB/s Receiving objects: 73% (2417/3310), 3.79 MiB | 931 KiB/s Receiving objects: 74% (2450/3310), 3.79 MiB | 931 KiB/s Receiving objects: 75% (2483/3310), 4.22 MiB | 926 KiB/s Receiving objects: 75% (2508/3310), 4.22 MiB | 926 KiB/s Receiving objects: 76% (2516/3310), 4.22 MiB | 926 KiB/s Receiving objects: 77% (2549/3310), 4.60 MiB | 906 KiB/s Receiving objects: 78% (2582/3310), 4.60 MiB | 906 KiB/s Receiving objects: 78% (2611/3310), 4.93 MiB | 901 KiB/s Receiving objects: 79% (2615/3310), 4.93 MiB | 901 KiB/s Receiving objects: 80% (2648/3310), 5.11 MiB | 799 KiB/s Receiving objects: 80% (2668/3310), 5.19 MiB | 659 KiB/s Receiving objects: 81% (2682/3310), 5.19 MiB | 659 KiB/s Receiving objects: 81% (2711/3310), 5.39 MiB | 469 KiB/s Receiving objects: 82% (2715/3310), 5.39 MiB | 469 KiB/s Receiving objects: 82% (2743/3310), 5.49 MiB | 417 KiB/s Receiving objects: 83% (2748/3310), 5.49 MiB | 417 KiB/s Receiving objects: 83% (2780/3310), 5.68 MiB | 290 KiB/s Receiving objects: 84% (2781/3310), 5.68 MiB | 290 KiB/s Receiving objects: 85% (2814/3310), 5.77 MiB | 233 KiB/s Receiving objects: 85% (2822/3310), 5.88 MiB | 193 KiB/s Receiving objects: 85% (2840/3310), 5.96 MiB | 165 KiB/s Receiving objects: 86% (2847/3310), 6.00 MiB | 158 KiB/s Receiving objects: 87% (2880/3310), 6.00 MiB | 158 KiB/s Receiving objects: 87% (2889/3310), 6.21 MiB | 161 KiB/s Receiving objects: 88% (2913/3310), 6.33 MiB | 169 KiB/s Receiving objects: 89% (2946/3310), 6.33 MiB | 169 KiB/s Receiving objects: 90% (2979/3310), 6.33 MiB | 169 KiB/s Receiving objects: 91% (3013/3310), 6.33 MiB | 169 KiB/s Receiving objects: 91% (3022/3310), 6.33 MiB | 169 KiB/s Receiving objects: 92% (3046/3310), 6.33 MiB | 169 KiB/s Receiving objects: 93% (3079/3310), 6.33 MiB | 169 KiB/s Receiving objects: 93% (3104/3310), 6.56 MiB | 178 KiB/s Receiving objects: 94% (3112/3310), 6.56 MiB | 178 KiB/s Receiving objects: 95% (3145/3310), 6.79 MiB | 184 KiB/s Receiving objects: 95% (3153/3310), 6.79 MiB | 184 KiB/s Receiving objects: 96% (3178/3310), 6.93 MiB | 207 KiB/s Receiving objects: 96% (3182/3310), 7.07 MiB | 229 KiB/s Receiving objects: 97% (3211/3310), 7.07 MiB | 229 KiB/s Receiving objects: 98% (3244/3310), 7.07 MiB | 229 KiB/s Receiving objects: 99% (3277/3310), 7.07 MiB | 229 KiB/s remote: Total 3310 (delta 1088), reused 3044 (delta 844)[K
-Receiving objects: 99% (3309/3310), 7.37 MiB | 250 KiB/s Receiving objects: 100% (3310/3310), 7.37 MiB | 250 KiB/s Receiving objects: 100% (3310/3310), 7.44 MiB | 251 KiB/s, done.
-Resolving deltas: 0% (0/1088) Resolving deltas: 6% (66/1088) Resolving deltas: 8% (88/1088) Resolving deltas: 9% (105/1088) Resolving deltas: 10% (110/1088) Resolving deltas: 11% (120/1088) Resolving deltas: 20% (227/1088) Resolving deltas: 22% (250/1088) Resolving deltas: 24% (263/1088) Resolving deltas: 25% (279/1088) Resolving deltas: 26% (283/1088) Resolving deltas: 27% (298/1088) Resolving deltas: 28% (305/1088) Resolving deltas: 29% (323/1088) Resolving deltas: 30% (333/1088) Resolving deltas: 31% (342/1088) Resolving deltas: 32% (350/1088) Resolving deltas: 33% (360/1088) Resolving deltas: 34% (380/1088) Resolving deltas: 35% (388/1088) Resolving deltas: 36% (396/1088) Resolving deltas: 37% (403/1088) Resolving deltas: 38% (414/1088) Resolving deltas: 39% (426/1088) Resolving deltas: 40% (442/1088) Resolving deltas: 41% (447/1088) Resolving deltas: 42% (466/1088) Resolving deltas: 43% (471/1088) Resolving deltas: 44% (480/1088) Resolving deltas: 45% (490/1088) Resolving deltas: 46% (503/1088) Resolving deltas: 47% (520/1088) Resolving deltas: 48% (527/1088) Resolving deltas: 49% (536/1088) Resolving deltas: 50% (552/1088) Resolving deltas: 51% (555/1088) Resolving deltas: 52% (570/1088) Resolving deltas: 53% (582/1088) Resolving deltas: 54% (596/1088) Resolving deltas: 55% (600/1088) Resolving deltas: 56% (615/1088) Resolving deltas: 57% (621/1088) Resolving deltas: 58% (636/1088) Resolving deltas: 59% (642/1088) Resolving deltas: 68% (741/1088) Resolving deltas: 69% (759/1088) Resolving deltas: 70% (762/1088) Resolving deltas: 71% (773/1088) Resolving deltas: 72% (787/1088) Resolving deltas: 73% (796/1088) Resolving deltas: 82% (902/1088) Resolving deltas: 91% (1000/1088) Resolving deltas: 92% (1010/1088) Resolving deltas: 93% (1014/1088) Resolving deltas: 94% (1025/1088) Resolving deltas: 95% (1037/1088) Resolving deltas: 96% (1046/1088) Resolving deltas: 97% (1056/1088) Resolving deltas: 98% (1068/1088) Resolving deltas: 99% (1078/1088) Resolving deltas: 100% (1088/1088) Resolving deltas: 100% (1088/1088), done.
-Fetching git://github.com/travis-ci/travis-core
-remote: Counting objects: 11443, done.[K
-remote: Compressing objects: 0% (1/3246) [Kremote: Compressing objects: 1% (33/3246) [Kremote: Compressing objects: 2% (65/3246) [Kremote: Compressing objects: 3% (98/3246) [Kremote: Compressing objects: 4% (130/3246) [Kremote: Compressing objects: 5% (163/3246) [Kremote: Compressing objects: 6% (195/3246) [Kremote: Compressing objects: 7% (228/3246) [Kremote: Compressing objects: 8% (260/3246) [Kremote: Compressing objects: 9% (293/3246) [Kremote: Compressing objects: 10% (325/3246) [Kremote: Compressing objects: 11% (358/3246) [Kremote: Compressing objects: 12% (390/3246) [Kremote: Compressing objects: 13% (422/3246) [Kremote: Compressing objects: 14% (455/3246) [Kremote: Compressing objects: 15% (487/3246) [Kremote: Compressing objects: 16% (520/3246) [Kremote: Compressing objects: 17% (552/3246) [Kremote: Compressing objects: 18% (585/3246) [Kremote: Compressing objects: 19% (617/3246) [Kremote: Compressing objects: 20% (650/3246) [Kremote: Compressing objects: 21% (682/3246) [Kremote: Compressing objects: 22% (715/3246) [Kremote: Compressing objects: 23% (747/3246) [Kremote: Compressing objects: 24% (780/3246) [Kremote: Compressing objects: 25% (812/3246) [Kremote: Compressing objects: 26% (844/3246) [Kremote: Compressing objects: 27% (877/3246) [Kremote: Compressing objects: 28% (909/3246) [Kremote: Compressing objects: 29% (942/3246) [Kremote: Compressing objects: 30% (974/3246) [Kremote: Compressing objects: 31% (1007/3246) [Kremote: Compressing objects: 32% (1039/3246) [Kremote: Compressing objects: 33% (1072/3246) [Kremote: Compressing objects: 34% (1104/3246) [Kremote: Compressing objects: 35% (1137/3246) [Kremote: Compressing objects: 36% (1169/3246) [Kremote: Compressing objects: 37% (1202/3246) [Kremote: Compressing objects: 38% (1234/3246) [Kremote: Compressing objects: 39% (1266/3246) [Kremote: Compressing objects: 40% (1299/3246) [Kremote: Compressing objects: 41% (1331/3246) [Kremote: Compressing objects: 42% (1364/3246) [Kremote: Compressing objects: 43% (1396/3246) [Kremote: Compressing objects: 44% (1429/3246) [Kremote: Compressing objects: 45% (1461/3246) [Kremote: Compressing objects: 46% (1494/3246) [Kremote: Compressing objects: 47% (1526/3246) [Kremote: Compressing objects: 48% (1559/3246) [Kremote: Compressing objects: 49% (1591/3246) [Kremote: Compressing objects: 50% (1623/3246) [Kremote: Compressing objects: 51% (1656/3246) [Kremote: Compressing objects: 52% (1688/3246) [Kremote: Compressing objects: 53% (1721/3246) [Kremote: Compressing objects: 54% (1753/3246) [Kremote: Compressing objects: 55% (1786/3246) [Kremote: Compressing objects: 56% (1818/3246) [Kremote: Compressing objects: 57% (1851/3246) [Kremote: Compressing objects: 58% (1883/3246) [Kremote: Compressing objects: 59% (1916/3246) [Kremote: Compressing objects: 60% (1948/3246) [Kremote: Compressing objects: 61% (1981/3246) [Kremote: Compressing objects: 62% (2013/3246) [Kremote: Compressing objects: 63% (2045/3246) [Kremote: Compressing objects: 64% (2078/3246) [Kremote: Compressing objects: 65% (2110/3246) [Kremote: Compressing objects: 66% (2143/3246) [Kremote: Compressing objects: 67% (2175/3246) [Kremote: Compressing objects: 68% (2208/3246) [Kremote: Compressing objects: 69% (2240/3246) [Kremote: Compressing objects: 70% (2273/3246) [Kremote: Compressing objects: 71% (2305/3246) [Kremote: Compressing objects: 72% (2338/3246) [Kremote: Compressing objects: 73% (2370/3246) [Kremote: Compressing objects: 74% (2403/3246) [Kremote: Compressing objects: 75% (2435/3246) [Kremote: Compressing objects: 76% (2467/3246) [Kremote: Compressing objects: 77% (2500/3246) [Kremote: Compressing objects: 78% (2532/3246) [Kremote: Compressing objects: 79% (2565/3246) [Kremote: Compressing objects: 80% (2597/3246) [Kremote: Compressing objects: 81% (2630/3246) [Kremote: Compressing objects: 82% (2662/3246) [Kremote: Compressing objects: 83% (2695/3246) [Kremote: Compressing objects: 84% (2727/3246) [Kremote: Compressing objects: 85% (2760/3246) [Kremote: Compressing objects: 86% (2792/3246) [Kremote: Compressing objects: 87% (2825/3246) [Kremote: Compressing objects: 88% (2857/3246) [Kremote: Compressing objects: 89% (2889/3246) [Kremote: Compressing objects: 90% (2922/3246) [Kremote: Compressing objects: 91% (2954/3246) [Kremote: Compressing objects: 92% (2987/3246) [Kremote: Compressing objects: 93% (3019/3246) [Kremote: Compressing objects: 94% (3052/3246) [Kremote: Compressing objects: 95% (3084/3246) [Kremote: Compressing objects: 96% (3117/3246) [Kremote: Compressing objects: 97% (3149/3246) [Kremote: Compressing objects: 98% (3182/3246) [Kremote: Compressing objects: 99% (3214/3246) [Kremote: Compressing objects: 100% (3246/3246) [Kremote: Compressing objects: 100% (3246/3246), done.[K
-Receiving objects: 0% (1/11443) Receiving objects: 1% (115/11443) Receiving objects: 2% (229/11443) Receiving objects: 3% (344/11443) Receiving objects: 4% (458/11443) Receiving objects: 5% (573/11443) Receiving objects: 6% (687/11443), 124.00 KiB | 209 KiB/s Receiving objects: 7% (802/11443), 124.00 KiB | 209 KiB/s Receiving objects: 8% (916/11443), 124.00 KiB | 209 KiB/s Receiving objects: 9% (1030/11443), 124.00 KiB | 209 KiB/s Receiving objects: 10% (1145/11443), 124.00 KiB | 209 KiB/s Receiving objects: 11% (1259/11443), 124.00 KiB | 209 KiB/s Receiving objects: 11% (1279/11443), 124.00 KiB | 209 KiB/s Receiving objects: 12% (1374/11443), 124.00 KiB | 209 KiB/s Receiving objects: 13% (1488/11443), 252.00 KiB | 220 KiB/s Receiving objects: 14% (1603/11443), 252.00 KiB | 220 KiB/s Receiving objects: 15% (1717/11443), 252.00 KiB | 220 KiB/s Receiving objects: 16% (1831/11443), 252.00 KiB | 220 KiB/s Receiving objects: 17% (1946/11443), 252.00 KiB | 220 KiB/s Receiving objects: 18% (2060/11443), 252.00 KiB | 220 KiB/s Receiving objects: 19% (2175/11443), 252.00 KiB | 220 KiB/s Receiving objects: 20% (2289/11443), 252.00 KiB | 220 KiB/s Receiving objects: 21% (2404/11443), 252.00 KiB | 220 KiB/s Receiving objects: 22% (2518/11443), 252.00 KiB | 220 KiB/s Receiving objects: 23% (2632/11443), 252.00 KiB | 220 KiB/s Receiving objects: 24% (2747/11443), 252.00 KiB | 220 KiB/s Receiving objects: 25% (2861/11443), 396.00 KiB | 240 KiB/s Receiving objects: 26% (2976/11443), 396.00 KiB | 240 KiB/s Receiving objects: 27% (3090/11443), 396.00 KiB | 240 KiB/s Receiving objects: 28% (3205/11443), 396.00 KiB | 240 KiB/s Receiving objects: 29% (3319/11443), 396.00 KiB | 240 KiB/s Receiving objects: 30% (3433/11443), 396.00 KiB | 240 KiB/s Receiving objects: 31% (3548/11443), 396.00 KiB | 240 KiB/s Receiving objects: 32% (3662/11443), 396.00 KiB | 240 KiB/s Receiving objects: 32% (3711/11443), 396.00 KiB | 240 KiB/s Receiving objects: 33% (3777/11443), 396.00 KiB | 240 KiB/s Receiving objects: 34% (3891/11443), 532.00 KiB | 241 KiB/s Receiving objects: 35% (4006/11443), 532.00 KiB | 241 KiB/s Receiving objects: 36% (4120/11443), 532.00 KiB | 241 KiB/s Receiving objects: 37% (4234/11443), 532.00 KiB | 241 KiB/s Receiving objects: 38% (4349/11443), 532.00 KiB | 241 KiB/s Receiving objects: 39% (4463/11443), 532.00 KiB | 241 KiB/s Receiving objects: 40% (4578/11443), 532.00 KiB | 241 KiB/s Receiving objects: 41% (4692/11443), 684.00 KiB | 251 KiB/s Receiving objects: 42% (4807/11443), 684.00 KiB | 251 KiB/s Receiving objects: 43% (4921/11443), 684.00 KiB | 251 KiB/s Receiving objects: 44% (5035/11443), 684.00 KiB | 251 KiB/s Receiving objects: 45% (5150/11443), 684.00 KiB | 251 KiB/s Receiving objects: 45% (5158/11443), 684.00 KiB | 251 KiB/s Receiving objects: 46% (5264/11443), 684.00 KiB | 251 KiB/s Receiving objects: 47% (5379/11443), 684.00 KiB | 251 KiB/s Receiving objects: 48% (5493/11443), 684.00 KiB | 251 KiB/s Receiving objects: 49% (5608/11443), 820.00 KiB | 252 KiB/s Receiving objects: 50% (5722/11443), 820.00 KiB | 252 KiB/s Receiving objects: 51% (5836/11443), 820.00 KiB | 252 KiB/s Receiving objects: 52% (5951/11443), 820.00 KiB | 252 KiB/s Receiving objects: 53% (6065/11443), 820.00 KiB | 252 KiB/s Receiving objects: 54% (6180/11443), 820.00 KiB | 252 KiB/s Receiving objects: 55% (6294/11443), 820.00 KiB | 252 KiB/s Receiving objects: 56% (6409/11443), 820.00 KiB | 252 KiB/s Receiving objects: 57% (6523/11443), 820.00 KiB | 252 KiB/s Receiving objects: 58% (6637/11443), 820.00 KiB | 252 KiB/s Receiving objects: 59% (6752/11443), 820.00 KiB | 252 KiB/s Receiving objects: 60% (6866/11443), 820.00 KiB | 252 KiB/s Receiving objects: 61% (6981/11443), 820.00 KiB | 252 KiB/s Receiving objects: 62% (7095/11443), 956.00 KiB | 251 KiB/s Receiving objects: 63% (7210/11443), 956.00 KiB | 251 KiB/s Receiving objects: 64% (7324/11443), 956.00 KiB | 251 KiB/s Receiving objects: 65% (7438/11443), 956.00 KiB | 251 KiB/s Receiving objects: 66% (7553/11443), 956.00 KiB | 251 KiB/s Receiving objects: 67% (7667/11443), 956.00 KiB | 251 KiB/s Receiving objects: 68% (7782/11443), 956.00 KiB | 251 KiB/s Receiving objects: 69% (7896/11443), 956.00 KiB | 251 KiB/s Receiving objects: 69% (7934/11443), 956.00 KiB | 251 KiB/s Receiving objects: 70% (8011/11443), 956.00 KiB | 251 KiB/s Receiving objects: 71% (8125/11443), 956.00 KiB | 251 KiB/s Receiving objects: 72% (8239/11443), 956.00 KiB | 251 KiB/s Receiving objects: 73% (8354/11443), 956.00 KiB | 251 KiB/s Receiving objects: 74% (8468/11443), 956.00 KiB | 251 KiB/s Receiving objects: 75% (8583/11443), 956.00 KiB | 251 KiB/s Receiving objects: 76% (8697/11443), 956.00 KiB | 251 KiB/s Receiving objects: 77% (8812/11443), 1.08 MiB | 257 KiB/s Receiving objects: 78% (8926/11443), 1.08 MiB | 257 KiB/s Receiving objects: 79% (9040/11443), 1.08 MiB | 257 KiB/s Receiving objects: 80% (9155/11443), 1.08 MiB | 257 KiB/s Receiving objects: 81% (9269/11443), 1.08 MiB | 257 KiB/s Receiving objects: 82% (9384/11443), 1.08 MiB | 257 KiB/s Receiving objects: 83% (9498/11443), 1.08 MiB | 257 KiB/s Receiving objects: 84% (9613/11443), 1.08 MiB | 257 KiB/s Receiving objects: 85% (9727/11443), 1.08 MiB | 257 KiB/s Receiving objects: 86% (9841/11443), 1.08 MiB | 257 KiB/s Receiving objects: 87% (9956/11443), 1.08 MiB | 257 KiB/s Receiving objects: 88% (10070/11443), 1.08 MiB | 257 KiB/s Receiving objects: 89% (10185/11443), 1.08 MiB | 257 KiB/s Receiving objects: 90% (10299/11443), 1.08 MiB | 257 KiB/s Receiving objects: 91% (10414/11443), 1.22 MiB | 260 KiB/s Receiving objects: 92% (10528/11443), 1.22 MiB | 260 KiB/s Receiving objects: 93% (10642/11443), 1.22 MiB | 260 KiB/s Receiving objects: 94% (10757/11443), 1.22 MiB | 260 KiB/s Receiving objects: 95% (10871/11443), 1.22 MiB | 260 KiB/s Receiving objects: 95% (10957/11443), 1.36 MiB | 268 KiB/s Receiving objects: 96% (10986/11443), 1.36 MiB | 268 KiB/s Receiving objects: 97% (11100/11443), 1.36 MiB | 268 KiB/s Receiving objects: 97% (11162/11443), 1.52 MiB | 277 KiB/s Receiving objects: 98% (11215/11443), 1.52 MiB | 277 KiB/s Receiving objects: 98% (11256/11443), 2.02 MiB | 292 KiB/s Receiving objects: 98% (11259/11443), 2.17 MiB | 297 KiB/s Receiving objects: 98% (11319/11443), 2.66 MiB | 313 KiB/s Receiving objects: 98% (11319/11443), 2.94 MiB | 308 KiB/s Receiving objects: 98% (11319/11443), 3.07 MiB | 308 KiB/s Receiving objects: 98% (11319/11443), 3.33 MiB | 290 KiB/s Receiving objects: 99% (11329/11443), 3.50 MiB | 289 KiB/s remote: Total 11443 (delta 7753), reused 11310 (delta 7631)[K
-Receiving objects: 100% (11443/11443), 3.50 MiB | 289 KiB/s Receiving objects: 100% (11443/11443), 3.61 MiB | 286 KiB/s, done.
-Resolving deltas: 0% (0/7753) Resolving deltas: 1% (152/7753) Resolving deltas: 3% (283/7753) Resolving deltas: 4% (348/7753) Resolving deltas: 5% (393/7753) Resolving deltas: 6% (467/7753) Resolving deltas: 7% (548/7753) Resolving deltas: 8% (648/7753) Resolving deltas: 9% (703/7753) Resolving deltas: 10% (780/7753) Resolving deltas: 11% (859/7753) Resolving deltas: 12% (945/7753) Resolving deltas: 13% (1015/7753) Resolving deltas: 14% (1149/7753) Resolving deltas: 15% (1175/7753) Resolving deltas: 16% (1265/7753) Resolving deltas: 17% (1323/7753) Resolving deltas: 18% (1401/7753) Resolving deltas: 21% (1673/7753) Resolving deltas: 22% (1718/7753) Resolving deltas: 23% (1815/7753) Resolving deltas: 24% (1862/7753) Resolving deltas: 25% (1951/7753) Resolving deltas: 26% (2028/7753) Resolving deltas: 27% (2121/7753) Resolving deltas: 28% (2171/7753) Resolving deltas: 29% (2282/7753) Resolving deltas: 30% (2326/7753) Resolving deltas: 35% (2719/7753) Resolving deltas: 36% (2850/7753) Resolving deltas: 37% (2934/7753) Resolving deltas: 38% (3001/7753) Resolving deltas: 39% (3042/7753) Resolving deltas: 41% (3231/7753) Resolving deltas: 42% (3257/7753) Resolving deltas: 43% (3352/7753) Resolving deltas: 44% (3421/7753) Resolving deltas: 45% (3491/7753) Resolving deltas: 47% (3655/7753) Resolving deltas: 48% (3744/7753) Resolving deltas: 49% (3814/7753) Resolving deltas: 50% (3886/7753) Resolving deltas: 52% (4046/7753) Resolving deltas: 53% (4132/7753) Resolving deltas: 54% (4206/7753) Resolving deltas: 55% (4271/7753) Resolving deltas: 56% (4358/7753) Resolving deltas: 57% (4425/7753) Resolving deltas: 58% (4507/7753) Resolving deltas: 59% (4575/7753) Resolving deltas: 60% (4687/7753) Resolving deltas: 61% (4779/7753) Resolving deltas: 62% (4808/7753) Resolving deltas: 63% (4887/7753) Resolving deltas: 64% (4973/7753) Resolving deltas: 65% (5054/7753) Resolving deltas: 66% (5117/7753) Resolving deltas: 67% (5202/7753) Resolving deltas: 68% (5274/7753) Resolving deltas: 69% (5354/7753) Resolving deltas: 70% (5450/7753) Resolving deltas: 71% (5508/7753) Resolving deltas: 72% (5596/7753) Resolving deltas: 73% (5679/7753) Resolving deltas: 74% (5751/7753) Resolving deltas: 75% (5822/7753) Resolving deltas: 76% (5894/7753) Resolving deltas: 77% (5971/7753) Resolving deltas: 78% (6055/7753) Resolving deltas: 79% (6147/7753) Resolving deltas: 80% (6239/7753) Resolving deltas: 81% (6289/7753) Resolving deltas: 82% (6359/7753) Resolving deltas: 83% (6438/7753) Resolving deltas: 84% (6529/7753) Resolving deltas: 85% (6611/7753) Resolving deltas: 86% (6688/7753) Resolving deltas: 87% (6748/7753) Resolving deltas: 88% (6825/7753) Resolving deltas: 89% (6909/7753) Resolving deltas: 90% (6979/7753) Resolving deltas: 91% (7070/7753) Resolving deltas: 92% (7143/7753) Resolving deltas: 93% (7213/7753) Resolving deltas: 94% (7292/7753) Resolving deltas: 95% (7366/7753) Resolving deltas: 96% (7456/7753) Resolving deltas: 97% (7523/7753) Resolving deltas: 98% (7611/7753) Resolving deltas: 99% (7676/7753) Resolving deltas: 100% (7753/7753) Resolving deltas: 100% (7753/7753), done.
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activeresource (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.3.0)
-Installing bcrypt-ruby (3.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing nokogiri (1.5.5) with native extensions
-Installing ffi (1.0.11) with native extensions
-Installing childprocess (0.3.3)
-Installing libwebsocket (0.1.4)
-Installing rubyzip (0.9.9)
-Installing selenium-webdriver (2.24.0)
-Installing xpath (0.1.4)
-Installing capybara (1.1.2)
-Installing chunky_png (1.2.5)
-Installing coffee-script-source (1.3.3)
-Installing execjs (1.3.0)
-Installing coffee-script (2.2.0)
-Installing fssm (0.2.9)
-Installing sass (3.1.20)
-Installing compass (0.12.2)
-Installing crack (0.3.1)
-Installing daemons (1.1.8)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing orm_adapter (0.0.7)
-Installing rack-ssl (1.3.2)
-Installing json (1.6.7) with native extensions
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing warden (1.1.1)
-Installing devise (2.0.4)
-Installing diff-lcs (1.1.3)
-Installing eventmachine (0.12.10) with native extensions
-Installing factory_girl (2.4.2)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing forgery (0.5.0)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashie (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing http_accept_language (1.0.2)
-Installing httpauth (0.1)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing kgio (2.7.4) with native extensions
-Installing lograge (0.0.4)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing oauth2 (0.6.1)
-Installing omniauth (1.1.0)
-Installing omniauth-oauth2 (1.0.2)
-Installing omniauth-github (1.0.1)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Using rack-contrib (1.1.0) from git://github.com/rack/rack-contrib (at master)
-Using bundler (1.2.0.rc)
-Installing rails (3.2.6)
-Installing raindrops (0.10.0) with native extensions
-Using rake-pipeline (0.6.0) from https://github.com/livingsocial/rake-pipeline.git (at master)
-Using rake-pipeline-web-filters (0.6.0) from https://github.com/wycats/rake-pipeline-web-filters.git (at master)
-Installing redis (3.0.1)
-Installing refraction (0.2.0)
-Installing rollout (1.1.0)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing rspec-rails (2.10.1)
-Installing simple_states (0.1.1)
-Installing thin (1.3.1) with native extensions
-Using travis-assets (0.0.1) from https://github.com/travis-ci/travis-assets (at master)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing unicorn (4.1.1) with native extensions
-Installing unobtrusive_flash (0.0.2)
-Installing yard (0.8.2.1)
-Installing versionist (0.2.3)
-Installing webmock (1.7.10)
-Installing yajl-ruby (1.1.0) with native extensions
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m$ cp config/database.example.yml config/database.yml
-$ RAILS_ENV=test bundle exec rake test:ci --trace
-** Invoke test:ci (first_time)
-** Invoke ci_env (first_time)
-** Execute ci_env
-** Invoke db:drop (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:drop
-** Invoke db:create (first_time)
-** Invoke db:load_config
-** Execute db:create
-** Invoke db:test:load (first_time)
-** Invoke db:test:purge (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:test:purge
-** Execute db:test:load
-** Invoke db:test:load_schema (first_time)
-** Invoke db:test:purge
-** Execute db:test:load_schema
-** Invoke db:schema:load (first_time)
-** Invoke environment
-** Execute db:schema:load
-** Invoke spec (first_time)
-** Invoke db:test:prepare (first_time)
-** Invoke db:abort_if_pending_migrations (first_time)
-** Invoke environment
-** Execute db:abort_if_pending_migrations
-** Execute db:test:prepare
-** Invoke db:test:load
-** Execute spec
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/controllers/v1/service_hooks_controller_spec.rb ./spec/controllers/v1/builds_controller_spec.rb ./spec/controllers/v1/repositories_controller_spec.rb ./spec/controllers/v1/jobs_controller_spec.rb ./spec/controllers/v1/workers_controller_spec.rb ./spec/controllers/v1/branches_controller_spec.rb ./spec/controllers/v2/service_hooks_controller_spec.rb ./spec/controllers/application_controller_spec.rb ./spec/controllers/profiles_controller_spec.rb ./spec/client/service_hooks_spec.rb ./spec/client/events/job_queue_spec.rb ./spec/client/events/build_spec.rb ./spec/helpers/application_helper_spec.rb ./spec/requests/shortener_controller_spec.rb ./spec/views/repository_cctray_xml_output_spec.rb ./spec/routing/v2_spec.rb ./spec/routing/v1_spec.rb ./spec/integration/jsonp_api_spec.rb ./spec/integration/consuming_messages_spec.rb ./spec/integration/build_process_spec.rb ./spec/integration/routes_redirection_spec.rb ./spec/lib/statistics_spec.rb
-Run options:
- include {:focused=>true}
- exclude {:js=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-V1::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
- subscribes to a service hook
-[32m creates a repository if it does not exist[0m
-[32m updates an existing repository if it exists[0m
- unsubscribes from the service hook
-[32m updates an existing repository[0m
-
-V1::BuildsController
- GET :index
-[32m returns a list of builds in json[0m
- GET :show
- when called using /builds/:id
-[32m returns build details in json[0m
- when called in a nested repositories call eg. /svenfuchs/i18n/builds/:id
-[32m returns build details in json[0m
-[32m returns 404 with wrong repository id[0m
-
-V1::RepositoriesController
- GET :index returns a list of repositories
- in json
-[32m ordered by last build started date[0m
-[32m filtered by owner name[0m
- GET :show, format json
-[32m returns info about repository in json format[0m
-[32m returns not found for an unknown repository[0m
- with parameter rvm:1.8.7
-[32m returns last build result passing[0m
- with parameter rvm:1.9.2
-[32m return last build result failing[0m
- with parameters rvm:1.8.7 and gemfile:test/Gemfile.rails-2.3.x
-[32m return last build result passing[0m
- with parameters rvm:1.9.2 and gemfile:test/Gemfile.rails-3.0.x
-[32m return last build result failing[0m
- with parameters rvm:1.8.7, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result passing[0m
- with parameters rvm:1.9.2, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result failing[0m
- with parameters rvm:perl
-[32m return last build result for the parent build[0m
- GET :show, format xml (schema: not specified)
-[32m return info about repository in xml format[0m
- GET :show, format xml (schema: cctray)
-[32m returns info about repository in CCTray (CruiseControl) XML format[0m
- GET :show, format xml (schema: unknown)
-[32m does not attempt to render unsupported XML schemas[0m
- GET :show, format png
- without a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "stable" when there is a running build but the previous one has passed[0m
- with a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "passing" when there is a running build but the previous one has passed[0m
-
-V1::JobsController
- GET :index
-[32m index lists all jobs on the queue[0m
- GET :show
-[32m in json[0m
-
-V1::WorkersController
-[32m index lists all workers[0m
-
-V1::BranchesController
- GET :index
-[32m returns a list of builds in json[0m
-
-V2::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
-[32m subscribes to a service hook if active => true was given[0m
-[32m unsubscribes from the service hook if active => false was given[0m
-
-HomeController
- i18n locale
-[32m the default locale is en[0m
- set_locale
-[32m prefers hl query parameter over anything else[0m
-[32m prefers the session[:locale] if there is no hl parameter[0m
-[32m prefers current_user.locale if session[:locale] is empty and there is no hl query paramter[0m
-[32m prefers the http_accept_language if session[locale] is empty, there is no hl query parameter and no current_user.local[0m
-[32m uses the default locale when nothing is specified[0m
-
-ProfilesController
- GET :show
-[32m renders the profile html page[0m
- POST :update
-[32m updates the locale for the user profile[0m
- POST :sync
- given the current user is not being synced
-[32m schedules a sync job[0m
-[32m sets the current user to being synced[0m
- given the current user is being synced
-[32m does not schedule a sync job[0m
-[32m does not set the current user to being synced[0m
-
-ApplicationHelper
- active_page?
-[32m #active_page? returns true when the given route matches the current page[0m
-[32m #active_page? returns false when the given route does not matche the current page[0m
- localization links
- switch_locale_link
-[32m should add in the language option to the current path[0m
- gravatar
-[32m #gravatar returns an IMG tag for a given user[0m
-[32m #gravatar with a given :size returns an IMG tag with the given :size[0m
-
-ShortenerController
- GET /
-[32m should redirect to travis-ci.org[0m
- GET /:id
-[32m should redirect to the found url[0m
-[32m should raise a 404 if the url could not be found[0m
-
-repositories/show/cctray.xml.builder
-[32m renders the basic details of a repository[0m
-[32m renders the correct result for a repository with no running build[0m
-[32m renders the last build time in the correct format[0m
-[32m renders the correct activity result for a repository with a running build[0m
-[32m renders the correct activity result for a repository with no builds[0m
-[32m renders the correct build result for a repository whose last build failed[0m
-[32m renders the correct build result for a repository whose last build passed[0m
-[32m renders the correct build result for a repository whose last build has an unknown result[0m
-
-v2
- GET to repositories.json?version=2
-[32m routes to V2::RepositoriesController#index[0m
- GET to repositories/1.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
- GET to builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to builds/1.json?version=2
-[32m routes to V2::BuildsController#show[0m
- GET to branches.json?version=2
-[32m routes to V2::BranchesController#index[0m
- GET to jobs.json?version=2
-[32m routes to V2::JobsController#index[0m
- GET to jobs/1.json?version=2
-[32m routes to V2::JobsController#show[0m
- GET to artifacts/1.json?version=2
-[32m routes to V2::ArtifactsController#index[0m
- GET to workers.json?version=2
-[32m routes to V2::WorkersController#index[0m
- GET to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#index[0m
- PUT to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#update[0m
- GET to :owner_name/:name.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml?version=2
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json?version=2
-[32m routes to V2::BuildsController#show[0m
-
-v1
- GET to repositories.json
-[32m routes to V1::RepositoriesController#index[0m
- GET to repositories/1.json
-[32m routes to V1::RepositoriesController#show[0m
- GET to builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to builds/1.json
-[32m routes to V1::BuildsController#show[0m
- GET to branches.json
-[32m routes to V1::BranchesController#index[0m
- GET to jobs.json
-[32m routes to V1::JobsController#index[0m
- GET to jobs/1.json
-[32m routes to V1::JobsController#show[0m
- GET to workers.json
-[32m routes to V1::WorkersController#index[0m
- GET to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#index[0m
- PUT to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#update[0m
- GET to :owner_name/:name.json
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json
-[32m routes to V1::BuildsController#show[0m
-
-JSONP API
- callback parameter passed
-[32m returns text/javascript content type[0m
-[32m returns response in jsonp format[0m
- no callback parameter passed
-[32m returns application/json content type[0m
-[32m returns response in json format[0m
- callback parameter is not valid
-[32m uses valid path[0m
-[32m returns bad request body[0m
-[32m returns 400 status code[0m
-
-routes redirection
-[32m should redirect to the default locale when redirecting[0m
-[32m the user is redirected to the hash bang version of the user route[0m
-[32m the user is redirected to the hash bang version of the repository route[0m
-[32m the user is redirected to the hash bang version of the repository builds route[0m
-[32m the user is redirected to the hash bang version of the repository build route[0m
-
-Statistics
- when listing daily test counts
-[32m should return the jobs per day[0m
- when listing total repositories
-[32m should return the number per day[0m
-[32m should include the total growth[0m
-
-Finished in 37.07 seconds
-[32m127 examples, 0 failures[0m
-** Execute test:ci
-
-Done. Build script exited with: 0
-', 1906055, 'Artifact::Log', '2012-07-19 16:56:47.192000', '2012-07-19 16:56:47.637000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1570899, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-ci.git travis-ci/travis-ci
-$ cd travis-ci/travis-ci
-$ git checkout -qf 50450976edf82dd2904749e08181c39bf68052dc
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-ci/Gemfile
-$ gem install bundler --pre
-Fetching: bundler-1.2.0.rc.gemFetching: bundler-1.2.0.rc.gem ( 6%)Fetching: bundler-1.2.0.rc.gem ( 9%)Fetching: bundler-1.2.0.rc.gem ( 16%)Fetching: bundler-1.2.0.rc.gem ( 17%)Fetching: bundler-1.2.0.rc.gem ( 21%)Fetching: bundler-1.2.0.rc.gem ( 23%)Fetching: bundler-1.2.0.rc.gem ( 25%)Fetching: bundler-1.2.0.rc.gem ( 27%)Fetching: bundler-1.2.0.rc.gem ( 33%)Fetching: bundler-1.2.0.rc.gem ( 38%)Fetching: bundler-1.2.0.rc.gem ( 39%)Fetching: bundler-1.2.0.rc.gem ( 41%)Fetching: bundler-1.2.0.rc.gem ( 43%)Fetching: bundler-1.2.0.rc.gem ( 45%)Fetching: bundler-1.2.0.rc.gem ( 48%)Fetching: bundler-1.2.0.rc.gem ( 51%)Fetching: bundler-1.2.0.rc.gem ( 55%)Fetching: bundler-1.2.0.rc.gem ( 60%)Fetching: bundler-1.2.0.rc.gem ( 63%)Fetching: bundler-1.2.0.rc.gem ( 66%)Fetching: bundler-1.2.0.rc.gem ( 67%)Fetching: bundler-1.2.0.rc.gem ( 69%)Fetching: bundler-1.2.0.rc.gem ( 71%)Fetching: bundler-1.2.0.rc.gem ( 73%)Fetching: bundler-1.2.0.rc.gem ( 78%)Fetching: bundler-1.2.0.rc.gem ( 85%)Fetching: bundler-1.2.0.rc.gem ( 92%)Fetching: bundler-1.2.0.rc.gem (100%)Fetching: bundler-1.2.0.rc.gem (100%)
-Successfully installed bundler-1.2.0.rc
-1 gem installed
-$ bundle install --without development
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081), 148.00 KiB | 277 KiB/s Receiving objects: 94% (1017/1081), 148.00 KiB | 277 KiB/s Receiving objects: 95% (1027/1081), 148.00 KiB | 277 KiB/s Receiving objects: 96% (1038/1081), 148.00 KiB | 277 KiB/s Receiving objects: 97% (1049/1081), 148.00 KiB | 277 KiB/s Receiving objects: 98% (1060/1081), 148.00 KiB | 277 KiB/s Receiving objects: 99% (1071/1081), 148.00 KiB | 277 KiB/s Receiving objects: 100% (1081/1081), 148.00 KiB | 277 KiB/s Receiving objects: 100% (1081/1081), 157.95 KiB | 277 KiB/s, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://github.com/rack/rack-contrib
-remote: Counting objects: 1054, done.[K
-remote: Compressing objects: 0% (1/443) [Kremote: Compressing objects: 1% (5/443) [Kremote: Compressing objects: 2% (9/443) [Kremote: Compressing objects: 3% (14/443) [Kremote: Compressing objects: 4% (18/443) [Kremote: Compressing objects: 5% (23/443) [Kremote: Compressing objects: 6% (27/443) [Kremote: Compressing objects: 7% (32/443) [Kremote: Compressing objects: 8% (36/443) [Kremote: Compressing objects: 9% (40/443) [Kremote: Compressing objects: 10% (45/443) [Kremote: Compressing objects: 11% (49/443) [Kremote: Compressing objects: 12% (54/443) [Kremote: Compressing objects: 13% (58/443) [Kremote: Compressing objects: 14% (63/443) [Kremote: Compressing objects: 15% (67/443) [Kremote: Compressing objects: 16% (71/443) [Kremote: Compressing objects: 17% (76/443) [Kremote: Compressing objects: 18% (80/443) [Kremote: Compressing objects: 19% (85/443) [Kremote: Compressing objects: 20% (89/443) [Kremote: Compressing objects: 21% (94/443) [Kremote: Compressing objects: 22% (98/443) [Kremote: Compressing objects: 23% (102/443) [Kremote: Compressing objects: 24% (107/443) [Kremote: Compressing objects: 25% (111/443) [Kremote: Compressing objects: 26% (116/443) [Kremote: Compressing objects: 27% (120/443) [Kremote: Compressing objects: 28% (125/443) [Kremote: Compressing objects: 29% (129/443) [Kremote: Compressing objects: 30% (133/443) [Kremote: Compressing objects: 31% (138/443) [Kremote: Compressing objects: 32% (142/443) [Kremote: Compressing objects: 33% (147/443) [Kremote: Compressing objects: 34% (151/443) [Kremote: Compressing objects: 35% (156/443) [Kremote: Compressing objects: 36% (160/443) [Kremote: Compressing objects: 37% (164/443) [Kremote: Compressing objects: 38% (169/443) [Kremote: Compressing objects: 39% (173/443) [Kremote: Compressing objects: 40% (178/443) [Kremote: Compressing objects: 41% (182/443) [Kremote: Compressing objects: 42% (187/443) [Kremote: Compressing objects: 43% (191/443) [Kremote: Compressing objects: 44% (195/443) [Kremote: Compressing objects: 45% (200/443) [Kremote: Compressing objects: 46% (204/443) [Kremote: Compressing objects: 47% (209/443) [Kremote: Compressing objects: 48% (213/443) [Kremote: Compressing objects: 49% (218/443) [Kremote: Compressing objects: 50% (222/443) [Kremote: Compressing objects: 51% (226/443) [Kremote: Compressing objects: 52% (231/443) [Kremote: Compressing objects: 53% (235/443) [Kremote: Compressing objects: 54% (240/443) [Kremote: Compressing objects: 55% (244/443) [Kremote: Compressing objects: 56% (249/443) [Kremote: Compressing objects: 57% (253/443) [Kremote: Compressing objects: 58% (257/443) [Kremote: Compressing objects: 59% (262/443) [Kremote: Compressing objects: 60% (266/443) [Kremote: Compressing objects: 61% (271/443) [Kremote: Compressing objects: 62% (275/443) [Kremote: Compressing objects: 63% (280/443) [Kremote: Compressing objects: 64% (284/443) [Kremote: Compressing objects: 65% (288/443) [Kremote: Compressing objects: 66% (293/443) [Kremote: Compressing objects: 67% (297/443) [Kremote: Compressing objects: 68% (302/443) [Kremote: Compressing objects: 69% (306/443) [Kremote: Compressing objects: 70% (311/443) [Kremote: Compressing objects: 71% (315/443) [Kremote: Compressing objects: 72% (319/443) [Kremote: Compressing objects: 73% (324/443) [Kremote: Compressing objects: 74% (328/443) [Kremote: Compressing objects: 75% (333/443) [Kremote: Compressing objects: 76% (337/443) [Kremote: Compressing objects: 77% (342/443) [Kremote: Compressing objects: 78% (346/443) [Kremote: Compressing objects: 79% (350/443) [Kremote: Compressing objects: 80% (355/443) [Kremote: Compressing objects: 81% (359/443) [Kremote: Compressing objects: 82% (364/443) [Kremote: Compressing objects: 83% (368/443) [Kremote: Compressing objects: 84% (373/443) [Kremote: Compressing objects: 85% (377/443) [Kremote: Compressing objects: 86% (381/443) [Kremote: Compressing objects: 87% (386/443) [Kremote: Compressing objects: 88% (390/443) [Kremote: Compressing objects: 89% (395/443) [Kremote: Compressing objects: 90% (399/443) [Kremote: Compressing objects: 91% (404/443) [Kremote: Compressing objects: 92% (408/443) [Kremote: Compressing objects: 93% (412/443) [Kremote: Compressing objects: 94% (417/443) [Kremote: Compressing objects: 95% (421/443) [Kremote: Compressing objects: 96% (426/443) [Kremote: Compressing objects: 97% (430/443) [Kremote: Compressing objects: 98% (435/443) [Kremote: Compressing objects: 99% (439/443) [Kremote: Compressing objects: 100% (443/443) [Kremote: Compressing objects: 100% (443/443), done.[K
-Receiving objects: 0% (1/1054) Receiving objects: 1% (11/1054) Receiving objects: 2% (22/1054) Receiving objects: 3% (32/1054) Receiving objects: 4% (43/1054) Receiving objects: 5% (53/1054) Receiving objects: 6% (64/1054) Receiving objects: 7% (74/1054) Receiving objects: 8% (85/1054) Receiving objects: 9% (95/1054) Receiving objects: 10% (106/1054) Receiving objects: 11% (116/1054) Receiving objects: 12% (127/1054) Receiving objects: 13% (138/1054) Receiving objects: 14% (148/1054) Receiving objects: 15% (159/1054) Receiving objects: 16% (169/1054) Receiving objects: 17% (180/1054) Receiving objects: 18% (190/1054) Receiving objects: 19% (201/1054) Receiving objects: 20% (211/1054) Receiving objects: 21% (222/1054) Receiving objects: 22% (232/1054) Receiving objects: 23% (243/1054) Receiving objects: 24% (253/1054) Receiving objects: 25% (264/1054) Receiving objects: 26% (275/1054) Receiving objects: 27% (285/1054) Receiving objects: 28% (296/1054) Receiving objects: 29% (306/1054) Receiving objects: 30% (317/1054) Receiving objects: 31% (327/1054) Receiving objects: 32% (338/1054) Receiving objects: 33% (348/1054) Receiving objects: 34% (359/1054) Receiving objects: 35% (369/1054) Receiving objects: 36% (380/1054) Receiving objects: 37% (390/1054) Receiving objects: 38% (401/1054) Receiving objects: 39% (412/1054) Receiving objects: 40% (422/1054) Receiving objects: 41% (433/1054) Receiving objects: 42% (443/1054) Receiving objects: 43% (454/1054) Receiving objects: 44% (464/1054) Receiving objects: 45% (475/1054) Receiving objects: 46% (485/1054) Receiving objects: 47% (496/1054) Receiving objects: 48% (506/1054) Receiving objects: 49% (517/1054) Receiving objects: 50% (527/1054) Receiving objects: 51% (538/1054) Receiving objects: 52% (549/1054) Receiving objects: 53% (559/1054) Receiving objects: 54% (570/1054) Receiving objects: 55% (580/1054) Receiving objects: 56% (591/1054) Receiving objects: 57% (601/1054) Receiving objects: 58% (612/1054) Receiving objects: 59% (622/1054) Receiving objects: 60% (633/1054) Receiving objects: 61% (643/1054) Receiving objects: 62% (654/1054) Receiving objects: 63% (665/1054) Receiving objects: 64% (675/1054) remote: Total 1054 (delta 573), reused 925 (delta 478)[K
-Receiving objects: 65% (686/1054) Receiving objects: 66% (696/1054) Receiving objects: 67% (707/1054) Receiving objects: 68% (717/1054) Receiving objects: 69% (728/1054) Receiving objects: 70% (738/1054) Receiving objects: 71% (749/1054) Receiving objects: 72% (759/1054) Receiving objects: 73% (770/1054) Receiving objects: 74% (780/1054) Receiving objects: 75% (791/1054) Receiving objects: 76% (802/1054) Receiving objects: 77% (812/1054) Receiving objects: 78% (823/1054) Receiving objects: 79% (833/1054) Receiving objects: 80% (844/1054) Receiving objects: 81% (854/1054) Receiving objects: 82% (865/1054) Receiving objects: 83% (875/1054) Receiving objects: 84% (886/1054) Receiving objects: 85% (896/1054) Receiving objects: 86% (907/1054) Receiving objects: 87% (917/1054) Receiving objects: 88% (928/1054) Receiving objects: 89% (939/1054) Receiving objects: 90% (949/1054) Receiving objects: 91% (960/1054) Receiving objects: 92% (970/1054) Receiving objects: 93% (981/1054) Receiving objects: 94% (991/1054) Receiving objects: 95% (1002/1054) Receiving objects: 96% (1012/1054) Receiving objects: 97% (1023/1054) Receiving objects: 98% (1033/1054) Receiving objects: 99% (1044/1054) Receiving objects: 100% (1054/1054) Receiving objects: 100% (1054/1054), 136.74 KiB, done.
-Resolving deltas: 0% (0/573) Resolving deltas: 6% (36/573) Resolving deltas: 20% (115/573) Resolving deltas: 30% (174/573) Resolving deltas: 34% (195/573) Resolving deltas: 38% (218/573) Resolving deltas: 41% (240/573) Resolving deltas: 47% (270/573) Resolving deltas: 51% (294/573) Resolving deltas: 55% (320/573) Resolving deltas: 58% (338/573) Resolving deltas: 64% (367/573) Resolving deltas: 71% (409/573) Resolving deltas: 72% (413/573) Resolving deltas: 73% (419/573) Resolving deltas: 74% (425/573) Resolving deltas: 77% (446/573) Resolving deltas: 78% (451/573) Resolving deltas: 79% (454/573) Resolving deltas: 81% (469/573) Resolving deltas: 82% (471/573) Resolving deltas: 85% (489/573) Resolving deltas: 86% (493/573) Resolving deltas: 87% (500/573) Resolving deltas: 88% (506/573) Resolving deltas: 89% (510/573) Resolving deltas: 92% (530/573) Resolving deltas: 93% (533/573) Resolving deltas: 94% (539/573) Resolving deltas: 96% (551/573) Resolving deltas: 97% (557/573) Resolving deltas: 98% (564/573) Resolving deltas: 99% (571/573) Resolving deltas: 100% (573/573) Resolving deltas: 100% (573/573), done.
-Fetching https://github.com/livingsocial/rake-pipeline.git
-remote: Counting objects: 1409, done.[K
-remote: Compressing objects: 0% (1/520) [Kremote: Compressing objects: 1% (6/520) [Kremote: Compressing objects: 2% (11/520) [Kremote: Compressing objects: 3% (16/520) [Kremote: Compressing objects: 4% (21/520) [Kremote: Compressing objects: 5% (26/520) [Kremote: Compressing objects: 6% (32/520) [Kremote: Compressing objects: 7% (37/520) [Kremote: Compressing objects: 8% (42/520) [Kremote: Compressing objects: 9% (47/520) [Kremote: Compressing objects: 10% (52/520) [Kremote: Compressing objects: 11% (58/520) [Kremote: Compressing objects: 12% (63/520) [Kremote: Compressing objects: 13% (68/520) [Kremote: Compressing objects: 14% (73/520) [Kremote: Compressing objects: 15% (78/520) [Kremote: Compressing objects: 16% (84/520) [Kremote: Compressing objects: 17% (89/520) [Kremote: Compressing objects: 18% (94/520) [Kremote: Compressing objects: 19% (99/520) [Kremote: Compressing objects: 20% (104/520) [Kremote: Compressing objects: 21% (110/520) [Kremote: Compressing objects: 22% (115/520) [Kremote: Compressing objects: 23% (120/520) [Kremote: Compressing objects: 24% (125/520) [Kremote: Compressing objects: 25% (130/520) [Kremote: Compressing objects: 26% (136/520) [Kremote: Compressing objects: 27% (141/520) [Kremote: Compressing objects: 28% (146/520) [Kremote: Compressing objects: 29% (151/520) [Kremote: Compressing objects: 30% (156/520) [Kremote: Compressing objects: 31% (162/520) [Kremote: Compressing objects: 32% (167/520) [Kremote: Compressing objects: 33% (172/520) [Kremote: Compressing objects: 34% (177/520) [Kremote: Compressing objects: 35% (182/520) [Kremote: Compressing objects: 36% (188/520) [Kremote: Compressing objects: 37% (193/520) [Kremote: Compressing objects: 38% (198/520) [Kremote: Compressing objects: 39% (203/520) [Kremote: Compressing objects: 40% (208/520) [Kremote: Compressing objects: 41% (214/520) [Kremote: Compressing objects: 42% (219/520) [Kremote: Compressing objects: 43% (224/520) [Kremote: Compressing objects: 44% (229/520) [Kremote: Compressing objects: 45% (234/520) [Kremote: Compressing objects: 46% (240/520) [Kremote: Compressing objects: 47% (245/520) [Kremote: Compressing objects: 48% (250/520) [Kremote: Compressing objects: 49% (255/520) [Kremote: Compressing objects: 50% (260/520) [Kremote: Compressing objects: 51% (266/520) [Kremote: Compressing objects: 52% (271/520) [Kremote: Compressing objects: 53% (276/520) [Kremote: Compressing objects: 54% (281/520) [Kremote: Compressing objects: 55% (286/520) [Kremote: Compressing objects: 56% (292/520) [Kremote: Compressing objects: 57% (297/520) [Kremote: Compressing objects: 58% (302/520) [Kremote: Compressing objects: 59% (307/520) [Kremote: Compressing objects: 60% (312/520) [Kremote: Compressing objects: 61% (318/520) [Kremote: Compressing objects: 62% (323/520) [Kremote: Compressing objects: 63% (328/520) [Kremote: Compressing objects: 64% (333/520) [Kremote: Compressing objects: 65% (338/520) [Kremote: Compressing objects: 66% (344/520) [Kremote: Compressing objects: 67% (349/520) [Kremote: Compressing objects: 68% (354/520) [Kremote: Compressing objects: 69% (359/520) [Kremote: Compressing objects: 70% (364/520) [Kremote: Compressing objects: 71% (370/520) [Kremote: Compressing objects: 72% (375/520) [Kremote: Compressing objects: 73% (380/520) [Kremote: Compressing objects: 74% (385/520) [Kremote: Compressing objects: 75% (390/520) [Kremote: Compressing objects: 76% (396/520) [Kremote: Compressing objects: 77% (401/520) [Kremote: Compressing objects: 78% (406/520) [Kremote: Compressing objects: 79% (411/520) [Kremote: Compressing objects: 80% (416/520) [Kremote: Compressing objects: 81% (422/520) [Kremote: Compressing objects: 82% (427/520) [Kremote: Compressing objects: 83% (432/520) [Kremote: Compressing objects: 84% (437/520) [Kremote: Compressing objects: 85% (442/520) [Kremote: Compressing objects: 86% (448/520) [Kremote: Compressing objects: 87% (453/520) [Kremote: Compressing objects: 88% (458/520) [Kremote: Compressing objects: 89% (463/520) [Kremote: Compressing objects: 90% (468/520) [Kremote: Compressing objects: 91% (474/520) [Kremote: Compressing objects: 92% (479/520) [Kremote: Compressing objects: 93% (484/520) [Kremote: Compressing objects: 94% (489/520) [Kremote: Compressing objects: 95% (494/520) [Kremote: Compressing objects: 96% (500/520) [Kremote: Compressing objects: 97% (505/520) [Kremote: Compressing objects: 98% (510/520) [Kremote: Compressing objects: 99% (515/520) [Kremote: Compressing objects: 100% (520/520) [Kremote: Compressing objects: 100% (520/520), done.[K
-Receiving objects: 0% (1/1409) Receiving objects: 1% (15/1409) Receiving objects: 2% (29/1409) Receiving objects: 3% (43/1409) Receiving objects: 4% (57/1409) Receiving objects: 5% (71/1409) Receiving objects: 6% (85/1409) Receiving objects: 7% (99/1409) Receiving objects: 8% (113/1409) Receiving objects: 9% (127/1409) Receiving objects: 10% (141/1409) Receiving objects: 11% (155/1409) Receiving objects: 12% (170/1409) Receiving objects: 13% (184/1409) Receiving objects: 14% (198/1409) Receiving objects: 15% (212/1409) Receiving objects: 16% (226/1409) Receiving objects: 17% (240/1409) Receiving objects: 18% (254/1409) Receiving objects: 19% (268/1409) Receiving objects: 20% (282/1409) Receiving objects: 21% (296/1409) Receiving objects: 22% (310/1409) Receiving objects: 23% (325/1409) Receiving objects: 24% (339/1409) Receiving objects: 25% (353/1409) Receiving objects: 26% (367/1409) Receiving objects: 27% (381/1409) Receiving objects: 28% (395/1409) Receiving objects: 29% (409/1409) Receiving objects: 30% (423/1409) Receiving objects: 31% (437/1409) Receiving objects: 32% (451/1409) Receiving objects: 33% (465/1409) Receiving objects: 34% (480/1409) Receiving objects: 35% (494/1409) Receiving objects: 36% (508/1409) Receiving objects: 37% (522/1409) Receiving objects: 38% (536/1409) Receiving objects: 39% (550/1409) Receiving objects: 40% (564/1409) Receiving objects: 41% (578/1409) Receiving objects: 42% (592/1409) Receiving objects: 43% (606/1409) Receiving objects: 44% (620/1409) Receiving objects: 45% (635/1409) Receiving objects: 46% (649/1409) Receiving objects: 47% (663/1409) Receiving objects: 48% (677/1409) Receiving objects: 49% (691/1409) Receiving objects: 50% (705/1409) Receiving objects: 51% (719/1409) Receiving objects: 52% (733/1409) Receiving objects: 53% (747/1409) Receiving objects: 54% (761/1409) Receiving objects: 55% (775/1409) Receiving objects: 56% (790/1409) Receiving objects: 57% (804/1409) Receiving objects: 58% (818/1409) Receiving objects: 59% (832/1409) Receiving objects: 60% (846/1409) Receiving objects: 61% (860/1409) Receiving objects: 62% (874/1409) Receiving objects: 63% (888/1409) Receiving objects: 64% (902/1409) Receiving objects: 65% (916/1409) Receiving objects: 66% (930/1409) Receiving objects: 67% (945/1409) Receiving objects: 68% (959/1409) Receiving objects: 69% (973/1409) Receiving objects: 70% (987/1409) remote: Total 1409 (delta 929), reused 1313 (delta 838)[K
-Receiving objects: 71% (1001/1409) Receiving objects: 72% (1015/1409) Receiving objects: 73% (1029/1409) Receiving objects: 74% (1043/1409) Receiving objects: 75% (1057/1409) Receiving objects: 76% (1071/1409) Receiving objects: 77% (1085/1409) Receiving objects: 78% (1100/1409) Receiving objects: 79% (1114/1409) Receiving objects: 80% (1128/1409) Receiving objects: 81% (1142/1409) Receiving objects: 82% (1156/1409) Receiving objects: 83% (1170/1409) Receiving objects: 84% (1184/1409) Receiving objects: 85% (1198/1409) Receiving objects: 86% (1212/1409) Receiving objects: 87% (1226/1409) Receiving objects: 88% (1240/1409) Receiving objects: 89% (1255/1409) Receiving objects: 90% (1269/1409) Receiving objects: 91% (1283/1409) Receiving objects: 92% (1297/1409) Receiving objects: 93% (1311/1409) Receiving objects: 94% (1325/1409) Receiving objects: 95% (1339/1409) Receiving objects: 96% (1353/1409) Receiving objects: 97% (1367/1409) Receiving objects: 98% (1381/1409) Receiving objects: 99% (1395/1409) Receiving objects: 100% (1409/1409) Receiving objects: 100% (1409/1409), 190.71 KiB, done.
-Resolving deltas: 0% (0/929) Resolving deltas: 18% (173/929) Resolving deltas: 20% (191/929) Resolving deltas: 25% (239/929) Resolving deltas: 26% (246/929) Resolving deltas: 28% (261/929) Resolving deltas: 36% (336/929) Resolving deltas: 37% (347/929) Resolving deltas: 43% (400/929) Resolving deltas: 44% (409/929) Resolving deltas: 45% (422/929) Resolving deltas: 46% (428/929) Resolving deltas: 47% (442/929) Resolving deltas: 48% (446/929) Resolving deltas: 52% (484/929) Resolving deltas: 53% (500/929) Resolving deltas: 54% (504/929) Resolving deltas: 55% (515/929) Resolving deltas: 56% (524/929) Resolving deltas: 57% (531/929) Resolving deltas: 63% (587/929) Resolving deltas: 66% (616/929) Resolving deltas: 67% (628/929) Resolving deltas: 69% (647/929) Resolving deltas: 72% (677/929) Resolving deltas: 73% (680/929) Resolving deltas: 74% (688/929) Resolving deltas: 75% (706/929) Resolving deltas: 77% (724/929) Resolving deltas: 78% (730/929) Resolving deltas: 81% (754/929) Resolving deltas: 82% (762/929) Resolving deltas: 83% (773/929) Resolving deltas: 84% (781/929) Resolving deltas: 85% (790/929) Resolving deltas: 87% (811/929) Resolving deltas: 88% (822/929) Resolving deltas: 89% (832/929) Resolving deltas: 92% (857/929) Resolving deltas: 93% (871/929) Resolving deltas: 96% (900/929) Resolving deltas: 97% (908/929) Resolving deltas: 98% (913/929) Resolving deltas: 99% (925/929) Resolving deltas: 100% (929/929) Resolving deltas: 100% (929/929), done.
-Fetching https://github.com/wycats/rake-pipeline-web-filters.git
-remote: Counting objects: 674, done.[K
-remote: Compressing objects: 0% (1/207) [Kremote: Compressing objects: 1% (3/207) [Kremote: Compressing objects: 2% (5/207) [Kremote: Compressing objects: 3% (7/207) [Kremote: Compressing objects: 4% (9/207) [Kremote: Compressing objects: 5% (11/207) [Kremote: Compressing objects: 6% (13/207) [Kremote: Compressing objects: 7% (15/207) [Kremote: Compressing objects: 8% (17/207) [Kremote: Compressing objects: 9% (19/207) [Kremote: Compressing objects: 10% (21/207) [Kremote: Compressing objects: 11% (23/207) [Kremote: Compressing objects: 12% (25/207) [Kremote: Compressing objects: 13% (27/207) [Kremote: Compressing objects: 14% (29/207) [Kremote: Compressing objects: 15% (32/207) [Kremote: Compressing objects: 16% (34/207) [Kremote: Compressing objects: 17% (36/207) [Kremote: Compressing objects: 18% (38/207) [Kremote: Compressing objects: 19% (40/207) [Kremote: Compressing objects: 20% (42/207) [Kremote: Compressing objects: 21% (44/207) [Kremote: Compressing objects: 22% (46/207) [Kremote: Compressing objects: 23% (48/207) [Kremote: Compressing objects: 24% (50/207) [Kremote: Compressing objects: 25% (52/207) [Kremote: Compressing objects: 26% (54/207) [Kremote: Compressing objects: 27% (56/207) [Kremote: Compressing objects: 28% (58/207) [Kremote: Compressing objects: 29% (61/207) [Kremote: Compressing objects: 30% (63/207) [Kremote: Compressing objects: 31% (65/207) [Kremote: Compressing objects: 32% (67/207) [Kremote: Compressing objects: 33% (69/207) [Kremote: Compressing objects: 34% (71/207) [Kremote: Compressing objects: 35% (73/207) [Kremote: Compressing objects: 36% (75/207) [Kremote: Compressing objects: 37% (77/207) [Kremote: Compressing objects: 38% (79/207) [Kremote: Compressing objects: 39% (81/207) [Kremote: Compressing objects: 40% (83/207) [Kremote: Compressing objects: 41% (85/207) [Kremote: Compressing objects: 42% (87/207) [Kremote: Compressing objects: 43% (90/207) [Kremote: Compressing objects: 44% (92/207) [Kremote: Compressing objects: 45% (94/207) [Kremote: Compressing objects: 46% (96/207) [Kremote: Compressing objects: 47% (98/207) [Kremote: Compressing objects: 48% (100/207) [Kremote: Compressing objects: 49% (102/207) [Kremote: Compressing objects: 50% (104/207) [Kremote: Compressing objects: 51% (106/207) [Kremote: Compressing objects: 52% (108/207) [Kremote: Compressing objects: 53% (110/207) [Kremote: Compressing objects: 54% (112/207) [Kremote: Compressing objects: 55% (114/207) [Kremote: Compressing objects: 56% (116/207) [Kremote: Compressing objects: 57% (118/207) [Kremote: Compressing objects: 58% (121/207) [Kremote: Compressing objects: 59% (123/207) [Kremote: Compressing objects: 60% (125/207) [Kremote: Compressing objects: 61% (127/207) [Kremote: Compressing objects: 62% (129/207) [Kremote: Compressing objects: 63% (131/207) [Kremote: Compressing objects: 64% (133/207) [Kremote: Compressing objects: 65% (135/207) [Kremote: Compressing objects: 66% (137/207) [Kremote: Compressing objects: 67% (139/207) [Kremote: Compressing objects: 68% (141/207) [Kremote: Compressing objects: 69% (143/207) [Kremote: Compressing objects: 70% (145/207) [Kremote: Compressing objects: 71% (147/207) [Kremote: Compressing objects: 72% (150/207) [Kremote: Compressing objects: 73% (152/207) [Kremote: Compressing objects: 74% (154/207) [Kremote: Compressing objects: 75% (156/207) [Kremote: Compressing objects: 76% (158/207) [Kremote: Compressing objects: 77% (160/207) [Kremote: Compressing objects: 78% (162/207) [Kremote: Compressing objects: 79% (164/207) [Kremote: Compressing objects: 80% (166/207) [Kremote: Compressing objects: 81% (168/207) [Kremote: Compressing objects: 82% (170/207) [Kremote: Compressing objects: 83% (172/207) [Kremote: Compressing objects: 84% (174/207) [Kremote: Compressing objects: 85% (176/207) [Kremote: Compressing objects: 86% (179/207) [Kremote: Compressing objects: 87% (181/207) [Kremote: Compressing objects: 88% (183/207) [Kremote: Compressing objects: 89% (185/207) [Kremote: Compressing objects: 90% (187/207) [Kremote: Compressing objects: 91% (189/207) [Kremote: Compressing objects: 92% (191/207) [Kremote: Compressing objects: 93% (193/207) [Kremote: Compressing objects: 94% (195/207) [Kremote: Compressing objects: 95% (197/207) [Kremote: Compressing objects: 96% (199/207) [Kremote: Compressing objects: 97% (201/207) [Kremote: Compressing objects: 98% (203/207) [Kremote: Compressing objects: 99% (205/207) [Kremote: Compressing objects: 100% (207/207) [Kremote: Compressing objects: 100% (207/207), done.[K
-Receiving objects: 0% (1/674) Receiving objects: 1% (7/674) Receiving objects: 2% (14/674) Receiving objects: 3% (21/674) Receiving objects: 4% (27/674) Receiving objects: 5% (34/674) Receiving objects: 6% (41/674) Receiving objects: 7% (48/674) Receiving objects: 8% (54/674) Receiving objects: 9% (61/674) Receiving objects: 10% (68/674) Receiving objects: 11% (75/674) Receiving objects: 12% (81/674) Receiving objects: 13% (88/674) Receiving objects: 14% (95/674) Receiving objects: 15% (102/674) Receiving objects: 16% (108/674) Receiving objects: 17% (115/674) Receiving objects: 18% (122/674) Receiving objects: 19% (129/674) Receiving objects: 20% (135/674) Receiving objects: 21% (142/674) Receiving objects: 22% (149/674) Receiving objects: 23% (156/674) Receiving objects: 24% (162/674) Receiving objects: 25% (169/674) Receiving objects: 26% (176/674) Receiving objects: 27% (182/674) Receiving objects: 28% (189/674) Receiving objects: 29% (196/674) Receiving objects: 30% (203/674) Receiving objects: 31% (209/674) Receiving objects: 32% (216/674) Receiving objects: 33% (223/674) Receiving objects: 34% (230/674) Receiving objects: 35% (236/674) Receiving objects: 36% (243/674) Receiving objects: 37% (250/674) Receiving objects: 38% (257/674) Receiving objects: 39% (263/674) Receiving objects: 40% (270/674) Receiving objects: 41% (277/674) Receiving objects: 42% (284/674) Receiving objects: 43% (290/674) Receiving objects: 44% (297/674) Receiving objects: 45% (304/674) Receiving objects: 46% (311/674) Receiving objects: 47% (317/674) Receiving objects: 48% (324/674) remote: Total 674 (delta 491), reused 646 (delta 463)[K
-Receiving objects: 49% (331/674) Receiving objects: 50% (337/674) Receiving objects: 51% (344/674) Receiving objects: 52% (351/674) Receiving objects: 53% (358/674) Receiving objects: 54% (364/674) Receiving objects: 55% (371/674) Receiving objects: 56% (378/674) Receiving objects: 57% (385/674) Receiving objects: 58% (391/674) Receiving objects: 59% (398/674) Receiving objects: 60% (405/674) Receiving objects: 61% (412/674) Receiving objects: 62% (418/674) Receiving objects: 63% (425/674) Receiving objects: 64% (432/674) Receiving objects: 65% (439/674) Receiving objects: 66% (445/674) Receiving objects: 67% (452/674) Receiving objects: 68% (459/674) Receiving objects: 69% (466/674) Receiving objects: 70% (472/674) Receiving objects: 71% (479/674) Receiving objects: 72% (486/674) Receiving objects: 73% (493/674) Receiving objects: 74% (499/674) Receiving objects: 75% (506/674) Receiving objects: 76% (513/674) Receiving objects: 77% (519/674) Receiving objects: 78% (526/674) Receiving objects: 79% (533/674) Receiving objects: 80% (540/674) Receiving objects: 81% (546/674) Receiving objects: 82% (553/674) Receiving objects: 83% (560/674) Receiving objects: 84% (567/674) Receiving objects: 85% (573/674) Receiving objects: 86% (580/674) Receiving objects: 87% (587/674) Receiving objects: 88% (594/674) Receiving objects: 89% (600/674) Receiving objects: 90% (607/674) Receiving objects: 91% (614/674) Receiving objects: 92% (621/674) Receiving objects: 93% (627/674) Receiving objects: 94% (634/674) Receiving objects: 95% (641/674) Receiving objects: 96% (648/674) Receiving objects: 97% (654/674) Receiving objects: 98% (661/674) Receiving objects: 99% (668/674) Receiving objects: 100% (674/674) Receiving objects: 100% (674/674), 90.14 KiB, done.
-Resolving deltas: 0% (0/491) Resolving deltas: 18% (93/491) Resolving deltas: 19% (96/491) Resolving deltas: 28% (140/491) Resolving deltas: 33% (164/491) Resolving deltas: 34% (168/491) Resolving deltas: 39% (192/491) Resolving deltas: 41% (204/491) Resolving deltas: 42% (210/491) Resolving deltas: 47% (232/491) Resolving deltas: 52% (259/491) Resolving deltas: 53% (261/491) Resolving deltas: 54% (268/491) Resolving deltas: 55% (272/491) Resolving deltas: 56% (276/491) Resolving deltas: 57% (280/491) Resolving deltas: 61% (302/491) Resolving deltas: 62% (305/491) Resolving deltas: 65% (321/491) Resolving deltas: 66% (326/491) Resolving deltas: 70% (344/491) Resolving deltas: 72% (355/491) Resolving deltas: 74% (368/491) Resolving deltas: 75% (371/491) Resolving deltas: 78% (386/491) Resolving deltas: 79% (389/491) Resolving deltas: 87% (432/491) Resolving deltas: 91% (451/491) Resolving deltas: 93% (458/491) Resolving deltas: 94% (463/491) Resolving deltas: 98% (482/491) Resolving deltas: 100% (491/491) Resolving deltas: 100% (491/491), done.
-Fetching https://github.com/travis-ci/travis-assets
-remote: Counting objects: 3310, done.[K
-remote: Compressing objects: 0% (1/2323) [Kremote: Compressing objects: 1% (24/2323) [Kremote: Compressing objects: 2% (47/2323) [Kremote: Compressing objects: 3% (70/2323) [Kremote: Compressing objects: 4% (93/2323) [Kremote: Compressing objects: 5% (117/2323) [Kremote: Compressing objects: 6% (140/2323) [Kremote: Compressing objects: 7% (163/2323) [Kremote: Compressing objects: 8% (186/2323) [Kremote: Compressing objects: 9% (210/2323) [Kremote: Compressing objects: 10% (233/2323) [Kremote: Compressing objects: 11% (256/2323) [Kremote: Compressing objects: 12% (279/2323) [Kremote: Compressing objects: 13% (302/2323) [Kremote: Compressing objects: 14% (326/2323) [Kremote: Compressing objects: 15% (349/2323) [Kremote: Compressing objects: 16% (372/2323) [Kremote: Compressing objects: 17% (395/2323) [Kremote: Compressing objects: 18% (419/2323) [Kremote: Compressing objects: 19% (442/2323) [Kremote: Compressing objects: 20% (465/2323) [Kremote: Compressing objects: 21% (488/2323) [Kremote: Compressing objects: 22% (512/2323) [Kremote: Compressing objects: 23% (535/2323) [Kremote: Compressing objects: 24% (558/2323) [Kremote: Compressing objects: 25% (581/2323) [Kremote: Compressing objects: 26% (604/2323) [Kremote: Compressing objects: 27% (628/2323) [Kremote: Compressing objects: 28% (651/2323) [Kremote: Compressing objects: 29% (674/2323) [Kremote: Compressing objects: 30% (697/2323) [Kremote: Compressing objects: 31% (721/2323) [Kremote: Compressing objects: 32% (744/2323) [Kremote: Compressing objects: 33% (767/2323) [Kremote: Compressing objects: 34% (790/2323) [Kremote: Compressing objects: 35% (814/2323) [Kremote: Compressing objects: 36% (837/2323) [Kremote: Compressing objects: 37% (860/2323) [Kremote: Compressing objects: 38% (883/2323) [Kremote: Compressing objects: 39% (906/2323) [Kremote: Compressing objects: 40% (930/2323) [Kremote: Compressing objects: 41% (953/2323) [Kremote: Compressing objects: 42% (976/2323) [Kremote: Compressing objects: 43% (999/2323) [Kremote: Compressing objects: 44% (1023/2323) [Kremote: Compressing objects: 45% (1046/2323) [Kremote: Compressing objects: 46% (1069/2323) [Kremote: Compressing objects: 47% (1092/2323) [Kremote: Compressing objects: 48% (1116/2323) [Kremote: Compressing objects: 49% (1139/2323) [Kremote: Compressing objects: 50% (1162/2323) [Kremote: Compressing objects: 51% (1185/2323) [Kremote: Compressing objects: 52% (1208/2323) [Kremote: Compressing objects: 53% (1232/2323) [Kremote: Compressing objects: 54% (1255/2323) [Kremote: Compressing objects: 55% (1278/2323) [Kremote: Compressing objects: 56% (1301/2323) [Kremote: Compressing objects: 57% (1325/2323) [Kremote: Compressing objects: 58% (1348/2323) [Kremote: Compressing objects: 59% (1371/2323) [Kremote: Compressing objects: 60% (1394/2323) [Kremote: Compressing objects: 61% (1418/2323) [Kremote: Compressing objects: 62% (1441/2323) [Kremote: Compressing objects: 63% (1464/2323) [Kremote: Compressing objects: 64% (1487/2323) [Kremote: Compressing objects: 65% (1510/2323) [Kremote: Compressing objects: 66% (1534/2323) [Kremote: Compressing objects: 67% (1557/2323) [Kremote: Compressing objects: 68% (1580/2323) [Kremote: Compressing objects: 69% (1603/2323) [Kremote: Compressing objects: 70% (1627/2323) [Kremote: Compressing objects: 71% (1650/2323) [Kremote: Compressing objects: 72% (1673/2323) [Kremote: Compressing objects: 73% (1696/2323) [Kremote: Compressing objects: 74% (1720/2323) [Kremote: Compressing objects: 75% (1743/2323) [Kremote: Compressing objects: 76% (1766/2323) [Kremote: Compressing objects: 77% (1789/2323) [Kremote: Compressing objects: 78% (1812/2323) [Kremote: Compressing objects: 79% (1836/2323) [Kremote: Compressing objects: 80% (1859/2323) [Kremote: Compressing objects: 81% (1882/2323) [Kremote: Compressing objects: 82% (1905/2323) [Kremote: Compressing objects: 83% (1929/2323) [Kremote: Compressing objects: 84% (1952/2323) [Kremote: Compressing objects: 85% (1975/2323) [Kremote: Compressing objects: 86% (1998/2323) [Kremote: Compressing objects: 87% (2022/2323) [Kremote: Compressing objects: 88% (2045/2323) [Kremote: Compressing objects: 89% (2068/2323) [Kremote: Compressing objects: 90% (2091/2323) [Kremote: Compressing objects: 91% (2114/2323) [Kremote: Compressing objects: 92% (2138/2323) [Kremote: Compressing objects: 93% (2161/2323) [Kremote: Compressing objects: 94% (2184/2323) [Kremote: Compressing objects: 95% (2207/2323) [Kremote: Compressing objects: 96% (2231/2323) [Kremote: Compressing objects: 97% (2254/2323) [Kremote: Compressing objects: 98% (2277/2323) [Kremote: Compressing objects: 99% (2300/2323) [Kremote: Compressing objects: 100% (2323/2323) [Kremote: Compressing objects: 100% (2323/2323), done.[K
-Receiving objects: 0% (1/3310) Receiving objects: 1% (34/3310) Receiving objects: 2% (67/3310) Receiving objects: 3% (100/3310) Receiving objects: 4% (133/3310) Receiving objects: 5% (166/3310) Receiving objects: 6% (199/3310) Receiving objects: 7% (232/3310) Receiving objects: 8% (265/3310) Receiving objects: 9% (298/3310) Receiving objects: 10% (331/3310) Receiving objects: 11% (365/3310) Receiving objects: 12% (398/3310) Receiving objects: 13% (431/3310) Receiving objects: 14% (464/3310) Receiving objects: 15% (497/3310) Receiving objects: 16% (530/3310) Receiving objects: 17% (563/3310) Receiving objects: 18% (596/3310) Receiving objects: 19% (629/3310) Receiving objects: 20% (662/3310) Receiving objects: 21% (696/3310) Receiving objects: 22% (729/3310) Receiving objects: 23% (762/3310) Receiving objects: 24% (795/3310) Receiving objects: 25% (828/3310) Receiving objects: 26% (861/3310) Receiving objects: 27% (894/3310) Receiving objects: 28% (927/3310) Receiving objects: 29% (960/3310) Receiving objects: 30% (993/3310) Receiving objects: 31% (1027/3310) Receiving objects: 32% (1060/3310) Receiving objects: 33% (1093/3310) Receiving objects: 34% (1126/3310) Receiving objects: 35% (1159/3310), 460.00 KiB | 809 KiB/s Receiving objects: 36% (1192/3310), 460.00 KiB | 809 KiB/s Receiving objects: 37% (1225/3310), 460.00 KiB | 809 KiB/s Receiving objects: 38% (1258/3310), 460.00 KiB | 809 KiB/s Receiving objects: 39% (1291/3310), 460.00 KiB | 809 KiB/s Receiving objects: 40% (1324/3310), 460.00 KiB | 809 KiB/s Receiving objects: 41% (1358/3310), 460.00 KiB | 809 KiB/s Receiving objects: 42% (1391/3310), 460.00 KiB | 809 KiB/s Receiving objects: 43% (1424/3310), 460.00 KiB | 809 KiB/s Receiving objects: 44% (1457/3310), 460.00 KiB | 809 KiB/s Receiving objects: 45% (1490/3310), 460.00 KiB | 809 KiB/s Receiving objects: 46% (1523/3310), 460.00 KiB | 809 KiB/s Receiving objects: 47% (1556/3310), 460.00 KiB | 809 KiB/s Receiving objects: 47% (1568/3310), 460.00 KiB | 809 KiB/s Receiving objects: 48% (1589/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 49% (1622/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 50% (1655/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 51% (1689/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 52% (1722/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 53% (1755/3310), 2.30 MiB | 1.99 MiB/s Receiving objects: 53% (1769/3310), 2.71 MiB | 1.62 MiB/s Receiving objects: 54% (1788/3310), 2.71 MiB | 1.62 MiB/s Receiving objects: 55% (1821/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 56% (1854/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 57% (1887/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 58% (1920/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 59% (1953/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 60% (1986/3310), 3.25 MiB | 1.48 MiB/s Receiving objects: 61% (2020/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 62% (2053/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 63% (2086/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 64% (2119/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 65% (2152/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 66% (2185/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 67% (2218/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 68% (2251/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 69% (2284/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 70% (2317/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 71% (2351/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 72% (2384/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 72% (2416/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 73% (2417/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 74% (2450/3310), 3.75 MiB | 1.38 MiB/s Receiving objects: 75% (2483/3310), 4.24 MiB | 1.31 MiB/s Receiving objects: 76% (2516/3310), 4.24 MiB | 1.31 MiB/s Receiving objects: 77% (2549/3310), 4.24 MiB | 1.31 MiB/s Receiving objects: 78% (2582/3310), 4.77 MiB | 1.28 MiB/s Receiving objects: 79% (2615/3310), 4.77 MiB | 1.28 MiB/s Receiving objects: 79% (2631/3310), 4.77 MiB | 1.28 MiB/s Receiving objects: 80% (2648/3310), 4.77 MiB | 1.28 MiB/s Receiving objects: 81% (2682/3310), 4.77 MiB | 1.28 MiB/s Receiving objects: 82% (2715/3310), 5.30 MiB | 1.24 MiB/s Receiving objects: 83% (2748/3310), 5.30 MiB | 1.24 MiB/s Receiving objects: 84% (2781/3310), 5.30 MiB | 1.24 MiB/s Receiving objects: 85% (2814/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 86% (2847/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 87% (2880/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 87% (2890/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 88% (2913/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 89% (2946/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 90% (2979/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 91% (3013/3310), 5.83 MiB | 1.22 MiB/s Receiving objects: 92% (3046/3310), 6.38 MiB | 1.26 MiB/s Receiving objects: 93% (3079/3310), 6.38 MiB | 1.26 MiB/s Receiving objects: 94% (3112/3310), 6.38 MiB | 1.26 MiB/s Receiving objects: 95% (3145/3310), 6.38 MiB | 1.26 MiB/s Receiving objects: 96% (3178/3310), 6.89 MiB | 1011 KiB/s Receiving objects: 97% (3211/3310), 6.89 MiB | 1011 KiB/s Receiving objects: 98% (3244/3310), 6.89 MiB | 1011 KiB/s Receiving objects: 99% (3277/3310), 6.89 MiB | 1011 KiB/s Receiving objects: 99% (3299/3310), 6.89 MiB | 1011 KiB/s remote: Total 3310 (delta 1088), reused 3044 (delta 844)[K
-Receiving objects: 100% (3310/3310), 6.89 MiB | 1011 KiB/s Receiving objects: 100% (3310/3310), 7.44 MiB | 1.01 MiB/s, done.
-Resolving deltas: 0% (0/1088) Resolving deltas: 6% (66/1088) Resolving deltas: 8% (88/1088) Resolving deltas: 9% (105/1088) Resolving deltas: 10% (110/1088) Resolving deltas: 11% (120/1088) Resolving deltas: 20% (227/1088) Resolving deltas: 22% (250/1088) Resolving deltas: 24% (263/1088) Resolving deltas: 25% (279/1088) Resolving deltas: 26% (283/1088) Resolving deltas: 27% (298/1088) Resolving deltas: 28% (305/1088) Resolving deltas: 29% (323/1088) Resolving deltas: 30% (333/1088) Resolving deltas: 31% (342/1088) Resolving deltas: 32% (350/1088) Resolving deltas: 33% (360/1088) Resolving deltas: 34% (380/1088) Resolving deltas: 35% (388/1088) Resolving deltas: 36% (396/1088) Resolving deltas: 37% (403/1088) Resolving deltas: 38% (414/1088) Resolving deltas: 39% (426/1088) Resolving deltas: 40% (442/1088) Resolving deltas: 41% (447/1088) Resolving deltas: 42% (466/1088) Resolving deltas: 43% (471/1088) Resolving deltas: 44% (480/1088) Resolving deltas: 45% (490/1088) Resolving deltas: 46% (503/1088) Resolving deltas: 47% (520/1088) Resolving deltas: 48% (527/1088) Resolving deltas: 49% (536/1088) Resolving deltas: 50% (552/1088) Resolving deltas: 51% (555/1088) Resolving deltas: 52% (570/1088) Resolving deltas: 53% (582/1088) Resolving deltas: 54% (596/1088) Resolving deltas: 55% (600/1088) Resolving deltas: 56% (615/1088) Resolving deltas: 57% (621/1088) Resolving deltas: 58% (636/1088) Resolving deltas: 59% (642/1088) Resolving deltas: 68% (741/1088) Resolving deltas: 69% (759/1088) Resolving deltas: 70% (762/1088) Resolving deltas: 71% (773/1088) Resolving deltas: 72% (787/1088) Resolving deltas: 73% (796/1088) Resolving deltas: 82% (902/1088) Resolving deltas: 91% (1000/1088) Resolving deltas: 92% (1010/1088) Resolving deltas: 93% (1014/1088) Resolving deltas: 94% (1025/1088) Resolving deltas: 95% (1037/1088) Resolving deltas: 96% (1046/1088) Resolving deltas: 97% (1056/1088) Resolving deltas: 98% (1068/1088) Resolving deltas: 99% (1078/1088) Resolving deltas: 100% (1088/1088) Resolving deltas: 100% (1088/1088), done.
-Fetching git://github.com/travis-ci/travis-core
-remote: Counting objects: 11443, done.[K
-remote: Compressing objects: 0% (1/3239) [Kremote: Compressing objects: 1% (33/3239) [Kremote: Compressing objects: 2% (65/3239) [Kremote: Compressing objects: 3% (98/3239) [Kremote: Compressing objects: 4% (130/3239) [Kremote: Compressing objects: 5% (162/3239) [Kremote: Compressing objects: 6% (195/3239) [Kremote: Compressing objects: 7% (227/3239) [Kremote: Compressing objects: 8% (260/3239) [Kremote: Compressing objects: 9% (292/3239) [Kremote: Compressing objects: 10% (324/3239) [Kremote: Compressing objects: 11% (357/3239) [Kremote: Compressing objects: 12% (389/3239) [Kremote: Compressing objects: 13% (422/3239) [Kremote: Compressing objects: 14% (454/3239) [Kremote: Compressing objects: 15% (486/3239) [Kremote: Compressing objects: 16% (519/3239) [Kremote: Compressing objects: 17% (551/3239) [Kremote: Compressing objects: 18% (584/3239) [Kremote: Compressing objects: 19% (616/3239) [Kremote: Compressing objects: 20% (648/3239) [Kremote: Compressing objects: 21% (681/3239) [Kremote: Compressing objects: 22% (713/3239) [Kremote: Compressing objects: 23% (745/3239) [Kremote: Compressing objects: 24% (778/3239) [Kremote: Compressing objects: 25% (810/3239) [Kremote: Compressing objects: 26% (843/3239) [Kremote: Compressing objects: 27% (875/3239) [Kremote: Compressing objects: 28% (907/3239) [Kremote: Compressing objects: 29% (940/3239) [Kremote: Compressing objects: 30% (972/3239) [Kremote: Compressing objects: 31% (1005/3239) [Kremote: Compressing objects: 32% (1037/3239) [Kremote: Compressing objects: 33% (1069/3239) [Kremote: Compressing objects: 34% (1102/3239) [Kremote: Compressing objects: 35% (1134/3239) [Kremote: Compressing objects: 36% (1167/3239) [Kremote: Compressing objects: 37% (1199/3239) [Kremote: Compressing objects: 38% (1231/3239) [Kremote: Compressing objects: 39% (1264/3239) [Kremote: Compressing objects: 40% (1296/3239) [Kremote: Compressing objects: 41% (1328/3239) [Kremote: Compressing objects: 42% (1361/3239) [Kremote: Compressing objects: 43% (1393/3239) [Kremote: Compressing objects: 44% (1426/3239) [Kremote: Compressing objects: 45% (1458/3239) [Kremote: Compressing objects: 46% (1490/3239) [Kremote: Compressing objects: 47% (1523/3239) [Kremote: Compressing objects: 48% (1555/3239) [Kremote: Compressing objects: 49% (1588/3239) [Kremote: Compressing objects: 50% (1620/3239) [Kremote: Compressing objects: 51% (1652/3239) [Kremote: Compressing objects: 52% (1685/3239) [Kremote: Compressing objects: 53% (1717/3239) [Kremote: Compressing objects: 54% (1750/3239) [Kremote: Compressing objects: 55% (1782/3239) [Kremote: Compressing objects: 56% (1814/3239) [Kremote: Compressing objects: 57% (1847/3239) [Kremote: Compressing objects: 58% (1879/3239) [Kremote: Compressing objects: 59% (1912/3239) [Kremote: Compressing objects: 60% (1944/3239) [Kremote: Compressing objects: 61% (1976/3239) [Kremote: Compressing objects: 62% (2009/3239) [Kremote: Compressing objects: 63% (2041/3239) [Kremote: Compressing objects: 64% (2073/3239) [Kremote: Compressing objects: 65% (2106/3239) [Kremote: Compressing objects: 66% (2138/3239) [Kremote: Compressing objects: 67% (2171/3239) [Kremote: Compressing objects: 68% (2203/3239) [Kremote: Compressing objects: 69% (2235/3239) [Kremote: Compressing objects: 70% (2268/3239) [Kremote: Compressing objects: 71% (2300/3239) [Kremote: Compressing objects: 72% (2333/3239) [Kremote: Compressing objects: 73% (2365/3239) [Kremote: Compressing objects: 74% (2397/3239) [Kremote: Compressing objects: 75% (2430/3239) [Kremote: Compressing objects: 76% (2462/3239) [Kremote: Compressing objects: 77% (2495/3239) [Kremote: Compressing objects: 78% (2527/3239) [Kremote: Compressing objects: 79% (2559/3239) [Kremote: Compressing objects: 80% (2592/3239) [Kremote: Compressing objects: 81% (2624/3239) [Kremote: Compressing objects: 82% (2656/3239) [Kremote: Compressing objects: 83% (2689/3239) [Kremote: Compressing objects: 84% (2721/3239) [Kremote: Compressing objects: 85% (2754/3239) [Kremote: Compressing objects: 86% (2786/3239) [Kremote: Compressing objects: 87% (2818/3239) [Kremote: Compressing objects: 88% (2851/3239) [Kremote: Compressing objects: 89% (2883/3239) [Kremote: Compressing objects: 90% (2916/3239) [Kremote: Compressing objects: 91% (2948/3239) [Kremote: Compressing objects: 92% (2980/3239) [Kremote: Compressing objects: 93% (3013/3239) [Kremote: Compressing objects: 94% (3045/3239) [Kremote: Compressing objects: 95% (3078/3239) [Kremote: Compressing objects: 96% (3110/3239) [Kremote: Compressing objects: 97% (3142/3239) [Kremote: Compressing objects: 98% (3175/3239) [Kremote: Compressing objects: 99% (3207/3239) [Kremote: Compressing objects: 100% (3239/3239) [Kremote: Compressing objects: 100% (3239/3239), done.[K
-Receiving objects: 0% (1/11443) Receiving objects: 1% (115/11443) Receiving objects: 2% (229/11443) Receiving objects: 3% (344/11443) Receiving objects: 4% (458/11443) Receiving objects: 5% (573/11443) Receiving objects: 6% (687/11443) Receiving objects: 7% (802/11443) Receiving objects: 8% (916/11443) Receiving objects: 9% (1030/11443), 188.00 KiB | 355 KiB/s Receiving objects: 10% (1145/11443), 188.00 KiB | 355 KiB/s Receiving objects: 11% (1259/11443), 188.00 KiB | 355 KiB/s Receiving objects: 12% (1374/11443), 188.00 KiB | 355 KiB/s Receiving objects: 13% (1488/11443), 188.00 KiB | 355 KiB/s Receiving objects: 14% (1603/11443), 188.00 KiB | 355 KiB/s Receiving objects: 15% (1717/11443), 188.00 KiB | 355 KiB/s Receiving objects: 16% (1831/11443), 188.00 KiB | 355 KiB/s Receiving objects: 17% (1946/11443), 188.00 KiB | 355 KiB/s Receiving objects: 18% (2060/11443), 188.00 KiB | 355 KiB/s Receiving objects: 19% (2175/11443), 188.00 KiB | 355 KiB/s Receiving objects: 20% (2289/11443), 188.00 KiB | 355 KiB/s Receiving objects: 21% (2404/11443), 188.00 KiB | 355 KiB/s Receiving objects: 22% (2518/11443), 188.00 KiB | 355 KiB/s Receiving objects: 23% (2632/11443), 188.00 KiB | 355 KiB/s Receiving objects: 24% (2747/11443), 188.00 KiB | 355 KiB/s Receiving objects: 25% (2861/11443), 188.00 KiB | 355 KiB/s Receiving objects: 26% (2976/11443), 188.00 KiB | 355 KiB/s Receiving objects: 27% (3090/11443), 188.00 KiB | 355 KiB/s Receiving objects: 28% (3205/11443), 188.00 KiB | 355 KiB/s Receiving objects: 29% (3319/11443), 188.00 KiB | 355 KiB/s Receiving objects: 30% (3433/11443), 188.00 KiB | 355 KiB/s Receiving objects: 31% (3548/11443), 188.00 KiB | 355 KiB/s Receiving objects: 32% (3662/11443), 188.00 KiB | 355 KiB/s Receiving objects: 33% (3777/11443), 188.00 KiB | 355 KiB/s Receiving objects: 34% (3891/11443), 188.00 KiB | 355 KiB/s Receiving objects: 35% (4006/11443), 188.00 KiB | 355 KiB/s Receiving objects: 36% (4120/11443), 188.00 KiB | 355 KiB/s Receiving objects: 37% (4234/11443), 188.00 KiB | 355 KiB/s Receiving objects: 38% (4349/11443), 188.00 KiB | 355 KiB/s Receiving objects: 39% (4463/11443), 188.00 KiB | 355 KiB/s Receiving objects: 40% (4578/11443), 188.00 KiB | 355 KiB/s Receiving objects: 41% (4692/11443), 188.00 KiB | 355 KiB/s Receiving objects: 42% (4807/11443), 188.00 KiB | 355 KiB/s Receiving objects: 43% (4921/11443), 188.00 KiB | 355 KiB/s Receiving objects: 44% (5035/11443), 188.00 KiB | 355 KiB/s Receiving objects: 45% (5150/11443), 188.00 KiB | 355 KiB/s Receiving objects: 46% (5264/11443), 188.00 KiB | 355 KiB/s Receiving objects: 47% (5379/11443), 188.00 KiB | 355 KiB/s Receiving objects: 48% (5493/11443), 188.00 KiB | 355 KiB/s Receiving objects: 49% (5608/11443), 188.00 KiB | 355 KiB/s Receiving objects: 50% (5722/11443), 188.00 KiB | 355 KiB/s Receiving objects: 51% (5836/11443), 188.00 KiB | 355 KiB/s Receiving objects: 52% (5951/11443), 188.00 KiB | 355 KiB/s Receiving objects: 53% (6065/11443), 188.00 KiB | 355 KiB/s Receiving objects: 54% (6180/11443), 188.00 KiB | 355 KiB/s Receiving objects: 55% (6294/11443), 188.00 KiB | 355 KiB/s Receiving objects: 56% (6409/11443), 188.00 KiB | 355 KiB/s Receiving objects: 57% (6523/11443), 188.00 KiB | 355 KiB/s Receiving objects: 58% (6637/11443), 188.00 KiB | 355 KiB/s Receiving objects: 59% (6752/11443), 188.00 KiB | 355 KiB/s Receiving objects: 60% (6866/11443), 188.00 KiB | 355 KiB/s Receiving objects: 61% (6981/11443), 188.00 KiB | 355 KiB/s Receiving objects: 62% (7095/11443), 188.00 KiB | 355 KiB/s Receiving objects: 63% (7210/11443), 188.00 KiB | 355 KiB/s Receiving objects: 64% (7324/11443), 188.00 KiB | 355 KiB/s Receiving objects: 65% (7438/11443), 188.00 KiB | 355 KiB/s Receiving objects: 66% (7553/11443), 188.00 KiB | 355 KiB/s Receiving objects: 67% (7667/11443), 188.00 KiB | 355 KiB/s Receiving objects: 68% (7782/11443), 188.00 KiB | 355 KiB/s Receiving objects: 69% (7896/11443), 188.00 KiB | 355 KiB/s Receiving objects: 70% (8011/11443), 188.00 KiB | 355 KiB/s Receiving objects: 71% (8125/11443), 188.00 KiB | 355 KiB/s Receiving objects: 72% (8239/11443), 188.00 KiB | 355 KiB/s Receiving objects: 73% (8354/11443), 188.00 KiB | 355 KiB/s Receiving objects: 74% (8468/11443), 188.00 KiB | 355 KiB/s Receiving objects: 75% (8583/11443), 188.00 KiB | 355 KiB/s Receiving objects: 76% (8697/11443), 188.00 KiB | 355 KiB/s Receiving objects: 77% (8812/11443), 188.00 KiB | 355 KiB/s Receiving objects: 78% (8926/11443), 188.00 KiB | 355 KiB/s Receiving objects: 79% (9040/11443), 188.00 KiB | 355 KiB/s Receiving objects: 80% (9155/11443), 188.00 KiB | 355 KiB/s Receiving objects: 81% (9269/11443), 188.00 KiB | 355 KiB/s Receiving objects: 82% (9384/11443), 188.00 KiB | 355 KiB/s Receiving objects: 83% (9498/11443), 188.00 KiB | 355 KiB/s Receiving objects: 84% (9613/11443), 188.00 KiB | 355 KiB/s Receiving objects: 84% (9650/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 85% (9727/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 86% (9841/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 87% (9956/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 88% (10070/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 89% (10185/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 90% (10299/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 91% (10414/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 92% (10528/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 93% (10642/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 94% (10757/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 95% (10871/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 96% (10986/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 97% (11100/11443), 1.17 MiB | 1.15 MiB/s Receiving objects: 98% (11215/11443), 1.17 MiB | 1.15 MiB/s remote: Total 11443 (delta 7753), reused 11317 (delta 7638)[K
-Receiving objects: 99% (11329/11443), 2.85 MiB | 1.87 MiB/s Receiving objects: 100% (11443/11443), 2.85 MiB | 1.87 MiB/s Receiving objects: 100% (11443/11443), 3.61 MiB | 1.87 MiB/s, done.
-Resolving deltas: 0% (0/7753) Resolving deltas: 1% (152/7753) Resolving deltas: 3% (283/7753) Resolving deltas: 4% (333/7753) Resolving deltas: 5% (391/7753) Resolving deltas: 6% (466/7753) Resolving deltas: 7% (550/7753) Resolving deltas: 8% (644/7753) Resolving deltas: 9% (703/7753) Resolving deltas: 10% (780/7753) Resolving deltas: 11% (859/7753) Resolving deltas: 12% (945/7753) Resolving deltas: 13% (1015/7753) Resolving deltas: 14% (1149/7753) Resolving deltas: 15% (1175/7753) Resolving deltas: 16% (1265/7753) Resolving deltas: 17% (1323/7753) Resolving deltas: 18% (1401/7753) Resolving deltas: 21% (1673/7753) Resolving deltas: 22% (1718/7753) Resolving deltas: 23% (1815/7753) Resolving deltas: 24% (1862/7753) Resolving deltas: 25% (1951/7753) Resolving deltas: 26% (2028/7753) Resolving deltas: 27% (2121/7753) Resolving deltas: 28% (2171/7753) Resolving deltas: 29% (2282/7753) Resolving deltas: 30% (2326/7753) Resolving deltas: 35% (2719/7753) Resolving deltas: 36% (2850/7753) Resolving deltas: 37% (2934/7753) Resolving deltas: 38% (3001/7753) Resolving deltas: 39% (3042/7753) Resolving deltas: 41% (3231/7753) Resolving deltas: 42% (3257/7753) Resolving deltas: 43% (3352/7753) Resolving deltas: 44% (3421/7753) Resolving deltas: 45% (3491/7753) Resolving deltas: 47% (3655/7753) Resolving deltas: 48% (3744/7753) Resolving deltas: 49% (3814/7753) Resolving deltas: 50% (3886/7753) Resolving deltas: 52% (4046/7753) Resolving deltas: 53% (4132/7753) Resolving deltas: 54% (4206/7753) Resolving deltas: 55% (4271/7753) Resolving deltas: 56% (4358/7753) Resolving deltas: 57% (4425/7753) Resolving deltas: 58% (4507/7753) Resolving deltas: 59% (4575/7753) Resolving deltas: 60% (4687/7753) Resolving deltas: 61% (4779/7753) Resolving deltas: 62% (4808/7753) Resolving deltas: 63% (4887/7753) Resolving deltas: 64% (4973/7753) Resolving deltas: 65% (5054/7753) Resolving deltas: 66% (5117/7753) Resolving deltas: 67% (5202/7753) Resolving deltas: 68% (5274/7753) Resolving deltas: 69% (5354/7753) Resolving deltas: 70% (5450/7753) Resolving deltas: 71% (5508/7753) Resolving deltas: 72% (5596/7753) Resolving deltas: 73% (5679/7753) Resolving deltas: 74% (5751/7753) Resolving deltas: 75% (5822/7753) Resolving deltas: 76% (5894/7753) Resolving deltas: 77% (5971/7753) Resolving deltas: 78% (6055/7753) Resolving deltas: 79% (6147/7753) Resolving deltas: 80% (6239/7753) Resolving deltas: 81% (6289/7753) Resolving deltas: 82% (6359/7753) Resolving deltas: 83% (6438/7753) Resolving deltas: 84% (6529/7753) Resolving deltas: 85% (6611/7753) Resolving deltas: 86% (6688/7753) Resolving deltas: 87% (6748/7753) Resolving deltas: 88% (6825/7753) Resolving deltas: 89% (6909/7753) Resolving deltas: 90% (6979/7753) Resolving deltas: 91% (7070/7753) Resolving deltas: 92% (7143/7753) Resolving deltas: 93% (7213/7753) Resolving deltas: 94% (7292/7753) Resolving deltas: 95% (7366/7753) Resolving deltas: 96% (7456/7753) Resolving deltas: 97% (7523/7753) Resolving deltas: 98% (7611/7753) Resolving deltas: 99% (7676/7753) Resolving deltas: 100% (7753/7753) Resolving deltas: 100% (7753/7753), done.
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activeresource (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.3.0)
-Installing bcrypt-ruby (3.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing nokogiri (1.5.5) with native extensions
-Installing ffi (1.0.11) with native extensions
-Installing childprocess (0.3.3)
-Installing libwebsocket (0.1.4)
-Installing rubyzip (0.9.9)
-Installing selenium-webdriver (2.24.0)
-Installing xpath (0.1.4)
-Installing capybara (1.1.2)
-Installing chunky_png (1.2.5)
-Installing coffee-script-source (1.3.3)
-Installing execjs (1.3.0)
-Installing coffee-script (2.2.0)
-Installing fssm (0.2.9)
-Installing sass (3.1.20)
-Installing compass (0.12.2)
-Installing crack (0.3.1)
-Installing daemons (1.1.8)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing orm_adapter (0.0.7)
-Installing rack-ssl (1.3.2)
-Installing json (1.6.7) with native extensions
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing warden (1.1.1)
-Installing devise (2.0.4)
-Installing diff-lcs (1.1.3)
-Installing eventmachine (0.12.10) with native extensions
-Installing factory_girl (2.4.2)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing forgery (0.5.0)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashie (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing http_accept_language (1.0.2)
-Installing httpauth (0.1)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing kgio (2.7.4) with native extensions
-Installing lograge (0.0.4)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing oauth2 (0.6.1)
-Installing omniauth (1.1.0)
-Installing omniauth-oauth2 (1.0.2)
-Installing omniauth-github (1.0.1)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Using rack-contrib (1.1.0) from git://github.com/rack/rack-contrib (at master)
-Using bundler (1.2.0.rc)
-Installing rails (3.2.6)
-Installing raindrops (0.10.0) with native extensions
-Using rake-pipeline (0.6.0) from https://github.com/livingsocial/rake-pipeline.git (at master)
-Using rake-pipeline-web-filters (0.6.0) from https://github.com/wycats/rake-pipeline-web-filters.git (at master)
-Installing redis (3.0.1)
-Installing refraction (0.2.0)
-Installing rollout (1.1.0)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing rspec-rails (2.10.1)
-Installing simple_states (0.1.1)
-Installing thin (1.3.1) with native extensions
-Using travis-assets (0.0.1) from https://github.com/travis-ci/travis-assets (at master)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing unicorn (4.1.1) with native extensions
-Installing unobtrusive_flash (0.0.2)
-Installing yard (0.8.2.1)
-Installing versionist (0.2.3)
-Installing webmock (1.7.10)
-Installing yajl-ruby (1.1.0) with native extensions
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m$ cp config/database.example.yml config/database.yml
-$ RAILS_ENV=test bundle exec rake test:ci --trace
-** Invoke test:ci (first_time)
-** Invoke ci_env (first_time)
-** Execute ci_env
-** Invoke db:drop (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:drop
-** Invoke db:create (first_time)
-** Invoke db:load_config
-** Execute db:create
-** Invoke db:test:load (first_time)
-** Invoke db:test:purge (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:test:purge
-** Execute db:test:load
-** Invoke db:test:load_schema (first_time)
-** Invoke db:test:purge
-** Execute db:test:load_schema
-** Invoke db:schema:load (first_time)
-** Invoke environment
-** Execute db:schema:load
-** Invoke spec (first_time)
-** Invoke db:test:prepare (first_time)
-** Invoke db:abort_if_pending_migrations (first_time)
-** Invoke environment
-** Execute db:abort_if_pending_migrations
-** Execute db:test:prepare
-** Invoke db:test:load
-** Execute spec
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/controllers/v1/service_hooks_controller_spec.rb ./spec/controllers/v1/builds_controller_spec.rb ./spec/controllers/v1/repositories_controller_spec.rb ./spec/controllers/v1/jobs_controller_spec.rb ./spec/controllers/v1/workers_controller_spec.rb ./spec/controllers/v1/branches_controller_spec.rb ./spec/controllers/v2/service_hooks_controller_spec.rb ./spec/controllers/application_controller_spec.rb ./spec/controllers/profiles_controller_spec.rb ./spec/client/service_hooks_spec.rb ./spec/client/events/job_queue_spec.rb ./spec/client/events/build_spec.rb ./spec/helpers/application_helper_spec.rb ./spec/requests/shortener_controller_spec.rb ./spec/views/repository_cctray_xml_output_spec.rb ./spec/routing/v2_spec.rb ./spec/routing/v1_spec.rb ./spec/integration/jsonp_api_spec.rb ./spec/integration/consuming_messages_spec.rb ./spec/integration/build_process_spec.rb ./spec/integration/routes_redirection_spec.rb ./spec/lib/statistics_spec.rb
-Run options:
- include {:focused=>true}
- exclude {:js=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-V1::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
- subscribes to a service hook
-[32m creates a repository if it does not exist[0m
-[32m updates an existing repository if it exists[0m
- unsubscribes from the service hook
-[32m updates an existing repository[0m
-
-V1::BuildsController
- GET :index
-[32m returns a list of builds in json[0m
- GET :show
- when called using /builds/:id
-[32m returns build details in json[0m
- when called in a nested repositories call eg. /svenfuchs/i18n/builds/:id
-[32m returns build details in json[0m
-[32m returns 404 with wrong repository id[0m
-
-V1::RepositoriesController
- GET :index returns a list of repositories
- in json
-[32m ordered by last build started date[0m
-[32m filtered by owner name[0m
- GET :show, format json
-[32m returns info about repository in json format[0m
-[32m returns not found for an unknown repository[0m
- with parameter rvm:1.8.7
-[32m returns last build result passing[0m
- with parameter rvm:1.9.2
-[32m return last build result failing[0m
- with parameters rvm:1.8.7 and gemfile:test/Gemfile.rails-2.3.x
-[32m return last build result passing[0m
- with parameters rvm:1.9.2 and gemfile:test/Gemfile.rails-3.0.x
-[32m return last build result failing[0m
- with parameters rvm:1.8.7, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result passing[0m
- with parameters rvm:1.9.2, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result failing[0m
- with parameters rvm:perl
-[32m return last build result for the parent build[0m
- GET :show, format xml (schema: not specified)
-[32m return info about repository in xml format[0m
- GET :show, format xml (schema: cctray)
-[32m returns info about repository in CCTray (CruiseControl) XML format[0m
- GET :show, format xml (schema: unknown)
-[32m does not attempt to render unsupported XML schemas[0m
- GET :show, format png
- without a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "stable" when there is a running build but the previous one has passed[0m
- with a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "passing" when there is a running build but the previous one has passed[0m
-
-V1::JobsController
- GET :index
-[32m index lists all jobs on the queue[0m
- GET :show
-[32m in json[0m
-
-V1::WorkersController
-[32m index lists all workers[0m
-
-V1::BranchesController
- GET :index
-[32m returns a list of builds in json[0m
-
-V2::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
-[32m subscribes to a service hook if active => true was given[0m
-[32m unsubscribes from the service hook if active => false was given[0m
-
-HomeController
- i18n locale
-[32m the default locale is en[0m
- set_locale
-[32m prefers hl query parameter over anything else[0m
-[32m prefers the session[:locale] if there is no hl parameter[0m
-[32m prefers current_user.locale if session[:locale] is empty and there is no hl query paramter[0m
-[32m prefers the http_accept_language if session[locale] is empty, there is no hl query parameter and no current_user.local[0m
-[32m uses the default locale when nothing is specified[0m
-
-ProfilesController
- GET :show
-[32m renders the profile html page[0m
- POST :update
-[32m updates the locale for the user profile[0m
- POST :sync
- given the current user is not being synced
-[32m schedules a sync job[0m
-[32m sets the current user to being synced[0m
- given the current user is being synced
-[32m does not schedule a sync job[0m
-[32m does not set the current user to being synced[0m
-
-ApplicationHelper
- active_page?
-[32m #active_page? returns true when the given route matches the current page[0m
-[32m #active_page? returns false when the given route does not matche the current page[0m
- localization links
- switch_locale_link
-[32m should add in the language option to the current path[0m
- gravatar
-[32m #gravatar returns an IMG tag for a given user[0m
-[32m #gravatar with a given :size returns an IMG tag with the given :size[0m
-
-ShortenerController
- GET /
-[32m should redirect to travis-ci.org[0m
- GET /:id
-[32m should redirect to the found url[0m
-[32m should raise a 404 if the url could not be found[0m
-
-repositories/show/cctray.xml.builder
-[32m renders the basic details of a repository[0m
-[32m renders the correct result for a repository with no running build[0m
-[32m renders the last build time in the correct format[0m
-[32m renders the correct activity result for a repository with a running build[0m
-[32m renders the correct activity result for a repository with no builds[0m
-[32m renders the correct build result for a repository whose last build failed[0m
-[32m renders the correct build result for a repository whose last build passed[0m
-[32m renders the correct build result for a repository whose last build has an unknown result[0m
-
-v2
- GET to repositories.json?version=2
-[32m routes to V2::RepositoriesController#index[0m
- GET to repositories/1.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
- GET to builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to builds/1.json?version=2
-[32m routes to V2::BuildsController#show[0m
- GET to branches.json?version=2
-[32m routes to V2::BranchesController#index[0m
- GET to jobs.json?version=2
-[32m routes to V2::JobsController#index[0m
- GET to jobs/1.json?version=2
-[32m routes to V2::JobsController#show[0m
- GET to artifacts/1.json?version=2
-[32m routes to V2::ArtifactsController#index[0m
- GET to workers.json?version=2
-[32m routes to V2::WorkersController#index[0m
- GET to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#index[0m
- PUT to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#update[0m
- GET to :owner_name/:name.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml?version=2
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json?version=2
-[32m routes to V2::BuildsController#show[0m
-
-v1
- GET to repositories.json
-[32m routes to V1::RepositoriesController#index[0m
- GET to repositories/1.json
-[32m routes to V1::RepositoriesController#show[0m
- GET to builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to builds/1.json
-[32m routes to V1::BuildsController#show[0m
- GET to branches.json
-[32m routes to V1::BranchesController#index[0m
- GET to jobs.json
-[32m routes to V1::JobsController#index[0m
- GET to jobs/1.json
-[32m routes to V1::JobsController#show[0m
- GET to workers.json
-[32m routes to V1::WorkersController#index[0m
- GET to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#index[0m
- PUT to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#update[0m
- GET to :owner_name/:name.json
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json
-[32m routes to V1::BuildsController#show[0m
-
-JSONP API
- callback parameter passed
-[32m returns text/javascript content type[0m
-[32m returns response in jsonp format[0m
- no callback parameter passed
-[32m returns application/json content type[0m
-[32m returns response in json format[0m
- callback parameter is not valid
-[32m uses valid path[0m
-[32m returns bad request body[0m
-[32m returns 400 status code[0m
-
-routes redirection
-[32m should redirect to the default locale when redirecting[0m
-[32m the user is redirected to the hash bang version of the user route[0m
-[32m the user is redirected to the hash bang version of the repository route[0m
-[32m the user is redirected to the hash bang version of the repository builds route[0m
-[32m the user is redirected to the hash bang version of the repository build route[0m
-
-Statistics
- when listing daily test counts
-[32m should return the jobs per day[0m
- when listing total repositories
-[32m should return the number per day[0m
-[32m should include the total growth[0m
-
-Finished in 33.31 seconds
-[32m127 examples, 0 failures[0m
-** Execute test:ci
-
-Done. Build script exited with: 0
-', 1903421, 'Artifact::Log', '2012-07-19 11:35:44.220000', '2012-07-19 11:35:44.693000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1570677, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-ci.git travis-ci/travis-ci
-$ cd travis-ci/travis-ci
-$ git checkout -qf 4b634853419d97f694fb7c2ad0a5fb8ead232417
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-ci/Gemfile
-$ gem install bundler --pre
-Fetching: bundler-1.2.0.rc.gemFetching: bundler-1.2.0.rc.gem ( 7%)Fetching: bundler-1.2.0.rc.gem ( 8%)Fetching: bundler-1.2.0.rc.gem ( 10%)Fetching: bundler-1.2.0.rc.gem ( 11%)Fetching: bundler-1.2.0.rc.gem ( 17%)Fetching: bundler-1.2.0.rc.gem ( 20%)Fetching: bundler-1.2.0.rc.gem ( 23%)Fetching: bundler-1.2.0.rc.gem ( 25%)Fetching: bundler-1.2.0.rc.gem ( 32%)Fetching: bundler-1.2.0.rc.gem ( 34%)Fetching: bundler-1.2.0.rc.gem ( 35%)Fetching: bundler-1.2.0.rc.gem ( 37%)Fetching: bundler-1.2.0.rc.gem ( 39%)Fetching: bundler-1.2.0.rc.gem ( 43%)Fetching: bundler-1.2.0.rc.gem ( 44%)Fetching: bundler-1.2.0.rc.gem ( 50%)Fetching: bundler-1.2.0.rc.gem ( 55%)Fetching: bundler-1.2.0.rc.gem ( 59%)Fetching: bundler-1.2.0.rc.gem ( 61%)Fetching: bundler-1.2.0.rc.gem ( 64%)Fetching: bundler-1.2.0.rc.gem ( 67%)Fetching: bundler-1.2.0.rc.gem ( 69%)Fetching: bundler-1.2.0.rc.gem ( 70%)Fetching: bundler-1.2.0.rc.gem ( 74%)Fetching: bundler-1.2.0.rc.gem ( 76%)Fetching: bundler-1.2.0.rc.gem ( 79%)Fetching: bundler-1.2.0.rc.gem ( 82%)Fetching: bundler-1.2.0.rc.gem ( 83%)Fetching: bundler-1.2.0.rc.gem ( 84%)Fetching: bundler-1.2.0.rc.gem ( 87%)Fetching: bundler-1.2.0.rc.gem ( 92%)Fetching: bundler-1.2.0.rc.gem ( 94%)Fetching: bundler-1.2.0.rc.gem ( 96%)Fetching: bundler-1.2.0.rc.gem ( 99%)Fetching: bundler-1.2.0.rc.gem (100%)Fetching: bundler-1.2.0.rc.gem (100%)
-Successfully installed bundler-1.2.0.rc
-1 gem installed
-$ bundle install --without development
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://github.com/rack/rack-contrib
-remote: Counting objects: 1054, done.[K
-remote: Compressing objects: 0% (1/443) [Kremote: Compressing objects: 1% (5/443) [Kremote: Compressing objects: 2% (9/443) [Kremote: Compressing objects: 3% (14/443) [Kremote: Compressing objects: 4% (18/443) [Kremote: Compressing objects: 5% (23/443) [Kremote: Compressing objects: 6% (27/443) [Kremote: Compressing objects: 7% (32/443) [Kremote: Compressing objects: 8% (36/443) [Kremote: Compressing objects: 9% (40/443) [Kremote: Compressing objects: 10% (45/443) [Kremote: Compressing objects: 11% (49/443) [Kremote: Compressing objects: 12% (54/443) [Kremote: Compressing objects: 13% (58/443) [Kremote: Compressing objects: 14% (63/443) [Kremote: Compressing objects: 15% (67/443) [Kremote: Compressing objects: 16% (71/443) [Kremote: Compressing objects: 17% (76/443) [Kremote: Compressing objects: 18% (80/443) [Kremote: Compressing objects: 19% (85/443) [Kremote: Compressing objects: 20% (89/443) [Kremote: Compressing objects: 21% (94/443) [Kremote: Compressing objects: 22% (98/443) [Kremote: Compressing objects: 23% (102/443) [Kremote: Compressing objects: 24% (107/443) [Kremote: Compressing objects: 25% (111/443) [Kremote: Compressing objects: 26% (116/443) [Kremote: Compressing objects: 27% (120/443) [Kremote: Compressing objects: 28% (125/443) [Kremote: Compressing objects: 29% (129/443) [Kremote: Compressing objects: 30% (133/443) [Kremote: Compressing objects: 31% (138/443) [Kremote: Compressing objects: 32% (142/443) [Kremote: Compressing objects: 33% (147/443) [Kremote: Compressing objects: 34% (151/443) [Kremote: Compressing objects: 35% (156/443) [Kremote: Compressing objects: 36% (160/443) [Kremote: Compressing objects: 37% (164/443) [Kremote: Compressing objects: 38% (169/443) [Kremote: Compressing objects: 39% (173/443) [Kremote: Compressing objects: 40% (178/443) [Kremote: Compressing objects: 41% (182/443) [Kremote: Compressing objects: 42% (187/443) [Kremote: Compressing objects: 43% (191/443) [Kremote: Compressing objects: 44% (195/443) [Kremote: Compressing objects: 45% (200/443) [Kremote: Compressing objects: 46% (204/443) [Kremote: Compressing objects: 47% (209/443) [Kremote: Compressing objects: 48% (213/443) [Kremote: Compressing objects: 49% (218/443) [Kremote: Compressing objects: 50% (222/443) [Kremote: Compressing objects: 51% (226/443) [Kremote: Compressing objects: 52% (231/443) [Kremote: Compressing objects: 53% (235/443) [Kremote: Compressing objects: 54% (240/443) [Kremote: Compressing objects: 55% (244/443) [Kremote: Compressing objects: 56% (249/443) [Kremote: Compressing objects: 57% (253/443) [Kremote: Compressing objects: 58% (257/443) [Kremote: Compressing objects: 59% (262/443) [Kremote: Compressing objects: 60% (266/443) [Kremote: Compressing objects: 61% (271/443) [Kremote: Compressing objects: 62% (275/443) [Kremote: Compressing objects: 63% (280/443) [Kremote: Compressing objects: 64% (284/443) [Kremote: Compressing objects: 65% (288/443) [Kremote: Compressing objects: 66% (293/443) [Kremote: Compressing objects: 67% (297/443) [Kremote: Compressing objects: 68% (302/443) [Kremote: Compressing objects: 69% (306/443) [Kremote: Compressing objects: 70% (311/443) [Kremote: Compressing objects: 71% (315/443) [Kremote: Compressing objects: 72% (319/443) [Kremote: Compressing objects: 73% (324/443) [Kremote: Compressing objects: 74% (328/443) [Kremote: Compressing objects: 75% (333/443) [Kremote: Compressing objects: 76% (337/443) [Kremote: Compressing objects: 77% (342/443) [Kremote: Compressing objects: 78% (346/443) [Kremote: Compressing objects: 79% (350/443) [Kremote: Compressing objects: 80% (355/443) [Kremote: Compressing objects: 81% (359/443) [Kremote: Compressing objects: 82% (364/443) [Kremote: Compressing objects: 83% (368/443) [Kremote: Compressing objects: 84% (373/443) [Kremote: Compressing objects: 85% (377/443) [Kremote: Compressing objects: 86% (381/443) [Kremote: Compressing objects: 87% (386/443) [Kremote: Compressing objects: 88% (390/443) [Kremote: Compressing objects: 89% (395/443) [Kremote: Compressing objects: 90% (399/443) [Kremote: Compressing objects: 91% (404/443) [Kremote: Compressing objects: 92% (408/443) [Kremote: Compressing objects: 93% (412/443) [Kremote: Compressing objects: 94% (417/443) [Kremote: Compressing objects: 95% (421/443) [Kremote: Compressing objects: 96% (426/443) [Kremote: Compressing objects: 97% (430/443) [Kremote: Compressing objects: 98% (435/443) [Kremote: Compressing objects: 99% (439/443) [Kremote: Compressing objects: 100% (443/443) [Kremote: Compressing objects: 100% (443/443), done.[K
-Receiving objects: 0% (1/1054) Receiving objects: 1% (11/1054) Receiving objects: 2% (22/1054) Receiving objects: 3% (32/1054) Receiving objects: 4% (43/1054) Receiving objects: 5% (53/1054) Receiving objects: 6% (64/1054) Receiving objects: 7% (74/1054) Receiving objects: 8% (85/1054) Receiving objects: 9% (95/1054) Receiving objects: 10% (106/1054) Receiving objects: 11% (116/1054) Receiving objects: 12% (127/1054) Receiving objects: 13% (138/1054) Receiving objects: 14% (148/1054) Receiving objects: 15% (159/1054) Receiving objects: 16% (169/1054) Receiving objects: 17% (180/1054) Receiving objects: 18% (190/1054) Receiving objects: 19% (201/1054) Receiving objects: 20% (211/1054) Receiving objects: 21% (222/1054) Receiving objects: 22% (232/1054) Receiving objects: 23% (243/1054) Receiving objects: 24% (253/1054) Receiving objects: 25% (264/1054) Receiving objects: 26% (275/1054) Receiving objects: 27% (285/1054) Receiving objects: 28% (296/1054) Receiving objects: 29% (306/1054) Receiving objects: 30% (317/1054) Receiving objects: 31% (327/1054) Receiving objects: 32% (338/1054) Receiving objects: 33% (348/1054) Receiving objects: 34% (359/1054) Receiving objects: 35% (369/1054) Receiving objects: 36% (380/1054) Receiving objects: 37% (390/1054) Receiving objects: 38% (401/1054) Receiving objects: 39% (412/1054) Receiving objects: 40% (422/1054) Receiving objects: 41% (433/1054) Receiving objects: 42% (443/1054) Receiving objects: 43% (454/1054) Receiving objects: 44% (464/1054) Receiving objects: 45% (475/1054) Receiving objects: 46% (485/1054) Receiving objects: 47% (496/1054) Receiving objects: 48% (506/1054) Receiving objects: 49% (517/1054) Receiving objects: 50% (527/1054) Receiving objects: 51% (538/1054) Receiving objects: 52% (549/1054) Receiving objects: 53% (559/1054) Receiving objects: 54% (570/1054) Receiving objects: 55% (580/1054) Receiving objects: 56% (591/1054) Receiving objects: 57% (601/1054) Receiving objects: 58% (612/1054) Receiving objects: 59% (622/1054) Receiving objects: 60% (633/1054) Receiving objects: 61% (643/1054) Receiving objects: 62% (654/1054) Receiving objects: 63% (665/1054) Receiving objects: 64% (675/1054) Receiving objects: 65% (686/1054) Receiving objects: 66% (696/1054) Receiving objects: 67% (707/1054) Receiving objects: 68% (717/1054) Receiving objects: 69% (728/1054) Receiving objects: 70% (738/1054) Receiving objects: 71% (749/1054) Receiving objects: 72% (759/1054) Receiving objects: 73% (770/1054) Receiving objects: 74% (780/1054) Receiving objects: 75% (791/1054) Receiving objects: 76% (802/1054) Receiving objects: 77% (812/1054) Receiving objects: 78% (823/1054) Receiving objects: 79% (833/1054) Receiving objects: 80% (844/1054) Receiving objects: 81% (854/1054) Receiving objects: 82% (865/1054) Receiving objects: 83% (875/1054) Receiving objects: 84% (886/1054) Receiving objects: 85% (896/1054) Receiving objects: 86% (907/1054) Receiving objects: 87% (917/1054) remote: Total 1054 (delta 573), reused 925 (delta 478)[K
-Receiving objects: 88% (928/1054) Receiving objects: 89% (939/1054) Receiving objects: 90% (949/1054) Receiving objects: 91% (960/1054) Receiving objects: 92% (970/1054) Receiving objects: 93% (981/1054) Receiving objects: 94% (991/1054) Receiving objects: 95% (1002/1054) Receiving objects: 96% (1012/1054) Receiving objects: 97% (1023/1054) Receiving objects: 98% (1033/1054) Receiving objects: 99% (1044/1054) Receiving objects: 100% (1054/1054) Receiving objects: 100% (1054/1054), 136.74 KiB, done.
-Resolving deltas: 0% (0/573) Resolving deltas: 6% (36/573) Resolving deltas: 20% (115/573) Resolving deltas: 30% (174/573) Resolving deltas: 34% (195/573) Resolving deltas: 38% (218/573) Resolving deltas: 41% (240/573) Resolving deltas: 47% (270/573) Resolving deltas: 51% (294/573) Resolving deltas: 55% (320/573) Resolving deltas: 58% (338/573) Resolving deltas: 64% (367/573) Resolving deltas: 71% (409/573) Resolving deltas: 72% (413/573) Resolving deltas: 73% (419/573) Resolving deltas: 74% (425/573) Resolving deltas: 77% (446/573) Resolving deltas: 78% (451/573) Resolving deltas: 79% (454/573) Resolving deltas: 81% (469/573) Resolving deltas: 82% (471/573) Resolving deltas: 85% (489/573) Resolving deltas: 86% (493/573) Resolving deltas: 87% (500/573) Resolving deltas: 88% (506/573) Resolving deltas: 89% (510/573) Resolving deltas: 92% (530/573) Resolving deltas: 93% (533/573) Resolving deltas: 94% (539/573) Resolving deltas: 96% (551/573) Resolving deltas: 97% (557/573) Resolving deltas: 98% (564/573) Resolving deltas: 99% (571/573) Resolving deltas: 100% (573/573) Resolving deltas: 100% (573/573), done.
-Fetching https://github.com/livingsocial/rake-pipeline.git
-remote: Counting objects: 1409, done.[K
-remote: Compressing objects: 0% (1/520) [Kremote: Compressing objects: 1% (6/520) [Kremote: Compressing objects: 2% (11/520) [Kremote: Compressing objects: 3% (16/520) [Kremote: Compressing objects: 4% (21/520) [Kremote: Compressing objects: 5% (26/520) [Kremote: Compressing objects: 6% (32/520) [Kremote: Compressing objects: 7% (37/520) [Kremote: Compressing objects: 8% (42/520) [Kremote: Compressing objects: 9% (47/520) [Kremote: Compressing objects: 10% (52/520) [Kremote: Compressing objects: 11% (58/520) [Kremote: Compressing objects: 12% (63/520) [Kremote: Compressing objects: 13% (68/520) [Kremote: Compressing objects: 14% (73/520) [Kremote: Compressing objects: 15% (78/520) [Kremote: Compressing objects: 16% (84/520) [Kremote: Compressing objects: 17% (89/520) [Kremote: Compressing objects: 18% (94/520) [Kremote: Compressing objects: 19% (99/520) [Kremote: Compressing objects: 20% (104/520) [Kremote: Compressing objects: 21% (110/520) [Kremote: Compressing objects: 22% (115/520) [Kremote: Compressing objects: 23% (120/520) [Kremote: Compressing objects: 24% (125/520) [Kremote: Compressing objects: 25% (130/520) [Kremote: Compressing objects: 26% (136/520) [Kremote: Compressing objects: 27% (141/520) [Kremote: Compressing objects: 28% (146/520) [Kremote: Compressing objects: 29% (151/520) [Kremote: Compressing objects: 30% (156/520) [Kremote: Compressing objects: 31% (162/520) [Kremote: Compressing objects: 32% (167/520) [Kremote: Compressing objects: 33% (172/520) [Kremote: Compressing objects: 34% (177/520) [Kremote: Compressing objects: 35% (182/520) [Kremote: Compressing objects: 36% (188/520) [Kremote: Compressing objects: 37% (193/520) [Kremote: Compressing objects: 38% (198/520) [Kremote: Compressing objects: 39% (203/520) [Kremote: Compressing objects: 40% (208/520) [Kremote: Compressing objects: 41% (214/520) [Kremote: Compressing objects: 42% (219/520) [Kremote: Compressing objects: 43% (224/520) [Kremote: Compressing objects: 44% (229/520) [Kremote: Compressing objects: 45% (234/520) [Kremote: Compressing objects: 46% (240/520) [Kremote: Compressing objects: 47% (245/520) [Kremote: Compressing objects: 48% (250/520) [Kremote: Compressing objects: 49% (255/520) [Kremote: Compressing objects: 50% (260/520) [Kremote: Compressing objects: 51% (266/520) [Kremote: Compressing objects: 52% (271/520) [Kremote: Compressing objects: 53% (276/520) [Kremote: Compressing objects: 54% (281/520) [Kremote: Compressing objects: 55% (286/520) [Kremote: Compressing objects: 56% (292/520) [Kremote: Compressing objects: 57% (297/520) [Kremote: Compressing objects: 58% (302/520) [Kremote: Compressing objects: 59% (307/520) [Kremote: Compressing objects: 60% (312/520) [Kremote: Compressing objects: 61% (318/520) [Kremote: Compressing objects: 62% (323/520) [Kremote: Compressing objects: 63% (328/520) [Kremote: Compressing objects: 64% (333/520) [Kremote: Compressing objects: 65% (338/520) [Kremote: Compressing objects: 66% (344/520) [Kremote: Compressing objects: 67% (349/520) [Kremote: Compressing objects: 68% (354/520) [Kremote: Compressing objects: 69% (359/520) [Kremote: Compressing objects: 70% (364/520) [Kremote: Compressing objects: 71% (370/520) [Kremote: Compressing objects: 72% (375/520) [Kremote: Compressing objects: 73% (380/520) [Kremote: Compressing objects: 74% (385/520) [Kremote: Compressing objects: 75% (390/520) [Kremote: Compressing objects: 76% (396/520) [Kremote: Compressing objects: 77% (401/520) [Kremote: Compressing objects: 78% (406/520) [Kremote: Compressing objects: 79% (411/520) [Kremote: Compressing objects: 80% (416/520) [Kremote: Compressing objects: 81% (422/520) [Kremote: Compressing objects: 82% (427/520) [Kremote: Compressing objects: 83% (432/520) [Kremote: Compressing objects: 84% (437/520) [Kremote: Compressing objects: 85% (442/520) [Kremote: Compressing objects: 86% (448/520) [Kremote: Compressing objects: 87% (453/520) [Kremote: Compressing objects: 88% (458/520) [Kremote: Compressing objects: 89% (463/520) [Kremote: Compressing objects: 90% (468/520) [Kremote: Compressing objects: 91% (474/520) [Kremote: Compressing objects: 92% (479/520) [Kremote: Compressing objects: 93% (484/520) [Kremote: Compressing objects: 94% (489/520) [Kremote: Compressing objects: 95% (494/520) [Kremote: Compressing objects: 96% (500/520) [Kremote: Compressing objects: 97% (505/520) [Kremote: Compressing objects: 98% (510/520) [Kremote: Compressing objects: 99% (515/520) [Kremote: Compressing objects: 100% (520/520) [Kremote: Compressing objects: 100% (520/520), done.[K
-Receiving objects: 0% (1/1409) Receiving objects: 1% (15/1409) Receiving objects: 2% (29/1409) Receiving objects: 3% (43/1409) Receiving objects: 4% (57/1409) Receiving objects: 5% (71/1409) Receiving objects: 6% (85/1409) Receiving objects: 7% (99/1409) Receiving objects: 8% (113/1409) Receiving objects: 9% (127/1409) Receiving objects: 10% (141/1409) Receiving objects: 11% (155/1409) Receiving objects: 12% (170/1409) Receiving objects: 13% (184/1409) Receiving objects: 14% (198/1409) Receiving objects: 15% (212/1409) Receiving objects: 16% (226/1409) Receiving objects: 17% (240/1409) Receiving objects: 18% (254/1409) Receiving objects: 19% (268/1409) Receiving objects: 20% (282/1409) Receiving objects: 21% (296/1409) Receiving objects: 22% (310/1409) Receiving objects: 23% (325/1409) Receiving objects: 24% (339/1409) Receiving objects: 25% (353/1409) Receiving objects: 26% (367/1409) Receiving objects: 27% (381/1409) Receiving objects: 28% (395/1409) Receiving objects: 29% (409/1409) Receiving objects: 30% (423/1409) Receiving objects: 31% (437/1409) Receiving objects: 32% (451/1409) Receiving objects: 33% (465/1409) Receiving objects: 34% (480/1409) Receiving objects: 35% (494/1409) Receiving objects: 36% (508/1409) Receiving objects: 37% (522/1409) Receiving objects: 38% (536/1409) Receiving objects: 39% (550/1409) Receiving objects: 40% (564/1409) Receiving objects: 41% (578/1409) Receiving objects: 42% (592/1409) Receiving objects: 43% (606/1409) Receiving objects: 44% (620/1409) Receiving objects: 45% (635/1409) Receiving objects: 46% (649/1409) Receiving objects: 47% (663/1409) Receiving objects: 48% (677/1409) Receiving objects: 49% (691/1409) Receiving objects: 50% (705/1409) Receiving objects: 51% (719/1409) Receiving objects: 52% (733/1409) Receiving objects: 53% (747/1409) Receiving objects: 54% (761/1409) Receiving objects: 55% (775/1409) Receiving objects: 56% (790/1409) Receiving objects: 57% (804/1409) Receiving objects: 58% (818/1409) Receiving objects: 59% (832/1409) Receiving objects: 60% (846/1409) Receiving objects: 61% (860/1409) Receiving objects: 62% (874/1409) Receiving objects: 63% (888/1409) Receiving objects: 64% (902/1409) Receiving objects: 65% (916/1409) Receiving objects: 66% (930/1409) Receiving objects: 67% (945/1409) Receiving objects: 68% (959/1409) Receiving objects: 69% (973/1409) Receiving objects: 70% (987/1409) Receiving objects: 71% (1001/1409) Receiving objects: 72% (1015/1409) Receiving objects: 73% (1029/1409) Receiving objects: 74% (1043/1409) Receiving objects: 75% (1057/1409) Receiving objects: 76% (1071/1409) Receiving objects: 77% (1085/1409) Receiving objects: 78% (1100/1409) Receiving objects: 79% (1114/1409) remote: Total 1409 (delta 929), reused 1313 (delta 838)[K
-Receiving objects: 80% (1128/1409) Receiving objects: 81% (1142/1409) Receiving objects: 82% (1156/1409) Receiving objects: 83% (1170/1409) Receiving objects: 84% (1184/1409) Receiving objects: 85% (1198/1409) Receiving objects: 86% (1212/1409) Receiving objects: 87% (1226/1409) Receiving objects: 88% (1240/1409) Receiving objects: 89% (1255/1409) Receiving objects: 90% (1269/1409) Receiving objects: 91% (1283/1409) Receiving objects: 92% (1297/1409) Receiving objects: 93% (1311/1409) Receiving objects: 94% (1325/1409) Receiving objects: 95% (1339/1409) Receiving objects: 96% (1353/1409) Receiving objects: 97% (1367/1409) Receiving objects: 98% (1381/1409) Receiving objects: 99% (1395/1409) Receiving objects: 100% (1409/1409) Receiving objects: 100% (1409/1409), 190.71 KiB, done.
-Resolving deltas: 0% (0/929) Resolving deltas: 18% (173/929) Resolving deltas: 20% (191/929) Resolving deltas: 25% (239/929) Resolving deltas: 26% (246/929) Resolving deltas: 28% (261/929) Resolving deltas: 36% (336/929) Resolving deltas: 37% (347/929) Resolving deltas: 43% (400/929) Resolving deltas: 44% (409/929) Resolving deltas: 45% (422/929) Resolving deltas: 46% (428/929) Resolving deltas: 47% (442/929) Resolving deltas: 48% (446/929) Resolving deltas: 52% (484/929) Resolving deltas: 53% (500/929) Resolving deltas: 54% (504/929) Resolving deltas: 55% (515/929) Resolving deltas: 56% (524/929) Resolving deltas: 57% (531/929) Resolving deltas: 63% (587/929) Resolving deltas: 66% (616/929) Resolving deltas: 67% (628/929) Resolving deltas: 69% (647/929) Resolving deltas: 72% (677/929) Resolving deltas: 73% (680/929) Resolving deltas: 74% (688/929) Resolving deltas: 75% (706/929) Resolving deltas: 77% (724/929) Resolving deltas: 78% (730/929) Resolving deltas: 81% (754/929) Resolving deltas: 82% (762/929) Resolving deltas: 83% (773/929) Resolving deltas: 84% (781/929) Resolving deltas: 85% (790/929) Resolving deltas: 87% (811/929) Resolving deltas: 88% (822/929) Resolving deltas: 89% (832/929) Resolving deltas: 92% (857/929) Resolving deltas: 93% (871/929) Resolving deltas: 96% (900/929) Resolving deltas: 97% (908/929) Resolving deltas: 98% (913/929) Resolving deltas: 99% (925/929) Resolving deltas: 100% (929/929) Resolving deltas: 100% (929/929), done.
-Fetching https://github.com/wycats/rake-pipeline-web-filters.git
-remote: Counting objects: 674, done.[K
-remote: Compressing objects: 0% (1/207) [Kremote: Compressing objects: 1% (3/207) [Kremote: Compressing objects: 2% (5/207) [Kremote: Compressing objects: 3% (7/207) [Kremote: Compressing objects: 4% (9/207) [Kremote: Compressing objects: 5% (11/207) [Kremote: Compressing objects: 6% (13/207) [Kremote: Compressing objects: 7% (15/207) [Kremote: Compressing objects: 8% (17/207) [Kremote: Compressing objects: 9% (19/207) [Kremote: Compressing objects: 10% (21/207) [Kremote: Compressing objects: 11% (23/207) [Kremote: Compressing objects: 12% (25/207) [Kremote: Compressing objects: 13% (27/207) [Kremote: Compressing objects: 14% (29/207) [Kremote: Compressing objects: 15% (32/207) [Kremote: Compressing objects: 16% (34/207) [Kremote: Compressing objects: 17% (36/207) [Kremote: Compressing objects: 18% (38/207) [Kremote: Compressing objects: 19% (40/207) [Kremote: Compressing objects: 20% (42/207) [Kremote: Compressing objects: 21% (44/207) [Kremote: Compressing objects: 22% (46/207) [Kremote: Compressing objects: 23% (48/207) [Kremote: Compressing objects: 24% (50/207) [Kremote: Compressing objects: 25% (52/207) [Kremote: Compressing objects: 26% (54/207) [Kremote: Compressing objects: 27% (56/207) [Kremote: Compressing objects: 28% (58/207) [Kremote: Compressing objects: 29% (61/207) [Kremote: Compressing objects: 30% (63/207) [Kremote: Compressing objects: 31% (65/207) [Kremote: Compressing objects: 32% (67/207) [Kremote: Compressing objects: 33% (69/207) [Kremote: Compressing objects: 34% (71/207) [Kremote: Compressing objects: 35% (73/207) [Kremote: Compressing objects: 36% (75/207) [Kremote: Compressing objects: 37% (77/207) [Kremote: Compressing objects: 38% (79/207) [Kremote: Compressing objects: 39% (81/207) [Kremote: Compressing objects: 40% (83/207) [Kremote: Compressing objects: 41% (85/207) [Kremote: Compressing objects: 42% (87/207) [Kremote: Compressing objects: 43% (90/207) [Kremote: Compressing objects: 44% (92/207) [Kremote: Compressing objects: 45% (94/207) [Kremote: Compressing objects: 46% (96/207) [Kremote: Compressing objects: 47% (98/207) [Kremote: Compressing objects: 48% (100/207) [Kremote: Compressing objects: 49% (102/207) [Kremote: Compressing objects: 50% (104/207) [Kremote: Compressing objects: 51% (106/207) [Kremote: Compressing objects: 52% (108/207) [Kremote: Compressing objects: 53% (110/207) [Kremote: Compressing objects: 54% (112/207) [Kremote: Compressing objects: 55% (114/207) [Kremote: Compressing objects: 56% (116/207) [Kremote: Compressing objects: 57% (118/207) [Kremote: Compressing objects: 58% (121/207) [Kremote: Compressing objects: 59% (123/207) [Kremote: Compressing objects: 60% (125/207) [Kremote: Compressing objects: 61% (127/207) [Kremote: Compressing objects: 62% (129/207) [Kremote: Compressing objects: 63% (131/207) [Kremote: Compressing objects: 64% (133/207) [Kremote: Compressing objects: 65% (135/207) [Kremote: Compressing objects: 66% (137/207) [Kremote: Compressing objects: 67% (139/207) [Kremote: Compressing objects: 68% (141/207) [Kremote: Compressing objects: 69% (143/207) [Kremote: Compressing objects: 70% (145/207) [Kremote: Compressing objects: 71% (147/207) [Kremote: Compressing objects: 72% (150/207) [Kremote: Compressing objects: 73% (152/207) [Kremote: Compressing objects: 74% (154/207) [Kremote: Compressing objects: 75% (156/207) [Kremote: Compressing objects: 76% (158/207) [Kremote: Compressing objects: 77% (160/207) [Kremote: Compressing objects: 78% (162/207) [Kremote: Compressing objects: 79% (164/207) [Kremote: Compressing objects: 80% (166/207) [Kremote: Compressing objects: 81% (168/207) [Kremote: Compressing objects: 82% (170/207) [Kremote: Compressing objects: 83% (172/207) [Kremote: Compressing objects: 84% (174/207) [Kremote: Compressing objects: 85% (176/207) [Kremote: Compressing objects: 86% (179/207) [Kremote: Compressing objects: 87% (181/207) [Kremote: Compressing objects: 88% (183/207) [Kremote: Compressing objects: 89% (185/207) [Kremote: Compressing objects: 90% (187/207) [Kremote: Compressing objects: 91% (189/207) [Kremote: Compressing objects: 92% (191/207) [Kremote: Compressing objects: 93% (193/207) [Kremote: Compressing objects: 94% (195/207) [Kremote: Compressing objects: 95% (197/207) [Kremote: Compressing objects: 96% (199/207) [Kremote: Compressing objects: 97% (201/207) [Kremote: Compressing objects: 98% (203/207) [Kremote: Compressing objects: 99% (205/207) [Kremote: Compressing objects: 100% (207/207) [Kremote: Compressing objects: 100% (207/207), done.[K
-Receiving objects: 0% (1/674) Receiving objects: 1% (7/674) Receiving objects: 2% (14/674) Receiving objects: 3% (21/674) Receiving objects: 4% (27/674) Receiving objects: 5% (34/674) Receiving objects: 6% (41/674) Receiving objects: 7% (48/674) Receiving objects: 8% (54/674) Receiving objects: 9% (61/674) Receiving objects: 10% (68/674) Receiving objects: 11% (75/674) Receiving objects: 12% (81/674) Receiving objects: 13% (88/674) Receiving objects: 14% (95/674) Receiving objects: 15% (102/674) Receiving objects: 16% (108/674) Receiving objects: 17% (115/674) Receiving objects: 18% (122/674) Receiving objects: 19% (129/674) Receiving objects: 20% (135/674) Receiving objects: 21% (142/674) Receiving objects: 22% (149/674) Receiving objects: 23% (156/674) Receiving objects: 24% (162/674) Receiving objects: 25% (169/674) Receiving objects: 26% (176/674) Receiving objects: 27% (182/674) Receiving objects: 28% (189/674) Receiving objects: 29% (196/674) Receiving objects: 30% (203/674) Receiving objects: 31% (209/674) Receiving objects: 32% (216/674) Receiving objects: 33% (223/674) Receiving objects: 34% (230/674) Receiving objects: 35% (236/674) Receiving objects: 36% (243/674) Receiving objects: 37% (250/674) Receiving objects: 38% (257/674) Receiving objects: 39% (263/674) Receiving objects: 40% (270/674) Receiving objects: 41% (277/674) Receiving objects: 42% (284/674) Receiving objects: 43% (290/674) Receiving objects: 44% (297/674) Receiving objects: 45% (304/674) Receiving objects: 46% (311/674) Receiving objects: 47% (317/674) Receiving objects: 48% (324/674) Receiving objects: 49% (331/674) Receiving objects: 50% (337/674) Receiving objects: 51% (344/674) Receiving objects: 52% (351/674) Receiving objects: 53% (358/674) Receiving objects: 54% (364/674) Receiving objects: 55% (371/674) Receiving objects: 56% (378/674) Receiving objects: 57% (385/674) Receiving objects: 58% (391/674) Receiving objects: 59% (398/674) Receiving objects: 60% (405/674) Receiving objects: 61% (412/674) Receiving objects: 62% (418/674) Receiving objects: 63% (425/674) Receiving objects: 64% (432/674) Receiving objects: 65% (439/674) Receiving objects: 66% (445/674) Receiving objects: 67% (452/674) Receiving objects: 68% (459/674) Receiving objects: 69% (466/674) Receiving objects: 70% (472/674) Receiving objects: 71% (479/674) Receiving objects: 72% (486/674) Receiving objects: 73% (493/674) Receiving objects: 74% (499/674) Receiving objects: 75% (506/674) Receiving objects: 76% (513/674) remote: Total 674 (delta 491), reused 646 (delta 463)[K
-Receiving objects: 77% (519/674) Receiving objects: 78% (526/674) Receiving objects: 79% (533/674) Receiving objects: 80% (540/674) Receiving objects: 81% (546/674) Receiving objects: 82% (553/674) Receiving objects: 83% (560/674) Receiving objects: 84% (567/674) Receiving objects: 85% (573/674) Receiving objects: 86% (580/674) Receiving objects: 87% (587/674) Receiving objects: 88% (594/674) Receiving objects: 89% (600/674) Receiving objects: 90% (607/674) Receiving objects: 91% (614/674) Receiving objects: 92% (621/674) Receiving objects: 93% (627/674) Receiving objects: 94% (634/674) Receiving objects: 95% (641/674) Receiving objects: 96% (648/674) Receiving objects: 97% (654/674) Receiving objects: 98% (661/674) Receiving objects: 99% (668/674) Receiving objects: 100% (674/674) Receiving objects: 100% (674/674), 90.14 KiB, done.
-Resolving deltas: 0% (0/491) Resolving deltas: 18% (93/491) Resolving deltas: 19% (96/491) Resolving deltas: 28% (140/491) Resolving deltas: 33% (164/491) Resolving deltas: 34% (168/491) Resolving deltas: 39% (192/491) Resolving deltas: 41% (204/491) Resolving deltas: 42% (210/491) Resolving deltas: 47% (232/491) Resolving deltas: 52% (259/491) Resolving deltas: 53% (261/491) Resolving deltas: 54% (268/491) Resolving deltas: 55% (272/491) Resolving deltas: 56% (276/491) Resolving deltas: 57% (280/491) Resolving deltas: 61% (302/491) Resolving deltas: 62% (305/491) Resolving deltas: 65% (321/491) Resolving deltas: 66% (326/491) Resolving deltas: 70% (344/491) Resolving deltas: 72% (355/491) Resolving deltas: 74% (368/491) Resolving deltas: 75% (371/491) Resolving deltas: 78% (386/491) Resolving deltas: 79% (389/491) Resolving deltas: 87% (432/491) Resolving deltas: 91% (451/491) Resolving deltas: 93% (458/491) Resolving deltas: 94% (463/491) Resolving deltas: 98% (482/491) Resolving deltas: 100% (491/491) Resolving deltas: 100% (491/491), done.
-Fetching https://github.com/travis-ci/travis-assets
-remote: Counting objects: 3310, done.[K
-remote: Compressing objects: 0% (1/2323) [Kremote: Compressing objects: 1% (24/2323) [Kremote: Compressing objects: 2% (47/2323) [Kremote: Compressing objects: 3% (70/2323) [Kremote: Compressing objects: 4% (93/2323) [Kremote: Compressing objects: 5% (117/2323) [Kremote: Compressing objects: 6% (140/2323) [Kremote: Compressing objects: 7% (163/2323) [Kremote: Compressing objects: 7% (182/2323) [Kremote: Compressing objects: 8% (186/2323) [Kremote: Compressing objects: 9% (210/2323) [Kremote: Compressing objects: 10% (233/2323) [Kremote: Compressing objects: 11% (256/2323) [Kremote: Compressing objects: 12% (279/2323) [Kremote: Compressing objects: 13% (302/2323) [Kremote: Compressing objects: 14% (326/2323) [Kremote: Compressing objects: 15% (349/2323) [Kremote: Compressing objects: 16% (372/2323) [Kremote: Compressing objects: 16% (393/2323) [Kremote: Compressing objects: 17% (395/2323) [Kremote: Compressing objects: 18% (419/2323) [Kremote: Compressing objects: 19% (442/2323) [Kremote: Compressing objects: 20% (465/2323) [Kremote: Compressing objects: 21% (488/2323) [Kremote: Compressing objects: 22% (512/2323) [Kremote: Compressing objects: 23% (535/2323) [Kremote: Compressing objects: 24% (558/2323) [Kremote: Compressing objects: 25% (581/2323) [Kremote: Compressing objects: 26% (604/2323) [Kremote: Compressing objects: 27% (628/2323) [Kremote: Compressing objects: 28% (651/2323) [Kremote: Compressing objects: 29% (674/2323) [Kremote: Compressing objects: 30% (697/2323) [Kremote: Compressing objects: 31% (721/2323) [Kremote: Compressing objects: 32% (744/2323) [Kremote: Compressing objects: 33% (767/2323) [Kremote: Compressing objects: 34% (790/2323) [Kremote: Compressing objects: 35% (814/2323) [Kremote: Compressing objects: 36% (837/2323) [Kremote: Compressing objects: 37% (860/2323) [Kremote: Compressing objects: 38% (883/2323) [Kremote: Compressing objects: 39% (906/2323) [Kremote: Compressing objects: 40% (930/2323) [Kremote: Compressing objects: 41% (953/2323) [Kremote: Compressing objects: 42% (976/2323) [Kremote: Compressing objects: 43% (999/2323) [Kremote: Compressing objects: 44% (1023/2323) [Kremote: Compressing objects: 45% (1046/2323) [Kremote: Compressing objects: 46% (1069/2323) [Kremote: Compressing objects: 47% (1092/2323) [Kremote: Compressing objects: 48% (1116/2323) [Kremote: Compressing objects: 49% (1139/2323) [Kremote: Compressing objects: 50% (1162/2323) [Kremote: Compressing objects: 51% (1185/2323) [Kremote: Compressing objects: 52% (1208/2323) [Kremote: Compressing objects: 53% (1232/2323) [Kremote: Compressing objects: 54% (1255/2323) [Kremote: Compressing objects: 55% (1278/2323) [Kremote: Compressing objects: 56% (1301/2323) [Kremote: Compressing objects: 57% (1325/2323) [Kremote: Compressing objects: 58% (1348/2323) [Kremote: Compressing objects: 59% (1371/2323) [Kremote: Compressing objects: 60% (1394/2323) [Kremote: Compressing objects: 61% (1418/2323) [Kremote: Compressing objects: 62% (1441/2323) [Kremote: Compressing objects: 63% (1464/2323) [Kremote: Compressing objects: 64% (1487/2323) [Kremote: Compressing objects: 65% (1510/2323) [Kremote: Compressing objects: 66% (1534/2323) [Kremote: Compressing objects: 67% (1557/2323) [Kremote: Compressing objects: 68% (1580/2323) [Kremote: Compressing objects: 69% (1603/2323) [Kremote: Compressing objects: 70% (1627/2323) [Kremote: Compressing objects: 71% (1650/2323) [Kremote: Compressing objects: 72% (1673/2323) [Kremote: Compressing objects: 73% (1696/2323) [Kremote: Compressing objects: 74% (1720/2323) [Kremote: Compressing objects: 75% (1743/2323) [Kremote: Compressing objects: 76% (1766/2323) [Kremote: Compressing objects: 77% (1789/2323) [Kremote: Compressing objects: 78% (1812/2323) [Kremote: Compressing objects: 79% (1836/2323) [Kremote: Compressing objects: 80% (1859/2323) [Kremote: Compressing objects: 81% (1882/2323) [Kremote: Compressing objects: 82% (1905/2323) [Kremote: Compressing objects: 83% (1929/2323) [Kremote: Compressing objects: 84% (1952/2323) [Kremote: Compressing objects: 85% (1975/2323) [Kremote: Compressing objects: 86% (1998/2323) [Kremote: Compressing objects: 87% (2022/2323) [Kremote: Compressing objects: 88% (2045/2323) [Kremote: Compressing objects: 89% (2068/2323) [Kremote: Compressing objects: 90% (2091/2323) [Kremote: Compressing objects: 91% (2114/2323) [Kremote: Compressing objects: 92% (2138/2323) [Kremote: Compressing objects: 93% (2161/2323) [Kremote: Compressing objects: 94% (2184/2323) [Kremote: Compressing objects: 95% (2207/2323) [Kremote: Compressing objects: 96% (2231/2323) [Kremote: Compressing objects: 97% (2254/2323) [Kremote: Compressing objects: 98% (2277/2323) [Kremote: Compressing objects: 99% (2300/2323) [Kremote: Compressing objects: 100% (2323/2323) [Kremote: Compressing objects: 100% (2323/2323), done.[K
-Receiving objects: 0% (1/3310) Receiving objects: 1% (34/3310) Receiving objects: 2% (67/3310) Receiving objects: 3% (100/3310) Receiving objects: 4% (133/3310) Receiving objects: 5% (166/3310) Receiving objects: 6% (199/3310) Receiving objects: 7% (232/3310) Receiving objects: 8% (265/3310) Receiving objects: 9% (298/3310) Receiving objects: 10% (331/3310) Receiving objects: 11% (365/3310) Receiving objects: 12% (398/3310) Receiving objects: 13% (431/3310) Receiving objects: 14% (464/3310) Receiving objects: 15% (497/3310) Receiving objects: 16% (530/3310) Receiving objects: 17% (563/3310) Receiving objects: 18% (596/3310) Receiving objects: 19% (629/3310) Receiving objects: 20% (662/3310) Receiving objects: 21% (696/3310) Receiving objects: 22% (729/3310) Receiving objects: 23% (762/3310) Receiving objects: 24% (795/3310) Receiving objects: 25% (828/3310) Receiving objects: 26% (861/3310) Receiving objects: 27% (894/3310) Receiving objects: 28% (927/3310) Receiving objects: 29% (960/3310) Receiving objects: 30% (993/3310) Receiving objects: 31% (1027/3310) Receiving objects: 32% (1060/3310) Receiving objects: 33% (1093/3310) Receiving objects: 34% (1126/3310), 300.00 KiB | 521 KiB/s Receiving objects: 35% (1159/3310), 300.00 KiB | 521 KiB/s Receiving objects: 36% (1192/3310), 300.00 KiB | 521 KiB/s Receiving objects: 37% (1225/3310), 300.00 KiB | 521 KiB/s Receiving objects: 38% (1258/3310), 300.00 KiB | 521 KiB/s Receiving objects: 39% (1291/3310), 300.00 KiB | 521 KiB/s Receiving objects: 40% (1324/3310), 300.00 KiB | 521 KiB/s Receiving objects: 41% (1358/3310), 300.00 KiB | 521 KiB/s Receiving objects: 42% (1391/3310), 300.00 KiB | 521 KiB/s Receiving objects: 42% (1412/3310), 300.00 KiB | 521 KiB/s Receiving objects: 43% (1424/3310), 300.00 KiB | 521 KiB/s Receiving objects: 44% (1457/3310), 300.00 KiB | 521 KiB/s Receiving objects: 45% (1490/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 46% (1523/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 47% (1556/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 48% (1589/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 49% (1622/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 50% (1655/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 51% (1689/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 52% (1722/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 53% (1755/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 54% (1788/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 55% (1821/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 56% (1854/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 57% (1887/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 58% (1920/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 59% (1953/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 60% (1986/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 61% (2020/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 62% (2053/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 63% (2086/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 64% (2119/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 65% (2152/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 66% (2185/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 67% (2218/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 68% (2251/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 69% (2284/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 70% (2317/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 71% (2351/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 72% (2384/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 73% (2417/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 74% (2450/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 75% (2483/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 76% (2516/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 77% (2549/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 78% (2582/3310), 2.00 MiB | 1.87 MiB/s Receiving objects: 79% (2615/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 80% (2648/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 81% (2682/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 82% (2715/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 83% (2748/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 84% (2781/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 85% (2814/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 86% (2847/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 87% (2880/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 88% (2913/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 89% (2946/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 90% (2979/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 91% (3013/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 92% (3046/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 93% (3079/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 94% (3112/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 95% (3145/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 96% (3178/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 96% (3181/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 97% (3211/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 98% (3244/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 99% (3277/3310), 4.89 MiB | 3.11 MiB/s remote: Total 3310 (delta 1088), reused 3044 (delta 844)[K
-Receiving objects: 100% (3310/3310), 4.89 MiB | 3.11 MiB/s Receiving objects: 100% (3310/3310), 7.44 MiB | 3.11 MiB/s, done.
-Resolving deltas: 0% (0/1088) Resolving deltas: 6% (66/1088) Resolving deltas: 8% (88/1088) Resolving deltas: 9% (105/1088) Resolving deltas: 10% (110/1088) Resolving deltas: 11% (120/1088) Resolving deltas: 20% (227/1088) Resolving deltas: 22% (250/1088) Resolving deltas: 24% (263/1088) Resolving deltas: 25% (279/1088) Resolving deltas: 26% (283/1088) Resolving deltas: 27% (298/1088) Resolving deltas: 28% (305/1088) Resolving deltas: 29% (323/1088) Resolving deltas: 30% (333/1088) Resolving deltas: 31% (342/1088) Resolving deltas: 32% (350/1088) Resolving deltas: 33% (360/1088) Resolving deltas: 34% (380/1088) Resolving deltas: 35% (388/1088) Resolving deltas: 36% (396/1088) Resolving deltas: 37% (403/1088) Resolving deltas: 38% (414/1088) Resolving deltas: 39% (426/1088) Resolving deltas: 40% (442/1088) Resolving deltas: 41% (447/1088) Resolving deltas: 42% (466/1088) Resolving deltas: 43% (471/1088) Resolving deltas: 44% (480/1088) Resolving deltas: 45% (490/1088) Resolving deltas: 46% (503/1088) Resolving deltas: 47% (520/1088) Resolving deltas: 48% (527/1088) Resolving deltas: 49% (536/1088) Resolving deltas: 50% (552/1088) Resolving deltas: 51% (555/1088) Resolving deltas: 52% (570/1088) Resolving deltas: 53% (582/1088) Resolving deltas: 54% (596/1088) Resolving deltas: 55% (600/1088) Resolving deltas: 56% (615/1088) Resolving deltas: 57% (621/1088) Resolving deltas: 58% (636/1088) Resolving deltas: 59% (642/1088) Resolving deltas: 68% (741/1088) Resolving deltas: 69% (759/1088) Resolving deltas: 70% (762/1088) Resolving deltas: 71% (773/1088) Resolving deltas: 72% (787/1088) Resolving deltas: 73% (796/1088) Resolving deltas: 82% (902/1088) Resolving deltas: 91% (1000/1088) Resolving deltas: 92% (1010/1088) Resolving deltas: 93% (1014/1088) Resolving deltas: 94% (1025/1088) Resolving deltas: 95% (1037/1088) Resolving deltas: 96% (1046/1088) Resolving deltas: 97% (1056/1088) Resolving deltas: 98% (1068/1088) Resolving deltas: 99% (1078/1088) Resolving deltas: 100% (1088/1088) Resolving deltas: 100% (1088/1088), done.
-Fetching git://github.com/travis-ci/travis-core
-remote: Counting objects: 10949 [Kremote: Counting objects: 11443, done.[K
-remote: Compressing objects: 0% (1/3239) [Kremote: Compressing objects: 1% (33/3239) [Kremote: Compressing objects: 2% (65/3239) [Kremote: Compressing objects: 3% (98/3239) [Kremote: Compressing objects: 4% (130/3239) [Kremote: Compressing objects: 5% (162/3239) [Kremote: Compressing objects: 6% (195/3239) [Kremote: Compressing objects: 7% (227/3239) [Kremote: Compressing objects: 8% (260/3239) [Kremote: Compressing objects: 9% (292/3239) [Kremote: Compressing objects: 10% (324/3239) [Kremote: Compressing objects: 11% (357/3239) [Kremote: Compressing objects: 12% (389/3239) [Kremote: Compressing objects: 13% (422/3239) [Kremote: Compressing objects: 14% (454/3239) [Kremote: Compressing objects: 15% (486/3239) [Kremote: Compressing objects: 16% (519/3239) [Kremote: Compressing objects: 17% (551/3239) [Kremote: Compressing objects: 18% (584/3239) [Kremote: Compressing objects: 19% (616/3239) [Kremote: Compressing objects: 20% (648/3239) [Kremote: Compressing objects: 21% (681/3239) [Kremote: Compressing objects: 22% (713/3239) [Kremote: Compressing objects: 23% (745/3239) [Kremote: Compressing objects: 24% (778/3239) [Kremote: Compressing objects: 25% (810/3239) [Kremote: Compressing objects: 26% (843/3239) [Kremote: Compressing objects: 27% (875/3239) [Kremote: Compressing objects: 28% (907/3239) [Kremote: Compressing objects: 29% (940/3239) [Kremote: Compressing objects: 30% (972/3239) [Kremote: Compressing objects: 31% (1005/3239) [Kremote: Compressing objects: 32% (1037/3239) [Kremote: Compressing objects: 33% (1069/3239) [Kremote: Compressing objects: 34% (1102/3239) [Kremote: Compressing objects: 35% (1134/3239) [Kremote: Compressing objects: 36% (1167/3239) [Kremote: Compressing objects: 37% (1199/3239) [Kremote: Compressing objects: 38% (1231/3239) [Kremote: Compressing objects: 39% (1264/3239) [Kremote: Compressing objects: 40% (1296/3239) [Kremote: Compressing objects: 41% (1328/3239) [Kremote: Compressing objects: 42% (1361/3239) [Kremote: Compressing objects: 43% (1393/3239) [Kremote: Compressing objects: 44% (1426/3239) [Kremote: Compressing objects: 45% (1458/3239) [Kremote: Compressing objects: 46% (1490/3239) [Kremote: Compressing objects: 47% (1523/3239) [Kremote: Compressing objects: 48% (1555/3239) [Kremote: Compressing objects: 49% (1588/3239) [Kremote: Compressing objects: 50% (1620/3239) [Kremote: Compressing objects: 51% (1652/3239) [Kremote: Compressing objects: 52% (1685/3239) [Kremote: Compressing objects: 53% (1717/3239) [Kremote: Compressing objects: 54% (1750/3239) [Kremote: Compressing objects: 55% (1782/3239) [Kremote: Compressing objects: 56% (1814/3239) [Kremote: Compressing objects: 57% (1847/3239) [Kremote: Compressing objects: 58% (1879/3239) [Kremote: Compressing objects: 59% (1912/3239) [Kremote: Compressing objects: 60% (1944/3239) [Kremote: Compressing objects: 61% (1976/3239) [Kremote: Compressing objects: 62% (2009/3239) [Kremote: Compressing objects: 63% (2041/3239) [Kremote: Compressing objects: 64% (2073/3239) [Kremote: Compressing objects: 65% (2106/3239) [Kremote: Compressing objects: 66% (2138/3239) [Kremote: Compressing objects: 67% (2171/3239) [Kremote: Compressing objects: 68% (2203/3239) [Kremote: Compressing objects: 69% (2235/3239) [Kremote: Compressing objects: 70% (2268/3239) [Kremote: Compressing objects: 71% (2300/3239) [Kremote: Compressing objects: 72% (2333/3239) [Kremote: Compressing objects: 73% (2365/3239) [Kremote: Compressing objects: 74% (2397/3239) [Kremote: Compressing objects: 75% (2430/3239) [Kremote: Compressing objects: 76% (2462/3239) [Kremote: Compressing objects: 77% (2495/3239) [Kremote: Compressing objects: 78% (2527/3239) [Kremote: Compressing objects: 79% (2559/3239) [Kremote: Compressing objects: 80% (2592/3239) [Kremote: Compressing objects: 81% (2624/3239) [Kremote: Compressing objects: 82% (2656/3239) [Kremote: Compressing objects: 83% (2689/3239) [Kremote: Compressing objects: 84% (2721/3239) [Kremote: Compressing objects: 85% (2754/3239) [Kremote: Compressing objects: 86% (2786/3239) [Kremote: Compressing objects: 87% (2818/3239) [Kremote: Compressing objects: 88% (2851/3239) [Kremote: Compressing objects: 89% (2883/3239) [Kremote: Compressing objects: 90% (2916/3239) [Kremote: Compressing objects: 91% (2948/3239) [Kremote: Compressing objects: 92% (2980/3239) [Kremote: Compressing objects: 93% (3013/3239) [Kremote: Compressing objects: 94% (3045/3239) [Kremote: Compressing objects: 95% (3078/3239) [Kremote: Compressing objects: 96% (3110/3239) [Kremote: Compressing objects: 97% (3142/3239) [Kremote: Compressing objects: 98% (3175/3239) [Kremote: Compressing objects: 99% (3207/3239) [Kremote: Compressing objects: 100% (3239/3239) [Kremote: Compressing objects: 100% (3239/3239), done.[K
-Receiving objects: 0% (1/11443) Receiving objects: 1% (115/11443) Receiving objects: 2% (229/11443) Receiving objects: 3% (344/11443) Receiving objects: 4% (458/11443) Receiving objects: 5% (573/11443) Receiving objects: 6% (687/11443) Receiving objects: 7% (802/11443) Receiving objects: 8% (916/11443) Receiving objects: 9% (1030/11443) Receiving objects: 10% (1145/11443) Receiving objects: 11% (1259/11443) Receiving objects: 12% (1374/11443) Receiving objects: 13% (1488/11443) Receiving objects: 14% (1603/11443) Receiving objects: 15% (1717/11443) Receiving objects: 16% (1831/11443) Receiving objects: 17% (1946/11443) Receiving objects: 18% (2060/11443) Receiving objects: 19% (2175/11443) Receiving objects: 20% (2289/11443) Receiving objects: 21% (2404/11443) Receiving objects: 22% (2518/11443) Receiving objects: 23% (2632/11443) Receiving objects: 24% (2747/11443) Receiving objects: 25% (2861/11443) Receiving objects: 26% (2976/11443) Receiving objects: 27% (3090/11443), 420.00 KiB | 802 KiB/s Receiving objects: 28% (3205/11443), 420.00 KiB | 802 KiB/s Receiving objects: 29% (3319/11443), 420.00 KiB | 802 KiB/s Receiving objects: 30% (3433/11443), 420.00 KiB | 802 KiB/s Receiving objects: 31% (3548/11443), 420.00 KiB | 802 KiB/s Receiving objects: 32% (3662/11443), 420.00 KiB | 802 KiB/s Receiving objects: 33% (3777/11443), 420.00 KiB | 802 KiB/s Receiving objects: 34% (3891/11443), 420.00 KiB | 802 KiB/s Receiving objects: 35% (4006/11443), 420.00 KiB | 802 KiB/s Receiving objects: 36% (4120/11443), 420.00 KiB | 802 KiB/s Receiving objects: 37% (4234/11443), 420.00 KiB | 802 KiB/s Receiving objects: 38% (4349/11443), 420.00 KiB | 802 KiB/s Receiving objects: 39% (4463/11443), 420.00 KiB | 802 KiB/s Receiving objects: 40% (4578/11443), 420.00 KiB | 802 KiB/s Receiving objects: 41% (4692/11443), 420.00 KiB | 802 KiB/s Receiving objects: 42% (4807/11443), 420.00 KiB | 802 KiB/s Receiving objects: 43% (4921/11443), 420.00 KiB | 802 KiB/s Receiving objects: 44% (5035/11443), 420.00 KiB | 802 KiB/s Receiving objects: 45% (5150/11443), 420.00 KiB | 802 KiB/s Receiving objects: 46% (5264/11443), 420.00 KiB | 802 KiB/s Receiving objects: 47% (5379/11443), 420.00 KiB | 802 KiB/s Receiving objects: 48% (5493/11443), 420.00 KiB | 802 KiB/s Receiving objects: 49% (5608/11443), 420.00 KiB | 802 KiB/s Receiving objects: 50% (5722/11443), 420.00 KiB | 802 KiB/s Receiving objects: 51% (5836/11443), 420.00 KiB | 802 KiB/s Receiving objects: 52% (5951/11443), 420.00 KiB | 802 KiB/s Receiving objects: 53% (6065/11443), 420.00 KiB | 802 KiB/s Receiving objects: 54% (6180/11443), 420.00 KiB | 802 KiB/s Receiving objects: 55% (6294/11443), 420.00 KiB | 802 KiB/s Receiving objects: 56% (6409/11443), 420.00 KiB | 802 KiB/s Receiving objects: 57% (6523/11443), 420.00 KiB | 802 KiB/s Receiving objects: 58% (6637/11443), 420.00 KiB | 802 KiB/s Receiving objects: 59% (6752/11443), 420.00 KiB | 802 KiB/s Receiving objects: 60% (6866/11443), 420.00 KiB | 802 KiB/s Receiving objects: 61% (6981/11443), 420.00 KiB | 802 KiB/s Receiving objects: 62% (7095/11443), 420.00 KiB | 802 KiB/s Receiving objects: 63% (7210/11443), 420.00 KiB | 802 KiB/s Receiving objects: 64% (7324/11443), 420.00 KiB | 802 KiB/s Receiving objects: 65% (7438/11443), 420.00 KiB | 802 KiB/s Receiving objects: 66% (7553/11443), 420.00 KiB | 802 KiB/s Receiving objects: 67% (7667/11443), 420.00 KiB | 802 KiB/s Receiving objects: 68% (7782/11443), 420.00 KiB | 802 KiB/s Receiving objects: 69% (7896/11443), 420.00 KiB | 802 KiB/s Receiving objects: 70% (8011/11443), 420.00 KiB | 802 KiB/s Receiving objects: 71% (8125/11443), 420.00 KiB | 802 KiB/s Receiving objects: 72% (8239/11443), 420.00 KiB | 802 KiB/s Receiving objects: 73% (8354/11443), 420.00 KiB | 802 KiB/s Receiving objects: 74% (8468/11443), 420.00 KiB | 802 KiB/s Receiving objects: 75% (8583/11443), 420.00 KiB | 802 KiB/s Receiving objects: 76% (8697/11443), 420.00 KiB | 802 KiB/s Receiving objects: 77% (8812/11443), 420.00 KiB | 802 KiB/s Receiving objects: 78% (8926/11443), 420.00 KiB | 802 KiB/s Receiving objects: 79% (9040/11443), 420.00 KiB | 802 KiB/s Receiving objects: 80% (9155/11443), 420.00 KiB | 802 KiB/s Receiving objects: 81% (9269/11443), 420.00 KiB | 802 KiB/s Receiving objects: 82% (9384/11443), 420.00 KiB | 802 KiB/s Receiving objects: 83% (9498/11443), 420.00 KiB | 802 KiB/s Receiving objects: 84% (9613/11443), 420.00 KiB | 802 KiB/s Receiving objects: 85% (9727/11443), 420.00 KiB | 802 KiB/s Receiving objects: 86% (9841/11443), 420.00 KiB | 802 KiB/s Receiving objects: 87% (9956/11443), 420.00 KiB | 802 KiB/s Receiving objects: 88% (10070/11443), 420.00 KiB | 802 KiB/s Receiving objects: 89% (10185/11443), 420.00 KiB | 802 KiB/s Receiving objects: 90% (10299/11443), 420.00 KiB | 802 KiB/s Receiving objects: 91% (10414/11443), 420.00 KiB | 802 KiB/s Receiving objects: 92% (10528/11443), 420.00 KiB | 802 KiB/s Receiving objects: 93% (10642/11443), 420.00 KiB | 802 KiB/s Receiving objects: 94% (10757/11443), 420.00 KiB | 802 KiB/s Receiving objects: 95% (10871/11443), 420.00 KiB | 802 KiB/s Receiving objects: 96% (10986/11443), 420.00 KiB | 802 KiB/s Receiving objects: 97% (11100/11443), 420.00 KiB | 802 KiB/s Receiving objects: 98% (11215/11443), 420.00 KiB | 802 KiB/s Receiving objects: 98% (11281/11443), 2.42 MiB | 2.29 MiB/s Receiving objects: 99% (11329/11443), 3.50 MiB | 2.22 MiB/s remote: Total 11443 (delta 7753), reused 11317 (delta 7638)[K
-Receiving objects: 100% (11443/11443), 3.50 MiB | 2.22 MiB/s Receiving objects: 100% (11443/11443), 3.61 MiB | 2.22 MiB/s, done.
-Resolving deltas: 0% (0/7753) Resolving deltas: 1% (152/7753) Resolving deltas: 3% (283/7753) Resolving deltas: 4% (333/7753) Resolving deltas: 5% (391/7753) Resolving deltas: 6% (466/7753) Resolving deltas: 7% (550/7753) Resolving deltas: 8% (644/7753) Resolving deltas: 9% (703/7753) Resolving deltas: 10% (780/7753) Resolving deltas: 11% (859/7753) Resolving deltas: 12% (945/7753) Resolving deltas: 13% (1015/7753) Resolving deltas: 14% (1149/7753) Resolving deltas: 15% (1175/7753) Resolving deltas: 16% (1265/7753) Resolving deltas: 17% (1323/7753) Resolving deltas: 18% (1401/7753) Resolving deltas: 21% (1673/7753) Resolving deltas: 22% (1718/7753) Resolving deltas: 23% (1815/7753) Resolving deltas: 24% (1862/7753) Resolving deltas: 25% (1951/7753) Resolving deltas: 26% (2028/7753) Resolving deltas: 27% (2121/7753) Resolving deltas: 28% (2171/7753) Resolving deltas: 29% (2282/7753) Resolving deltas: 30% (2326/7753) Resolving deltas: 35% (2719/7753) Resolving deltas: 36% (2850/7753) Resolving deltas: 37% (2934/7753) Resolving deltas: 38% (3001/7753) Resolving deltas: 39% (3042/7753) Resolving deltas: 41% (3231/7753) Resolving deltas: 42% (3257/7753) Resolving deltas: 43% (3352/7753) Resolving deltas: 44% (3421/7753) Resolving deltas: 45% (3491/7753) Resolving deltas: 47% (3655/7753) Resolving deltas: 48% (3744/7753) Resolving deltas: 49% (3814/7753) Resolving deltas: 50% (3886/7753) Resolving deltas: 52% (4046/7753) Resolving deltas: 53% (4132/7753) Resolving deltas: 54% (4206/7753) Resolving deltas: 55% (4271/7753) Resolving deltas: 56% (4358/7753) Resolving deltas: 57% (4425/7753) Resolving deltas: 58% (4507/7753) Resolving deltas: 59% (4575/7753) Resolving deltas: 60% (4687/7753) Resolving deltas: 61% (4779/7753) Resolving deltas: 62% (4808/7753) Resolving deltas: 63% (4887/7753) Resolving deltas: 64% (4973/7753) Resolving deltas: 65% (5054/7753) Resolving deltas: 66% (5117/7753) Resolving deltas: 67% (5202/7753) Resolving deltas: 68% (5274/7753) Resolving deltas: 69% (5354/7753) Resolving deltas: 70% (5450/7753) Resolving deltas: 71% (5508/7753) Resolving deltas: 72% (5596/7753) Resolving deltas: 73% (5679/7753) Resolving deltas: 74% (5751/7753) Resolving deltas: 75% (5822/7753) Resolving deltas: 76% (5894/7753) Resolving deltas: 77% (5971/7753) Resolving deltas: 78% (6055/7753) Resolving deltas: 79% (6147/7753) Resolving deltas: 80% (6239/7753) Resolving deltas: 81% (6289/7753) Resolving deltas: 82% (6359/7753) Resolving deltas: 83% (6438/7753) Resolving deltas: 84% (6529/7753) Resolving deltas: 85% (6611/7753) Resolving deltas: 86% (6688/7753) Resolving deltas: 87% (6748/7753) Resolving deltas: 88% (6825/7753) Resolving deltas: 89% (6909/7753) Resolving deltas: 90% (6979/7753) Resolving deltas: 91% (7070/7753) Resolving deltas: 92% (7143/7753) Resolving deltas: 93% (7213/7753) Resolving deltas: 94% (7292/7753) Resolving deltas: 95% (7366/7753) Resolving deltas: 96% (7456/7753) Resolving deltas: 97% (7523/7753) Resolving deltas: 98% (7611/7753) Resolving deltas: 99% (7676/7753) Resolving deltas: 100% (7753/7753) Resolving deltas: 100% (7753/7753), done.
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activeresource (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.3.0)
-Installing bcrypt-ruby (3.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing nokogiri (1.5.5) with native extensions
-Installing ffi (1.0.11) with native extensions
-Installing childprocess (0.3.3)
-Installing libwebsocket (0.1.4)
-Installing rubyzip (0.9.9)
-Installing selenium-webdriver (2.24.0)
-Installing xpath (0.1.4)
-Installing capybara (1.1.2)
-Installing chunky_png (1.2.5)
-Installing coffee-script-source (1.3.3)
-Installing execjs (1.3.0)
-Installing coffee-script (2.2.0)
-Installing fssm (0.2.9)
-Installing sass (3.1.20)
-Installing compass (0.12.2)
-Installing crack (0.3.1)
-Installing daemons (1.1.8)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing orm_adapter (0.0.7)
-Installing rack-ssl (1.3.2)
-Installing json (1.6.7) with native extensions
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing warden (1.1.1)
-Installing devise (2.0.4)
-Installing diff-lcs (1.1.3)
-Installing eventmachine (0.12.10) with native extensions
-Installing factory_girl (2.4.2)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing forgery (0.5.0)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashie (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing http_accept_language (1.0.2)
-Installing httpauth (0.1)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing kgio (2.7.4) with native extensions
-Installing lograge (0.0.4)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing oauth2 (0.6.1)
-Installing omniauth (1.1.0)
-Installing omniauth-oauth2 (1.0.2)
-Installing omniauth-github (1.0.1)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Using rack-contrib (1.1.0) from git://github.com/rack/rack-contrib (at master)
-Using bundler (1.2.0.rc)
-Installing rails (3.2.6)
-Installing raindrops (0.10.0) with native extensions
-Using rake-pipeline (0.6.0) from https://github.com/livingsocial/rake-pipeline.git (at master)
-Using rake-pipeline-web-filters (0.6.0) from https://github.com/wycats/rake-pipeline-web-filters.git (at master)
-Installing redis (3.0.1)
-Installing refraction (0.2.0)
-Installing rollout (1.1.0)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing rspec-rails (2.10.1)
-Installing simple_states (0.1.1)
-Installing thin (1.3.1) with native extensions
-Using travis-assets (0.0.1) from https://github.com/travis-ci/travis-assets (at master)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing unicorn (4.1.1) with native extensions
-Installing unobtrusive_flash (0.0.2)
-Installing yard (0.8.2.1)
-Installing versionist (0.2.3)
-Installing webmock (1.7.10)
-Installing yajl-ruby (1.1.0) with native extensions
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m$ cp config/database.example.yml config/database.yml
-$ RAILS_ENV=test bundle exec rake test:ci --trace
-** Invoke test:ci (first_time)
-** Invoke ci_env (first_time)
-** Execute ci_env
-** Invoke db:drop (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:drop
-** Invoke db:create (first_time)
-** Invoke db:load_config
-** Execute db:create
-** Invoke db:test:load (first_time)
-** Invoke db:test:purge (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:test:purge
-** Execute db:test:load
-** Invoke db:test:load_schema (first_time)
-** Invoke db:test:purge
-** Execute db:test:load_schema
-** Invoke db:schema:load (first_time)
-** Invoke environment
-** Execute db:schema:load
-** Invoke spec (first_time)
-** Invoke db:test:prepare (first_time)
-** Invoke db:abort_if_pending_migrations (first_time)
-** Invoke environment
-** Execute db:abort_if_pending_migrations
-** Execute db:test:prepare
-** Invoke db:test:load
-** Execute spec
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/controllers/v1/service_hooks_controller_spec.rb ./spec/controllers/v1/builds_controller_spec.rb ./spec/controllers/v1/repositories_controller_spec.rb ./spec/controllers/v1/jobs_controller_spec.rb ./spec/controllers/v1/workers_controller_spec.rb ./spec/controllers/v1/branches_controller_spec.rb ./spec/controllers/v2/service_hooks_controller_spec.rb ./spec/controllers/application_controller_spec.rb ./spec/controllers/profiles_controller_spec.rb ./spec/client/service_hooks_spec.rb ./spec/client/events/job_queue_spec.rb ./spec/client/events/build_spec.rb ./spec/helpers/application_helper_spec.rb ./spec/requests/shortener_controller_spec.rb ./spec/views/repository_cctray_xml_output_spec.rb ./spec/routing/v2_spec.rb ./spec/routing/v1_spec.rb ./spec/integration/jsonp_api_spec.rb ./spec/integration/consuming_messages_spec.rb ./spec/integration/build_process_spec.rb ./spec/integration/routes_redirection_spec.rb ./spec/lib/statistics_spec.rb
-Run options:
- include {:focused=>true}
- exclude {:js=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-V1::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
- subscribes to a service hook
-[32m creates a repository if it does not exist[0m
-[32m updates an existing repository if it exists[0m
- unsubscribes from the service hook
-[32m updates an existing repository[0m
-
-V1::BuildsController
- GET :index
-[32m returns a list of builds in json[0m
- GET :show
- when called using /builds/:id
-[32m returns build details in json[0m
- when called in a nested repositories call eg. /svenfuchs/i18n/builds/:id
-[32m returns build details in json[0m
-[32m returns 404 with wrong repository id[0m
-
-V1::RepositoriesController
- GET :index returns a list of repositories
- in json
-[32m ordered by last build started date[0m
-[32m filtered by owner name[0m
- GET :show, format json
-[32m returns info about repository in json format[0m
-[32m returns not found for an unknown repository[0m
- with parameter rvm:1.8.7
-[32m returns last build result passing[0m
- with parameter rvm:1.9.2
-[32m return last build result failing[0m
- with parameters rvm:1.8.7 and gemfile:test/Gemfile.rails-2.3.x
-[32m return last build result passing[0m
- with parameters rvm:1.9.2 and gemfile:test/Gemfile.rails-3.0.x
-[32m return last build result failing[0m
- with parameters rvm:1.8.7, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result passing[0m
- with parameters rvm:1.9.2, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result failing[0m
- with parameters rvm:perl
-[32m return last build result for the parent build[0m
- GET :show, format xml (schema: not specified)
-[32m return info about repository in xml format[0m
- GET :show, format xml (schema: cctray)
-[32m returns info about repository in CCTray (CruiseControl) XML format[0m
- GET :show, format xml (schema: unknown)
-[32m does not attempt to render unsupported XML schemas[0m
- GET :show, format png
- without a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "stable" when there is a running build but the previous one has passed[0m
- with a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "passing" when there is a running build but the previous one has passed[0m
-
-V1::JobsController
- GET :index
-[32m index lists all jobs on the queue[0m
- GET :show
-[32m in json[0m
-
-V1::WorkersController
-[32m index lists all workers[0m
-
-V1::BranchesController
- GET :index
-[32m returns a list of builds in json[0m
-
-V2::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
-[32m subscribes to a service hook if active => true was given[0m
-[32m unsubscribes from the service hook if active => false was given[0m
-
-HomeController
- i18n locale
-[32m the default locale is en[0m
- set_locale
-[32m prefers hl query parameter over anything else[0m
-[32m prefers the session[:locale] if there is no hl parameter[0m
-[32m prefers current_user.locale if session[:locale] is empty and there is no hl query paramter[0m
-[32m prefers the http_accept_language if session[locale] is empty, there is no hl query parameter and no current_user.local[0m
-[32m uses the default locale when nothing is specified[0m
-
-ProfilesController
- GET :show
-[32m renders the profile html page[0m
- POST :update
-[32m updates the locale for the user profile[0m
- POST :sync
- given the current user is not being synced
-[32m schedules a sync job[0m
-[32m sets the current user to being synced[0m
- given the current user is being synced
-[32m does not schedule a sync job[0m
-[32m does not set the current user to being synced[0m
-
-ApplicationHelper
- active_page?
-[32m #active_page? returns true when the given route matches the current page[0m
-[32m #active_page? returns false when the given route does not matche the current page[0m
- localization links
- switch_locale_link
-[32m should add in the language option to the current path[0m
- gravatar
-[32m #gravatar returns an IMG tag for a given user[0m
-[32m #gravatar with a given :size returns an IMG tag with the given :size[0m
-
-ShortenerController
- GET /
-[32m should redirect to travis-ci.org[0m
- GET /:id
-[32m should redirect to the found url[0m
-[32m should raise a 404 if the url could not be found[0m
-
-repositories/show/cctray.xml.builder
-[32m renders the basic details of a repository[0m
-[32m renders the correct result for a repository with no running build[0m
-[32m renders the last build time in the correct format[0m
-[32m renders the correct activity result for a repository with a running build[0m
-[32m renders the correct activity result for a repository with no builds[0m
-[32m renders the correct build result for a repository whose last build failed[0m
-[32m renders the correct build result for a repository whose last build passed[0m
-[32m renders the correct build result for a repository whose last build has an unknown result[0m
-
-v2
- GET to repositories.json?version=2
-[32m routes to V2::RepositoriesController#index[0m
- GET to repositories/1.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
- GET to builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to builds/1.json?version=2
-[32m routes to V2::BuildsController#show[0m
- GET to branches.json?version=2
-[32m routes to V2::BranchesController#index[0m
- GET to jobs.json?version=2
-[32m routes to V2::JobsController#index[0m
- GET to jobs/1.json?version=2
-[32m routes to V2::JobsController#show[0m
- GET to artifacts/1.json?version=2
-[32m routes to V2::ArtifactsController#index[0m
- GET to workers.json?version=2
-[32m routes to V2::WorkersController#index[0m
- GET to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#index[0m
- PUT to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#update[0m
- GET to :owner_name/:name.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml?version=2
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json?version=2
-[32m routes to V2::BuildsController#show[0m
-
-v1
- GET to repositories.json
-[32m routes to V1::RepositoriesController#index[0m
- GET to repositories/1.json
-[32m routes to V1::RepositoriesController#show[0m
- GET to builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to builds/1.json
-[32m routes to V1::BuildsController#show[0m
- GET to branches.json
-[32m routes to V1::BranchesController#index[0m
- GET to jobs.json
-[32m routes to V1::JobsController#index[0m
- GET to jobs/1.json
-[32m routes to V1::JobsController#show[0m
- GET to workers.json
-[32m routes to V1::WorkersController#index[0m
- GET to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#index[0m
- PUT to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#update[0m
- GET to :owner_name/:name.json
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json
-[32m routes to V1::BuildsController#show[0m
-
-JSONP API
- callback parameter passed
-[32m returns text/javascript content type[0m
-[32m returns response in jsonp format[0m
- no callback parameter passed
-[32m returns application/json content type[0m
-[32m returns response in json format[0m
- callback parameter is not valid
-[32m uses valid path[0m
-[32m returns bad request body[0m
-[32m returns 400 status code[0m
-
-routes redirection
-[32m should redirect to the default locale when redirecting[0m
-[32m the user is redirected to the hash bang version of the user route[0m
-[32m the user is redirected to the hash bang version of the repository route[0m
-[32m the user is redirected to the hash bang version of the repository builds route[0m
-[32m the user is redirected to the hash bang version of the repository build route[0m
-
-Statistics
- when listing daily test counts
-[32m should return the jobs per day[0m
- when listing total repositories
-[32m should return the number per day[0m
-[32m should include the total growth[0m
-
-Finished in 32.72 seconds
-[32m127 examples, 0 failures[0m
-** Execute test:ci
-
-Done. Build script exited with: 0
-', 1903117, 'Artifact::Log', '2012-07-19 10:33:40.432000', '2012-07-19 10:34:00.382000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1568165, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=true
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-ci.git travis-ci/travis-ci
-$ cd travis-ci/travis-ci
-$ git fetch origin +refs/pull/636/merge:
-remote: Counting objects: 186, done.[K
-remote: Compressing objects: 2% (1/42) [Kremote: Compressing objects: 4% (2/42) [Kremote: Compressing objects: 7% (3/42) [Kremote: Compressing objects: 9% (4/42) [Kremote: Compressing objects: 11% (5/42) [Kremote: Compressing objects: 14% (6/42) [Kremote: Compressing objects: 16% (7/42) [Kremote: Compressing objects: 19% (8/42) [Kremote: Compressing objects: 21% (9/42) [Kremote: Compressing objects: 23% (10/42) [Kremote: Compressing objects: 26% (11/42) [Kremote: Compressing objects: 28% (12/42) [Kremote: Compressing objects: 30% (13/42) [Kremote: Compressing objects: 33% (14/42) [Kremote: Compressing objects: 35% (15/42) [Kremote: Compressing objects: 38% (16/42) [Kremote: Compressing objects: 40% (17/42) [Kremote: Compressing objects: 42% (18/42) [Kremote: Compressing objects: 45% (19/42) [Kremote: Compressing objects: 47% (20/42) [Kremote: Compressing objects: 50% (21/42) [Kremote: Compressing objects: 52% (22/42) [Kremote: Compressing objects: 54% (23/42) [Kremote: Compressing objects: 57% (24/42) [Kremote: Compressing objects: 59% (25/42) [Kremote: Compressing objects: 61% (26/42) [Kremote: Compressing objects: 64% (27/42) [Kremote: Compressing objects: 66% (28/42) [Kremote: Compressing objects: 69% (29/42) [Kremote: Compressing objects: 71% (30/42) [Kremote: Compressing objects: 73% (31/42) [Kremote: Compressing objects: 76% (32/42) [Kremote: Compressing objects: 78% (33/42) [Kremote: Compressing objects: 80% (34/42) [Kremote: Compressing objects: 83% (35/42) [Kremote: Compressing objects: 85% (36/42) [Kremote: Compressing objects: 88% (37/42) [Kremote: Compressing objects: 90% (38/42) [Kremote: Compressing objects: 92% (39/42) [Kremote: Compressing objects: 95% (40/42) [Kremote: Compressing objects: 97% (41/42) [Kremote: Compressing objects: 100% (42/42) [Kremote: Compressing objects: 100% (42/42), done.[K
-Receiving objects: 0% (1/106) Receiving objects: 1% (2/106) Receiving objects: 2% (3/106) Receiving objects: 3% (4/106) Receiving objects: 4% (5/106) Receiving objects: 5% (6/106) Receiving objects: 6% (7/106) Receiving objects: 7% (8/106) Receiving objects: 8% (9/106) Receiving objects: 9% (10/106) Receiving objects: 10% (11/106) Receiving objects: 11% (12/106) Receiving objects: 12% (13/106) Receiving objects: 13% (14/106) Receiving objects: 14% (15/106) Receiving objects: 15% (16/106) Receiving objects: 16% (17/106) Receiving objects: 17% (19/106) Receiving objects: 18% (20/106) Receiving objects: 19% (21/106) Receiving objects: 20% (22/106) Receiving objects: 21% (23/106) Receiving objects: 22% (24/106) Receiving objects: 23% (25/106) Receiving objects: 24% (26/106) Receiving objects: 25% (27/106) Receiving objects: 26% (28/106) Receiving objects: 27% (29/106) Receiving objects: 28% (30/106) Receiving objects: 29% (31/106) Receiving objects: 30% (32/106) Receiving objects: 31% (33/106) Receiving objects: 32% (34/106) Receiving objects: 33% (35/106) Receiving objects: 34% (37/106) Receiving objects: 35% (38/106) Receiving objects: 36% (39/106) Receiving objects: 37% (40/106) Receiving objects: 38% (41/106) Receiving objects: 39% (42/106) Receiving objects: 40% (43/106) Receiving objects: 41% (44/106) Receiving objects: 42% (45/106) Receiving objects: 43% (46/106) Receiving objects: 44% (47/106) Receiving objects: 45% (48/106) Receiving objects: 46% (49/106) Receiving objects: 47% (50/106) Receiving objects: 48% (51/106) Receiving objects: 49% (52/106) Receiving objects: 50% (53/106) Receiving objects: 51% (55/106) Receiving objects: 52% (56/106) Receiving objects: 53% (57/106) Receiving objects: 54% (58/106) Receiving objects: 55% (59/106) Receiving objects: 56% (60/106) Receiving objects: 57% (61/106) Receiving objects: 58% (62/106) Receiving objects: 59% (63/106) Receiving objects: 60% (64/106) Receiving objects: 61% (65/106) Receiving objects: 62% (66/106) Receiving objects: 63% (67/106) Receiving objects: 64% (68/106) Receiving objects: 65% (69/106) Receiving objects: 66% (70/106) Receiving objects: 67% (72/106) Receiving objects: 68% (73/106) Receiving objects: 69% (74/106) Receiving objects: 70% (75/106) Receiving objects: 71% (76/106) Receiving objects: 72% (77/106) Receiving objects: 73% (78/106) Receiving objects: 74% (79/106) Receiving objects: 75% (80/106) Receiving objects: 76% (81/106) Receiving objects: 77% (82/106) Receiving objects: 78% (83/106) Receiving objects: 79% (84/106) Receiving objects: 80% (85/106) Receiving objects: 81% (86/106) Receiving objects: 82% (87/106) Receiving objects: 83% (88/106) Receiving objects: 84% (90/106) Receiving objects: 85% (91/106) Receiving objects: 86% (92/106) Receiving objects: 87% (93/106) Receiving objects: 88% (94/106) Receiving objects: 89% (95/106) Receiving objects: 90% (96/106) Receiving objects: 91% (97/106) Receiving objects: 92% (98/106) Receiving objects: 93% (99/106) Receiving objects: 94% (100/106) Receiving objects: 95% (101/106) Receiving objects: 96% (102/106) Receiving objects: 97% (103/106) Receiving objects: 98% (104/106) Receiving objects: 99% (105/106) Receiving objects: 100% (106/106) Receiving objects: 100% (106/106), 19.34 KiB, done.
-Resolving deltas: 0% (0/61) Resolving deltas: 1% (1/61) Resolving deltas: 3% (2/61) Resolving deltas: 4% (3/61) Resolving deltas: 6% (4/61) Resolving deltas: 8% (5/61) remote: Total 106 (delta 61), reused 106 (delta 61)[K
-Resolving deltas: 9% (6/61) Resolving deltas: 11% (7/61) Resolving deltas: 13% (8/61) Resolving deltas: 14% (9/61) Resolving deltas: 16% (10/61) Resolving deltas: 18% (11/61) Resolving deltas: 19% (12/61) Resolving deltas: 21% (13/61) Resolving deltas: 22% (14/61) Resolving deltas: 24% (15/61) Resolving deltas: 26% (16/61) Resolving deltas: 27% (17/61) Resolving deltas: 29% (18/61) Resolving deltas: 31% (19/61) Resolving deltas: 32% (20/61) Resolving deltas: 34% (21/61) Resolving deltas: 36% (22/61) Resolving deltas: 37% (23/61) Resolving deltas: 39% (24/61) Resolving deltas: 40% (25/61) Resolving deltas: 42% (26/61) Resolving deltas: 44% (27/61) Resolving deltas: 45% (28/61) Resolving deltas: 47% (29/61) Resolving deltas: 49% (30/61) Resolving deltas: 50% (31/61) Resolving deltas: 52% (32/61) Resolving deltas: 54% (33/61) Resolving deltas: 55% (34/61) Resolving deltas: 57% (35/61) Resolving deltas: 59% (36/61) Resolving deltas: 60% (37/61) Resolving deltas: 62% (38/61) Resolving deltas: 63% (39/61) Resolving deltas: 65% (40/61) Resolving deltas: 67% (41/61) Resolving deltas: 68% (42/61) Resolving deltas: 70% (43/61) Resolving deltas: 72% (44/61) Resolving deltas: 73% (45/61) Resolving deltas: 75% (46/61) Resolving deltas: 77% (47/61) Resolving deltas: 78% (48/61) Resolving deltas: 81% (50/61) Resolving deltas: 83% (51/61) Resolving deltas: 85% (52/61) Resolving deltas: 86% (53/61) Resolving deltas: 88% (54/61) Resolving deltas: 90% (55/61) Resolving deltas: 91% (56/61) Resolving deltas: 93% (57/61) Resolving deltas: 95% (58/61) Resolving deltas: 96% (59/61) Resolving deltas: 98% (60/61) Resolving deltas: 100% (61/61) Resolving deltas: 100% (61/61), completed with 55 local objects.
-From git://github.com/travis-ci/travis-ci
- * branch refs/pull/636/merge -> FETCH_HEAD
-$ git checkout -qf bc6a35b9cd515d9607ae4abdff6ade93509c3b05
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-ci/Gemfile
-$ gem install bundler --pre
-Fetching: bundler-1.2.0.rc.gemFetching: bundler-1.2.0.rc.gem ( 6%)Fetching: bundler-1.2.0.rc.gem ( 13%)Fetching: bundler-1.2.0.rc.gem ( 17%)Fetching: bundler-1.2.0.rc.gem ( 25%)Fetching: bundler-1.2.0.rc.gem ( 32%)Fetching: bundler-1.2.0.rc.gem ( 33%)Fetching: bundler-1.2.0.rc.gem ( 37%)Fetching: bundler-1.2.0.rc.gem ( 44%)Fetching: bundler-1.2.0.rc.gem ( 51%)Fetching: bundler-1.2.0.rc.gem ( 59%)Fetching: bundler-1.2.0.rc.gem ( 66%)Fetching: bundler-1.2.0.rc.gem ( 73%)Fetching: bundler-1.2.0.rc.gem ( 81%)Fetching: bundler-1.2.0.rc.gem ( 88%)Fetching: bundler-1.2.0.rc.gem ( 96%)Fetching: bundler-1.2.0.rc.gem (100%)Fetching: bundler-1.2.0.rc.gem (100%)
-Successfully installed bundler-1.2.0.rc
-1 gem installed
-$ bundle install --without development
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://github.com/rack/rack-contrib
-remote: Counting objects: 1054, done.[K
-remote: Compressing objects: 0% (1/443) [Kremote: Compressing objects: 1% (5/443) [Kremote: Compressing objects: 2% (9/443) [Kremote: Compressing objects: 3% (14/443) [Kremote: Compressing objects: 4% (18/443) [Kremote: Compressing objects: 5% (23/443) [Kremote: Compressing objects: 6% (27/443) [Kremote: Compressing objects: 7% (32/443) [Kremote: Compressing objects: 8% (36/443) [Kremote: Compressing objects: 9% (40/443) [Kremote: Compressing objects: 10% (45/443) [Kremote: Compressing objects: 11% (49/443) [Kremote: Compressing objects: 12% (54/443) [Kremote: Compressing objects: 13% (58/443) [Kremote: Compressing objects: 14% (63/443) [Kremote: Compressing objects: 15% (67/443) [Kremote: Compressing objects: 16% (71/443) [Kremote: Compressing objects: 17% (76/443) [Kremote: Compressing objects: 18% (80/443) [Kremote: Compressing objects: 19% (85/443) [Kremote: Compressing objects: 20% (89/443) [Kremote: Compressing objects: 21% (94/443) [Kremote: Compressing objects: 22% (98/443) [Kremote: Compressing objects: 23% (102/443) [Kremote: Compressing objects: 24% (107/443) [Kremote: Compressing objects: 25% (111/443) [Kremote: Compressing objects: 26% (116/443) [Kremote: Compressing objects: 27% (120/443) [Kremote: Compressing objects: 28% (125/443) [Kremote: Compressing objects: 29% (129/443) [Kremote: Compressing objects: 30% (133/443) [Kremote: Compressing objects: 31% (138/443) [Kremote: Compressing objects: 32% (142/443) [Kremote: Compressing objects: 33% (147/443) [Kremote: Compressing objects: 34% (151/443) [Kremote: Compressing objects: 35% (156/443) [Kremote: Compressing objects: 36% (160/443) [Kremote: Compressing objects: 37% (164/443) [Kremote: Compressing objects: 38% (169/443) [Kremote: Compressing objects: 39% (173/443) [Kremote: Compressing objects: 40% (178/443) [Kremote: Compressing objects: 41% (182/443) [Kremote: Compressing objects: 42% (187/443) [Kremote: Compressing objects: 43% (191/443) [Kremote: Compressing objects: 44% (195/443) [Kremote: Compressing objects: 45% (200/443) [Kremote: Compressing objects: 46% (204/443) [Kremote: Compressing objects: 47% (209/443) [Kremote: Compressing objects: 48% (213/443) [Kremote: Compressing objects: 49% (218/443) [Kremote: Compressing objects: 50% (222/443) [Kremote: Compressing objects: 51% (226/443) [Kremote: Compressing objects: 52% (231/443) [Kremote: Compressing objects: 53% (235/443) [Kremote: Compressing objects: 54% (240/443) [Kremote: Compressing objects: 55% (244/443) [Kremote: Compressing objects: 56% (249/443) [Kremote: Compressing objects: 57% (253/443) [Kremote: Compressing objects: 58% (257/443) [Kremote: Compressing objects: 59% (262/443) [Kremote: Compressing objects: 60% (266/443) [Kremote: Compressing objects: 61% (271/443) [Kremote: Compressing objects: 62% (275/443) [Kremote: Compressing objects: 63% (280/443) [Kremote: Compressing objects: 64% (284/443) [Kremote: Compressing objects: 65% (288/443) [Kremote: Compressing objects: 66% (293/443) [Kremote: Compressing objects: 67% (297/443) [Kremote: Compressing objects: 68% (302/443) [Kremote: Compressing objects: 69% (306/443) [Kremote: Compressing objects: 70% (311/443) [Kremote: Compressing objects: 71% (315/443) [Kremote: Compressing objects: 72% (319/443) [Kremote: Compressing objects: 73% (324/443) [Kremote: Compressing objects: 74% (328/443) [Kremote: Compressing objects: 75% (333/443) [Kremote: Compressing objects: 76% (337/443) [Kremote: Compressing objects: 77% (342/443) [Kremote: Compressing objects: 78% (346/443) [Kremote: Compressing objects: 79% (350/443) [Kremote: Compressing objects: 80% (355/443) [Kremote: Compressing objects: 81% (359/443) [Kremote: Compressing objects: 82% (364/443) [Kremote: Compressing objects: 83% (368/443) [Kremote: Compressing objects: 84% (373/443) [Kremote: Compressing objects: 85% (377/443) [Kremote: Compressing objects: 86% (381/443) [Kremote: Compressing objects: 87% (386/443) [Kremote: Compressing objects: 88% (390/443) [Kremote: Compressing objects: 89% (395/443) [Kremote: Compressing objects: 90% (399/443) [Kremote: Compressing objects: 91% (404/443) [Kremote: Compressing objects: 92% (408/443) [Kremote: Compressing objects: 93% (412/443) [Kremote: Compressing objects: 94% (417/443) [Kremote: Compressing objects: 95% (421/443) [Kremote: Compressing objects: 96% (426/443) [Kremote: Compressing objects: 97% (430/443) [Kremote: Compressing objects: 98% (435/443) [Kremote: Compressing objects: 99% (439/443) [Kremote: Compressing objects: 100% (443/443) [Kremote: Compressing objects: 100% (443/443), done.[K
-Receiving objects: 0% (1/1054) Receiving objects: 1% (11/1054) Receiving objects: 2% (22/1054) Receiving objects: 3% (32/1054) Receiving objects: 4% (43/1054) Receiving objects: 5% (53/1054) Receiving objects: 6% (64/1054) Receiving objects: 7% (74/1054) Receiving objects: 8% (85/1054) Receiving objects: 9% (95/1054) Receiving objects: 10% (106/1054) Receiving objects: 11% (116/1054) Receiving objects: 12% (127/1054) Receiving objects: 13% (138/1054) Receiving objects: 14% (148/1054) Receiving objects: 15% (159/1054) Receiving objects: 16% (169/1054) Receiving objects: 17% (180/1054) Receiving objects: 18% (190/1054) Receiving objects: 19% (201/1054) Receiving objects: 20% (211/1054) Receiving objects: 21% (222/1054) Receiving objects: 22% (232/1054) Receiving objects: 23% (243/1054) Receiving objects: 24% (253/1054) Receiving objects: 25% (264/1054) Receiving objects: 26% (275/1054) Receiving objects: 27% (285/1054) Receiving objects: 28% (296/1054) Receiving objects: 29% (306/1054) Receiving objects: 30% (317/1054) Receiving objects: 31% (327/1054) Receiving objects: 32% (338/1054) Receiving objects: 33% (348/1054) Receiving objects: 34% (359/1054) Receiving objects: 35% (369/1054) Receiving objects: 36% (380/1054) Receiving objects: 37% (390/1054) Receiving objects: 38% (401/1054) Receiving objects: 39% (412/1054) Receiving objects: 40% (422/1054) Receiving objects: 41% (433/1054) Receiving objects: 42% (443/1054) Receiving objects: 43% (454/1054) Receiving objects: 44% (464/1054) Receiving objects: 45% (475/1054) Receiving objects: 46% (485/1054) Receiving objects: 47% (496/1054) Receiving objects: 48% (506/1054) Receiving objects: 49% (517/1054) Receiving objects: 50% (527/1054) Receiving objects: 51% (538/1054) Receiving objects: 52% (549/1054) Receiving objects: 53% (559/1054) Receiving objects: 54% (570/1054) Receiving objects: 55% (580/1054) Receiving objects: 56% (591/1054) Receiving objects: 57% (601/1054) Receiving objects: 58% (612/1054) Receiving objects: 59% (622/1054) Receiving objects: 60% (633/1054) Receiving objects: 61% (643/1054) Receiving objects: 62% (654/1054) Receiving objects: 63% (665/1054) remote: Total 1054 (delta 573), reused 925 (delta 478)[K
-Receiving objects: 64% (675/1054) Receiving objects: 65% (686/1054) Receiving objects: 66% (696/1054) Receiving objects: 67% (707/1054) Receiving objects: 68% (717/1054) Receiving objects: 69% (728/1054) Receiving objects: 70% (738/1054) Receiving objects: 71% (749/1054) Receiving objects: 72% (759/1054) Receiving objects: 73% (770/1054) Receiving objects: 74% (780/1054) Receiving objects: 75% (791/1054) Receiving objects: 76% (802/1054) Receiving objects: 77% (812/1054) Receiving objects: 78% (823/1054) Receiving objects: 79% (833/1054) Receiving objects: 80% (844/1054) Receiving objects: 81% (854/1054) Receiving objects: 82% (865/1054) Receiving objects: 83% (875/1054) Receiving objects: 84% (886/1054) Receiving objects: 85% (896/1054) Receiving objects: 86% (907/1054) Receiving objects: 87% (917/1054) Receiving objects: 88% (928/1054) Receiving objects: 89% (939/1054) Receiving objects: 90% (949/1054) Receiving objects: 91% (960/1054) Receiving objects: 92% (970/1054) Receiving objects: 93% (981/1054) Receiving objects: 94% (991/1054) Receiving objects: 95% (1002/1054) Receiving objects: 96% (1012/1054) Receiving objects: 97% (1023/1054) Receiving objects: 98% (1033/1054) Receiving objects: 99% (1044/1054) Receiving objects: 100% (1054/1054) Receiving objects: 100% (1054/1054), 136.74 KiB, done.
-Resolving deltas: 0% (0/573) Resolving deltas: 6% (36/573) Resolving deltas: 20% (115/573) Resolving deltas: 30% (174/573) Resolving deltas: 34% (195/573) Resolving deltas: 38% (218/573) Resolving deltas: 41% (240/573) Resolving deltas: 47% (270/573) Resolving deltas: 51% (294/573) Resolving deltas: 55% (320/573) Resolving deltas: 58% (338/573) Resolving deltas: 64% (367/573) Resolving deltas: 71% (409/573) Resolving deltas: 72% (413/573) Resolving deltas: 73% (419/573) Resolving deltas: 74% (425/573) Resolving deltas: 77% (446/573) Resolving deltas: 78% (451/573) Resolving deltas: 79% (454/573) Resolving deltas: 81% (469/573) Resolving deltas: 82% (471/573) Resolving deltas: 85% (489/573) Resolving deltas: 86% (493/573) Resolving deltas: 87% (500/573) Resolving deltas: 88% (506/573) Resolving deltas: 89% (510/573) Resolving deltas: 92% (530/573) Resolving deltas: 93% (533/573) Resolving deltas: 94% (539/573) Resolving deltas: 96% (551/573) Resolving deltas: 97% (557/573) Resolving deltas: 98% (564/573) Resolving deltas: 99% (571/573) Resolving deltas: 100% (573/573) Resolving deltas: 100% (573/573), done.
-Fetching https://github.com/livingsocial/rake-pipeline.git
-remote: Counting objects: 1409, done.[K
-remote: Compressing objects: 0% (1/520) [Kremote: Compressing objects: 1% (6/520) [Kremote: Compressing objects: 2% (11/520) [Kremote: Compressing objects: 3% (16/520) [Kremote: Compressing objects: 4% (21/520) [Kremote: Compressing objects: 5% (26/520) [Kremote: Compressing objects: 6% (32/520) [Kremote: Compressing objects: 7% (37/520) [Kremote: Compressing objects: 8% (42/520) [Kremote: Compressing objects: 9% (47/520) [Kremote: Compressing objects: 10% (52/520) [Kremote: Compressing objects: 11% (58/520) [Kremote: Compressing objects: 12% (63/520) [Kremote: Compressing objects: 13% (68/520) [Kremote: Compressing objects: 14% (73/520) [Kremote: Compressing objects: 15% (78/520) [Kremote: Compressing objects: 16% (84/520) [Kremote: Compressing objects: 17% (89/520) [Kremote: Compressing objects: 18% (94/520) [Kremote: Compressing objects: 19% (99/520) [Kremote: Compressing objects: 20% (104/520) [Kremote: Compressing objects: 21% (110/520) [Kremote: Compressing objects: 22% (115/520) [Kremote: Compressing objects: 23% (120/520) [Kremote: Compressing objects: 24% (125/520) [Kremote: Compressing objects: 25% (130/520) [Kremote: Compressing objects: 26% (136/520) [Kremote: Compressing objects: 27% (141/520) [Kremote: Compressing objects: 28% (146/520) [Kremote: Compressing objects: 29% (151/520) [Kremote: Compressing objects: 30% (156/520) [Kremote: Compressing objects: 31% (162/520) [Kremote: Compressing objects: 32% (167/520) [Kremote: Compressing objects: 33% (172/520) [Kremote: Compressing objects: 34% (177/520) [Kremote: Compressing objects: 35% (182/520) [Kremote: Compressing objects: 36% (188/520) [Kremote: Compressing objects: 37% (193/520) [Kremote: Compressing objects: 38% (198/520) [Kremote: Compressing objects: 39% (203/520) [Kremote: Compressing objects: 40% (208/520) [Kremote: Compressing objects: 41% (214/520) [Kremote: Compressing objects: 42% (219/520) [Kremote: Compressing objects: 43% (224/520) [Kremote: Compressing objects: 44% (229/520) [Kremote: Compressing objects: 45% (234/520) [Kremote: Compressing objects: 46% (240/520) [Kremote: Compressing objects: 47% (245/520) [Kremote: Compressing objects: 48% (250/520) [Kremote: Compressing objects: 49% (255/520) [Kremote: Compressing objects: 50% (260/520) [Kremote: Compressing objects: 51% (266/520) [Kremote: Compressing objects: 52% (271/520) [Kremote: Compressing objects: 53% (276/520) [Kremote: Compressing objects: 54% (281/520) [Kremote: Compressing objects: 55% (286/520) [Kremote: Compressing objects: 56% (292/520) [Kremote: Compressing objects: 57% (297/520) [Kremote: Compressing objects: 58% (302/520) [Kremote: Compressing objects: 59% (307/520) [Kremote: Compressing objects: 60% (312/520) [Kremote: Compressing objects: 61% (318/520) [Kremote: Compressing objects: 62% (323/520) [Kremote: Compressing objects: 63% (328/520) [Kremote: Compressing objects: 64% (333/520) [Kremote: Compressing objects: 65% (338/520) [Kremote: Compressing objects: 66% (344/520) [Kremote: Compressing objects: 67% (349/520) [Kremote: Compressing objects: 68% (354/520) [Kremote: Compressing objects: 69% (359/520) [Kremote: Compressing objects: 70% (364/520) [Kremote: Compressing objects: 71% (370/520) [Kremote: Compressing objects: 72% (375/520) [Kremote: Compressing objects: 73% (380/520) [Kremote: Compressing objects: 74% (385/520) [Kremote: Compressing objects: 75% (390/520) [Kremote: Compressing objects: 76% (396/520) [Kremote: Compressing objects: 77% (401/520) [Kremote: Compressing objects: 78% (406/520) [Kremote: Compressing objects: 79% (411/520) [Kremote: Compressing objects: 80% (416/520) [Kremote: Compressing objects: 81% (422/520) [Kremote: Compressing objects: 82% (427/520) [Kremote: Compressing objects: 83% (432/520) [Kremote: Compressing objects: 84% (437/520) [Kremote: Compressing objects: 85% (442/520) [Kremote: Compressing objects: 86% (448/520) [Kremote: Compressing objects: 87% (453/520) [Kremote: Compressing objects: 88% (458/520) [Kremote: Compressing objects: 89% (463/520) [Kremote: Compressing objects: 90% (468/520) [Kremote: Compressing objects: 91% (474/520) [Kremote: Compressing objects: 92% (479/520) [Kremote: Compressing objects: 93% (484/520) [Kremote: Compressing objects: 94% (489/520) [Kremote: Compressing objects: 95% (494/520) [Kremote: Compressing objects: 96% (500/520) [Kremote: Compressing objects: 97% (505/520) [Kremote: Compressing objects: 98% (510/520) [Kremote: Compressing objects: 99% (515/520) [Kremote: Compressing objects: 100% (520/520) [Kremote: Compressing objects: 100% (520/520), done.[K
-Receiving objects: 0% (1/1409) Receiving objects: 1% (15/1409) Receiving objects: 2% (29/1409) Receiving objects: 3% (43/1409) Receiving objects: 4% (57/1409) Receiving objects: 5% (71/1409) Receiving objects: 6% (85/1409) Receiving objects: 7% (99/1409) Receiving objects: 8% (113/1409) Receiving objects: 9% (127/1409) Receiving objects: 10% (141/1409) Receiving objects: 11% (155/1409) Receiving objects: 12% (170/1409) Receiving objects: 13% (184/1409) Receiving objects: 14% (198/1409) Receiving objects: 15% (212/1409) Receiving objects: 16% (226/1409) Receiving objects: 17% (240/1409) Receiving objects: 18% (254/1409) Receiving objects: 19% (268/1409) Receiving objects: 20% (282/1409) Receiving objects: 21% (296/1409) Receiving objects: 22% (310/1409) Receiving objects: 23% (325/1409) Receiving objects: 24% (339/1409) Receiving objects: 25% (353/1409) Receiving objects: 26% (367/1409), 60.00 KiB | 110 KiB/s Receiving objects: 27% (381/1409), 60.00 KiB | 110 KiB/s Receiving objects: 28% (395/1409), 60.00 KiB | 110 KiB/s Receiving objects: 29% (409/1409), 60.00 KiB | 110 KiB/s Receiving objects: 30% (423/1409), 60.00 KiB | 110 KiB/s Receiving objects: 31% (437/1409), 60.00 KiB | 110 KiB/s Receiving objects: 32% (451/1409), 60.00 KiB | 110 KiB/s Receiving objects: 33% (465/1409), 60.00 KiB | 110 KiB/s Receiving objects: 34% (480/1409), 60.00 KiB | 110 KiB/s Receiving objects: 35% (494/1409), 60.00 KiB | 110 KiB/s Receiving objects: 36% (508/1409), 60.00 KiB | 110 KiB/s Receiving objects: 37% (522/1409), 60.00 KiB | 110 KiB/s Receiving objects: 38% (536/1409), 60.00 KiB | 110 KiB/s Receiving objects: 39% (550/1409), 60.00 KiB | 110 KiB/s Receiving objects: 40% (564/1409), 60.00 KiB | 110 KiB/s Receiving objects: 41% (578/1409), 60.00 KiB | 110 KiB/s Receiving objects: 42% (592/1409), 60.00 KiB | 110 KiB/s Receiving objects: 43% (606/1409), 60.00 KiB | 110 KiB/s Receiving objects: 44% (620/1409), 60.00 KiB | 110 KiB/s Receiving objects: 45% (635/1409), 60.00 KiB | 110 KiB/s Receiving objects: 46% (649/1409), 60.00 KiB | 110 KiB/s Receiving objects: 47% (663/1409), 60.00 KiB | 110 KiB/s Receiving objects: 48% (677/1409), 60.00 KiB | 110 KiB/s Receiving objects: 49% (691/1409), 60.00 KiB | 110 KiB/s Receiving objects: 50% (705/1409), 60.00 KiB | 110 KiB/s Receiving objects: 51% (719/1409), 60.00 KiB | 110 KiB/s Receiving objects: 52% (733/1409), 60.00 KiB | 110 KiB/s Receiving objects: 53% (747/1409), 60.00 KiB | 110 KiB/s Receiving objects: 54% (761/1409), 60.00 KiB | 110 KiB/s Receiving objects: 55% (775/1409), 60.00 KiB | 110 KiB/s Receiving objects: 56% (790/1409), 60.00 KiB | 110 KiB/s Receiving objects: 57% (804/1409), 60.00 KiB | 110 KiB/s Receiving objects: 58% (818/1409), 60.00 KiB | 110 KiB/s Receiving objects: 59% (832/1409), 60.00 KiB | 110 KiB/s Receiving objects: 60% (846/1409), 60.00 KiB | 110 KiB/s remote: Total 1409 (delta 929), reused 1313 (delta 838)[K
-Receiving objects: 61% (860/1409), 60.00 KiB | 110 KiB/s Receiving objects: 62% (874/1409), 60.00 KiB | 110 KiB/s Receiving objects: 63% (888/1409), 60.00 KiB | 110 KiB/s Receiving objects: 64% (902/1409), 60.00 KiB | 110 KiB/s Receiving objects: 65% (916/1409), 60.00 KiB | 110 KiB/s Receiving objects: 66% (930/1409), 60.00 KiB | 110 KiB/s Receiving objects: 67% (945/1409), 60.00 KiB | 110 KiB/s Receiving objects: 68% (959/1409), 60.00 KiB | 110 KiB/s Receiving objects: 69% (973/1409), 60.00 KiB | 110 KiB/s Receiving objects: 70% (987/1409), 60.00 KiB | 110 KiB/s Receiving objects: 71% (1001/1409), 60.00 KiB | 110 KiB/s Receiving objects: 72% (1015/1409), 60.00 KiB | 110 KiB/s Receiving objects: 73% (1029/1409), 60.00 KiB | 110 KiB/s Receiving objects: 74% (1043/1409), 60.00 KiB | 110 KiB/s Receiving objects: 75% (1057/1409), 60.00 KiB | 110 KiB/s Receiving objects: 76% (1071/1409), 60.00 KiB | 110 KiB/s Receiving objects: 77% (1085/1409), 60.00 KiB | 110 KiB/s Receiving objects: 78% (1100/1409), 60.00 KiB | 110 KiB/s Receiving objects: 78% (1103/1409), 172.00 KiB | 158 KiB/s Receiving objects: 79% (1114/1409), 172.00 KiB | 158 KiB/s Receiving objects: 80% (1128/1409), 172.00 KiB | 158 KiB/s Receiving objects: 81% (1142/1409), 172.00 KiB | 158 KiB/s Receiving objects: 82% (1156/1409), 172.00 KiB | 158 KiB/s Receiving objects: 83% (1170/1409), 172.00 KiB | 158 KiB/s Receiving objects: 84% (1184/1409), 172.00 KiB | 158 KiB/s Receiving objects: 85% (1198/1409), 172.00 KiB | 158 KiB/s Receiving objects: 86% (1212/1409), 172.00 KiB | 158 KiB/s Receiving objects: 87% (1226/1409), 172.00 KiB | 158 KiB/s Receiving objects: 88% (1240/1409), 172.00 KiB | 158 KiB/s Receiving objects: 89% (1255/1409), 172.00 KiB | 158 KiB/s Receiving objects: 90% (1269/1409), 172.00 KiB | 158 KiB/s Receiving objects: 91% (1283/1409), 172.00 KiB | 158 KiB/s Receiving objects: 92% (1297/1409), 172.00 KiB | 158 KiB/s Receiving objects: 93% (1311/1409), 172.00 KiB | 158 KiB/s Receiving objects: 94% (1325/1409), 172.00 KiB | 158 KiB/s Receiving objects: 95% (1339/1409), 172.00 KiB | 158 KiB/s Receiving objects: 96% (1353/1409), 172.00 KiB | 158 KiB/s Receiving objects: 97% (1367/1409), 172.00 KiB | 158 KiB/s Receiving objects: 98% (1381/1409), 172.00 KiB | 158 KiB/s Receiving objects: 99% (1395/1409), 172.00 KiB | 158 KiB/s Receiving objects: 100% (1409/1409), 172.00 KiB | 158 KiB/s Receiving objects: 100% (1409/1409), 190.71 KiB | 158 KiB/s, done.
-Resolving deltas: 0% (0/929) Resolving deltas: 18% (173/929) Resolving deltas: 20% (191/929) Resolving deltas: 25% (239/929) Resolving deltas: 26% (246/929) Resolving deltas: 28% (261/929) Resolving deltas: 36% (336/929) Resolving deltas: 37% (347/929) Resolving deltas: 43% (400/929) Resolving deltas: 44% (409/929) Resolving deltas: 45% (422/929) Resolving deltas: 46% (428/929) Resolving deltas: 47% (442/929) Resolving deltas: 48% (446/929) Resolving deltas: 52% (484/929) Resolving deltas: 53% (500/929) Resolving deltas: 54% (504/929) Resolving deltas: 55% (515/929) Resolving deltas: 56% (524/929) Resolving deltas: 57% (531/929) Resolving deltas: 63% (587/929) Resolving deltas: 66% (616/929) Resolving deltas: 67% (628/929) Resolving deltas: 69% (647/929) Resolving deltas: 72% (677/929) Resolving deltas: 73% (680/929) Resolving deltas: 74% (688/929) Resolving deltas: 75% (706/929) Resolving deltas: 77% (724/929) Resolving deltas: 78% (730/929) Resolving deltas: 81% (754/929) Resolving deltas: 82% (762/929) Resolving deltas: 83% (773/929) Resolving deltas: 84% (781/929) Resolving deltas: 85% (790/929) Resolving deltas: 87% (811/929) Resolving deltas: 88% (822/929) Resolving deltas: 89% (832/929) Resolving deltas: 92% (857/929) Resolving deltas: 93% (871/929) Resolving deltas: 96% (900/929) Resolving deltas: 97% (908/929) Resolving deltas: 98% (913/929) Resolving deltas: 99% (925/929) Resolving deltas: 100% (929/929) Resolving deltas: 100% (929/929), done.
-Fetching https://github.com/wycats/rake-pipeline-web-filters.git
-remote: Counting objects: 674, done.[K
-remote: Compressing objects: 0% (1/207) [Kremote: Compressing objects: 1% (3/207) [Kremote: Compressing objects: 2% (5/207) [Kremote: Compressing objects: 3% (7/207) [Kremote: Compressing objects: 4% (9/207) [Kremote: Compressing objects: 5% (11/207) [Kremote: Compressing objects: 6% (13/207) [Kremote: Compressing objects: 7% (15/207) [Kremote: Compressing objects: 8% (17/207) [Kremote: Compressing objects: 9% (19/207) [Kremote: Compressing objects: 10% (21/207) [Kremote: Compressing objects: 11% (23/207) [Kremote: Compressing objects: 12% (25/207) [Kremote: Compressing objects: 13% (27/207) [Kremote: Compressing objects: 14% (29/207) [Kremote: Compressing objects: 15% (32/207) [Kremote: Compressing objects: 16% (34/207) [Kremote: Compressing objects: 17% (36/207) [Kremote: Compressing objects: 18% (38/207) [Kremote: Compressing objects: 19% (40/207) [Kremote: Compressing objects: 20% (42/207) [Kremote: Compressing objects: 21% (44/207) [Kremote: Compressing objects: 22% (46/207) [Kremote: Compressing objects: 23% (48/207) [Kremote: Compressing objects: 24% (50/207) [Kremote: Compressing objects: 25% (52/207) [Kremote: Compressing objects: 26% (54/207) [Kremote: Compressing objects: 27% (56/207) [Kremote: Compressing objects: 28% (58/207) [Kremote: Compressing objects: 29% (61/207) [Kremote: Compressing objects: 30% (63/207) [Kremote: Compressing objects: 31% (65/207) [Kremote: Compressing objects: 32% (67/207) [Kremote: Compressing objects: 33% (69/207) [Kremote: Compressing objects: 34% (71/207) [Kremote: Compressing objects: 35% (73/207) [Kremote: Compressing objects: 36% (75/207) [Kremote: Compressing objects: 37% (77/207) [Kremote: Compressing objects: 38% (79/207) [Kremote: Compressing objects: 39% (81/207) [Kremote: Compressing objects: 40% (83/207) [Kremote: Compressing objects: 41% (85/207) [Kremote: Compressing objects: 42% (87/207) [Kremote: Compressing objects: 43% (90/207) [Kremote: Compressing objects: 44% (92/207) [Kremote: Compressing objects: 45% (94/207) [Kremote: Compressing objects: 46% (96/207) [Kremote: Compressing objects: 47% (98/207) [Kremote: Compressing objects: 48% (100/207) [Kremote: Compressing objects: 49% (102/207) [Kremote: Compressing objects: 50% (104/207) [Kremote: Compressing objects: 51% (106/207) [Kremote: Compressing objects: 52% (108/207) [Kremote: Compressing objects: 53% (110/207) [Kremote: Compressing objects: 54% (112/207) [Kremote: Compressing objects: 55% (114/207) [Kremote: Compressing objects: 56% (116/207) [Kremote: Compressing objects: 57% (118/207) [Kremote: Compressing objects: 58% (121/207) [Kremote: Compressing objects: 59% (123/207) [Kremote: Compressing objects: 60% (125/207) [Kremote: Compressing objects: 61% (127/207) [Kremote: Compressing objects: 62% (129/207) [Kremote: Compressing objects: 63% (131/207) [Kremote: Compressing objects: 64% (133/207) [Kremote: Compressing objects: 65% (135/207) [Kremote: Compressing objects: 66% (137/207) [Kremote: Compressing objects: 67% (139/207) [Kremote: Compressing objects: 68% (141/207) [Kremote: Compressing objects: 69% (143/207) [Kremote: Compressing objects: 70% (145/207) [Kremote: Compressing objects: 71% (147/207) [Kremote: Compressing objects: 72% (150/207) [Kremote: Compressing objects: 73% (152/207) [Kremote: Compressing objects: 74% (154/207) [Kremote: Compressing objects: 75% (156/207) [Kremote: Compressing objects: 76% (158/207) [Kremote: Compressing objects: 77% (160/207) [Kremote: Compressing objects: 78% (162/207) [Kremote: Compressing objects: 79% (164/207) [Kremote: Compressing objects: 80% (166/207) [Kremote: Compressing objects: 81% (168/207) [Kremote: Compressing objects: 82% (170/207) [Kremote: Compressing objects: 83% (172/207) [Kremote: Compressing objects: 84% (174/207) [Kremote: Compressing objects: 85% (176/207) [Kremote: Compressing objects: 86% (179/207) [Kremote: Compressing objects: 87% (181/207) [Kremote: Compressing objects: 88% (183/207) [Kremote: Compressing objects: 89% (185/207) [Kremote: Compressing objects: 90% (187/207) [Kremote: Compressing objects: 91% (189/207) [Kremote: Compressing objects: 92% (191/207) [Kremote: Compressing objects: 93% (193/207) [Kremote: Compressing objects: 94% (195/207) [Kremote: Compressing objects: 95% (197/207) [Kremote: Compressing objects: 96% (199/207) [Kremote: Compressing objects: 97% (201/207) [Kremote: Compressing objects: 98% (203/207) [Kremote: Compressing objects: 99% (205/207) [Kremote: Compressing objects: 100% (207/207) [Kremote: Compressing objects: 100% (207/207), done.[K
-Receiving objects: 0% (1/674) Receiving objects: 1% (7/674) Receiving objects: 2% (14/674) Receiving objects: 3% (21/674) Receiving objects: 4% (27/674) Receiving objects: 5% (34/674) Receiving objects: 6% (41/674) Receiving objects: 7% (48/674) Receiving objects: 8% (54/674) Receiving objects: 9% (61/674) Receiving objects: 10% (68/674) Receiving objects: 11% (75/674) Receiving objects: 12% (81/674) Receiving objects: 13% (88/674) Receiving objects: 14% (95/674) Receiving objects: 15% (102/674) Receiving objects: 16% (108/674) Receiving objects: 17% (115/674) Receiving objects: 18% (122/674) Receiving objects: 19% (129/674) Receiving objects: 20% (135/674) Receiving objects: 21% (142/674) Receiving objects: 22% (149/674) Receiving objects: 23% (156/674) Receiving objects: 24% (162/674) remote: Total 674 (delta 491), reused 646 (delta 463)[K
-Receiving objects: 25% (169/674) Receiving objects: 26% (176/674) Receiving objects: 27% (182/674) Receiving objects: 28% (189/674) Receiving objects: 29% (196/674) Receiving objects: 30% (203/674) Receiving objects: 31% (209/674) Receiving objects: 32% (216/674) Receiving objects: 33% (223/674) Receiving objects: 34% (230/674) Receiving objects: 35% (236/674) Receiving objects: 36% (243/674) Receiving objects: 37% (250/674) Receiving objects: 38% (257/674) Receiving objects: 39% (263/674) Receiving objects: 40% (270/674) Receiving objects: 41% (277/674) Receiving objects: 42% (284/674) Receiving objects: 43% (290/674) Receiving objects: 44% (297/674) Receiving objects: 45% (304/674) Receiving objects: 46% (311/674) Receiving objects: 47% (317/674) Receiving objects: 48% (324/674) Receiving objects: 49% (331/674) Receiving objects: 50% (337/674) Receiving objects: 51% (344/674) Receiving objects: 52% (351/674) Receiving objects: 53% (358/674) Receiving objects: 54% (364/674) Receiving objects: 55% (371/674) Receiving objects: 56% (378/674) Receiving objects: 57% (385/674) Receiving objects: 58% (391/674) Receiving objects: 59% (398/674) Receiving objects: 60% (405/674) Receiving objects: 61% (412/674) Receiving objects: 62% (418/674) Receiving objects: 63% (425/674) Receiving objects: 64% (432/674) Receiving objects: 65% (439/674) Receiving objects: 66% (445/674) Receiving objects: 67% (452/674) Receiving objects: 68% (459/674) Receiving objects: 69% (466/674) Receiving objects: 70% (472/674) Receiving objects: 71% (479/674) Receiving objects: 72% (486/674) Receiving objects: 73% (493/674) Receiving objects: 74% (499/674) Receiving objects: 75% (506/674) Receiving objects: 76% (513/674) Receiving objects: 77% (519/674) Receiving objects: 78% (526/674) Receiving objects: 79% (533/674) Receiving objects: 80% (540/674) Receiving objects: 81% (546/674) Receiving objects: 82% (553/674) Receiving objects: 83% (560/674) Receiving objects: 84% (567/674) Receiving objects: 85% (573/674) Receiving objects: 86% (580/674) Receiving objects: 87% (587/674) Receiving objects: 88% (594/674) Receiving objects: 89% (600/674) Receiving objects: 90% (607/674) Receiving objects: 91% (614/674) Receiving objects: 92% (621/674) Receiving objects: 93% (627/674) Receiving objects: 94% (634/674) Receiving objects: 95% (641/674) Receiving objects: 96% (648/674) Receiving objects: 97% (654/674) Receiving objects: 98% (661/674) Receiving objects: 99% (668/674) Receiving objects: 100% (674/674) Receiving objects: 100% (674/674), 90.14 KiB, done.
-Resolving deltas: 0% (0/491) Resolving deltas: 18% (93/491) Resolving deltas: 19% (96/491) Resolving deltas: 28% (140/491) Resolving deltas: 33% (164/491) Resolving deltas: 34% (168/491) Resolving deltas: 39% (192/491) Resolving deltas: 41% (204/491) Resolving deltas: 42% (210/491) Resolving deltas: 47% (232/491) Resolving deltas: 52% (259/491) Resolving deltas: 53% (261/491) Resolving deltas: 54% (268/491) Resolving deltas: 55% (272/491) Resolving deltas: 56% (276/491) Resolving deltas: 57% (280/491) Resolving deltas: 61% (302/491) Resolving deltas: 62% (305/491) Resolving deltas: 65% (321/491) Resolving deltas: 66% (326/491) Resolving deltas: 70% (344/491) Resolving deltas: 72% (355/491) Resolving deltas: 74% (368/491) Resolving deltas: 75% (371/491) Resolving deltas: 78% (386/491) Resolving deltas: 79% (389/491) Resolving deltas: 87% (432/491) Resolving deltas: 91% (451/491) Resolving deltas: 93% (458/491) Resolving deltas: 94% (463/491) Resolving deltas: 98% (482/491) Resolving deltas: 100% (491/491) Resolving deltas: 100% (491/491), done.
-Fetching https://github.com/travis-ci/travis-assets
-remote: Counting objects: 3310, done.[K
-remote: Compressing objects: 0% (1/2323) [Kremote: Compressing objects: 1% (24/2323) [Kremote: Compressing objects: 2% (47/2323) [Kremote: Compressing objects: 3% (70/2323) [Kremote: Compressing objects: 4% (93/2323) [Kremote: Compressing objects: 5% (117/2323) [Kremote: Compressing objects: 6% (140/2323) [Kremote: Compressing objects: 7% (163/2323) [Kremote: Compressing objects: 7% (184/2323) [Kremote: Compressing objects: 8% (186/2323) [Kremote: Compressing objects: 9% (210/2323) [Kremote: Compressing objects: 10% (233/2323) [Kremote: Compressing objects: 11% (256/2323) [Kremote: Compressing objects: 12% (279/2323) [Kremote: Compressing objects: 13% (302/2323) [Kremote: Compressing objects: 14% (326/2323) [Kremote: Compressing objects: 15% (349/2323) [Kremote: Compressing objects: 16% (372/2323) [Kremote: Compressing objects: 17% (395/2323) [Kremote: Compressing objects: 18% (419/2323) [Kremote: Compressing objects: 19% (442/2323) [Kremote: Compressing objects: 20% (465/2323) [Kremote: Compressing objects: 21% (488/2323) [Kremote: Compressing objects: 22% (512/2323) [Kremote: Compressing objects: 23% (535/2323) [Kremote: Compressing objects: 24% (558/2323) [Kremote: Compressing objects: 25% (581/2323) [Kremote: Compressing objects: 26% (604/2323) [Kremote: Compressing objects: 27% (628/2323) [Kremote: Compressing objects: 28% (651/2323) [Kremote: Compressing objects: 29% (674/2323) [Kremote: Compressing objects: 30% (697/2323) [Kremote: Compressing objects: 31% (721/2323) [Kremote: Compressing objects: 32% (744/2323) [Kremote: Compressing objects: 33% (767/2323) [Kremote: Compressing objects: 34% (790/2323) [Kremote: Compressing objects: 35% (814/2323) [Kremote: Compressing objects: 36% (837/2323) [Kremote: Compressing objects: 37% (860/2323) [Kremote: Compressing objects: 38% (883/2323) [Kremote: Compressing objects: 39% (906/2323) [Kremote: Compressing objects: 40% (930/2323) [Kremote: Compressing objects: 41% (953/2323) [Kremote: Compressing objects: 42% (976/2323) [Kremote: Compressing objects: 43% (999/2323) [Kremote: Compressing objects: 44% (1023/2323) [Kremote: Compressing objects: 45% (1046/2323) [Kremote: Compressing objects: 46% (1069/2323) [Kremote: Compressing objects: 47% (1092/2323) [Kremote: Compressing objects: 48% (1116/2323) [Kremote: Compressing objects: 49% (1139/2323) [Kremote: Compressing objects: 50% (1162/2323) [Kremote: Compressing objects: 51% (1185/2323) [Kremote: Compressing objects: 52% (1208/2323) [Kremote: Compressing objects: 53% (1232/2323) [Kremote: Compressing objects: 54% (1255/2323) [Kremote: Compressing objects: 55% (1278/2323) [Kremote: Compressing objects: 56% (1301/2323) [Kremote: Compressing objects: 57% (1325/2323) [Kremote: Compressing objects: 58% (1348/2323) [Kremote: Compressing objects: 59% (1371/2323) [Kremote: Compressing objects: 60% (1394/2323) [Kremote: Compressing objects: 61% (1418/2323) [Kremote: Compressing objects: 62% (1441/2323) [Kremote: Compressing objects: 63% (1464/2323) [Kremote: Compressing objects: 64% (1487/2323) [Kremote: Compressing objects: 65% (1510/2323) [Kremote: Compressing objects: 66% (1534/2323) [Kremote: Compressing objects: 67% (1557/2323) [Kremote: Compressing objects: 68% (1580/2323) [Kremote: Compressing objects: 69% (1603/2323) [Kremote: Compressing objects: 70% (1627/2323) [Kremote: Compressing objects: 71% (1650/2323) [Kremote: Compressing objects: 72% (1673/2323) [Kremote: Compressing objects: 73% (1696/2323) [Kremote: Compressing objects: 74% (1720/2323) [Kremote: Compressing objects: 75% (1743/2323) [Kremote: Compressing objects: 76% (1766/2323) [Kremote: Compressing objects: 77% (1789/2323) [Kremote: Compressing objects: 78% (1812/2323) [Kremote: Compressing objects: 79% (1836/2323) [Kremote: Compressing objects: 80% (1859/2323) [Kremote: Compressing objects: 81% (1882/2323) [Kremote: Compressing objects: 82% (1905/2323) [Kremote: Compressing objects: 83% (1929/2323) [Kremote: Compressing objects: 84% (1952/2323) [Kremote: Compressing objects: 85% (1975/2323) [Kremote: Compressing objects: 86% (1998/2323) [Kremote: Compressing objects: 87% (2022/2323) [Kremote: Compressing objects: 88% (2045/2323) [Kremote: Compressing objects: 89% (2068/2323) [Kremote: Compressing objects: 90% (2091/2323) [Kremote: Compressing objects: 91% (2114/2323) [Kremote: Compressing objects: 92% (2138/2323) [Kremote: Compressing objects: 93% (2161/2323) [Kremote: Compressing objects: 94% (2184/2323) [Kremote: Compressing objects: 95% (2207/2323) [Kremote: Compressing objects: 96% (2231/2323) [Kremote: Compressing objects: 97% (2254/2323) [Kremote: Compressing objects: 98% (2277/2323) [Kremote: Compressing objects: 99% (2300/2323) [Kremote: Compressing objects: 100% (2323/2323) [Kremote: Compressing objects: 100% (2323/2323), done.[K
-Receiving objects: 0% (1/3310) Receiving objects: 1% (34/3310) Receiving objects: 2% (67/3310) Receiving objects: 3% (100/3310) Receiving objects: 4% (133/3310) Receiving objects: 5% (166/3310) Receiving objects: 6% (199/3310) Receiving objects: 7% (232/3310) Receiving objects: 8% (265/3310) Receiving objects: 9% (298/3310) Receiving objects: 10% (331/3310) Receiving objects: 11% (365/3310) Receiving objects: 12% (398/3310) Receiving objects: 13% (431/3310) Receiving objects: 14% (464/3310) Receiving objects: 15% (497/3310) Receiving objects: 16% (530/3310) Receiving objects: 17% (563/3310) Receiving objects: 18% (596/3310) Receiving objects: 19% (629/3310) Receiving objects: 20% (662/3310) Receiving objects: 21% (696/3310) Receiving objects: 22% (729/3310) Receiving objects: 23% (762/3310) Receiving objects: 24% (795/3310) Receiving objects: 25% (828/3310) Receiving objects: 26% (861/3310) Receiving objects: 27% (894/3310) Receiving objects: 28% (927/3310) Receiving objects: 29% (960/3310) Receiving objects: 30% (993/3310) Receiving objects: 31% (1027/3310) Receiving objects: 32% (1060/3310) Receiving objects: 33% (1093/3310) Receiving objects: 34% (1126/3310), 316.00 KiB | 546 KiB/s Receiving objects: 35% (1159/3310), 316.00 KiB | 546 KiB/s Receiving objects: 36% (1192/3310), 316.00 KiB | 546 KiB/s Receiving objects: 37% (1225/3310), 316.00 KiB | 546 KiB/s Receiving objects: 38% (1258/3310), 316.00 KiB | 546 KiB/s Receiving objects: 39% (1291/3310), 316.00 KiB | 546 KiB/s Receiving objects: 40% (1324/3310), 316.00 KiB | 546 KiB/s Receiving objects: 41% (1358/3310), 316.00 KiB | 546 KiB/s Receiving objects: 42% (1391/3310), 316.00 KiB | 546 KiB/s Receiving objects: 43% (1424/3310), 316.00 KiB | 546 KiB/s Receiving objects: 44% (1457/3310), 316.00 KiB | 546 KiB/s Receiving objects: 45% (1490/3310), 316.00 KiB | 546 KiB/s Receiving objects: 45% (1491/3310), 316.00 KiB | 546 KiB/s Receiving objects: 46% (1523/3310), 316.00 KiB | 546 KiB/s Receiving objects: 47% (1556/3310), 316.00 KiB | 546 KiB/s Receiving objects: 48% (1589/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 49% (1622/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 50% (1655/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 51% (1689/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 52% (1722/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 53% (1755/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 54% (1788/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 55% (1821/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 56% (1854/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 57% (1887/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 58% (1920/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 59% (1953/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 60% (1986/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 61% (2020/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 62% (2053/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 63% (2086/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 64% (2119/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 65% (2152/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 66% (2185/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 67% (2218/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 68% (2251/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 69% (2284/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 70% (2317/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 71% (2351/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 72% (2384/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 73% (2417/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 74% (2450/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 75% (2483/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 76% (2516/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 77% (2549/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 78% (2582/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 79% (2615/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 80% (2648/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 81% (2682/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 82% (2715/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 83% (2748/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 84% (2781/3310), 2.35 MiB | 2.19 MiB/s Receiving objects: 85% (2814/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 86% (2847/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 87% (2880/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 88% (2913/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 89% (2946/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 90% (2979/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 91% (3013/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 92% (3046/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 93% (3079/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 94% (3112/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 95% (3145/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 96% (3178/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 97% (3211/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 98% (3244/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 99% (3277/3310), 5.87 MiB | 3.73 MiB/s remote: Total 3310 (delta 1088), reused 3044 (delta 844)[K
-Receiving objects: 100% (3310/3310), 5.87 MiB | 3.73 MiB/s Receiving objects: 100% (3310/3310), 7.44 MiB | 3.73 MiB/s, done.
-Resolving deltas: 0% (0/1088) Resolving deltas: 6% (66/1088) Resolving deltas: 8% (88/1088) Resolving deltas: 9% (105/1088) Resolving deltas: 10% (110/1088) Resolving deltas: 11% (120/1088) Resolving deltas: 20% (227/1088) Resolving deltas: 22% (250/1088) Resolving deltas: 24% (263/1088) Resolving deltas: 25% (279/1088) Resolving deltas: 26% (283/1088) Resolving deltas: 27% (298/1088) Resolving deltas: 28% (305/1088) Resolving deltas: 29% (323/1088) Resolving deltas: 30% (333/1088) Resolving deltas: 31% (342/1088) Resolving deltas: 32% (350/1088) Resolving deltas: 33% (360/1088) Resolving deltas: 34% (380/1088) Resolving deltas: 35% (388/1088) Resolving deltas: 36% (396/1088) Resolving deltas: 37% (403/1088) Resolving deltas: 38% (414/1088) Resolving deltas: 39% (426/1088) Resolving deltas: 40% (442/1088) Resolving deltas: 41% (447/1088) Resolving deltas: 42% (466/1088) Resolving deltas: 43% (471/1088) Resolving deltas: 44% (480/1088) Resolving deltas: 45% (490/1088) Resolving deltas: 46% (503/1088) Resolving deltas: 47% (520/1088) Resolving deltas: 48% (527/1088) Resolving deltas: 49% (536/1088) Resolving deltas: 50% (552/1088) Resolving deltas: 51% (555/1088) Resolving deltas: 52% (570/1088) Resolving deltas: 53% (582/1088) Resolving deltas: 54% (596/1088) Resolving deltas: 55% (600/1088) Resolving deltas: 56% (615/1088) Resolving deltas: 57% (621/1088) Resolving deltas: 58% (636/1088) Resolving deltas: 59% (642/1088) Resolving deltas: 68% (741/1088) Resolving deltas: 69% (759/1088) Resolving deltas: 70% (762/1088) Resolving deltas: 71% (773/1088) Resolving deltas: 72% (787/1088) Resolving deltas: 73% (796/1088) Resolving deltas: 82% (902/1088) Resolving deltas: 91% (1000/1088) Resolving deltas: 92% (1010/1088) Resolving deltas: 93% (1014/1088) Resolving deltas: 94% (1025/1088) Resolving deltas: 95% (1037/1088) Resolving deltas: 96% (1046/1088) Resolving deltas: 97% (1056/1088) Resolving deltas: 98% (1068/1088) Resolving deltas: 99% (1078/1088) Resolving deltas: 100% (1088/1088) Resolving deltas: 100% (1088/1088), done.
-Fetching git://github.com/travis-ci/travis-core
-remote: Counting objects: 11443, done.[K
-remote: Compressing objects: 0% (1/3239) [Kremote: Compressing objects: 1% (33/3239) [Kremote: Compressing objects: 2% (65/3239) [Kremote: Compressing objects: 3% (98/3239) [Kremote: Compressing objects: 4% (130/3239) [Kremote: Compressing objects: 5% (162/3239) [Kremote: Compressing objects: 6% (195/3239) [Kremote: Compressing objects: 7% (227/3239) [Kremote: Compressing objects: 8% (260/3239) [Kremote: Compressing objects: 9% (292/3239) [Kremote: Compressing objects: 10% (324/3239) [Kremote: Compressing objects: 11% (357/3239) [Kremote: Compressing objects: 12% (389/3239) [Kremote: Compressing objects: 13% (422/3239) [Kremote: Compressing objects: 14% (454/3239) [Kremote: Compressing objects: 15% (486/3239) [Kremote: Compressing objects: 16% (519/3239) [Kremote: Compressing objects: 17% (551/3239) [Kremote: Compressing objects: 18% (584/3239) [Kremote: Compressing objects: 19% (616/3239) [Kremote: Compressing objects: 20% (648/3239) [Kremote: Compressing objects: 21% (681/3239) [Kremote: Compressing objects: 22% (713/3239) [Kremote: Compressing objects: 23% (745/3239) [Kremote: Compressing objects: 24% (778/3239) [Kremote: Compressing objects: 25% (810/3239) [Kremote: Compressing objects: 26% (843/3239) [Kremote: Compressing objects: 27% (875/3239) [Kremote: Compressing objects: 28% (907/3239) [Kremote: Compressing objects: 29% (940/3239) [Kremote: Compressing objects: 30% (972/3239) [Kremote: Compressing objects: 31% (1005/3239) [Kremote: Compressing objects: 32% (1037/3239) [Kremote: Compressing objects: 33% (1069/3239) [Kremote: Compressing objects: 34% (1102/3239) [Kremote: Compressing objects: 35% (1134/3239) [Kremote: Compressing objects: 36% (1167/3239) [Kremote: Compressing objects: 37% (1199/3239) [Kremote: Compressing objects: 38% (1231/3239) [Kremote: Compressing objects: 39% (1264/3239) [Kremote: Compressing objects: 40% (1296/3239) [Kremote: Compressing objects: 41% (1328/3239) [Kremote: Compressing objects: 42% (1361/3239) [Kremote: Compressing objects: 43% (1393/3239) [Kremote: Compressing objects: 44% (1426/3239) [Kremote: Compressing objects: 45% (1458/3239) [Kremote: Compressing objects: 46% (1490/3239) [Kremote: Compressing objects: 47% (1523/3239) [Kremote: Compressing objects: 48% (1555/3239) [Kremote: Compressing objects: 49% (1588/3239) [Kremote: Compressing objects: 50% (1620/3239) [Kremote: Compressing objects: 51% (1652/3239) [Kremote: Compressing objects: 52% (1685/3239) [Kremote: Compressing objects: 53% (1717/3239) [Kremote: Compressing objects: 54% (1750/3239) [Kremote: Compressing objects: 55% (1782/3239) [Kremote: Compressing objects: 56% (1814/3239) [Kremote: Compressing objects: 57% (1847/3239) [Kremote: Compressing objects: 58% (1879/3239) [Kremote: Compressing objects: 59% (1912/3239) [Kremote: Compressing objects: 60% (1944/3239) [Kremote: Compressing objects: 61% (1976/3239) [Kremote: Compressing objects: 62% (2009/3239) [Kremote: Compressing objects: 63% (2041/3239) [Kremote: Compressing objects: 64% (2073/3239) [Kremote: Compressing objects: 65% (2106/3239) [Kremote: Compressing objects: 66% (2138/3239) [Kremote: Compressing objects: 67% (2171/3239) [Kremote: Compressing objects: 68% (2203/3239) [Kremote: Compressing objects: 69% (2235/3239) [Kremote: Compressing objects: 70% (2268/3239) [Kremote: Compressing objects: 71% (2300/3239) [Kremote: Compressing objects: 72% (2333/3239) [Kremote: Compressing objects: 73% (2365/3239) [Kremote: Compressing objects: 74% (2397/3239) [Kremote: Compressing objects: 75% (2430/3239) [Kremote: Compressing objects: 76% (2462/3239) [Kremote: Compressing objects: 77% (2495/3239) [Kremote: Compressing objects: 78% (2527/3239) [Kremote: Compressing objects: 79% (2559/3239) [Kremote: Compressing objects: 80% (2592/3239) [Kremote: Compressing objects: 81% (2624/3239) [Kremote: Compressing objects: 82% (2656/3239) [Kremote: Compressing objects: 83% (2689/3239) [Kremote: Compressing objects: 84% (2721/3239) [Kremote: Compressing objects: 85% (2754/3239) [Kremote: Compressing objects: 86% (2786/3239) [Kremote: Compressing objects: 87% (2818/3239) [Kremote: Compressing objects: 88% (2851/3239) [Kremote: Compressing objects: 89% (2883/3239) [Kremote: Compressing objects: 90% (2916/3239) [Kremote: Compressing objects: 91% (2948/3239) [Kremote: Compressing objects: 92% (2980/3239) [Kremote: Compressing objects: 93% (3013/3239) [Kremote: Compressing objects: 94% (3045/3239) [Kremote: Compressing objects: 95% (3078/3239) [Kremote: Compressing objects: 96% (3110/3239) [Kremote: Compressing objects: 97% (3142/3239) [Kremote: Compressing objects: 98% (3175/3239) [Kremote: Compressing objects: 99% (3207/3239) [Kremote: Compressing objects: 100% (3239/3239) [Kremote: Compressing objects: 100% (3239/3239), done.[K
-Receiving objects: 0% (1/11443) Receiving objects: 1% (115/11443) Receiving objects: 2% (229/11443) Receiving objects: 3% (344/11443) Receiving objects: 4% (458/11443) Receiving objects: 5% (573/11443) Receiving objects: 6% (687/11443) Receiving objects: 7% (802/11443) Receiving objects: 8% (916/11443) Receiving objects: 9% (1030/11443) Receiving objects: 10% (1145/11443) Receiving objects: 11% (1259/11443) Receiving objects: 12% (1374/11443) Receiving objects: 13% (1488/11443) Receiving objects: 14% (1603/11443) Receiving objects: 15% (1717/11443) Receiving objects: 16% (1831/11443), 292.00 KiB | 563 KiB/s Receiving objects: 17% (1946/11443), 292.00 KiB | 563 KiB/s Receiving objects: 18% (2060/11443), 292.00 KiB | 563 KiB/s Receiving objects: 19% (2175/11443), 292.00 KiB | 563 KiB/s Receiving objects: 20% (2289/11443), 292.00 KiB | 563 KiB/s Receiving objects: 21% (2404/11443), 292.00 KiB | 563 KiB/s Receiving objects: 22% (2518/11443), 292.00 KiB | 563 KiB/s Receiving objects: 23% (2632/11443), 292.00 KiB | 563 KiB/s Receiving objects: 24% (2747/11443), 292.00 KiB | 563 KiB/s Receiving objects: 25% (2861/11443), 292.00 KiB | 563 KiB/s Receiving objects: 26% (2976/11443), 292.00 KiB | 563 KiB/s Receiving objects: 27% (3090/11443), 292.00 KiB | 563 KiB/s Receiving objects: 28% (3205/11443), 292.00 KiB | 563 KiB/s Receiving objects: 29% (3319/11443), 292.00 KiB | 563 KiB/s Receiving objects: 30% (3433/11443), 292.00 KiB | 563 KiB/s Receiving objects: 31% (3548/11443), 292.00 KiB | 563 KiB/s Receiving objects: 32% (3662/11443), 292.00 KiB | 563 KiB/s Receiving objects: 33% (3777/11443), 292.00 KiB | 563 KiB/s Receiving objects: 34% (3891/11443), 292.00 KiB | 563 KiB/s Receiving objects: 35% (4006/11443), 292.00 KiB | 563 KiB/s Receiving objects: 36% (4120/11443), 292.00 KiB | 563 KiB/s Receiving objects: 37% (4234/11443), 292.00 KiB | 563 KiB/s Receiving objects: 38% (4349/11443), 292.00 KiB | 563 KiB/s Receiving objects: 39% (4463/11443), 292.00 KiB | 563 KiB/s Receiving objects: 40% (4578/11443), 292.00 KiB | 563 KiB/s Receiving objects: 41% (4692/11443), 292.00 KiB | 563 KiB/s Receiving objects: 42% (4807/11443), 292.00 KiB | 563 KiB/s Receiving objects: 43% (4921/11443), 292.00 KiB | 563 KiB/s Receiving objects: 44% (5035/11443), 292.00 KiB | 563 KiB/s Receiving objects: 45% (5150/11443), 292.00 KiB | 563 KiB/s Receiving objects: 46% (5264/11443), 292.00 KiB | 563 KiB/s Receiving objects: 47% (5379/11443), 292.00 KiB | 563 KiB/s Receiving objects: 48% (5493/11443), 292.00 KiB | 563 KiB/s Receiving objects: 49% (5608/11443), 292.00 KiB | 563 KiB/s Receiving objects: 50% (5722/11443), 292.00 KiB | 563 KiB/s Receiving objects: 51% (5836/11443), 292.00 KiB | 563 KiB/s Receiving objects: 52% (5951/11443), 292.00 KiB | 563 KiB/s Receiving objects: 53% (6065/11443), 292.00 KiB | 563 KiB/s Receiving objects: 54% (6180/11443), 292.00 KiB | 563 KiB/s Receiving objects: 55% (6294/11443), 292.00 KiB | 563 KiB/s Receiving objects: 56% (6409/11443), 292.00 KiB | 563 KiB/s Receiving objects: 57% (6523/11443), 292.00 KiB | 563 KiB/s Receiving objects: 58% (6637/11443), 292.00 KiB | 563 KiB/s Receiving objects: 59% (6752/11443), 292.00 KiB | 563 KiB/s Receiving objects: 60% (6866/11443), 292.00 KiB | 563 KiB/s Receiving objects: 61% (6981/11443), 292.00 KiB | 563 KiB/s Receiving objects: 62% (7095/11443), 292.00 KiB | 563 KiB/s Receiving objects: 63% (7210/11443), 292.00 KiB | 563 KiB/s Receiving objects: 64% (7324/11443), 292.00 KiB | 563 KiB/s Receiving objects: 65% (7438/11443), 292.00 KiB | 563 KiB/s Receiving objects: 66% (7553/11443), 292.00 KiB | 563 KiB/s Receiving objects: 67% (7667/11443), 292.00 KiB | 563 KiB/s Receiving objects: 68% (7782/11443), 292.00 KiB | 563 KiB/s Receiving objects: 69% (7896/11443), 292.00 KiB | 563 KiB/s Receiving objects: 70% (8011/11443), 292.00 KiB | 563 KiB/s Receiving objects: 71% (8125/11443), 292.00 KiB | 563 KiB/s Receiving objects: 72% (8239/11443), 292.00 KiB | 563 KiB/s Receiving objects: 73% (8354/11443), 292.00 KiB | 563 KiB/s Receiving objects: 74% (8468/11443), 292.00 KiB | 563 KiB/s Receiving objects: 75% (8583/11443), 292.00 KiB | 563 KiB/s Receiving objects: 76% (8697/11443), 292.00 KiB | 563 KiB/s Receiving objects: 77% (8812/11443), 292.00 KiB | 563 KiB/s Receiving objects: 78% (8926/11443), 292.00 KiB | 563 KiB/s Receiving objects: 79% (9040/11443), 292.00 KiB | 563 KiB/s Receiving objects: 80% (9155/11443), 292.00 KiB | 563 KiB/s Receiving objects: 81% (9269/11443), 292.00 KiB | 563 KiB/s Receiving objects: 82% (9384/11443), 292.00 KiB | 563 KiB/s Receiving objects: 83% (9498/11443), 292.00 KiB | 563 KiB/s Receiving objects: 84% (9613/11443), 292.00 KiB | 563 KiB/s Receiving objects: 85% (9727/11443), 292.00 KiB | 563 KiB/s Receiving objects: 86% (9841/11443), 292.00 KiB | 563 KiB/s Receiving objects: 87% (9956/11443), 292.00 KiB | 563 KiB/s Receiving objects: 88% (10070/11443), 292.00 KiB | 563 KiB/s Receiving objects: 89% (10185/11443), 292.00 KiB | 563 KiB/s Receiving objects: 90% (10299/11443), 292.00 KiB | 563 KiB/s Receiving objects: 91% (10414/11443), 292.00 KiB | 563 KiB/s Receiving objects: 92% (10528/11443), 292.00 KiB | 563 KiB/s Receiving objects: 93% (10642/11443), 292.00 KiB | 563 KiB/s Receiving objects: 94% (10757/11443), 292.00 KiB | 563 KiB/s Receiving objects: 95% (10871/11443), 292.00 KiB | 563 KiB/s Receiving objects: 96% (10986/11443), 292.00 KiB | 563 KiB/s Receiving objects: 97% (11100/11443), 292.00 KiB | 563 KiB/s Receiving objects: 98% (11215/11443), 292.00 KiB | 563 KiB/s Receiving objects: 98% (11256/11443), 2.03 MiB | 2.01 MiB/s remote: Total 11443 (delta 7753), reused 11317 (delta 7638)[K
-Receiving objects: 99% (11329/11443), 2.03 MiB | 2.01 MiB/s Receiving objects: 100% (11443/11443), 2.03 MiB | 2.01 MiB/s Receiving objects: 100% (11443/11443), 3.61 MiB | 2.01 MiB/s, done.
-Resolving deltas: 0% (0/7753) Resolving deltas: 1% (152/7753) Resolving deltas: 3% (283/7753) Resolving deltas: 4% (333/7753) Resolving deltas: 5% (391/7753) Resolving deltas: 6% (466/7753) Resolving deltas: 7% (550/7753) Resolving deltas: 8% (644/7753) Resolving deltas: 9% (703/7753) Resolving deltas: 10% (780/7753) Resolving deltas: 11% (859/7753) Resolving deltas: 12% (945/7753) Resolving deltas: 13% (1015/7753) Resolving deltas: 14% (1149/7753) Resolving deltas: 15% (1175/7753) Resolving deltas: 16% (1265/7753) Resolving deltas: 17% (1323/7753) Resolving deltas: 18% (1401/7753) Resolving deltas: 21% (1673/7753) Resolving deltas: 22% (1718/7753) Resolving deltas: 23% (1815/7753) Resolving deltas: 24% (1862/7753) Resolving deltas: 25% (1951/7753) Resolving deltas: 26% (2028/7753) Resolving deltas: 27% (2121/7753) Resolving deltas: 28% (2171/7753) Resolving deltas: 29% (2282/7753) Resolving deltas: 30% (2326/7753) Resolving deltas: 35% (2719/7753) Resolving deltas: 36% (2850/7753) Resolving deltas: 37% (2934/7753) Resolving deltas: 38% (3001/7753) Resolving deltas: 39% (3042/7753) Resolving deltas: 41% (3231/7753) Resolving deltas: 42% (3257/7753) Resolving deltas: 43% (3352/7753) Resolving deltas: 44% (3421/7753) Resolving deltas: 45% (3491/7753) Resolving deltas: 47% (3655/7753) Resolving deltas: 48% (3744/7753) Resolving deltas: 49% (3814/7753) Resolving deltas: 50% (3886/7753) Resolving deltas: 52% (4046/7753) Resolving deltas: 53% (4132/7753) Resolving deltas: 54% (4206/7753) Resolving deltas: 55% (4271/7753) Resolving deltas: 56% (4358/7753) Resolving deltas: 57% (4425/7753) Resolving deltas: 58% (4507/7753) Resolving deltas: 59% (4575/7753) Resolving deltas: 60% (4687/7753) Resolving deltas: 61% (4779/7753) Resolving deltas: 62% (4808/7753) Resolving deltas: 63% (4887/7753) Resolving deltas: 64% (4973/7753) Resolving deltas: 65% (5054/7753) Resolving deltas: 66% (5117/7753) Resolving deltas: 67% (5202/7753) Resolving deltas: 68% (5274/7753) Resolving deltas: 69% (5354/7753) Resolving deltas: 70% (5450/7753) Resolving deltas: 71% (5508/7753) Resolving deltas: 72% (5596/7753) Resolving deltas: 73% (5679/7753) Resolving deltas: 74% (5751/7753) Resolving deltas: 75% (5822/7753) Resolving deltas: 76% (5894/7753) Resolving deltas: 77% (5971/7753) Resolving deltas: 78% (6055/7753) Resolving deltas: 79% (6147/7753) Resolving deltas: 80% (6239/7753) Resolving deltas: 81% (6289/7753) Resolving deltas: 82% (6359/7753) Resolving deltas: 83% (6438/7753) Resolving deltas: 84% (6529/7753) Resolving deltas: 85% (6611/7753) Resolving deltas: 86% (6688/7753) Resolving deltas: 87% (6748/7753) Resolving deltas: 88% (6825/7753) Resolving deltas: 89% (6909/7753) Resolving deltas: 90% (6979/7753) Resolving deltas: 91% (7070/7753) Resolving deltas: 92% (7143/7753) Resolving deltas: 93% (7213/7753) Resolving deltas: 94% (7292/7753) Resolving deltas: 95% (7366/7753) Resolving deltas: 96% (7456/7753) Resolving deltas: 97% (7523/7753) Resolving deltas: 98% (7611/7753) Resolving deltas: 99% (7676/7753) Resolving deltas: 100% (7753/7753) Resolving deltas: 100% (7753/7753), done.
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activeresource (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.3.0)
-Installing bcrypt-ruby (3.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing nokogiri (1.5.5) with native extensions
-Installing ffi (1.0.11) with native extensions
-Installing childprocess (0.3.3)
-Installing libwebsocket (0.1.4)
-Installing rubyzip (0.9.9)
-Installing selenium-webdriver (2.24.0)
-Installing xpath (0.1.4)
-Installing capybara (1.1.2)
-Installing chunky_png (1.2.5)
-Installing coffee-script-source (1.3.3)
-Installing execjs (1.3.0)
-Installing coffee-script (2.2.0)
-Installing fssm (0.2.9)
-Installing sass (3.1.20)
-Installing compass (0.12.2)
-Installing crack (0.3.1)
-Installing daemons (1.1.8)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing orm_adapter (0.0.7)
-Installing rack-ssl (1.3.2)
-Installing json (1.6.7) with native extensions
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing warden (1.1.1)
-Installing devise (2.0.4)
-Installing diff-lcs (1.1.3)
-Installing eventmachine (0.12.10) with native extensions
-Installing factory_girl (2.4.2)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing forgery (0.5.0)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashie (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing http_accept_language (1.0.2)
-Installing httpauth (0.1)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing kgio (2.7.4) with native extensions
-Installing lograge (0.0.4)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing oauth2 (0.6.1)
-Installing omniauth (1.1.0)
-Installing omniauth-oauth2 (1.0.2)
-Installing omniauth-github (1.0.1)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Using rack-contrib (1.1.0) from git://github.com/rack/rack-contrib (at master)
-Using bundler (1.2.0.rc)
-Installing rails (3.2.6)
-Installing raindrops (0.10.0) with native extensions
-Using rake-pipeline (0.6.0) from https://github.com/livingsocial/rake-pipeline.git (at master)
-Using rake-pipeline-web-filters (0.6.0) from https://github.com/wycats/rake-pipeline-web-filters.git (at master)
-Installing redis (3.0.1)
-Installing refraction (0.2.0)
-Installing rollout (1.1.0)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing rspec-rails (2.10.1)
-Installing simple_states (0.1.1)
-Installing thin (1.3.1) with native extensions
-Using travis-assets (0.0.1) from https://github.com/travis-ci/travis-assets (at master)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing unicorn (4.1.1) with native extensions
-Installing unobtrusive_flash (0.0.2)
-Installing yard (0.8.2.1)
-Installing versionist (0.2.3)
-Installing webmock (1.7.10)
-Installing yajl-ruby (1.1.0) with native extensions
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m$ cp config/database.example.yml config/database.yml
-$ RAILS_ENV=test bundle exec rake test:ci --trace
-** Invoke test:ci (first_time)
-** Invoke ci_env (first_time)
-** Execute ci_env
-** Invoke db:drop (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:drop
-** Invoke db:create (first_time)
-** Invoke db:load_config
-** Execute db:create
-** Invoke db:test:load (first_time)
-** Invoke db:test:purge (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:test:purge
-** Execute db:test:load
-** Invoke db:test:load_schema (first_time)
-** Invoke db:test:purge
-** Execute db:test:load_schema
-** Invoke db:schema:load (first_time)
-** Invoke environment
-** Execute db:schema:load
-** Invoke spec (first_time)
-** Invoke db:test:prepare (first_time)
-** Invoke db:abort_if_pending_migrations (first_time)
-** Invoke environment
-** Execute db:abort_if_pending_migrations
-** Execute db:test:prepare
-** Invoke db:test:load
-** Execute spec
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/controllers/v1/service_hooks_controller_spec.rb ./spec/controllers/v1/builds_controller_spec.rb ./spec/controllers/v1/repositories_controller_spec.rb ./spec/controllers/v1/jobs_controller_spec.rb ./spec/controllers/v1/workers_controller_spec.rb ./spec/controllers/v1/branches_controller_spec.rb ./spec/controllers/v2/service_hooks_controller_spec.rb ./spec/controllers/application_controller_spec.rb ./spec/controllers/profiles_controller_spec.rb ./spec/client/service_hooks_spec.rb ./spec/client/events/job_queue_spec.rb ./spec/client/events/build_spec.rb ./spec/helpers/application_helper_spec.rb ./spec/requests/shortener_controller_spec.rb ./spec/views/repository_cctray_xml_output_spec.rb ./spec/routing/v2_spec.rb ./spec/routing/v1_spec.rb ./spec/integration/jsonp_api_spec.rb ./spec/integration/consuming_messages_spec.rb ./spec/integration/build_process_spec.rb ./spec/integration/routes_redirection_spec.rb ./spec/lib/statistics_spec.rb
-Run options:
- include {:focused=>true}
- exclude {:js=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-V1::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
- subscribes to a service hook
-[32m creates a repository if it does not exist[0m
-[32m updates an existing repository if it exists[0m
- unsubscribes from the service hook
-[32m updates an existing repository[0m
-
-V1::BuildsController
- GET :index
-[32m returns a list of builds in json[0m
- GET :show
- when called using /builds/:id
-[32m returns build details in json[0m
- when called in a nested repositories call eg. /svenfuchs/i18n/builds/:id
-[32m returns build details in json[0m
-[32m returns 404 with wrong repository id[0m
-
-V1::RepositoriesController
- GET :index returns a list of repositories
- in json
-[32m ordered by last build started date[0m
-[32m filtered by owner name[0m
- GET :show, format json
-[32m returns info about repository in json format[0m
-[32m returns not found for an unknown repository[0m
- with parameter rvm:1.8.7
-[32m returns last build result passing[0m
- with parameter rvm:1.9.2
-[32m return last build result failing[0m
- with parameters rvm:1.8.7 and gemfile:test/Gemfile.rails-2.3.x
-[32m return last build result passing[0m
- with parameters rvm:1.9.2 and gemfile:test/Gemfile.rails-3.0.x
-[32m return last build result failing[0m
- with parameters rvm:1.8.7, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result passing[0m
- with parameters rvm:1.9.2, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result failing[0m
- with parameters rvm:perl
-[32m return last build result for the parent build[0m
- GET :show, format xml (schema: not specified)
-[32m return info about repository in xml format[0m
- GET :show, format xml (schema: cctray)
-[32m returns info about repository in CCTray (CruiseControl) XML format[0m
- GET :show, format xml (schema: unknown)
-[32m does not attempt to render unsupported XML schemas[0m
- GET :show, format png
- without a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "stable" when there is a running build but the previous one has passed[0m
- with a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "passing" when there is a running build but the previous one has passed[0m
-
-V1::JobsController
- GET :index
-[32m index lists all jobs on the queue[0m
- GET :show
-[32m in json[0m
-
-V1::WorkersController
-[32m index lists all workers[0m
-
-V1::BranchesController
- GET :index
-[32m returns a list of builds in json[0m
-
-V2::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
-[32m subscribes to a service hook if active => true was given[0m
-[32m unsubscribes from the service hook if active => false was given[0m
-
-HomeController
- i18n locale
-[32m the default locale is en[0m
- set_locale
-[32m prefers hl query parameter over anything else[0m
-[32m prefers the session[:locale] if there is no hl parameter[0m
-[32m prefers current_user.locale if session[:locale] is empty and there is no hl query paramter[0m
-[32m prefers the http_accept_language if session[locale] is empty, there is no hl query parameter and no current_user.local[0m
-[32m uses the default locale when nothing is specified[0m
-
-ProfilesController
- GET :show
-[32m renders the profile html page[0m
- POST :update
-[32m updates the locale for the user profile[0m
- POST :sync
- given the current user is not being synced
-[32m schedules a sync job[0m
-[32m sets the current user to being synced[0m
- given the current user is being synced
-[32m does not schedule a sync job[0m
-[32m does not set the current user to being synced[0m
-
-ApplicationHelper
- active_page?
-[32m #active_page? returns true when the given route matches the current page[0m
-[32m #active_page? returns false when the given route does not matche the current page[0m
- localization links
- switch_locale_link
-[32m should add in the language option to the current path[0m
- gravatar
-[32m #gravatar returns an IMG tag for a given user[0m
-[32m #gravatar with a given :size returns an IMG tag with the given :size[0m
-
-ShortenerController
- GET /
-[32m should redirect to travis-ci.org[0m
- GET /:id
-[32m should redirect to the found url[0m
-[32m should raise a 404 if the url could not be found[0m
-
-repositories/show/cctray.xml.builder
-[32m renders the basic details of a repository[0m
-[32m renders the correct result for a repository with no running build[0m
-[32m renders the last build time in the correct format[0m
-[32m renders the correct activity result for a repository with a running build[0m
-[32m renders the correct activity result for a repository with no builds[0m
-[32m renders the correct build result for a repository whose last build failed[0m
-[32m renders the correct build result for a repository whose last build passed[0m
-[32m renders the correct build result for a repository whose last build has an unknown result[0m
-
-v2
- GET to repositories.json?version=2
-[32m routes to V2::RepositoriesController#index[0m
- GET to repositories/1.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
- GET to builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to builds/1.json?version=2
-[32m routes to V2::BuildsController#show[0m
- GET to branches.json?version=2
-[32m routes to V2::BranchesController#index[0m
- GET to jobs.json?version=2
-[32m routes to V2::JobsController#index[0m
- GET to jobs/1.json?version=2
-[32m routes to V2::JobsController#show[0m
- GET to artifacts/1.json?version=2
-[32m routes to V2::ArtifactsController#index[0m
- GET to workers.json?version=2
-[32m routes to V2::WorkersController#index[0m
- GET to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#index[0m
- PUT to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#update[0m
- GET to :owner_name/:name.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml?version=2
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json?version=2
-[32m routes to V2::BuildsController#show[0m
-
-v1
- GET to repositories.json
-[32m routes to V1::RepositoriesController#index[0m
- GET to repositories/1.json
-[32m routes to V1::RepositoriesController#show[0m
- GET to builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to builds/1.json
-[32m routes to V1::BuildsController#show[0m
- GET to branches.json
-[32m routes to V1::BranchesController#index[0m
- GET to jobs.json
-[32m routes to V1::JobsController#index[0m
- GET to jobs/1.json
-[32m routes to V1::JobsController#show[0m
- GET to workers.json
-[32m routes to V1::WorkersController#index[0m
- GET to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#index[0m
- PUT to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#update[0m
- GET to :owner_name/:name.json
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json
-[32m routes to V1::BuildsController#show[0m
-
-JSONP API
- callback parameter passed
-[32m returns text/javascript content type[0m
-[32m returns response in jsonp format[0m
- no callback parameter passed
-[32m returns application/json content type[0m
-[32m returns response in json format[0m
- callback parameter is not valid
-[32m uses valid path[0m
-[32m returns bad request body[0m
-[32m returns 400 status code[0m
-
-routes redirection
-[32m should redirect to the default locale when redirecting[0m
-[32m the user is redirected to the hash bang version of the user route[0m
-[32m the user is redirected to the hash bang version of the repository route[0m
-[32m the user is redirected to the hash bang version of the repository builds route[0m
-[32m the user is redirected to the hash bang version of the repository build route[0m
-
-Statistics
- when listing daily test counts
-[32m should return the jobs per day[0m
- when listing total repositories
-[32m should return the number per day[0m
-[32m should include the total growth[0m
-
-Finished in 31.53 seconds
-[32m127 examples, 0 failures[0m
-** Execute test:ci
-
-Done. Build script exited with: 0
-', 1899692, 'Artifact::Log', '2012-07-18 22:39:29.247000', '2012-07-18 22:39:29.724000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1558743, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-ci.git travis-ci/travis-ci
-$ cd travis-ci/travis-ci
-$ git checkout -qf 9dd6af0f8aa8182fad7f7a399ef21188698d194a
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-ci/Gemfile
-$ gem install bundler --pre
-Fetching: bundler-1.2.0.pre.1.gemFetching: bundler-1.2.0.pre.1.gem ( 6%)Fetching: bundler-1.2.0.pre.1.gem ( 10%)Fetching: bundler-1.2.0.pre.1.gem ( 13%)Fetching: bundler-1.2.0.pre.1.gem ( 18%)Fetching: bundler-1.2.0.pre.1.gem ( 20%)Fetching: bundler-1.2.0.pre.1.gem ( 21%)Fetching: bundler-1.2.0.pre.1.gem ( 23%)Fetching: bundler-1.2.0.pre.1.gem ( 25%)Fetching: bundler-1.2.0.pre.1.gem ( 32%)Fetching: bundler-1.2.0.pre.1.gem ( 40%)Fetching: bundler-1.2.0.pre.1.gem ( 42%)Fetching: bundler-1.2.0.pre.1.gem ( 44%)Fetching: bundler-1.2.0.pre.1.gem ( 46%)Fetching: bundler-1.2.0.pre.1.gem ( 47%)Fetching: bundler-1.2.0.pre.1.gem ( 48%)Fetching: bundler-1.2.0.pre.1.gem ( 50%)Fetching: bundler-1.2.0.pre.1.gem ( 56%)Fetching: bundler-1.2.0.pre.1.gem ( 64%)Fetching: bundler-1.2.0.pre.1.gem ( 71%)Fetching: bundler-1.2.0.pre.1.gem ( 74%)Fetching: bundler-1.2.0.pre.1.gem ( 77%)Fetching: bundler-1.2.0.pre.1.gem ( 80%)Fetching: bundler-1.2.0.pre.1.gem ( 82%)Fetching: bundler-1.2.0.pre.1.gem ( 84%)Fetching: bundler-1.2.0.pre.1.gem ( 86%)Fetching: bundler-1.2.0.pre.1.gem ( 88%)Fetching: bundler-1.2.0.pre.1.gem ( 92%)Fetching: bundler-1.2.0.pre.1.gem ( 93%)Fetching: bundler-1.2.0.pre.1.gem ( 95%)Fetching: bundler-1.2.0.pre.1.gem ( 98%)Fetching: bundler-1.2.0.pre.1.gem (100%)Fetching: bundler-1.2.0.pre.1.gem (100%)
-Successfully installed bundler-1.2.0.pre.1
-1 gem installed
-$ bundle install --without development
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-remote: Counting objects: 1081, done.[K
-remote: Compressing objects: 0% (1/433) [Kremote: Compressing objects: 1% (5/433) [Kremote: Compressing objects: 2% (9/433) [Kremote: Compressing objects: 3% (13/433) [Kremote: Compressing objects: 4% (18/433) [Kremote: Compressing objects: 5% (22/433) [Kremote: Compressing objects: 6% (26/433) [Kremote: Compressing objects: 7% (31/433) [Kremote: Compressing objects: 8% (35/433) [Kremote: Compressing objects: 9% (39/433) [Kremote: Compressing objects: 10% (44/433) [Kremote: Compressing objects: 11% (48/433) [Kremote: Compressing objects: 12% (52/433) [Kremote: Compressing objects: 13% (57/433) [Kremote: Compressing objects: 14% (61/433) [Kremote: Compressing objects: 15% (65/433) [Kremote: Compressing objects: 16% (70/433) [Kremote: Compressing objects: 17% (74/433) [Kremote: Compressing objects: 18% (78/433) [Kremote: Compressing objects: 19% (83/433) [Kremote: Compressing objects: 20% (87/433) [Kremote: Compressing objects: 21% (91/433) [Kremote: Compressing objects: 22% (96/433) [Kremote: Compressing objects: 23% (100/433) [Kremote: Compressing objects: 24% (104/433) [Kremote: Compressing objects: 25% (109/433) [Kremote: Compressing objects: 26% (113/433) [Kremote: Compressing objects: 27% (117/433) [Kremote: Compressing objects: 28% (122/433) [Kremote: Compressing objects: 29% (126/433) [Kremote: Compressing objects: 30% (130/433) [Kremote: Compressing objects: 31% (135/433) [Kremote: Compressing objects: 32% (139/433) [Kremote: Compressing objects: 33% (143/433) [Kremote: Compressing objects: 34% (148/433) [Kremote: Compressing objects: 35% (152/433) [Kremote: Compressing objects: 36% (156/433) [Kremote: Compressing objects: 37% (161/433) [Kremote: Compressing objects: 38% (165/433) [Kremote: Compressing objects: 39% (169/433) [Kremote: Compressing objects: 40% (174/433) [Kremote: Compressing objects: 41% (178/433) [Kremote: Compressing objects: 42% (182/433) [Kremote: Compressing objects: 43% (187/433) [Kremote: Compressing objects: 44% (191/433) [Kremote: Compressing objects: 45% (195/433) [Kremote: Compressing objects: 46% (200/433) [Kremote: Compressing objects: 47% (204/433) [Kremote: Compressing objects: 48% (208/433) [Kremote: Compressing objects: 49% (213/433) [Kremote: Compressing objects: 50% (217/433) [Kremote: Compressing objects: 51% (221/433) [Kremote: Compressing objects: 52% (226/433) [Kremote: Compressing objects: 53% (230/433) [Kremote: Compressing objects: 54% (234/433) [Kremote: Compressing objects: 55% (239/433) [Kremote: Compressing objects: 56% (243/433) [Kremote: Compressing objects: 57% (247/433) [Kremote: Compressing objects: 58% (252/433) [Kremote: Compressing objects: 59% (256/433) [Kremote: Compressing objects: 60% (260/433) [Kremote: Compressing objects: 61% (265/433) [Kremote: Compressing objects: 62% (269/433) [Kremote: Compressing objects: 63% (273/433) [Kremote: Compressing objects: 64% (278/433) [Kremote: Compressing objects: 65% (282/433) [Kremote: Compressing objects: 66% (286/433) [Kremote: Compressing objects: 67% (291/433) [Kremote: Compressing objects: 68% (295/433) [Kremote: Compressing objects: 69% (299/433) [Kremote: Compressing objects: 70% (304/433) [Kremote: Compressing objects: 71% (308/433) [Kremote: Compressing objects: 72% (312/433) [Kremote: Compressing objects: 73% (317/433) [Kremote: Compressing objects: 74% (321/433) [Kremote: Compressing objects: 75% (325/433) [Kremote: Compressing objects: 76% (330/433) [Kremote: Compressing objects: 77% (334/433) [Kremote: Compressing objects: 78% (338/433) [Kremote: Compressing objects: 79% (343/433) [Kremote: Compressing objects: 80% (347/433) [Kremote: Compressing objects: 81% (351/433) [Kremote: Compressing objects: 82% (356/433) [Kremote: Compressing objects: 83% (360/433) [Kremote: Compressing objects: 84% (364/433) [Kremote: Compressing objects: 85% (369/433) [Kremote: Compressing objects: 86% (373/433) [Kremote: Compressing objects: 87% (377/433) [Kremote: Compressing objects: 88% (382/433) [Kremote: Compressing objects: 89% (386/433) [Kremote: Compressing objects: 90% (390/433) [Kremote: Compressing objects: 91% (395/433) [Kremote: Compressing objects: 92% (399/433) [Kremote: Compressing objects: 93% (403/433) [Kremote: Compressing objects: 94% (408/433) [Kremote: Compressing objects: 95% (412/433) [Kremote: Compressing objects: 96% (416/433) [Kremote: Compressing objects: 97% (421/433) [Kremote: Compressing objects: 98% (425/433) [Kremote: Compressing objects: 99% (429/433) [Kremote: Compressing objects: 100% (433/433) [Kremote: Compressing objects: 100% (433/433), done.[K
-Receiving objects: 0% (1/1081) Receiving objects: 1% (11/1081) Receiving objects: 2% (22/1081) Receiving objects: 3% (33/1081) Receiving objects: 4% (44/1081) Receiving objects: 5% (55/1081) Receiving objects: 6% (65/1081) Receiving objects: 7% (76/1081) Receiving objects: 8% (87/1081) Receiving objects: 9% (98/1081) Receiving objects: 10% (109/1081) Receiving objects: 11% (119/1081) Receiving objects: 12% (130/1081) Receiving objects: 13% (141/1081) Receiving objects: 14% (152/1081) Receiving objects: 15% (163/1081) Receiving objects: 16% (173/1081) Receiving objects: 17% (184/1081) Receiving objects: 18% (195/1081) Receiving objects: 19% (206/1081) Receiving objects: 20% (217/1081) Receiving objects: 21% (228/1081) Receiving objects: 22% (238/1081) Receiving objects: 23% (249/1081) Receiving objects: 24% (260/1081) Receiving objects: 25% (271/1081) Receiving objects: 26% (282/1081) Receiving objects: 27% (292/1081) Receiving objects: 28% (303/1081) Receiving objects: 29% (314/1081) Receiving objects: 30% (325/1081) Receiving objects: 31% (336/1081) Receiving objects: 32% (346/1081) Receiving objects: 33% (357/1081) Receiving objects: 34% (368/1081) Receiving objects: 35% (379/1081) Receiving objects: 36% (390/1081) Receiving objects: 37% (400/1081) Receiving objects: 38% (411/1081) Receiving objects: 39% (422/1081) Receiving objects: 40% (433/1081) Receiving objects: 41% (444/1081) Receiving objects: 42% (455/1081) Receiving objects: 43% (465/1081) Receiving objects: 44% (476/1081) Receiving objects: 45% (487/1081) Receiving objects: 46% (498/1081) Receiving objects: 47% (509/1081) Receiving objects: 48% (519/1081) Receiving objects: 49% (530/1081) Receiving objects: 50% (541/1081) Receiving objects: 51% (552/1081) Receiving objects: 52% (563/1081) Receiving objects: 53% (573/1081) Receiving objects: 54% (584/1081) Receiving objects: 55% (595/1081) Receiving objects: 56% (606/1081) Receiving objects: 57% (617/1081) Receiving objects: 58% (627/1081) Receiving objects: 59% (638/1081) Receiving objects: 60% (649/1081) Receiving objects: 61% (660/1081) Receiving objects: 62% (671/1081) Receiving objects: 63% (682/1081) Receiving objects: 64% (692/1081) Receiving objects: 65% (703/1081) Receiving objects: 66% (714/1081) Receiving objects: 67% (725/1081) Receiving objects: 68% (736/1081) Receiving objects: 69% (746/1081) Receiving objects: 70% (757/1081) Receiving objects: 71% (768/1081) Receiving objects: 72% (779/1081) Receiving objects: 73% (790/1081) Receiving objects: 74% (800/1081) Receiving objects: 75% (811/1081) Receiving objects: 76% (822/1081) Receiving objects: 77% (833/1081) Receiving objects: 78% (844/1081) remote: Total 1081 (delta 630), reused 1081 (delta 630)[K
-Receiving objects: 79% (854/1081) Receiving objects: 80% (865/1081) Receiving objects: 81% (876/1081) Receiving objects: 82% (887/1081) Receiving objects: 83% (898/1081) Receiving objects: 84% (909/1081) Receiving objects: 85% (919/1081) Receiving objects: 86% (930/1081) Receiving objects: 87% (941/1081) Receiving objects: 88% (952/1081) Receiving objects: 89% (963/1081) Receiving objects: 90% (973/1081) Receiving objects: 91% (984/1081) Receiving objects: 92% (995/1081) Receiving objects: 93% (1006/1081) Receiving objects: 94% (1017/1081) Receiving objects: 95% (1027/1081) Receiving objects: 96% (1038/1081) Receiving objects: 97% (1049/1081) Receiving objects: 98% (1060/1081) Receiving objects: 99% (1071/1081) Receiving objects: 100% (1081/1081) Receiving objects: 100% (1081/1081), 157.95 KiB, done.
-Resolving deltas: 0% (0/630) Resolving deltas: 27% (176/630) Resolving deltas: 32% (205/630) Resolving deltas: 42% (267/630) Resolving deltas: 43% (273/630) Resolving deltas: 54% (341/630) Resolving deltas: 55% (351/630) Resolving deltas: 57% (362/630) Resolving deltas: 59% (372/630) Resolving deltas: 61% (389/630) Resolving deltas: 62% (391/630) Resolving deltas: 66% (418/630) Resolving deltas: 67% (425/630) Resolving deltas: 68% (432/630) Resolving deltas: 71% (453/630) Resolving deltas: 75% (473/630) Resolving deltas: 76% (479/630) Resolving deltas: 79% (501/630) Resolving deltas: 81% (512/630) Resolving deltas: 82% (517/630) Resolving deltas: 86% (545/630) Resolving deltas: 87% (549/630) Resolving deltas: 88% (555/630) Resolving deltas: 92% (581/630) Resolving deltas: 93% (591/630) Resolving deltas: 94% (595/630) Resolving deltas: 95% (600/630) Resolving deltas: 96% (605/630) Resolving deltas: 97% (617/630) Resolving deltas: 99% (626/630) Resolving deltas: 100% (630/630) Resolving deltas: 100% (630/630), done.
-Fetching git://github.com/roidrage/hubble
-remote: Counting objects: 16, done.[K
-remote: Compressing objects: 7% (1/13) [Kremote: Compressing objects: 15% (2/13) [Kremote: Compressing objects: 23% (3/13) [Kremote: Compressing objects: 30% (4/13) [Kremote: Compressing objects: 38% (5/13) [Kremote: Compressing objects: 46% (6/13) [Kremote: Compressing objects: 53% (7/13) [Kremote: Compressing objects: 61% (8/13) [Kremote: Compressing objects: 69% (9/13) [Kremote: Compressing objects: 76% (10/13) [Kremote: Compressing objects: 84% (11/13) [Kremote: Compressing objects: 92% (12/13) [Kremote: Compressing objects: 100% (13/13) [Kremote: Compressing objects: 100% (13/13), done.[K
-remote: Total 16 (delta 0), reused 16 (delta 0)[K
-Receiving objects: 6% (1/16) Receiving objects: 12% (2/16) Receiving objects: 18% (3/16) Receiving objects: 25% (4/16) Receiving objects: 31% (5/16) Receiving objects: 37% (6/16) Receiving objects: 43% (7/16) Receiving objects: 50% (8/16) Receiving objects: 56% (9/16) Receiving objects: 62% (10/16) Receiving objects: 68% (11/16) Receiving objects: 75% (12/16) Receiving objects: 81% (13/16) Receiving objects: 87% (14/16) Receiving objects: 93% (15/16) Receiving objects: 100% (16/16) Receiving objects: 100% (16/16), 6.12 KiB, done.
-Fetching git://github.com/rack/rack-contrib
-remote: Counting objects: 1054, done.[K
-remote: Compressing objects: 0% (1/443) [Kremote: Compressing objects: 1% (5/443) [Kremote: Compressing objects: 2% (9/443) [Kremote: Compressing objects: 3% (14/443) [Kremote: Compressing objects: 4% (18/443) [Kremote: Compressing objects: 5% (23/443) [Kremote: Compressing objects: 6% (27/443) [Kremote: Compressing objects: 7% (32/443) [Kremote: Compressing objects: 8% (36/443) [Kremote: Compressing objects: 9% (40/443) [Kremote: Compressing objects: 10% (45/443) [Kremote: Compressing objects: 11% (49/443) [Kremote: Compressing objects: 12% (54/443) [Kremote: Compressing objects: 13% (58/443) [Kremote: Compressing objects: 14% (63/443) [Kremote: Compressing objects: 15% (67/443) [Kremote: Compressing objects: 16% (71/443) [Kremote: Compressing objects: 17% (76/443) [Kremote: Compressing objects: 18% (80/443) [Kremote: Compressing objects: 19% (85/443) [Kremote: Compressing objects: 20% (89/443) [Kremote: Compressing objects: 21% (94/443) [Kremote: Compressing objects: 22% (98/443) [Kremote: Compressing objects: 23% (102/443) [Kremote: Compressing objects: 24% (107/443) [Kremote: Compressing objects: 25% (111/443) [Kremote: Compressing objects: 26% (116/443) [Kremote: Compressing objects: 27% (120/443) [Kremote: Compressing objects: 28% (125/443) [Kremote: Compressing objects: 29% (129/443) [Kremote: Compressing objects: 30% (133/443) [Kremote: Compressing objects: 31% (138/443) [Kremote: Compressing objects: 32% (142/443) [Kremote: Compressing objects: 33% (147/443) [Kremote: Compressing objects: 34% (151/443) [Kremote: Compressing objects: 35% (156/443) [Kremote: Compressing objects: 36% (160/443) [Kremote: Compressing objects: 37% (164/443) [Kremote: Compressing objects: 38% (169/443) [Kremote: Compressing objects: 39% (173/443) [Kremote: Compressing objects: 40% (178/443) [Kremote: Compressing objects: 41% (182/443) [Kremote: Compressing objects: 42% (187/443) [Kremote: Compressing objects: 43% (191/443) [Kremote: Compressing objects: 44% (195/443) [Kremote: Compressing objects: 45% (200/443) [Kremote: Compressing objects: 46% (204/443) [Kremote: Compressing objects: 47% (209/443) [Kremote: Compressing objects: 48% (213/443) [Kremote: Compressing objects: 49% (218/443) [Kremote: Compressing objects: 50% (222/443) [Kremote: Compressing objects: 51% (226/443) [Kremote: Compressing objects: 52% (231/443) [Kremote: Compressing objects: 53% (235/443) [Kremote: Compressing objects: 54% (240/443) [Kremote: Compressing objects: 55% (244/443) [Kremote: Compressing objects: 56% (249/443) [Kremote: Compressing objects: 57% (253/443) [Kremote: Compressing objects: 58% (257/443) [Kremote: Compressing objects: 59% (262/443) [Kremote: Compressing objects: 60% (266/443) [Kremote: Compressing objects: 61% (271/443) [Kremote: Compressing objects: 62% (275/443) [Kremote: Compressing objects: 63% (280/443) [Kremote: Compressing objects: 64% (284/443) [Kremote: Compressing objects: 65% (288/443) [Kremote: Compressing objects: 66% (293/443) [Kremote: Compressing objects: 67% (297/443) [Kremote: Compressing objects: 68% (302/443) [Kremote: Compressing objects: 69% (306/443) [Kremote: Compressing objects: 70% (311/443) [Kremote: Compressing objects: 71% (315/443) [Kremote: Compressing objects: 72% (319/443) [Kremote: Compressing objects: 73% (324/443) [Kremote: Compressing objects: 74% (328/443) [Kremote: Compressing objects: 75% (333/443) [Kremote: Compressing objects: 76% (337/443) [Kremote: Compressing objects: 77% (342/443) [Kremote: Compressing objects: 78% (346/443) [Kremote: Compressing objects: 79% (350/443) [Kremote: Compressing objects: 80% (355/443) [Kremote: Compressing objects: 81% (359/443) [Kremote: Compressing objects: 82% (364/443) [Kremote: Compressing objects: 83% (368/443) [Kremote: Compressing objects: 84% (373/443) [Kremote: Compressing objects: 85% (377/443) [Kremote: Compressing objects: 86% (381/443) [Kremote: Compressing objects: 87% (386/443) [Kremote: Compressing objects: 88% (390/443) [Kremote: Compressing objects: 89% (395/443) [Kremote: Compressing objects: 90% (399/443) [Kremote: Compressing objects: 91% (404/443) [Kremote: Compressing objects: 92% (408/443) [Kremote: Compressing objects: 93% (412/443) [Kremote: Compressing objects: 94% (417/443) [Kremote: Compressing objects: 95% (421/443) [Kremote: Compressing objects: 96% (426/443) [Kremote: Compressing objects: 97% (430/443) [Kremote: Compressing objects: 98% (435/443) [Kremote: Compressing objects: 99% (439/443) [Kremote: Compressing objects: 100% (443/443) [Kremote: Compressing objects: 100% (443/443), done.[K
-Receiving objects: 0% (1/1054) Receiving objects: 1% (11/1054) Receiving objects: 2% (22/1054) Receiving objects: 3% (32/1054) Receiving objects: 4% (43/1054) Receiving objects: 5% (53/1054) Receiving objects: 6% (64/1054) Receiving objects: 7% (74/1054) Receiving objects: 8% (85/1054) Receiving objects: 9% (95/1054) Receiving objects: 10% (106/1054) Receiving objects: 11% (116/1054) Receiving objects: 12% (127/1054) Receiving objects: 13% (138/1054) Receiving objects: 14% (148/1054) Receiving objects: 15% (159/1054) Receiving objects: 16% (169/1054) Receiving objects: 17% (180/1054) Receiving objects: 18% (190/1054) Receiving objects: 19% (201/1054) Receiving objects: 20% (211/1054) Receiving objects: 21% (222/1054) Receiving objects: 22% (232/1054) Receiving objects: 23% (243/1054) Receiving objects: 24% (253/1054) Receiving objects: 25% (264/1054) Receiving objects: 26% (275/1054) Receiving objects: 27% (285/1054) Receiving objects: 28% (296/1054) Receiving objects: 29% (306/1054) Receiving objects: 30% (317/1054) Receiving objects: 31% (327/1054) Receiving objects: 32% (338/1054) Receiving objects: 33% (348/1054) Receiving objects: 34% (359/1054) Receiving objects: 35% (369/1054) Receiving objects: 36% (380/1054) Receiving objects: 37% (390/1054) Receiving objects: 38% (401/1054) Receiving objects: 39% (412/1054) Receiving objects: 40% (422/1054) Receiving objects: 41% (433/1054) Receiving objects: 42% (443/1054) Receiving objects: 43% (454/1054) Receiving objects: 44% (464/1054) Receiving objects: 45% (475/1054) Receiving objects: 46% (485/1054) Receiving objects: 47% (496/1054) Receiving objects: 48% (506/1054) Receiving objects: 49% (517/1054) Receiving objects: 50% (527/1054) Receiving objects: 51% (538/1054) Receiving objects: 52% (549/1054) Receiving objects: 53% (559/1054) Receiving objects: 54% (570/1054) Receiving objects: 55% (580/1054) Receiving objects: 56% (591/1054) Receiving objects: 57% (601/1054) Receiving objects: 58% (612/1054) Receiving objects: 59% (622/1054) Receiving objects: 60% (633/1054) Receiving objects: 61% (643/1054) Receiving objects: 62% (654/1054) Receiving objects: 63% (665/1054) Receiving objects: 64% (675/1054) Receiving objects: 65% (686/1054) Receiving objects: 66% (696/1054) Receiving objects: 67% (707/1054) Receiving objects: 68% (717/1054) Receiving objects: 69% (728/1054) Receiving objects: 70% (738/1054) Receiving objects: 71% (749/1054) Receiving objects: 72% (759/1054) Receiving objects: 73% (770/1054) Receiving objects: 74% (780/1054) Receiving objects: 75% (791/1054) Receiving objects: 76% (802/1054) Receiving objects: 77% (812/1054) Receiving objects: 78% (823/1054) Receiving objects: 79% (833/1054) Receiving objects: 80% (844/1054) Receiving objects: 81% (854/1054) Receiving objects: 82% (865/1054) Receiving objects: 83% (875/1054) Receiving objects: 84% (886/1054) Receiving objects: 85% (896/1054) Receiving objects: 86% (907/1054) Receiving objects: 87% (917/1054) remote: Total 1054 (delta 573), reused 925 (delta 478)[K
-Receiving objects: 88% (928/1054) Receiving objects: 89% (939/1054) Receiving objects: 90% (949/1054) Receiving objects: 91% (960/1054) Receiving objects: 92% (970/1054) Receiving objects: 93% (981/1054) Receiving objects: 94% (991/1054) Receiving objects: 95% (1002/1054) Receiving objects: 96% (1012/1054) Receiving objects: 97% (1023/1054) Receiving objects: 98% (1033/1054) Receiving objects: 99% (1044/1054) Receiving objects: 100% (1054/1054) Receiving objects: 100% (1054/1054), 136.74 KiB, done.
-Resolving deltas: 0% (0/573) Resolving deltas: 6% (36/573) Resolving deltas: 20% (115/573) Resolving deltas: 30% (174/573) Resolving deltas: 34% (195/573) Resolving deltas: 38% (218/573) Resolving deltas: 41% (240/573) Resolving deltas: 47% (270/573) Resolving deltas: 51% (294/573) Resolving deltas: 55% (320/573) Resolving deltas: 58% (338/573) Resolving deltas: 64% (367/573) Resolving deltas: 71% (409/573) Resolving deltas: 72% (413/573) Resolving deltas: 73% (419/573) Resolving deltas: 74% (425/573) Resolving deltas: 77% (446/573) Resolving deltas: 78% (451/573) Resolving deltas: 79% (454/573) Resolving deltas: 81% (469/573) Resolving deltas: 82% (471/573) Resolving deltas: 85% (489/573) Resolving deltas: 86% (493/573) Resolving deltas: 87% (500/573) Resolving deltas: 88% (506/573) Resolving deltas: 89% (510/573) Resolving deltas: 92% (530/573) Resolving deltas: 93% (533/573) Resolving deltas: 94% (539/573) Resolving deltas: 96% (551/573) Resolving deltas: 97% (557/573) Resolving deltas: 98% (564/573) Resolving deltas: 99% (571/573) Resolving deltas: 100% (573/573) Resolving deltas: 100% (573/573), done.
-Fetching https://github.com/livingsocial/rake-pipeline.git
-remote: Counting objects: 1390, done.[K
-remote: Compressing objects: 0% (1/505) [Kremote: Compressing objects: 1% (6/505) [Kremote: Compressing objects: 2% (11/505) [Kremote: Compressing objects: 3% (16/505) [Kremote: Compressing objects: 4% (21/505) [Kremote: Compressing objects: 5% (26/505) [Kremote: Compressing objects: 6% (31/505) [Kremote: Compressing objects: 7% (36/505) [Kremote: Compressing objects: 8% (41/505) [Kremote: Compressing objects: 9% (46/505) [Kremote: Compressing objects: 10% (51/505) [Kremote: Compressing objects: 11% (56/505) [Kremote: Compressing objects: 12% (61/505) [Kremote: Compressing objects: 13% (66/505) [Kremote: Compressing objects: 14% (71/505) [Kremote: Compressing objects: 15% (76/505) [Kremote: Compressing objects: 16% (81/505) [Kremote: Compressing objects: 17% (86/505) [Kremote: Compressing objects: 18% (91/505) [Kremote: Compressing objects: 19% (96/505) [Kremote: Compressing objects: 20% (101/505) [Kremote: Compressing objects: 21% (107/505) [Kremote: Compressing objects: 22% (112/505) [Kremote: Compressing objects: 23% (117/505) [Kremote: Compressing objects: 24% (122/505) [Kremote: Compressing objects: 25% (127/505) [Kremote: Compressing objects: 26% (132/505) [Kremote: Compressing objects: 27% (137/505) [Kremote: Compressing objects: 28% (142/505) [Kremote: Compressing objects: 29% (147/505) [Kremote: Compressing objects: 30% (152/505) [Kremote: Compressing objects: 31% (157/505) [Kremote: Compressing objects: 32% (162/505) [Kremote: Compressing objects: 33% (167/505) [Kremote: Compressing objects: 34% (172/505) [Kremote: Compressing objects: 35% (177/505) [Kremote: Compressing objects: 36% (182/505) [Kremote: Compressing objects: 37% (187/505) [Kremote: Compressing objects: 38% (192/505) [Kremote: Compressing objects: 39% (197/505) [Kremote: Compressing objects: 40% (202/505) [Kremote: Compressing objects: 41% (208/505) [Kremote: Compressing objects: 42% (213/505) [Kremote: Compressing objects: 43% (218/505) [Kremote: Compressing objects: 44% (223/505) [Kremote: Compressing objects: 45% (228/505) [Kremote: Compressing objects: 46% (233/505) [Kremote: Compressing objects: 47% (238/505) [Kremote: Compressing objects: 48% (243/505) [Kremote: Compressing objects: 49% (248/505) [Kremote: Compressing objects: 50% (253/505) [Kremote: Compressing objects: 51% (258/505) [Kremote: Compressing objects: 52% (263/505) [Kremote: Compressing objects: 53% (268/505) [Kremote: Compressing objects: 54% (273/505) [Kremote: Compressing objects: 55% (278/505) [Kremote: Compressing objects: 56% (283/505) [Kremote: Compressing objects: 57% (288/505) [Kremote: Compressing objects: 58% (293/505) [Kremote: Compressing objects: 59% (298/505) [Kremote: Compressing objects: 60% (303/505) [Kremote: Compressing objects: 61% (309/505) [Kremote: Compressing objects: 62% (314/505) [Kremote: Compressing objects: 63% (319/505) [Kremote: Compressing objects: 64% (324/505) [Kremote: Compressing objects: 65% (329/505) [Kremote: Compressing objects: 66% (334/505) [Kremote: Compressing objects: 67% (339/505) [Kremote: Compressing objects: 68% (344/505) [Kremote: Compressing objects: 69% (349/505) [Kremote: Compressing objects: 70% (354/505) [Kremote: Compressing objects: 71% (359/505) [Kremote: Compressing objects: 72% (364/505) [Kremote: Compressing objects: 73% (369/505) [Kremote: Compressing objects: 74% (374/505) [Kremote: Compressing objects: 75% (379/505) [Kremote: Compressing objects: 76% (384/505) [Kremote: Compressing objects: 77% (389/505) [Kremote: Compressing objects: 78% (394/505) [Kremote: Compressing objects: 79% (399/505) [Kremote: Compressing objects: 80% (404/505) [Kremote: Compressing objects: 81% (410/505) [Kremote: Compressing objects: 82% (415/505) [Kremote: Compressing objects: 83% (420/505) [Kremote: Compressing objects: 84% (425/505) [Kremote: Compressing objects: 85% (430/505) [Kremote: Compressing objects: 86% (435/505) [Kremote: Compressing objects: 87% (440/505) [Kremote: Compressing objects: 88% (445/505) [Kremote: Compressing objects: 89% (450/505) [Kremote: Compressing objects: 90% (455/505) [Kremote: Compressing objects: 91% (460/505) [Kremote: Compressing objects: 92% (465/505) [Kremote: Compressing objects: 93% (470/505) [Kremote: Compressing objects: 94% (475/505) [Kremote: Compressing objects: 95% (480/505) [Kremote: Compressing objects: 96% (485/505) [Kremote: Compressing objects: 97% (490/505) [Kremote: Compressing objects: 98% (495/505) [Kremote: Compressing objects: 99% (500/505) [Kremote: Compressing objects: 100% (505/505) [Kremote: Compressing objects: 100% (505/505), done.[K
-Receiving objects: 0% (1/1390) Receiving objects: 1% (14/1390) Receiving objects: 2% (28/1390) Receiving objects: 3% (42/1390) Receiving objects: 4% (56/1390) Receiving objects: 5% (70/1390) Receiving objects: 6% (84/1390) Receiving objects: 7% (98/1390) Receiving objects: 8% (112/1390) Receiving objects: 9% (126/1390) Receiving objects: 10% (139/1390) Receiving objects: 11% (153/1390) Receiving objects: 12% (167/1390) Receiving objects: 13% (181/1390) Receiving objects: 14% (195/1390) Receiving objects: 15% (209/1390) Receiving objects: 16% (223/1390) Receiving objects: 17% (237/1390) Receiving objects: 18% (251/1390) Receiving objects: 19% (265/1390) Receiving objects: 20% (278/1390) Receiving objects: 21% (292/1390) Receiving objects: 22% (306/1390) Receiving objects: 23% (320/1390) Receiving objects: 24% (334/1390) Receiving objects: 25% (348/1390) Receiving objects: 26% (362/1390) Receiving objects: 27% (376/1390) Receiving objects: 28% (390/1390) Receiving objects: 29% (404/1390) Receiving objects: 30% (417/1390) Receiving objects: 31% (431/1390) Receiving objects: 32% (445/1390) Receiving objects: 33% (459/1390) Receiving objects: 34% (473/1390) Receiving objects: 35% (487/1390) Receiving objects: 36% (501/1390) Receiving objects: 37% (515/1390) Receiving objects: 38% (529/1390) Receiving objects: 39% (543/1390) Receiving objects: 40% (556/1390) Receiving objects: 41% (570/1390) Receiving objects: 42% (584/1390) Receiving objects: 43% (598/1390) Receiving objects: 44% (612/1390) Receiving objects: 45% (626/1390) Receiving objects: 46% (640/1390) Receiving objects: 47% (654/1390) Receiving objects: 48% (668/1390) Receiving objects: 49% (682/1390) Receiving objects: 50% (695/1390) Receiving objects: 51% (709/1390) Receiving objects: 52% (723/1390) Receiving objects: 53% (737/1390) Receiving objects: 54% (751/1390) Receiving objects: 55% (765/1390) Receiving objects: 56% (779/1390) Receiving objects: 57% (793/1390) Receiving objects: 58% (807/1390) Receiving objects: 59% (821/1390) Receiving objects: 60% (834/1390) Receiving objects: 61% (848/1390) remote: Total 1390 (delta 914), reused 1305 (delta 834)[K
-Receiving objects: 62% (862/1390) Receiving objects: 63% (876/1390) Receiving objects: 64% (890/1390) Receiving objects: 65% (904/1390) Receiving objects: 66% (918/1390) Receiving objects: 67% (932/1390) Receiving objects: 68% (946/1390) Receiving objects: 69% (960/1390) Receiving objects: 70% (973/1390) Receiving objects: 71% (987/1390) Receiving objects: 72% (1001/1390) Receiving objects: 73% (1015/1390) Receiving objects: 74% (1029/1390) Receiving objects: 75% (1043/1390) Receiving objects: 76% (1057/1390) Receiving objects: 77% (1071/1390) Receiving objects: 78% (1085/1390) Receiving objects: 79% (1099/1390) Receiving objects: 80% (1112/1390) Receiving objects: 81% (1126/1390) Receiving objects: 82% (1140/1390) Receiving objects: 83% (1154/1390) Receiving objects: 84% (1168/1390) Receiving objects: 85% (1182/1390) Receiving objects: 86% (1196/1390) Receiving objects: 87% (1210/1390) Receiving objects: 88% (1224/1390) Receiving objects: 89% (1238/1390) Receiving objects: 90% (1251/1390) Receiving objects: 91% (1265/1390) Receiving objects: 92% (1279/1390) Receiving objects: 93% (1293/1390) Receiving objects: 94% (1307/1390) Receiving objects: 95% (1321/1390) Receiving objects: 96% (1335/1390) Receiving objects: 97% (1349/1390) Receiving objects: 98% (1363/1390) Receiving objects: 99% (1377/1390) Receiving objects: 100% (1390/1390) Receiving objects: 100% (1390/1390), 188.41 KiB, done.
-Resolving deltas: 0% (0/914) Resolving deltas: 2% (19/914) Resolving deltas: 20% (185/914) Resolving deltas: 21% (192/914) Resolving deltas: 26% (238/914) Resolving deltas: 27% (253/914) Resolving deltas: 28% (258/914) Resolving deltas: 35% (328/914) Resolving deltas: 37% (339/914) Resolving deltas: 42% (392/914) Resolving deltas: 43% (401/914) Resolving deltas: 45% (414/914) Resolving deltas: 46% (422/914) Resolving deltas: 47% (434/914) Resolving deltas: 52% (476/914) Resolving deltas: 53% (492/914) Resolving deltas: 54% (496/914) Resolving deltas: 55% (507/914) Resolving deltas: 56% (516/914) Resolving deltas: 57% (523/914) Resolving deltas: 63% (578/914) Resolving deltas: 64% (585/914) Resolving deltas: 66% (607/914) Resolving deltas: 67% (618/914) Resolving deltas: 69% (637/914) Resolving deltas: 72% (666/914) Resolving deltas: 73% (669/914) Resolving deltas: 74% (677/914) Resolving deltas: 76% (695/914) Resolving deltas: 78% (713/914) Resolving deltas: 81% (741/914) Resolving deltas: 82% (750/914) Resolving deltas: 83% (760/914) Resolving deltas: 84% (768/914) Resolving deltas: 85% (779/914) Resolving deltas: 87% (797/914) Resolving deltas: 88% (808/914) Resolving deltas: 89% (818/914) Resolving deltas: 92% (843/914) Resolving deltas: 93% (856/914) Resolving deltas: 96% (885/914) Resolving deltas: 97% (893/914) Resolving deltas: 98% (898/914) Resolving deltas: 99% (910/914) Resolving deltas: 100% (914/914) Resolving deltas: 100% (914/914), done.
-Fetching https://github.com/wycats/rake-pipeline-web-filters.git
-remote: Counting objects: 674, done.[K
-remote: Compressing objects: 0% (1/207) [Kremote: Compressing objects: 1% (3/207) [Kremote: Compressing objects: 2% (5/207) [Kremote: Compressing objects: 3% (7/207) [Kremote: Compressing objects: 4% (9/207) [Kremote: Compressing objects: 5% (11/207) [Kremote: Compressing objects: 6% (13/207) [Kremote: Compressing objects: 7% (15/207) [Kremote: Compressing objects: 8% (17/207) [Kremote: Compressing objects: 9% (19/207) [Kremote: Compressing objects: 10% (21/207) [Kremote: Compressing objects: 11% (23/207) [Kremote: Compressing objects: 12% (25/207) [Kremote: Compressing objects: 13% (27/207) [Kremote: Compressing objects: 14% (29/207) [Kremote: Compressing objects: 15% (32/207) [Kremote: Compressing objects: 16% (34/207) [Kremote: Compressing objects: 17% (36/207) [Kremote: Compressing objects: 18% (38/207) [Kremote: Compressing objects: 19% (40/207) [Kremote: Compressing objects: 20% (42/207) [Kremote: Compressing objects: 21% (44/207) [Kremote: Compressing objects: 22% (46/207) [Kremote: Compressing objects: 23% (48/207) [Kremote: Compressing objects: 24% (50/207) [Kremote: Compressing objects: 25% (52/207) [Kremote: Compressing objects: 26% (54/207) [Kremote: Compressing objects: 27% (56/207) [Kremote: Compressing objects: 28% (58/207) [Kremote: Compressing objects: 29% (61/207) [Kremote: Compressing objects: 30% (63/207) [Kremote: Compressing objects: 31% (65/207) [Kremote: Compressing objects: 32% (67/207) [Kremote: Compressing objects: 33% (69/207) [Kremote: Compressing objects: 34% (71/207) [Kremote: Compressing objects: 35% (73/207) [Kremote: Compressing objects: 36% (75/207) [Kremote: Compressing objects: 37% (77/207) [Kremote: Compressing objects: 38% (79/207) [Kremote: Compressing objects: 39% (81/207) [Kremote: Compressing objects: 40% (83/207) [Kremote: Compressing objects: 41% (85/207) [Kremote: Compressing objects: 42% (87/207) [Kremote: Compressing objects: 43% (90/207) [Kremote: Compressing objects: 44% (92/207) [Kremote: Compressing objects: 45% (94/207) [Kremote: Compressing objects: 46% (96/207) [Kremote: Compressing objects: 47% (98/207) [Kremote: Compressing objects: 48% (100/207) [Kremote: Compressing objects: 49% (102/207) [Kremote: Compressing objects: 50% (104/207) [Kremote: Compressing objects: 51% (106/207) [Kremote: Compressing objects: 52% (108/207) [Kremote: Compressing objects: 53% (110/207) [Kremote: Compressing objects: 54% (112/207) [Kremote: Compressing objects: 55% (114/207) [Kremote: Compressing objects: 56% (116/207) [Kremote: Compressing objects: 57% (118/207) [Kremote: Compressing objects: 58% (121/207) [Kremote: Compressing objects: 59% (123/207) [Kremote: Compressing objects: 60% (125/207) [Kremote: Compressing objects: 61% (127/207) [Kremote: Compressing objects: 62% (129/207) [Kremote: Compressing objects: 63% (131/207) [Kremote: Compressing objects: 64% (133/207) [Kremote: Compressing objects: 65% (135/207) [Kremote: Compressing objects: 66% (137/207) [Kremote: Compressing objects: 67% (139/207) [Kremote: Compressing objects: 68% (141/207) [Kremote: Compressing objects: 69% (143/207) [Kremote: Compressing objects: 70% (145/207) [Kremote: Compressing objects: 71% (147/207) [Kremote: Compressing objects: 72% (150/207) [Kremote: Compressing objects: 73% (152/207) [Kremote: Compressing objects: 74% (154/207) [Kremote: Compressing objects: 75% (156/207) [Kremote: Compressing objects: 76% (158/207) [Kremote: Compressing objects: 77% (160/207) [Kremote: Compressing objects: 78% (162/207) [Kremote: Compressing objects: 79% (164/207) [Kremote: Compressing objects: 80% (166/207) [Kremote: Compressing objects: 81% (168/207) [Kremote: Compressing objects: 82% (170/207) [Kremote: Compressing objects: 83% (172/207) [Kremote: Compressing objects: 84% (174/207) [Kremote: Compressing objects: 85% (176/207) [Kremote: Compressing objects: 86% (179/207) [Kremote: Compressing objects: 87% (181/207) [Kremote: Compressing objects: 88% (183/207) [Kremote: Compressing objects: 89% (185/207) [Kremote: Compressing objects: 90% (187/207) [Kremote: Compressing objects: 91% (189/207) [Kremote: Compressing objects: 92% (191/207) [Kremote: Compressing objects: 93% (193/207) [Kremote: Compressing objects: 94% (195/207) [Kremote: Compressing objects: 95% (197/207) [Kremote: Compressing objects: 96% (199/207) [Kremote: Compressing objects: 97% (201/207) [Kremote: Compressing objects: 98% (203/207) [Kremote: Compressing objects: 99% (205/207) [Kremote: Compressing objects: 100% (207/207) [Kremote: Compressing objects: 100% (207/207), done.[K
-Receiving objects: 0% (1/674) Receiving objects: 1% (7/674) Receiving objects: 2% (14/674) Receiving objects: 3% (21/674) Receiving objects: 4% (27/674) Receiving objects: 5% (34/674) Receiving objects: 6% (41/674) Receiving objects: 7% (48/674) Receiving objects: 8% (54/674) Receiving objects: 9% (61/674) Receiving objects: 10% (68/674) Receiving objects: 11% (75/674) Receiving objects: 12% (81/674) Receiving objects: 13% (88/674) Receiving objects: 14% (95/674) Receiving objects: 15% (102/674) Receiving objects: 16% (108/674) Receiving objects: 17% (115/674) Receiving objects: 18% (122/674) Receiving objects: 19% (129/674) Receiving objects: 20% (135/674) Receiving objects: 21% (142/674) Receiving objects: 22% (149/674) Receiving objects: 23% (156/674) Receiving objects: 24% (162/674) Receiving objects: 25% (169/674) Receiving objects: 26% (176/674) Receiving objects: 27% (182/674) Receiving objects: 28% (189/674) Receiving objects: 29% (196/674) Receiving objects: 30% (203/674) Receiving objects: 31% (209/674) Receiving objects: 32% (216/674) Receiving objects: 33% (223/674) Receiving objects: 34% (230/674) Receiving objects: 35% (236/674) Receiving objects: 36% (243/674) Receiving objects: 37% (250/674) Receiving objects: 38% (257/674) Receiving objects: 39% (263/674) Receiving objects: 40% (270/674) Receiving objects: 41% (277/674) Receiving objects: 42% (284/674) Receiving objects: 43% (290/674) Receiving objects: 44% (297/674) Receiving objects: 45% (304/674) Receiving objects: 46% (311/674) Receiving objects: 47% (317/674) Receiving objects: 48% (324/674) remote: Total 674 (delta 491), reused 646 (delta 463)[K
-Receiving objects: 49% (331/674) Receiving objects: 50% (337/674) Receiving objects: 51% (344/674) Receiving objects: 52% (351/674) Receiving objects: 53% (358/674) Receiving objects: 54% (364/674) Receiving objects: 55% (371/674) Receiving objects: 56% (378/674) Receiving objects: 57% (385/674) Receiving objects: 58% (391/674) Receiving objects: 59% (398/674) Receiving objects: 60% (405/674) Receiving objects: 61% (412/674) Receiving objects: 62% (418/674) Receiving objects: 63% (425/674) Receiving objects: 64% (432/674) Receiving objects: 65% (439/674) Receiving objects: 66% (445/674) Receiving objects: 67% (452/674) Receiving objects: 68% (459/674) Receiving objects: 69% (466/674) Receiving objects: 70% (472/674) Receiving objects: 71% (479/674) Receiving objects: 72% (486/674) Receiving objects: 73% (493/674) Receiving objects: 74% (499/674) Receiving objects: 75% (506/674) Receiving objects: 76% (513/674) Receiving objects: 77% (519/674) Receiving objects: 78% (526/674) Receiving objects: 79% (533/674) Receiving objects: 80% (540/674) Receiving objects: 81% (546/674) Receiving objects: 82% (553/674) Receiving objects: 83% (560/674) Receiving objects: 84% (567/674) Receiving objects: 85% (573/674) Receiving objects: 86% (580/674) Receiving objects: 87% (587/674) Receiving objects: 88% (594/674) Receiving objects: 89% (600/674) Receiving objects: 90% (607/674) Receiving objects: 91% (614/674) Receiving objects: 92% (621/674) Receiving objects: 93% (627/674) Receiving objects: 94% (634/674) Receiving objects: 95% (641/674) Receiving objects: 96% (648/674) Receiving objects: 97% (654/674) Receiving objects: 98% (661/674) Receiving objects: 99% (668/674) Receiving objects: 100% (674/674) Receiving objects: 100% (674/674), 90.14 KiB, done.
-Resolving deltas: 0% (0/491) Resolving deltas: 18% (93/491) Resolving deltas: 19% (96/491) Resolving deltas: 28% (140/491) Resolving deltas: 33% (164/491) Resolving deltas: 34% (168/491) Resolving deltas: 39% (192/491) Resolving deltas: 41% (204/491) Resolving deltas: 42% (210/491) Resolving deltas: 47% (232/491) Resolving deltas: 52% (259/491) Resolving deltas: 53% (261/491) Resolving deltas: 54% (268/491) Resolving deltas: 55% (272/491) Resolving deltas: 56% (276/491) Resolving deltas: 57% (280/491) Resolving deltas: 61% (302/491) Resolving deltas: 62% (305/491) Resolving deltas: 65% (321/491) Resolving deltas: 66% (326/491) Resolving deltas: 70% (344/491) Resolving deltas: 72% (355/491) Resolving deltas: 74% (368/491) Resolving deltas: 75% (371/491) Resolving deltas: 78% (386/491) Resolving deltas: 79% (389/491) Resolving deltas: 87% (432/491) Resolving deltas: 91% (451/491) Resolving deltas: 93% (458/491) Resolving deltas: 94% (463/491) Resolving deltas: 98% (482/491) Resolving deltas: 100% (491/491) Resolving deltas: 100% (491/491), done.
-Fetching https://github.com/travis-ci/travis-assets
-remote: Counting objects: 3310, done.[K
-remote: Compressing objects: 0% (1/2323) [Kremote: Compressing objects: 1% (24/2323) [Kremote: Compressing objects: 2% (47/2323) [Kremote: Compressing objects: 3% (70/2323) [Kremote: Compressing objects: 4% (93/2323) [Kremote: Compressing objects: 5% (117/2323) [Kremote: Compressing objects: 6% (140/2323) [Kremote: Compressing objects: 7% (163/2323) [Kremote: Compressing objects: 7% (183/2323) [Kremote: Compressing objects: 8% (186/2323) [Kremote: Compressing objects: 9% (210/2323) [Kremote: Compressing objects: 10% (233/2323) [Kremote: Compressing objects: 11% (256/2323) [Kremote: Compressing objects: 12% (279/2323) [Kremote: Compressing objects: 13% (302/2323) [Kremote: Compressing objects: 14% (326/2323) [Kremote: Compressing objects: 15% (349/2323) [Kremote: Compressing objects: 16% (372/2323) [Kremote: Compressing objects: 17% (395/2323) [Kremote: Compressing objects: 18% (419/2323) [Kremote: Compressing objects: 19% (442/2323) [Kremote: Compressing objects: 20% (465/2323) [Kremote: Compressing objects: 21% (488/2323) [Kremote: Compressing objects: 22% (512/2323) [Kremote: Compressing objects: 23% (535/2323) [Kremote: Compressing objects: 24% (558/2323) [Kremote: Compressing objects: 25% (581/2323) [Kremote: Compressing objects: 26% (604/2323) [Kremote: Compressing objects: 27% (628/2323) [Kremote: Compressing objects: 28% (651/2323) [Kremote: Compressing objects: 29% (674/2323) [Kremote: Compressing objects: 30% (697/2323) [Kremote: Compressing objects: 31% (721/2323) [Kremote: Compressing objects: 32% (744/2323) [Kremote: Compressing objects: 33% (767/2323) [Kremote: Compressing objects: 34% (790/2323) [Kremote: Compressing objects: 35% (814/2323) [Kremote: Compressing objects: 36% (837/2323) [Kremote: Compressing objects: 37% (860/2323) [Kremote: Compressing objects: 38% (883/2323) [Kremote: Compressing objects: 39% (906/2323) [Kremote: Compressing objects: 40% (930/2323) [Kremote: Compressing objects: 41% (953/2323) [Kremote: Compressing objects: 42% (976/2323) [Kremote: Compressing objects: 43% (999/2323) [Kremote: Compressing objects: 44% (1023/2323) [Kremote: Compressing objects: 45% (1046/2323) [Kremote: Compressing objects: 46% (1069/2323) [Kremote: Compressing objects: 47% (1092/2323) [Kremote: Compressing objects: 48% (1116/2323) [Kremote: Compressing objects: 49% (1139/2323) [Kremote: Compressing objects: 49% (1144/2323) [Kremote: Compressing objects: 50% (1162/2323) [Kremote: Compressing objects: 51% (1185/2323) [Kremote: Compressing objects: 52% (1208/2323) [Kremote: Compressing objects: 53% (1232/2323) [Kremote: Compressing objects: 54% (1255/2323) [Kremote: Compressing objects: 55% (1278/2323) [Kremote: Compressing objects: 56% (1301/2323) [Kremote: Compressing objects: 57% (1325/2323) [Kremote: Compressing objects: 58% (1348/2323) [Kremote: Compressing objects: 59% (1371/2323) [Kremote: Compressing objects: 60% (1394/2323) [Kremote: Compressing objects: 61% (1418/2323) [Kremote: Compressing objects: 62% (1441/2323) [Kremote: Compressing objects: 63% (1464/2323) [Kremote: Compressing objects: 64% (1487/2323) [Kremote: Compressing objects: 65% (1510/2323) [Kremote: Compressing objects: 66% (1534/2323) [Kremote: Compressing objects: 67% (1557/2323) [Kremote: Compressing objects: 68% (1580/2323) [Kremote: Compressing objects: 69% (1603/2323) [Kremote: Compressing objects: 70% (1627/2323) [Kremote: Compressing objects: 71% (1650/2323) [Kremote: Compressing objects: 72% (1673/2323) [Kremote: Compressing objects: 73% (1696/2323) [Kremote: Compressing objects: 74% (1720/2323) [Kremote: Compressing objects: 75% (1743/2323) [Kremote: Compressing objects: 76% (1766/2323) [Kremote: Compressing objects: 77% (1789/2323) [Kremote: Compressing objects: 78% (1812/2323) [Kremote: Compressing objects: 79% (1836/2323) [Kremote: Compressing objects: 80% (1859/2323) [Kremote: Compressing objects: 81% (1882/2323) [Kremote: Compressing objects: 82% (1905/2323) [Kremote: Compressing objects: 83% (1929/2323) [Kremote: Compressing objects: 84% (1952/2323) [Kremote: Compressing objects: 85% (1975/2323) [Kremote: Compressing objects: 86% (1998/2323) [Kremote: Compressing objects: 87% (2022/2323) [Kremote: Compressing objects: 88% (2045/2323) [Kremote: Compressing objects: 89% (2068/2323) [Kremote: Compressing objects: 90% (2091/2323) [Kremote: Compressing objects: 91% (2114/2323) [Kremote: Compressing objects: 92% (2138/2323) [Kremote: Compressing objects: 93% (2161/2323) [Kremote: Compressing objects: 94% (2184/2323) [Kremote: Compressing objects: 95% (2207/2323) [Kremote: Compressing objects: 96% (2231/2323) [Kremote: Compressing objects: 97% (2254/2323) [Kremote: Compressing objects: 98% (2277/2323) [Kremote: Compressing objects: 99% (2300/2323) [Kremote: Compressing objects: 100% (2323/2323) [Kremote: Compressing objects: 100% (2323/2323), done.[K
-Receiving objects: 0% (1/3310) Receiving objects: 1% (34/3310) Receiving objects: 2% (67/3310) Receiving objects: 3% (100/3310) Receiving objects: 4% (133/3310) Receiving objects: 5% (166/3310) Receiving objects: 6% (199/3310) Receiving objects: 7% (232/3310) Receiving objects: 8% (265/3310) Receiving objects: 9% (298/3310), 60.00 KiB | 85 KiB/s Receiving objects: 10% (331/3310), 60.00 KiB | 85 KiB/s Receiving objects: 11% (365/3310), 60.00 KiB | 85 KiB/s Receiving objects: 12% (398/3310), 60.00 KiB | 85 KiB/s Receiving objects: 13% (431/3310), 60.00 KiB | 85 KiB/s Receiving objects: 14% (464/3310), 60.00 KiB | 85 KiB/s Receiving objects: 15% (497/3310), 60.00 KiB | 85 KiB/s Receiving objects: 16% (530/3310), 60.00 KiB | 85 KiB/s Receiving objects: 17% (563/3310), 60.00 KiB | 85 KiB/s Receiving objects: 18% (596/3310), 60.00 KiB | 85 KiB/s Receiving objects: 18% (622/3310), 60.00 KiB | 85 KiB/s Receiving objects: 19% (629/3310), 60.00 KiB | 85 KiB/s Receiving objects: 20% (662/3310), 60.00 KiB | 85 KiB/s Receiving objects: 21% (696/3310), 60.00 KiB | 85 KiB/s Receiving objects: 22% (729/3310), 60.00 KiB | 85 KiB/s Receiving objects: 23% (762/3310), 60.00 KiB | 85 KiB/s Receiving objects: 24% (795/3310), 124.00 KiB | 99 KiB/s Receiving objects: 25% (828/3310), 124.00 KiB | 99 KiB/s Receiving objects: 26% (861/3310), 124.00 KiB | 99 KiB/s Receiving objects: 27% (894/3310), 124.00 KiB | 99 KiB/s Receiving objects: 28% (927/3310), 124.00 KiB | 99 KiB/s Receiving objects: 29% (960/3310), 124.00 KiB | 99 KiB/s Receiving objects: 30% (993/3310), 124.00 KiB | 99 KiB/s Receiving objects: 31% (1027/3310), 124.00 KiB | 99 KiB/s Receiving objects: 32% (1060/3310), 124.00 KiB | 99 KiB/s Receiving objects: 32% (1084/3310), 188.00 KiB | 105 KiB/s Receiving objects: 33% (1093/3310), 268.00 KiB | 113 KiB/s Receiving objects: 33% (1121/3310), 364.00 KiB | 126 KiB/s Receiving objects: 34% (1126/3310), 364.00 KiB | 126 KiB/s Receiving objects: 35% (1159/3310), 572.00 KiB | 142 KiB/s Receiving objects: 35% (1163/3310), 572.00 KiB | 142 KiB/s Receiving objects: 36% (1192/3310), 668.00 KiB | 146 KiB/s Receiving objects: 36% (1202/3310), 748.00 KiB | 145 KiB/s Receiving objects: 37% (1225/3310), 844.00 KiB | 157 KiB/s Receiving objects: 37% (1244/3310), 844.00 KiB | 157 KiB/s Receiving objects: 38% (1258/3310), 956.00 KiB | 165 KiB/s Receiving objects: 38% (1287/3310), 1.04 MiB | 175 KiB/s Receiving objects: 39% (1291/3310), 1.04 MiB | 175 KiB/s Receiving objects: 40% (1324/3310), 1.14 MiB | 180 KiB/s Receiving objects: 40% (1340/3310), 1.26 MiB | 187 KiB/s Receiving objects: 41% (1358/3310), 1.39 MiB | 190 KiB/s Receiving objects: 42% (1391/3310), 1.53 MiB | 202 KiB/s Receiving objects: 42% (1396/3310), 1.53 MiB | 202 KiB/s Receiving objects: 43% (1424/3310), 1.66 MiB | 212 KiB/s Receiving objects: 44% (1457/3310), 1.82 MiB | 231 KiB/s Receiving objects: 45% (1490/3310), 1.99 MiB | 248 KiB/s Receiving objects: 46% (1523/3310), 1.99 MiB | 248 KiB/s Receiving objects: 46% (1544/3310), 2.19 MiB | 272 KiB/s Receiving objects: 47% (1556/3310), 2.19 MiB | 272 KiB/s Receiving objects: 48% (1589/3310), 2.19 MiB | 272 KiB/s Receiving objects: 49% (1622/3310), 2.19 MiB | 272 KiB/s Receiving objects: 50% (1655/3310), 2.19 MiB | 272 KiB/s Receiving objects: 51% (1689/3310), 2.19 MiB | 272 KiB/s Receiving objects: 52% (1722/3310), 2.19 MiB | 272 KiB/s Receiving objects: 53% (1755/3310), 2.47 MiB | 309 KiB/s Receiving objects: 53% (1768/3310), 2.80 MiB | 360 KiB/s Receiving objects: 54% (1788/3310), 3.22 MiB | 415 KiB/s Receiving objects: 55% (1821/3310), 3.22 MiB | 415 KiB/s Receiving objects: 56% (1854/3310), 3.22 MiB | 415 KiB/s Receiving objects: 56% (1861/3310), 3.52 MiB | 458 KiB/s Receiving objects: 57% (1887/3310), 3.52 MiB | 458 KiB/s Receiving objects: 58% (1920/3310), 3.52 MiB | 458 KiB/s Receiving objects: 59% (1953/3310), 3.52 MiB | 458 KiB/s Receiving objects: 60% (1986/3310), 3.52 MiB | 458 KiB/s Receiving objects: 61% (2020/3310), 3.52 MiB | 458 KiB/s Receiving objects: 62% (2053/3310), 3.52 MiB | 458 KiB/s Receiving objects: 63% (2086/3310), 3.79 MiB | 486 KiB/s Receiving objects: 64% (2119/3310), 3.79 MiB | 486 KiB/s Receiving objects: 65% (2152/3310), 3.79 MiB | 486 KiB/s Receiving objects: 66% (2185/3310), 3.79 MiB | 486 KiB/s Receiving objects: 67% (2218/3310), 3.79 MiB | 486 KiB/s Receiving objects: 68% (2251/3310), 3.79 MiB | 486 KiB/s Receiving objects: 69% (2284/3310), 3.79 MiB | 486 KiB/s Receiving objects: 70% (2317/3310), 3.79 MiB | 486 KiB/s Receiving objects: 71% (2351/3310), 3.79 MiB | 486 KiB/s Receiving objects: 72% (2384/3310), 3.79 MiB | 486 KiB/s Receiving objects: 72% (2402/3310), 3.79 MiB | 486 KiB/s Receiving objects: 73% (2417/3310), 3.79 MiB | 486 KiB/s Receiving objects: 74% (2450/3310), 4.08 MiB | 520 KiB/s Receiving objects: 75% (2483/3310), 4.08 MiB | 520 KiB/s Receiving objects: 76% (2516/3310), 4.36 MiB | 545 KiB/s Receiving objects: 76% (2518/3310), 4.36 MiB | 545 KiB/s Receiving objects: 77% (2549/3310), 4.64 MiB | 564 KiB/s Receiving objects: 78% (2582/3310), 4.64 MiB | 564 KiB/s Receiving objects: 79% (2615/3310), 4.91 MiB | 570 KiB/s Receiving objects: 79% (2625/3310), 4.91 MiB | 570 KiB/s Receiving objects: 80% (2648/3310), 4.91 MiB | 570 KiB/s Receiving objects: 81% (2682/3310), 5.21 MiB | 569 KiB/s Receiving objects: 82% (2715/3310), 5.21 MiB | 569 KiB/s Receiving objects: 82% (2746/3310), 5.54 MiB | 561 KiB/s Receiving objects: 83% (2748/3310), 5.54 MiB | 561 KiB/s Receiving objects: 84% (2781/3310), 5.54 MiB | 561 KiB/s Receiving objects: 85% (2814/3310), 5.85 MiB | 543 KiB/s Receiving objects: 86% (2847/3310), 5.85 MiB | 543 KiB/s Receiving objects: 87% (2880/3310), 5.85 MiB | 543 KiB/s Receiving objects: 87% (2889/3310), 6.16 MiB | 545 KiB/s Receiving objects: 88% (2913/3310), 6.16 MiB | 545 KiB/s Receiving objects: 89% (2946/3310), 6.16 MiB | 545 KiB/s Receiving objects: 90% (2979/3310), 6.16 MiB | 545 KiB/s Receiving objects: 91% (3013/3310), 6.16 MiB | 545 KiB/s Receiving objects: 92% (3046/3310), 6.16 MiB | 545 KiB/s Receiving objects: 93% (3079/3310), 6.16 MiB | 545 KiB/s Receiving objects: 93% (3104/3310), 6.42 MiB | 540 KiB/s Receiving objects: 94% (3112/3310), 6.42 MiB | 540 KiB/s Receiving objects: 95% (3145/3310), 6.67 MiB | 530 KiB/s Receiving objects: 96% (3178/3310), 6.92 MiB | 526 KiB/s Receiving objects: 97% (3211/3310), 6.92 MiB | 526 KiB/s Receiving objects: 98% (3244/3310), 6.92 MiB | 526 KiB/s Receiving objects: 99% (3277/3310), 6.92 MiB | 526 KiB/s Receiving objects: 99% (3299/3310), 6.92 MiB | 526 KiB/s remote: Total 3310 (delta 1088), reused 3044 (delta 844)[K
-Receiving objects: 100% (3310/3310), 7.18 MiB | 530 KiB/s Receiving objects: 100% (3310/3310), 7.44 MiB | 538 KiB/s, done.
-Resolving deltas: 0% (0/1088) Resolving deltas: 6% (66/1088) Resolving deltas: 8% (88/1088) Resolving deltas: 9% (105/1088) Resolving deltas: 10% (110/1088) Resolving deltas: 11% (120/1088) Resolving deltas: 20% (227/1088) Resolving deltas: 22% (250/1088) Resolving deltas: 24% (263/1088) Resolving deltas: 25% (279/1088) Resolving deltas: 26% (283/1088) Resolving deltas: 27% (298/1088) Resolving deltas: 28% (305/1088) Resolving deltas: 29% (323/1088) Resolving deltas: 30% (333/1088) Resolving deltas: 31% (342/1088) Resolving deltas: 32% (350/1088) Resolving deltas: 33% (360/1088) Resolving deltas: 34% (380/1088) Resolving deltas: 35% (388/1088) Resolving deltas: 36% (396/1088) Resolving deltas: 37% (403/1088) Resolving deltas: 38% (414/1088) Resolving deltas: 39% (426/1088) Resolving deltas: 40% (442/1088) Resolving deltas: 41% (447/1088) Resolving deltas: 42% (466/1088) Resolving deltas: 43% (471/1088) Resolving deltas: 44% (480/1088) Resolving deltas: 45% (490/1088) Resolving deltas: 46% (503/1088) Resolving deltas: 47% (520/1088) Resolving deltas: 48% (527/1088) Resolving deltas: 49% (536/1088) Resolving deltas: 50% (552/1088) Resolving deltas: 51% (555/1088) Resolving deltas: 52% (570/1088) Resolving deltas: 53% (582/1088) Resolving deltas: 54% (596/1088) Resolving deltas: 55% (600/1088) Resolving deltas: 56% (615/1088) Resolving deltas: 57% (621/1088) Resolving deltas: 58% (636/1088) Resolving deltas: 59% (642/1088) Resolving deltas: 68% (741/1088) Resolving deltas: 69% (759/1088) Resolving deltas: 70% (762/1088) Resolving deltas: 71% (773/1088) Resolving deltas: 72% (787/1088) Resolving deltas: 73% (796/1088) Resolving deltas: 82% (902/1088) Resolving deltas: 91% (1000/1088) Resolving deltas: 92% (1010/1088) Resolving deltas: 93% (1014/1088) Resolving deltas: 94% (1025/1088) Resolving deltas: 95% (1037/1088) Resolving deltas: 96% (1046/1088) Resolving deltas: 97% (1056/1088) Resolving deltas: 98% (1068/1088) Resolving deltas: 99% (1078/1088) Resolving deltas: 100% (1088/1088) Resolving deltas: 100% (1088/1088), done.
-Fetching git://github.com/travis-ci/travis-core
-remote: Counting objects: 11443, done.[K
-remote: Compressing objects: 0% (1/3235) [Kremote: Compressing objects: 1% (33/3235) [Kremote: Compressing objects: 2% (65/3235) [Kremote: Compressing objects: 3% (98/3235) [Kremote: Compressing objects: 4% (130/3235) [Kremote: Compressing objects: 5% (162/3235) [Kremote: Compressing objects: 6% (195/3235) [Kremote: Compressing objects: 7% (227/3235) [Kremote: Compressing objects: 8% (259/3235) [Kremote: Compressing objects: 9% (292/3235) [Kremote: Compressing objects: 10% (324/3235) [Kremote: Compressing objects: 11% (356/3235) [Kremote: Compressing objects: 12% (389/3235) [Kremote: Compressing objects: 13% (421/3235) [Kremote: Compressing objects: 14% (453/3235) [Kremote: Compressing objects: 15% (486/3235) [Kremote: Compressing objects: 16% (518/3235) [Kremote: Compressing objects: 17% (550/3235) [Kremote: Compressing objects: 18% (583/3235) [Kremote: Compressing objects: 19% (615/3235) [Kremote: Compressing objects: 20% (647/3235) [Kremote: Compressing objects: 21% (680/3235) [Kremote: Compressing objects: 22% (712/3235) [Kremote: Compressing objects: 23% (745/3235) [Kremote: Compressing objects: 24% (777/3235) [Kremote: Compressing objects: 25% (809/3235) [Kremote: Compressing objects: 26% (842/3235) [Kremote: Compressing objects: 27% (874/3235) [Kremote: Compressing objects: 28% (906/3235) [Kremote: Compressing objects: 29% (939/3235) [Kremote: Compressing objects: 30% (971/3235) [Kremote: Compressing objects: 31% (1003/3235) [Kremote: Compressing objects: 32% (1036/3235) [Kremote: Compressing objects: 33% (1068/3235) [Kremote: Compressing objects: 34% (1100/3235) [Kremote: Compressing objects: 35% (1133/3235) [Kremote: Compressing objects: 36% (1165/3235) [Kremote: Compressing objects: 37% (1197/3235) [Kremote: Compressing objects: 38% (1230/3235) [Kremote: Compressing objects: 39% (1262/3235) [Kremote: Compressing objects: 40% (1294/3235) [Kremote: Compressing objects: 41% (1327/3235) [Kremote: Compressing objects: 42% (1359/3235) [Kremote: Compressing objects: 43% (1392/3235) [Kremote: Compressing objects: 44% (1424/3235) [Kremote: Compressing objects: 45% (1456/3235) [Kremote: Compressing objects: 46% (1489/3235) [Kremote: Compressing objects: 47% (1521/3235) [Kremote: Compressing objects: 48% (1553/3235) [Kremote: Compressing objects: 49% (1586/3235) [Kremote: Compressing objects: 50% (1618/3235) [Kremote: Compressing objects: 51% (1650/3235) [Kremote: Compressing objects: 52% (1683/3235) [Kremote: Compressing objects: 53% (1715/3235) [Kremote: Compressing objects: 54% (1747/3235) [Kremote: Compressing objects: 55% (1780/3235) [Kremote: Compressing objects: 56% (1812/3235) [Kremote: Compressing objects: 57% (1844/3235) [Kremote: Compressing objects: 58% (1877/3235) [Kremote: Compressing objects: 59% (1909/3235) [Kremote: Compressing objects: 60% (1941/3235) [Kremote: Compressing objects: 61% (1974/3235) [Kremote: Compressing objects: 62% (2006/3235) [Kremote: Compressing objects: 63% (2039/3235) [Kremote: Compressing objects: 64% (2071/3235) [Kremote: Compressing objects: 65% (2103/3235) [Kremote: Compressing objects: 66% (2136/3235) [Kremote: Compressing objects: 67% (2168/3235) [Kremote: Compressing objects: 68% (2200/3235) [Kremote: Compressing objects: 69% (2233/3235) [Kremote: Compressing objects: 70% (2265/3235) [Kremote: Compressing objects: 71% (2297/3235) [Kremote: Compressing objects: 72% (2330/3235) [Kremote: Compressing objects: 73% (2362/3235) [Kremote: Compressing objects: 74% (2394/3235) [Kremote: Compressing objects: 75% (2427/3235) [Kremote: Compressing objects: 76% (2459/3235) [Kremote: Compressing objects: 77% (2491/3235) [Kremote: Compressing objects: 78% (2524/3235) [Kremote: Compressing objects: 79% (2556/3235) [Kremote: Compressing objects: 80% (2588/3235) [Kremote: Compressing objects: 81% (2621/3235) [Kremote: Compressing objects: 82% (2653/3235) [Kremote: Compressing objects: 83% (2686/3235) [Kremote: Compressing objects: 84% (2718/3235) [Kremote: Compressing objects: 85% (2750/3235) [Kremote: Compressing objects: 86% (2783/3235) [Kremote: Compressing objects: 87% (2815/3235) [Kremote: Compressing objects: 88% (2847/3235) [Kremote: Compressing objects: 89% (2880/3235) [Kremote: Compressing objects: 90% (2912/3235) [Kremote: Compressing objects: 91% (2944/3235) [Kremote: Compressing objects: 92% (2977/3235) [Kremote: Compressing objects: 93% (3009/3235) [Kremote: Compressing objects: 94% (3041/3235) [Kremote: Compressing objects: 95% (3074/3235) [Kremote: Compressing objects: 96% (3106/3235) [Kremote: Compressing objects: 97% (3138/3235) [Kremote: Compressing objects: 98% (3171/3235) [Kremote: Compressing objects: 99% (3203/3235) [Kremote: Compressing objects: 100% (3235/3235) [Kremote: Compressing objects: 100% (3235/3235), done.[K
-Receiving objects: 0% (1/11443) Receiving objects: 1% (115/11443) Receiving objects: 2% (229/11443) Receiving objects: 3% (344/11443) Receiving objects: 4% (458/11443) Receiving objects: 5% (573/11443) Receiving objects: 6% (687/11443) Receiving objects: 7% (802/11443) Receiving objects: 8% (916/11443) Receiving objects: 9% (1030/11443) Receiving objects: 10% (1145/11443) Receiving objects: 11% (1259/11443) Receiving objects: 12% (1374/11443) Receiving objects: 13% (1488/11443) Receiving objects: 14% (1603/11443) Receiving objects: 15% (1717/11443) Receiving objects: 16% (1831/11443) Receiving objects: 17% (1946/11443) Receiving objects: 18% (2060/11443) Receiving objects: 19% (2175/11443) Receiving objects: 20% (2289/11443) Receiving objects: 21% (2404/11443) Receiving objects: 22% (2518/11443) Receiving objects: 23% (2632/11443) Receiving objects: 24% (2747/11443) Receiving objects: 25% (2861/11443) Receiving objects: 26% (2976/11443) Receiving objects: 27% (3090/11443) Receiving objects: 28% (3205/11443) Receiving objects: 29% (3319/11443) Receiving objects: 30% (3433/11443) Receiving objects: 31% (3548/11443) Receiving objects: 32% (3662/11443) Receiving objects: 33% (3777/11443) Receiving objects: 34% (3891/11443), 508.00 KiB | 901 KiB/s Receiving objects: 35% (4006/11443), 508.00 KiB | 901 KiB/s Receiving objects: 36% (4120/11443), 508.00 KiB | 901 KiB/s Receiving objects: 37% (4234/11443), 508.00 KiB | 901 KiB/s Receiving objects: 38% (4349/11443), 508.00 KiB | 901 KiB/s Receiving objects: 39% (4463/11443), 508.00 KiB | 901 KiB/s Receiving objects: 40% (4578/11443), 508.00 KiB | 901 KiB/s Receiving objects: 41% (4692/11443), 508.00 KiB | 901 KiB/s Receiving objects: 42% (4807/11443), 508.00 KiB | 901 KiB/s Receiving objects: 43% (4921/11443), 508.00 KiB | 901 KiB/s Receiving objects: 44% (5035/11443), 508.00 KiB | 901 KiB/s Receiving objects: 45% (5150/11443), 508.00 KiB | 901 KiB/s Receiving objects: 46% (5264/11443), 508.00 KiB | 901 KiB/s Receiving objects: 47% (5379/11443), 508.00 KiB | 901 KiB/s Receiving objects: 48% (5493/11443), 508.00 KiB | 901 KiB/s Receiving objects: 49% (5608/11443), 508.00 KiB | 901 KiB/s Receiving objects: 50% (5722/11443), 508.00 KiB | 901 KiB/s Receiving objects: 51% (5836/11443), 508.00 KiB | 901 KiB/s Receiving objects: 52% (5951/11443), 508.00 KiB | 901 KiB/s Receiving objects: 53% (6065/11443), 508.00 KiB | 901 KiB/s Receiving objects: 54% (6180/11443), 508.00 KiB | 901 KiB/s Receiving objects: 55% (6294/11443), 508.00 KiB | 901 KiB/s Receiving objects: 56% (6409/11443), 508.00 KiB | 901 KiB/s Receiving objects: 57% (6523/11443), 508.00 KiB | 901 KiB/s Receiving objects: 58% (6637/11443), 508.00 KiB | 901 KiB/s Receiving objects: 59% (6752/11443), 508.00 KiB | 901 KiB/s Receiving objects: 60% (6866/11443), 508.00 KiB | 901 KiB/s Receiving objects: 61% (6981/11443), 508.00 KiB | 901 KiB/s Receiving objects: 62% (7095/11443), 508.00 KiB | 901 KiB/s Receiving objects: 63% (7210/11443), 508.00 KiB | 901 KiB/s Receiving objects: 64% (7324/11443), 508.00 KiB | 901 KiB/s Receiving objects: 65% (7438/11443), 508.00 KiB | 901 KiB/s Receiving objects: 66% (7553/11443), 508.00 KiB | 901 KiB/s Receiving objects: 67% (7667/11443), 508.00 KiB | 901 KiB/s Receiving objects: 68% (7782/11443), 508.00 KiB | 901 KiB/s Receiving objects: 69% (7896/11443), 508.00 KiB | 901 KiB/s Receiving objects: 70% (8011/11443), 508.00 KiB | 901 KiB/s Receiving objects: 71% (8125/11443), 508.00 KiB | 901 KiB/s Receiving objects: 72% (8239/11443), 508.00 KiB | 901 KiB/s Receiving objects: 73% (8354/11443), 508.00 KiB | 901 KiB/s Receiving objects: 74% (8468/11443), 508.00 KiB | 901 KiB/s Receiving objects: 75% (8583/11443), 508.00 KiB | 901 KiB/s Receiving objects: 76% (8697/11443), 508.00 KiB | 901 KiB/s Receiving objects: 77% (8812/11443), 508.00 KiB | 901 KiB/s Receiving objects: 78% (8926/11443), 508.00 KiB | 901 KiB/s Receiving objects: 79% (9040/11443), 508.00 KiB | 901 KiB/s Receiving objects: 80% (9155/11443), 508.00 KiB | 901 KiB/s Receiving objects: 81% (9269/11443), 508.00 KiB | 901 KiB/s Receiving objects: 82% (9384/11443), 508.00 KiB | 901 KiB/s Receiving objects: 83% (9498/11443), 508.00 KiB | 901 KiB/s Receiving objects: 84% (9613/11443), 508.00 KiB | 901 KiB/s Receiving objects: 85% (9727/11443), 508.00 KiB | 901 KiB/s Receiving objects: 86% (9841/11443), 508.00 KiB | 901 KiB/s Receiving objects: 87% (9956/11443), 508.00 KiB | 901 KiB/s Receiving objects: 88% (10070/11443), 508.00 KiB | 901 KiB/s Receiving objects: 89% (10185/11443), 508.00 KiB | 901 KiB/s Receiving objects: 90% (10299/11443), 508.00 KiB | 901 KiB/s Receiving objects: 91% (10414/11443), 508.00 KiB | 901 KiB/s Receiving objects: 92% (10528/11443), 508.00 KiB | 901 KiB/s Receiving objects: 93% (10642/11443), 508.00 KiB | 901 KiB/s Receiving objects: 94% (10757/11443), 508.00 KiB | 901 KiB/s Receiving objects: 95% (10871/11443), 508.00 KiB | 901 KiB/s Receiving objects: 96% (10986/11443), 508.00 KiB | 901 KiB/s Receiving objects: 97% (11100/11443), 508.00 KiB | 901 KiB/s Receiving objects: 98% (11215/11443), 508.00 KiB | 901 KiB/s Receiving objects: 98% (11319/11443), 3.29 MiB | 3.11 MiB/s remote: Total 11443 (delta 7753), reused 11321 (delta 7642)[K
-Receiving objects: 99% (11329/11443), 3.29 MiB | 3.11 MiB/s Receiving objects: 100% (11443/11443), 3.29 MiB | 3.11 MiB/s Receiving objects: 100% (11443/11443), 3.61 MiB | 3.11 MiB/s, done.
-Resolving deltas: 0% (0/7753) Resolving deltas: 2% (178/7753) Resolving deltas: 3% (308/7753) Resolving deltas: 4% (358/7753) Resolving deltas: 5% (393/7753) Resolving deltas: 6% (466/7753) Resolving deltas: 7% (550/7753) Resolving deltas: 8% (644/7753) Resolving deltas: 9% (703/7753) Resolving deltas: 10% (780/7753) Resolving deltas: 11% (859/7753) Resolving deltas: 12% (945/7753) Resolving deltas: 13% (1015/7753) Resolving deltas: 14% (1149/7753) Resolving deltas: 15% (1175/7753) Resolving deltas: 16% (1265/7753) Resolving deltas: 17% (1323/7753) Resolving deltas: 18% (1401/7753) Resolving deltas: 21% (1673/7753) Resolving deltas: 22% (1718/7753) Resolving deltas: 23% (1815/7753) Resolving deltas: 24% (1862/7753) Resolving deltas: 25% (1951/7753) Resolving deltas: 26% (2028/7753) Resolving deltas: 27% (2121/7753) Resolving deltas: 28% (2171/7753) Resolving deltas: 29% (2282/7753) Resolving deltas: 30% (2326/7753) Resolving deltas: 35% (2719/7753) Resolving deltas: 36% (2850/7753) Resolving deltas: 37% (2934/7753) Resolving deltas: 38% (3001/7753) Resolving deltas: 39% (3042/7753) Resolving deltas: 41% (3231/7753) Resolving deltas: 42% (3257/7753) Resolving deltas: 43% (3352/7753) Resolving deltas: 44% (3421/7753) Resolving deltas: 45% (3491/7753) Resolving deltas: 47% (3655/7753) Resolving deltas: 48% (3744/7753) Resolving deltas: 49% (3814/7753) Resolving deltas: 50% (3886/7753) Resolving deltas: 52% (4046/7753) Resolving deltas: 53% (4132/7753) Resolving deltas: 54% (4206/7753) Resolving deltas: 55% (4271/7753) Resolving deltas: 56% (4358/7753) Resolving deltas: 57% (4425/7753) Resolving deltas: 58% (4507/7753) Resolving deltas: 59% (4575/7753) Resolving deltas: 60% (4687/7753) Resolving deltas: 61% (4779/7753) Resolving deltas: 62% (4808/7753) Resolving deltas: 63% (4887/7753) Resolving deltas: 64% (4973/7753) Resolving deltas: 65% (5054/7753) Resolving deltas: 66% (5117/7753) Resolving deltas: 67% (5202/7753) Resolving deltas: 68% (5274/7753) Resolving deltas: 69% (5354/7753) Resolving deltas: 70% (5450/7753) Resolving deltas: 71% (5508/7753) Resolving deltas: 72% (5596/7753) Resolving deltas: 73% (5679/7753) Resolving deltas: 74% (5751/7753) Resolving deltas: 75% (5822/7753) Resolving deltas: 76% (5894/7753) Resolving deltas: 77% (5971/7753) Resolving deltas: 78% (6055/7753) Resolving deltas: 79% (6147/7753) Resolving deltas: 80% (6239/7753) Resolving deltas: 81% (6289/7753) Resolving deltas: 82% (6359/7753) Resolving deltas: 83% (6438/7753) Resolving deltas: 84% (6529/7753) Resolving deltas: 85% (6611/7753) Resolving deltas: 86% (6688/7753) Resolving deltas: 87% (6748/7753) Resolving deltas: 88% (6825/7753) Resolving deltas: 89% (6909/7753) Resolving deltas: 90% (6979/7753) Resolving deltas: 91% (7070/7753) Resolving deltas: 92% (7143/7753) Resolving deltas: 93% (7213/7753) Resolving deltas: 94% (7292/7753) Resolving deltas: 95% (7366/7753) Resolving deltas: 96% (7456/7753) Resolving deltas: 97% (7523/7753) Resolving deltas: 98% (7611/7753) Resolving deltas: 99% (7676/7753) Resolving deltas: 100% (7753/7753) Resolving deltas: 100% (7753/7753), done.
-Fetching git://github.com/travis-ci/travis-support
-remote: Counting objects: 921, done.[K
-remote: Compressing objects: 0% (1/427) [Kremote: Compressing objects: 1% (5/427) [Kremote: Compressing objects: 2% (9/427) [Kremote: Compressing objects: 3% (13/427) [Kremote: Compressing objects: 4% (18/427) [Kremote: Compressing objects: 5% (22/427) [Kremote: Compressing objects: 6% (26/427) [Kremote: Compressing objects: 7% (30/427) [Kremote: Compressing objects: 8% (35/427) [Kremote: Compressing objects: 9% (39/427) [Kremote: Compressing objects: 10% (43/427) [Kremote: Compressing objects: 11% (47/427) [Kremote: Compressing objects: 12% (52/427) [Kremote: Compressing objects: 13% (56/427) [Kremote: Compressing objects: 14% (60/427) [Kremote: Compressing objects: 15% (65/427) [Kremote: Compressing objects: 16% (69/427) [Kremote: Compressing objects: 17% (73/427) [Kremote: Compressing objects: 18% (77/427) [Kremote: Compressing objects: 19% (82/427) [Kremote: Compressing objects: 20% (86/427) [Kremote: Compressing objects: 21% (90/427) [Kremote: Compressing objects: 22% (94/427) [Kremote: Compressing objects: 23% (99/427) [Kremote: Compressing objects: 24% (103/427) [Kremote: Compressing objects: 25% (107/427) [Kremote: Compressing objects: 26% (112/427) [Kremote: Compressing objects: 27% (116/427) [Kremote: Compressing objects: 28% (120/427) [Kremote: Compressing objects: 29% (124/427) [Kremote: Compressing objects: 30% (129/427) [Kremote: Compressing objects: 31% (133/427) [Kremote: Compressing objects: 32% (137/427) [Kremote: Compressing objects: 33% (141/427) [Kremote: Compressing objects: 34% (146/427) [Kremote: Compressing objects: 35% (150/427) [Kremote: Compressing objects: 36% (154/427) [Kremote: Compressing objects: 37% (158/427) [Kremote: Compressing objects: 38% (163/427) [Kremote: Compressing objects: 39% (167/427) [Kremote: Compressing objects: 40% (171/427) [Kremote: Compressing objects: 41% (176/427) [Kremote: Compressing objects: 42% (180/427) [Kremote: Compressing objects: 43% (184/427) [Kremote: Compressing objects: 44% (188/427) [Kremote: Compressing objects: 45% (193/427) [Kremote: Compressing objects: 46% (197/427) [Kremote: Compressing objects: 47% (201/427) [Kremote: Compressing objects: 48% (205/427) [Kremote: Compressing objects: 49% (210/427) [Kremote: Compressing objects: 50% (214/427) [Kremote: Compressing objects: 51% (218/427) [Kremote: Compressing objects: 52% (223/427) [Kremote: Compressing objects: 53% (227/427) [Kremote: Compressing objects: 54% (231/427) [Kremote: Compressing objects: 55% (235/427) [Kremote: Compressing objects: 56% (240/427) [Kremote: Compressing objects: 57% (244/427) [Kremote: Compressing objects: 58% (248/427) [Kremote: Compressing objects: 59% (252/427) [Kremote: Compressing objects: 60% (257/427) [Kremote: Compressing objects: 61% (261/427) [Kremote: Compressing objects: 62% (265/427) [Kremote: Compressing objects: 63% (270/427) [Kremote: Compressing objects: 64% (274/427) [Kremote: Compressing objects: 65% (278/427) [Kremote: Compressing objects: 66% (282/427) [Kremote: Compressing objects: 67% (287/427) [Kremote: Compressing objects: 68% (291/427) [Kremote: Compressing objects: 69% (295/427) [Kremote: Compressing objects: 70% (299/427) [Kremote: Compressing objects: 71% (304/427) [Kremote: Compressing objects: 72% (308/427) [Kremote: Compressing objects: 73% (312/427) [Kremote: Compressing objects: 74% (316/427) [Kremote: Compressing objects: 75% (321/427) [Kremote: Compressing objects: 76% (325/427) [Kremote: Compressing objects: 77% (329/427) [Kremote: Compressing objects: 78% (334/427) [Kremote: Compressing objects: 79% (338/427) [Kremote: Compressing objects: 80% (342/427) [Kremote: Compressing objects: 81% (346/427) [Kremote: Compressing objects: 82% (351/427) [Kremote: Compressing objects: 83% (355/427) [Kremote: Compressing objects: 84% (359/427) [Kremote: Compressing objects: 85% (363/427) [Kremote: Compressing objects: 86% (368/427) [Kremote: Compressing objects: 87% (372/427) [Kremote: Compressing objects: 88% (376/427) [Kremote: Compressing objects: 89% (381/427) [Kremote: Compressing objects: 90% (385/427) [Kremote: Compressing objects: 91% (389/427) [Kremote: Compressing objects: 92% (393/427) [Kremote: Compressing objects: 93% (398/427) [Kremote: Compressing objects: 94% (402/427) [Kremote: Compressing objects: 95% (406/427) [Kremote: Compressing objects: 96% (410/427) [Kremote: Compressing objects: 97% (415/427) [Kremote: Compressing objects: 98% (419/427) [Kremote: Compressing objects: 99% (423/427) [Kremote: Compressing objects: 100% (427/427) [Kremote: Compressing objects: 100% (427/427), done.[K
-Receiving objects: 0% (1/921) Receiving objects: 1% (10/921) Receiving objects: 2% (19/921) Receiving objects: 3% (28/921) Receiving objects: 4% (37/921) Receiving objects: 5% (47/921) Receiving objects: 6% (56/921) Receiving objects: 7% (65/921) Receiving objects: 8% (74/921) Receiving objects: 9% (83/921) Receiving objects: 10% (93/921) Receiving objects: 11% (102/921) Receiving objects: 12% (111/921) Receiving objects: 13% (120/921) Receiving objects: 14% (129/921) Receiving objects: 15% (139/921) Receiving objects: 16% (148/921) Receiving objects: 17% (157/921) Receiving objects: 18% (166/921) Receiving objects: 19% (175/921) Receiving objects: 20% (185/921) Receiving objects: 21% (194/921) Receiving objects: 22% (203/921) Receiving objects: 23% (212/921) Receiving objects: 24% (222/921) Receiving objects: 25% (231/921) Receiving objects: 26% (240/921) remote: Total 921 (delta 501), reused 857 (delta 438)[K
-Receiving objects: 27% (249/921) Receiving objects: 28% (258/921) Receiving objects: 29% (268/921) Receiving objects: 30% (277/921) Receiving objects: 31% (286/921) Receiving objects: 32% (295/921) Receiving objects: 33% (304/921) Receiving objects: 34% (314/921) Receiving objects: 35% (323/921) Receiving objects: 36% (332/921) Receiving objects: 37% (341/921) Receiving objects: 38% (350/921) Receiving objects: 39% (360/921) Receiving objects: 40% (369/921) Receiving objects: 41% (378/921) Receiving objects: 42% (387/921) Receiving objects: 43% (397/921) Receiving objects: 44% (406/921) Receiving objects: 45% (415/921) Receiving objects: 46% (424/921) Receiving objects: 47% (433/921) Receiving objects: 48% (443/921) Receiving objects: 49% (452/921) Receiving objects: 50% (461/921) Receiving objects: 51% (470/921) Receiving objects: 52% (479/921) Receiving objects: 53% (489/921) Receiving objects: 54% (498/921) Receiving objects: 55% (507/921) Receiving objects: 56% (516/921) Receiving objects: 57% (525/921) Receiving objects: 58% (535/921) Receiving objects: 59% (544/921) Receiving objects: 60% (553/921) Receiving objects: 61% (562/921) Receiving objects: 62% (572/921) Receiving objects: 63% (581/921) Receiving objects: 64% (590/921) Receiving objects: 65% (599/921) Receiving objects: 66% (608/921) Receiving objects: 67% (618/921) Receiving objects: 68% (627/921) Receiving objects: 69% (636/921) Receiving objects: 70% (645/921) Receiving objects: 71% (654/921) Receiving objects: 72% (664/921) Receiving objects: 73% (673/921) Receiving objects: 74% (682/921) Receiving objects: 75% (691/921) Receiving objects: 76% (700/921) Receiving objects: 77% (710/921) Receiving objects: 78% (719/921) Receiving objects: 79% (728/921) Receiving objects: 80% (737/921) Receiving objects: 81% (747/921) Receiving objects: 82% (756/921) Receiving objects: 83% (765/921) Receiving objects: 84% (774/921) Receiving objects: 85% (783/921) Receiving objects: 86% (793/921) Receiving objects: 87% (802/921) Receiving objects: 88% (811/921) Receiving objects: 89% (820/921) Receiving objects: 90% (829/921) Receiving objects: 91% (839/921) Receiving objects: 92% (848/921) Receiving objects: 93% (857/921) Receiving objects: 94% (866/921) Receiving objects: 95% (875/921) Receiving objects: 96% (885/921) Receiving objects: 97% (894/921) Receiving objects: 98% (903/921) Receiving objects: 99% (912/921) Receiving objects: 100% (921/921) Receiving objects: 100% (921/921), 97.39 KiB, done.
-Resolving deltas: 0% (0/501) Resolving deltas: 1% (6/501) Resolving deltas: 18% (93/501) Resolving deltas: 21% (107/501) Resolving deltas: 29% (150/501) Resolving deltas: 30% (153/501) Resolving deltas: 33% (166/501) Resolving deltas: 38% (191/501) Resolving deltas: 41% (206/501) Resolving deltas: 43% (217/501) Resolving deltas: 45% (229/501) Resolving deltas: 47% (239/501) Resolving deltas: 48% (241/501) Resolving deltas: 53% (268/501) Resolving deltas: 55% (279/501) Resolving deltas: 57% (286/501) Resolving deltas: 59% (296/501) Resolving deltas: 61% (306/501) Resolving deltas: 65% (330/501) Resolving deltas: 66% (332/501) Resolving deltas: 67% (340/501) Resolving deltas: 68% (342/501) Resolving deltas: 69% (347/501) Resolving deltas: 70% (352/501) Resolving deltas: 74% (371/501) Resolving deltas: 75% (376/501) Resolving deltas: 77% (388/501) Resolving deltas: 79% (396/501) Resolving deltas: 80% (401/501) Resolving deltas: 83% (418/501) Resolving deltas: 84% (423/501) Resolving deltas: 85% (429/501) Resolving deltas: 86% (431/501) Resolving deltas: 89% (450/501) Resolving deltas: 91% (456/501) Resolving deltas: 92% (461/501) Resolving deltas: 94% (472/501) Resolving deltas: 96% (482/501) Resolving deltas: 98% (491/501) Resolving deltas: 99% (496/501) Resolving deltas: 100% (501/501) Resolving deltas: 100% (501/501), done.
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activeresource (3.2.6)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1) with native extensions
-Installing avl_tree (1.1.3)
-Installing backports (2.3.0)
-Installing bcrypt-ruby (3.0.1) with native extensions
-Installing bunny (0.8.0)
-Installing nokogiri (1.5.5) with native extensions
-Installing ffi (1.0.11) with native extensions
-Installing childprocess (0.3.3)
-Installing libwebsocket (0.1.4)
-Installing rubyzip (0.9.9)
-Installing selenium-webdriver (2.24.0)
-Installing xpath (0.1.4)
-Installing capybara (1.1.2)
-Installing chunky_png (1.2.5)
-Installing coffee-script-source (1.3.3)
-Installing execjs (1.3.0)
-Installing coffee-script (2.2.0)
-Installing fssm (0.2.9)
-Installing sass (3.1.20)
-Installing compass (0.12.2)
-Installing crack (0.3.1)
-Installing daemons (1.1.8)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing orm_adapter (0.0.7)
-Installing rack-ssl (1.3.2)
-Installing json (1.6.7) with native extensions
-Installing rdoc (3.12)
-Installing thor (0.14.6)
-Installing railties (3.2.6)
-Installing warden (1.1.1)
-Installing devise (2.0.4)
-Installing diff-lcs (1.1.3)
-Installing eventmachine (0.12.10) with native extensions
-Installing factory_girl (2.4.2)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing forgery (0.5.0)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing hashie (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1) with native extensions
-Installing http_accept_language (1.0.2)
-Installing httpauth (0.1)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Installing kgio (2.7.4) with native extensions
-Installing lograge (0.0.4)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing oauth2 (0.6.1)
-Installing omniauth (1.1.0)
-Installing omniauth-oauth2 (1.0.2)
-Installing omniauth-github (1.0.1)
-Installing pg (0.13.2) with native extensions
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Using rack-contrib (1.1.0) from git://github.com/rack/rack-contrib (at master)
-Using bundler (1.2.0.pre.1)
-Installing rails (3.2.6)
-Installing raindrops (0.10.0) with native extensions
-Using rake-pipeline (0.6.0) from https://github.com/livingsocial/rake-pipeline.git (at master)
-Using rake-pipeline-web-filters (0.6.0) from https://github.com/wycats/rake-pipeline-web-filters.git (at master)
-Installing redis (3.0.1)
-Installing refraction (0.2.0)
-Installing rollout (1.1.0)
-Installing rspec-core (2.10.1)
-Installing rspec-expectations (2.10.0)
-Installing rspec-mocks (2.10.1)
-Installing rspec (2.10.0)
-Installing rspec-rails (2.10.1)
-Installing simple_states (0.1.1)
-Installing thin (1.3.1) with native extensions
-Using travis-assets (0.0.1) from https://github.com/travis-ci/travis-assets (at master)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing unicorn (4.1.1) with native extensions
-Installing unobtrusive_flash (0.0.2)
-Installing yard (0.8.2.1)
-Installing versionist (0.2.3)
-Installing webmock (1.7.10)
-Installing yajl-ruby (1.1.0) with native extensions
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from bunny:
-[[32mVersion 0.8.0[0m] AMQP 0.8 client is removed. Bunny is an AMQP 0.9.1 client only now.
-[0m
-[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m$ cp config/database.example.yml config/database.yml
-$ RAILS_ENV=test bundle exec rake test:ci --trace
-** Invoke test:ci (first_time)
-** Invoke ci_env (first_time)
-** Execute ci_env
-** Invoke db:drop (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:drop
-** Invoke db:create (first_time)
-** Invoke db:load_config
-** Execute db:create
-** Invoke db:test:load (first_time)
-** Invoke db:test:purge (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:test:purge
-** Execute db:test:load
-** Invoke db:test:load_schema (first_time)
-** Invoke db:test:purge
-** Execute db:test:load_schema
-** Invoke db:schema:load (first_time)
-** Invoke environment
-** Execute db:schema:load
-** Invoke spec (first_time)
-** Invoke db:test:prepare (first_time)
-** Invoke db:abort_if_pending_migrations (first_time)
-** Invoke environment
-** Execute db:abort_if_pending_migrations
-** Execute db:test:prepare
-** Invoke db:test:load
-** Execute spec
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/controllers/v1/service_hooks_controller_spec.rb ./spec/controllers/v1/builds_controller_spec.rb ./spec/controllers/v1/repositories_controller_spec.rb ./spec/controllers/v1/jobs_controller_spec.rb ./spec/controllers/v1/workers_controller_spec.rb ./spec/controllers/v1/branches_controller_spec.rb ./spec/controllers/v2/service_hooks_controller_spec.rb ./spec/controllers/application_controller_spec.rb ./spec/controllers/profiles_controller_spec.rb ./spec/client/service_hooks_spec.rb ./spec/client/events/job_queue_spec.rb ./spec/client/events/build_spec.rb ./spec/helpers/application_helper_spec.rb ./spec/requests/shortener_controller_spec.rb ./spec/views/repository_cctray_xml_output_spec.rb ./spec/routing/v2_spec.rb ./spec/routing/v1_spec.rb ./spec/integration/jsonp_api_spec.rb ./spec/integration/consuming_messages_spec.rb ./spec/integration/build_process_spec.rb ./spec/integration/routes_redirection_spec.rb ./spec/lib/statistics_spec.rb
-Run options:
- include {:focused=>true}
- exclude {:js=>true}
-
-All examples were filtered out; ignoring {:focused=>true}
-
-V1::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
- subscribes to a service hook
-[32m creates a repository if it does not exist[0m
-[32m updates an existing repository if it exists[0m
- unsubscribes from the service hook
-[32m updates an existing repository[0m
-
-V1::BuildsController
- GET :index
-[32m returns a list of builds in json[0m
- GET :show
- when called using /builds/:id
-[32m returns build details in json[0m
- when called in a nested repositories call eg. /svenfuchs/i18n/builds/:id
-[32m returns build details in json[0m
-[32m returns 404 with wrong repository id[0m
-
-V1::RepositoriesController
- GET :index returns a list of repositories
- in json
-[32m ordered by last build started date[0m
-[32m filtered by owner name[0m
- GET :show, format json
-[32m returns info about repository in json format[0m
-[32m returns not found for an unknown repository[0m
- with parameter rvm:1.8.7
-[32m returns last build result passing[0m
- with parameter rvm:1.9.2
-[32m return last build result failing[0m
- with parameters rvm:1.8.7 and gemfile:test/Gemfile.rails-2.3.x
-[32m return last build result passing[0m
- with parameters rvm:1.9.2 and gemfile:test/Gemfile.rails-3.0.x
-[32m return last build result failing[0m
- with parameters rvm:1.8.7, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result passing[0m
- with parameters rvm:1.9.2, gemfile:test/Gemfile.rails-2.3.x, and env:DB=postgres passed
-[32m return last build result failing[0m
- with parameters rvm:perl
-[32m return last build result for the parent build[0m
- GET :show, format xml (schema: not specified)
-[32m return info about repository in xml format[0m
- GET :show, format xml (schema: cctray)
-[32m returns info about repository in CCTray (CruiseControl) XML format[0m
- GET :show, format xml (schema: unknown)
-[32m does not attempt to render unsupported XML schemas[0m
- GET :show, format png
- without a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "stable" when there is a running build but the previous one has passed[0m
- with a branch parameter
-[32m "unknown" when the repository does not exist[0m
-[32m "unknown" when it only has a build that is not finished[0m
-[32m "failing" when the last build has failed[0m
-[32m "passing" when the last build has passed[0m
-[32m "passing" when there is a running build but the previous one has passed[0m
-
-V1::JobsController
- GET :index
-[32m index lists all jobs on the queue[0m
- GET :show
-[32m in json[0m
-
-V1::WorkersController
-[32m index lists all workers[0m
-
-V1::BranchesController
- GET :index
-[32m returns a list of builds in json[0m
-
-V2::ServiceHooksController
- GET :index
-[32m should return repositories of current user[0m
- PUT :update
-[32m subscribes to a service hook if active => true was given[0m
-[32m unsubscribes from the service hook if active => false was given[0m
-
-HomeController
- i18n locale
-[32m the default locale is en[0m
- set_locale
-[32m prefers hl query parameter over anything else[0m
-[32m prefers the session[:locale] if there is no hl parameter[0m
-[32m prefers current_user.locale if session[:locale] is empty and there is no hl query paramter[0m
-[32m prefers the http_accept_language if session[locale] is empty, there is no hl query parameter and no current_user.local[0m
-[32m uses the default locale when nothing is specified[0m
-
-ProfilesController
- GET :show
-[32m renders the profile html page[0m
- POST :update
-[32m updates the locale for the user profile[0m
- POST :sync
- given the current user is not being synced
-[32m schedules a sync job[0m
-[32m sets the current user to being synced[0m
- given the current user is being synced
-[32m does not schedule a sync job[0m
-[32m does not set the current user to being synced[0m
-
-ApplicationHelper
- active_page?
-[32m #active_page? returns true when the given route matches the current page[0m
-[32m #active_page? returns false when the given route does not matche the current page[0m
- localization links
- switch_locale_link
-[32m should add in the language option to the current path[0m
- gravatar
-[32m #gravatar returns an IMG tag for a given user[0m
-[32m #gravatar with a given :size returns an IMG tag with the given :size[0m
-
-ShortenerController
- GET /
-[32m should redirect to travis-ci.org[0m
- GET /:id
-[32m should redirect to the found url[0m
-[32m should raise a 404 if the url could not be found[0m
-
-repositories/show/cctray.xml.builder
-[32m renders the basic details of a repository[0m
-[32m renders the correct result for a repository with no running build[0m
-[32m renders the last build time in the correct format[0m
-[32m renders the correct activity result for a repository with a running build[0m
-[32m renders the correct activity result for a repository with no builds[0m
-[32m renders the correct build result for a repository whose last build failed[0m
-[32m renders the correct build result for a repository whose last build passed[0m
-[32m renders the correct build result for a repository whose last build has an unknown result[0m
-
-v2
- GET to repositories.json?version=2
-[32m routes to V2::RepositoriesController#index[0m
- GET to repositories/1.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
- GET to builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to builds/1.json?version=2
-[32m routes to V2::BuildsController#show[0m
- GET to branches.json?version=2
-[32m routes to V2::BranchesController#index[0m
- GET to jobs.json?version=2
-[32m routes to V2::JobsController#index[0m
- GET to jobs/1.json?version=2
-[32m routes to V2::JobsController#show[0m
- GET to artifacts/1.json?version=2
-[32m routes to V2::ArtifactsController#index[0m
- GET to workers.json?version=2
-[32m routes to V2::WorkersController#index[0m
- GET to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#index[0m
- PUT to profile/service_hooks.json?version=2
-[32m routes to V2::ServiceHooksController#update[0m
- GET to :owner_name/:name.json?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png?version=2
-[32m routes to V2::RepositoriesController#show[0m
-[32m routes to V2::RepositoriesController#show when owner contains dots[0m
-[32m routes to V2::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V2::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml?version=2
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V2::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json?version=2
-[32m routes to V2::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json?version=2
-[32m routes to V2::BuildsController#show[0m
-
-v1
- GET to repositories.json
-[32m routes to V1::RepositoriesController#index[0m
- GET to repositories/1.json
-[32m routes to V1::RepositoriesController#show[0m
- GET to builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to builds/1.json
-[32m routes to V1::BuildsController#show[0m
- GET to branches.json
-[32m routes to V1::BranchesController#index[0m
- GET to jobs.json
-[32m routes to V1::JobsController#index[0m
- GET to jobs/1.json
-[32m routes to V1::JobsController#show[0m
- GET to workers.json
-[32m routes to V1::WorkersController#index[0m
- GET to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#index[0m
- PUT to profile/service_hooks.json
-[32m routes to V1::RepositoriesController#update[0m
- GET to :owner_name/:name.json
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name.png
-[32m routes to V1::RepositoriesController#show[0m
-[32m routes to V1::RepositoriesController#show when owner contains dots[0m
-[32m routes to V1::RepositoriesController#show when repository name contains dots[0m
-[32m routes to V1::RepositoriesController#show when owner name and repository name contains dots[0m
- GET to :owner_name/:name/cc.xml
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema[0m
-[32m routes to V1::RepositoriesController#show in XML format with the cctray schema when owner and repository name contains dots[0m
- GET to :owner_name/:name/builds.json
-[32m routes to V1::BuildsController#index[0m
- GET to :owner_name/:name/builds/:id.json
-[32m routes to V1::BuildsController#show[0m
-
-JSONP API
- callback parameter passed
-[32m returns text/javascript content type[0m
-[32m returns response in jsonp format[0m
- no callback parameter passed
-[32m returns application/json content type[0m
-[32m returns response in json format[0m
- callback parameter is not valid
-[32m uses valid path[0m
-[32m returns bad request body[0m
-[32m returns 400 status code[0m
-
-routes redirection
-[32m should redirect to the default locale when redirecting[0m
-[32m the user is redirected to the hash bang version of the user route[0m
-[32m the user is redirected to the hash bang version of the repository route[0m
-[32m the user is redirected to the hash bang version of the repository builds route[0m
-[32m the user is redirected to the hash bang version of the repository build route[0m
-
-Statistics
- when listing daily test counts
-[32m should return the jobs per day[0m
- when listing total repositories
-[32m should return the number per day[0m
-[32m should include the total growth[0m
-
-Finished in 31.34 seconds
-[32m127 examples, 0 failures[0m
-** Execute test:ci
-
-Done. Build script exited with: 0
-', 1886869, 'Artifact::Log', '2012-07-17 16:23:14.604000', '2012-07-17 16:23:15.067000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1557113, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf ffc385738aa4ca87c4868db0441287912990683b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0210s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0130s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0730s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0320s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0100s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0150s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0430s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0360s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0740s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0160s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0120s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0300s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0220s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0100s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-Had to extract event from payload: {"type"=>"pull_request"}
- without an event name
- for pull and push requests
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 5.67 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884597, 'Artifact::Log', '2012-07-17 11:55:20.240000', '2012-07-17 11:55:20.936000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1557114, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf ffc385738aa4ca87c4868db0441287912990683b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0360s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0140s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0640s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0090s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0170s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0090s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0050s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0080s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0070s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0400s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0060s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0250s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0030s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
- without an event name
- for pull and push requests
-Had to extract event from payload: {"type"=>"pull_request"}
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 10.13 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884598, 'Artifact::Log', '2012-07-17 11:55:20.267000', '2012-07-17 11:55:20.657000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1557104, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf ffc385738aa4ca87c4868db0441287912990683b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0280s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0190s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0760s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0600s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0090s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0160s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0330s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0170s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0390s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0300s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0290s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0330s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0310s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0060s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-Had to extract event from payload: {"type"=>"pull_request"}
- without an event name
- for pull and push requests
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 5.42 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884583, 'Artifact::Log', '2012-07-17 11:52:52.550000', '2012-07-17 11:52:53.164000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1557105, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf ffc385738aa4ca87c4868db0441287912990683b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0380s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0170s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0150s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0450s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0200s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0100s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0080s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0080s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0230s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0250s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0250s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0100s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0160s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0150s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0040s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
- without an event name
- for pull and push requests
-Had to extract event from payload: {"type"=>"pull_request"}
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 14.19 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884584, 'Artifact::Log', '2012-07-17 11:52:52.563000', '2012-07-17 11:52:52.954000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1556951, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf f9cec63f1bdbe308d867579465867cc2a10ade0c
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0260s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0160s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0100s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0150s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0980s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0320s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0180s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0150s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0190s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0160s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0210s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0110s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0400s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0230s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0590s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0260s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0280s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0040s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-Had to extract event from payload: {"type"=>"pull_request"}
- without an event name
- for pull and push requests
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 5.29 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884380, 'Artifact::Log', '2012-07-17 11:14:45.761000', '2012-07-17 11:14:46.995000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1556952, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf f9cec63f1bdbe308d867579465867cc2a10ade0c
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0440s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0680s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0110s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0450s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0250s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0110s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0120s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0090s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0350s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0260s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0090s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0210s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0150s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0070s
-
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
- without an event name
- for pull and push requests
-Had to extract event from payload: {"type"=>"pull_request"}
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 13 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1884381, 'Artifact::Log', '2012-07-17 11:14:45.773000', '2012-07-17 11:14:47.266000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1552538, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0210s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0290s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0630s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0190s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0100s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0110s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0070s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0340s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0240s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0520s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0060s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0280s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0180s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0110s
-
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-Had to extract event from payload: {"type"=>"pull_request"}
- without an event name
- for pull and push requests
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 5.25 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1878241, 'Artifact::Log', '2012-07-16 15:50:53.270000', '2012-07-16 15:50:53.639000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1552539, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf 9acbe3bb988cbf1f67cfa1c71e49ada2ce5ff75b
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0310s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0180s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0100s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0100s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0420s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.1130s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0110s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0070s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0070s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0090s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0400s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0080s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0110s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0070s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0160s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0180s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0040s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
- without an event name
- for pull and push requests
-Had to extract event from payload: {"type"=>"pull_request"}
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 12.56 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1878242, 'Artifact::Log', '2012-07-16 15:50:53.280000', '2012-07-16 15:50:53.876000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1552086, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf 2dfa023b1682c85a957d8beb25aefef253ae5ee9
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- \ Review the README.rdoc for implementation details and examples.
- ==================
- \ [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0320s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0670s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0680s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0210s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0100s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0060s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0090s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0070s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0080s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0110s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0100s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0570s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0430s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0180s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0840s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0060s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0070s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0120s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0330s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0280s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0040s
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-Had to extract event from payload: {"type"=>"pull_request"}
- without an event name
- for pull and push requests
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 7.18 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1877597, 'Artifact::Log', '2012-07-16 14:21:33.968000', '2012-07-16 14:21:34.478000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1552087, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/travis-ci/travis-hub.git travis-ci/travis-hub
-$ cd travis-ci/travis-hub
-$ git checkout -qf 2dfa023b1682c85a957d8beb25aefef253ae5ee9
-$ export TRAVIS_JDK_VERSION=openjdk6
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ jdk_switcher use openjdk6
-Switching to OpenJDK6 (java-1.6.0-openjdk), JAVA_HOME will be set to /usr/lib/jvm/java-6-openjdk
-update-alternatives: error: no alternatives for -javaplugin.so.
-update-alternatives: error: no alternatives for mozilla-javaplugin.so.
-update-java-alternatives: plugin alternative does not exist: /usr/lib/jvm/java-6-openjdk/jre/lib/i386/IcedTeaPlugin.so
-$ java -version
-java version "1.6.0_24"
-OpenJDK Runtime Environment (IcedTea6 1.11.3) (6b24-1.11.3-1ubuntu0.11.10.1)
-OpenJDK Client VM (build 20.0-b12, mixed mode, sharing)
-$ javac -version
-javac 1.6.0_24
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-15 412049f) (OpenJDK Server VM 1.6.0_24) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/travis-ci/travis-hub/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/.......
-Fetching gem metadata from http://rubygems.org/..
-Fetching git://github.com/rkh/gh
-Fetching git://github.com/roidrage/hubble
-Fetching git://gist.github.com/2087829.git
-Fetching git://github.com/jamesgolick/rollout
-Fetching git://github.com/travis-ci/travis-core
-Fetching git://github.com/travis-ci/travis-support
-Installing rake (0.9.2.2)
-Installing i18n (0.6.0)
-Installing multi_json (1.3.6)
-Installing activesupport (3.2.6)
-Installing builder (3.0.0)
-Installing activemodel (3.2.6)
-Installing erubis (2.7.0)
-Installing journey (1.0.4)
-Installing rack (1.4.1)
-Installing rack-cache (1.2)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.1.3)
-Installing actionpack (3.2.6)
-Installing mime-types (1.19)
-Installing polyglot (0.3.3)
-Installing treetop (1.4.10)
-Installing mail (2.4.4)
-Installing actionmailer (3.2.6)
-Installing arel (3.0.2)
-Installing tzinfo (0.3.33)
-Installing activerecord (3.2.6)
-Installing activerecord-jdbc-adapter (1.2.2)
-Installing jdbc-postgres (9.1.901)
-Installing activerecord-jdbcpostgresql-adapter (1.2.2)
-Installing addressable (2.2.8)
-Installing atomic (1.0.1)
-Installing avl_tree (1.1.3)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing data_migrations (0.0.1)
-Installing database_cleaner (0.7.2)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing ffi (1.0.11)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from git://github.com/rkh/gh (at master)
-Installing rb-fchange (0.0.5)
-Installing rb-fsevent (0.9.1)
-Installing rb-inotify (0.8.8)
-Installing listen (0.4.7)
-Installing thor (0.14.6)
-Installing guard (1.2.3)
-Installing guard-rspec (1.2.0)
-Installing hashr (0.0.21)
-Installing hitimes (1.1.1)
-Installing hot_bunnies (1.3.8)
-Installing json (1.6.7)
-Using hubble (0.1.2) from git://github.com/roidrage/hubble (at master)
-Using jruby-openssl (0.7.7)
-Installing metaclass (0.0.1)
-Installing metriks (0.9.9.1)
-Using micro_migrations (0.0.1) from git://gist.github.com/2087829.git (at master)
-Installing mocha (0.10.5)
-Installing newrelic_rpm (3.3.5)
-Installing postmark (0.9.12)
-Installing postmark-rails (0.4.1)
-Installing signature (0.1.3)
-Installing pusher (0.9.4)
-Installing rack-ssl (1.3.2)
-Installing rdoc (3.12)
-Installing railties (3.2.6)
-Installing redis (3.0.1)
-Using rollout (1.1.0) from git://github.com/jamesgolick/rollout (at v1.1.0)
-Installing rspec-core (2.7.1)
-Installing rspec-expectations (2.7.0)
-Installing rspec-mocks (2.7.0)
-Installing rspec (2.7.0)
-Installing simple_states (0.1.1)
-Using travis-core (0.0.1) from git://github.com/travis-ci/travis-core (at master)
-Using travis-support (0.0.1) from git://github.com/travis-ci/travis-support (at master)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-[32mPost-install message from newrelic_rpm:
-
-PLEASE NOTE:
-
-Developer Mode is now a Rack middleware.
-
-Developer Mode is no longer available in Rails 2.1 and earlier.
-However, starting in version 2.12 you can use Developer Mode in any
-Rack based framework, in addition to Rails. To install developer mode
-in a non-Rails application, just add NewRelic::Rack::DeveloperMode to
-your middleware stack.
-
-If you are using JRuby, we recommend using at least version 1.4 or
-later because of issues with the implementation of the timeout library.
-
-Refer to the README.md file for more information.
-
-Please see http://github.com/newrelic/rpm/blob/master/CHANGELOG
-for a complete description of the features and enhancements available
-in version 3.3 of the Ruby Agent.
-
-[0m[32mPost-install message from postmark:
-
- ==================
- Thanks for installing the postmark gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from postmark-rails:
-
- ==================
- Thanks for installing the postmark-rails gem. If you don''t have an account, please sign up at http://postmarkapp.com/.
- Review the README.rdoc for implementation details and examples.
- ==================
- [0m[32mPost-install message from rdoc:
-Depending on your version of ruby, you may need to install ruby rdoc/ri data:
-
-<= 1.8.6 : unsupported
- = 1.8.7 : gem install rdoc-data; rdoc-data --install
- = 1.9.1 : gem install rdoc-data; rdoc-data --install
->= 1.9.2 : nothing to do! Yay!
-[0m
-$ RAILS_ENV=test rake db:create db:schema:load --trace
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-** Invoke db:create (first_time)
-** Invoke db:load_config (first_time)
-** Invoke rails_env (first_time)
-** Execute rails_env
-** Execute db:load_config
-** Execute db:create
-** Invoke db:schema:load (first_time)
-** Invoke environment (first_time)
-** Execute environment
-** Execute db:schema:load
--- create_table("artifacts", {:force=>true})
- -> 0.0690s
- -> 0 rows
--- add_index("artifacts", ["type", "job_id"], {:name=>"index_artifacts_on_type_and_job_id"})
- -> 0.0200s
- -> 0 rows
--- create_table("builds", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- add_index("builds", ["repository_id"], {:name=>"index_builds_on_repository_id"})
- -> 0.0130s
- -> 0 rows
--- create_table("commits", {:force=>true})
- -> 0.0970s
- -> 0 rows
--- add_index("commits", ["commit"], {:name=>"index_commits_on_commit"})
- -> 0.0370s
- -> 0 rows
--- create_table("jobs", {:force=>true})
- -> 0.0760s
- -> 0 rows
--- add_index("jobs", ["queue", "state"], {:name=>"index_jobs_on_queue_and_state"})
- -> 0.0230s
- -> 0 rows
--- add_index("jobs", ["repository_id"], {:name=>"index_jobs_on_repository_id"})
- -> 0.0150s
- -> 0 rows
--- add_index("jobs", ["type", "source_id", "source_type"], {:name=>"index_jobs_on_type_and_owner_id_and_owner_type"})
- -> 0.0170s
- -> 0 rows
--- create_table("memberships", {:force=>true})
- -> 0.0130s
- -> 0 rows
--- create_table("organizations", {:force=>true})
- -> 0.0200s
- -> 0 rows
--- create_table("permissions", {:force=>true})
- -> 0.0140s
- -> 0 rows
--- add_index("permissions", ["repository_id"], {:name=>"index_permissions_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- add_index("permissions", ["user_id"], {:name=>"index_permissions_on_user_id"})
- -> 0.0150s
- -> 0 rows
--- create_table("repositories", {:force=>true})
- -> 0.0240s
- -> 0 rows
--- add_index("repositories", ["last_build_started_at"], {:name=>"index_repositories_on_last_build_started_at"})
- -> 0.0150s
- -> 0 rows
--- add_index("repositories", ["owner_name", "name"], {:name=>"index_repositories_on_owner_name_and_name"})
- -> 0.0160s
- -> 0 rows
--- create_table("requests", {:force=>true})
- -> 0.0320s
- -> 0 rows
--- add_index("requests", ["head_commit"], {:name=>"index_requests_on_head_commit"})
- -> 0.0760s
- -> 0 rows
--- create_table("ssl_keys", {:force=>true})
- -> 0.0150s
- -> 0 rows
--- add_index("ssl_keys", ["repository_id"], {:name=>"index_ssl_key_on_repository_id"})
- -> 0.0120s
- -> 0 rows
--- create_table("tokens", {:force=>true})
- -> 0.0110s
- -> 0 rows
--- create_table("urls", {:force=>true})
- -> 0.0220s
- -> 0 rows
--- create_table("users", {:force=>true})
- -> 0.0510s
- -> 0 rows
--- add_index("users", ["github_id"], {:name=>"index_users_on_github_id"})
- -> 0.0190s
- -> 0 rows
--- add_index("users", ["github_oauth_token"], {:name=>"index_users_on_github_oauth_token"})
- -> 0.0130s
- -> 0 rows
--- add_index("users", ["login"], {:name=>"index_users_on_login", :unique=>true})
- -> 0.0150s
- -> 0 rows
--- create_table("workers", {:force=>true})
- -> 0.0170s
- -> 0 rows
--- add_index("workers", ["name", "host"], {:name=>"index_workers_on_name_and_host"})
- -> 0.0190s
- -> 0 rows
--- initialize_schema_migrations_table()
- -> 0.0210s
--- assume_migrated_upto_version(20120713153215, ["/home/vagrant/builds/travis-ci/travis-hub/db/migrate"])
- -> 0.0060s
-$ bundle exec rake
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/travis/hub_spec.rb ./spec/travis/hub/handler_spec.rb ./spec/travis/hub/handler/worker_spec.rb ./spec/travis/hub/handler/job_spec.rb ./spec/travis/hub/handler/sync_spec.rb ./spec/travis/hub/handler/request_spec.rb ./spec/travis/hub/instrument/job_spec.rb ./spec/travis/hub/instrument/sync_spec.rb ./spec/travis/hub/instrument/request_spec.rb
-include_class is deprecated. Use java_import.
-include_class is deprecated. Use java_import.
-
-Travis::Hub
- decode
-[32m decodes a json payload[0m
- receive
-[32m sets the given uuid to the current thread[0m
- with no exception being raised
-[32m gets a handler for the event type and payload[0m
-[32m handles the event[0m
-[32m acknowledges the message[0m
- with an exception being raised
-[32m outputs the exception[0m
-[32m acknowledges the message[0m
-[32m notifies the error reporter[0m
-
-Travis::Hub::Handler
- .for
- given an event namespaced job:*
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
-[32m returns a Job handler for #{event.inspect}[0m
- given an event namespaced worker:*
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
-[32m returns a Worker handler for #{event.inspect}[0m
- without an event name
- for pull and push requests
-Had to extract event from payload: {"type"=>"pull_request"}
-[32m should fetch a Request handler for pull requests[0m
-
-Travis::Hub::Handler::Worker
- handle (old api, hash payload)
-[32m updates the worker states and last_seen_at attributes[0m
- handle (old api, array payload)
-[32m updates the worker states and last_seen_at attributes (array payload)[0m
- handle (new api)
-[32m updates the worker states and last_seen_at attributes[0m
-
-Travis::Hub::Handler::Job
- #handle
-[32m updates job attributes on job:test:started[0m
-[32m appends the log on job:test:log[0m
-
-Travis::Hub::Handler::Sync
- handle
-[32m syncs the user details with GitHub[0m
-
-Travis::Hub::Handler::Request
- handle
-[32m tries to authenticates the user[0m
- given the request can be authorized
-[32m creates the request[0m
- given the request can not be authorized
-[32m rejects the request[0m
-
-Travis::Hub::Instrument::Handler::Job
-[32m publishes a payload on update[0m
-
-Travis::Hub::Instrument::Handler::Sync
-[32m publishes a payload on handle[0m
-
-Travis::Hub::Instrument::Handler::Request
-[32m publishes a payload on handle[0m
-[32m publishes a payload on authenticate[0m
-
-Finished in 13.07 seconds
-[32m30 examples, 0 failures[0m
-
-Done. Build script exited with: 0
-', 1877598, 'Artifact::Log', '2012-07-16 14:21:33.982000', '2012-07-16 14:21:34.698000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (670600, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/minimal.git svenfuchs/minimal
-$ cd svenfuchs/minimal
-$ git checkout -qf 65d0186299ef7275de7398431b83f45119c9b8a8
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/minimal/Gemfiles/rails-3.0
-$ bundle install
-Fetching source index for http://rubygems.org/
-Using rake (0.9.2.2)
-Installing abstract (1.0.0) WARNING: abstract-1.0.0 has an invalid nil value for @cert_chain
-
-Installing activesupport (3.0.11)
-Installing builder (2.1.2) WARNING: builder-2.1.2 has an invalid nil value for @cert_chain
-
-Installing i18n (0.5.0)
-Installing activemodel (3.0.11)
-Installing erubis (2.6.6)
-Installing rack (1.2.5)
-Installing rack-mount (0.6.14)
-Installing rack-test (0.5.7)
-Installing tzinfo (0.3.31)
-Installing actionpack (3.0.11)
-Using minimal (0.0.26) from source at /home/vagrant/builds/svenfuchs/minimal
-Installing test_declarative (0.0.5)
-Using bundler (1.0.22)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p358/bin/ruby -I"lib:." -I"/home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib" "/home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb" "test/all.rb"
-Loaded suite /home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib/rake/rake_test_loader
-Started
-.....................
-Finished in 0.13493 seconds.
-
-21 tests, 22 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 747814, 'Artifact::Log', '2012-02-27 00:09:42.788000', '2012-02-27 00:09:43.267000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (670601, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/minimal.git svenfuchs/minimal
-$ cd svenfuchs/minimal
-$ git checkout -qf 65d0186299ef7275de7398431b83f45119c9b8a8
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/minimal/Gemfiles/rails-3.1
-$ bundle install
-Fetching source index for http://rubygems.org/
-Using rake (0.9.2.2)
-Installing multi_json (1.1.0)
-Installing activesupport (3.1.3)
-Installing builder (3.0.0)
-Installing i18n (0.6.0)
-Installing activemodel (3.1.3)
-Installing erubis (2.7.0)
-Installing rack (1.3.6)
-Installing rack-cache (1.1)
-Installing rack-mount (0.8.3)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.0.3)
-Installing actionpack (3.1.3)
-Using minimal (0.0.26) from source at /home/vagrant/builds/svenfuchs/minimal
-Installing test_declarative (0.0.5)
-Using bundler (1.0.22)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p358/bin/ruby -I"lib:." -I"/home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib" "/home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb" "test/all.rb"
-DEPRECATION WARNING: Inheriting from ActionView::Template::Handler is deprecated. Since Rails 3, all the API your template handler needs to implement is to respond to #call. (called from /home/vagrant/builds/svenfuchs/minimal/lib/minimal/template/handler.rb:2)
-DEPRECATION WARNING: Including Compilable in your template handler is deprecated. Since Rails 3, all the API your template handler needs to implement is to respond to #call. (called from include at /home/vagrant/builds/svenfuchs/minimal/lib/minimal/template/handler.rb:3)
-Loaded suite /home/vagrant/.rvm/gems/ruby-1.8.7-p358/gems/rake-0.9.2.2/lib/rake/rake_test_loader
-Started
-.....................
-Finished in 0.071609 seconds.
-
-21 tests, 22 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 747815, 'Artifact::Log', '2012-02-27 00:09:42.897000', '2012-02-27 00:09:43.145000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (670602, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/minimal.git svenfuchs/minimal
-$ cd svenfuchs/minimal
-$ git checkout -qf 65d0186299ef7275de7398431b83f45119c9b8a8
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/minimal/Gemfiles/rails-3.0
-$ bundle install
-Fetching source index for http://rubygems.org/
-Using rake (0.9.2.2)
-Installing abstract (1.0.0) WARNING: abstract-1.0.0 has an invalid nil value for @cert_chain
-
-Installing activesupport (3.0.11)
-Installing builder (2.1.2) WARNING: builder-2.1.2 has an invalid nil value for @cert_chain
-
-Installing i18n (0.5.0)
-Installing activemodel (3.0.11)
-Installing erubis (2.6.6)
-Installing rack (1.2.5)
-Installing rack-mount (0.6.14)
-Installing rack-test (0.5.7)
-Installing tzinfo (0.3.31)
-Installing actionpack (3.0.11)
-Using minimal (0.0.26) from source at /home/vagrant/builds/svenfuchs/minimal
-Installing test_declarative (0.0.5)
-Using bundler (1.0.22)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p125/bin/ruby -I"lib:." -I"/home/vagrant/.rvm/gems/ruby-1.9.3-p125/gems/rake-0.9.2.2/lib" "/home/vagrant/.rvm/gems/ruby-1.9.3-p125/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb" "test/all.rb"
-Run options:
-
-# Running tests:
-
-.....................
-
-Finished tests in 0.118841s, 176.7062 tests/s, 193.5353 assertions/s.
-
-21 tests, 23 assertions, 0 failures, 0 errors, 0 skips
-
-Done. Build script exited with: 0
-', 747816, 'Artifact::Log', '2012-02-27 00:09:42.914000', '2012-02-27 00:09:43.348000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (670603, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/minimal.git svenfuchs/minimal
-$ cd svenfuchs/minimal
-$ git checkout -qf 65d0186299ef7275de7398431b83f45119c9b8a8
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/minimal/Gemfiles/rails-3.1
-$ bundle install
-Fetching source index for http://rubygems.org/
-Using rake (0.9.2.2)
-Installing multi_json (1.1.0)
-Installing activesupport (3.1.3)
-Installing builder (3.0.0)
-Installing i18n (0.6.0)
-Installing activemodel (3.1.3)
-Installing erubis (2.7.0)
-Installing rack (1.3.6)
-Installing rack-cache (1.1)
-Installing rack-mount (0.8.3)
-Installing rack-test (0.6.1)
-Installing hike (1.2.1)
-Installing tilt (1.3.3)
-Installing sprockets (2.0.3)
-Installing actionpack (3.1.3)
-Using minimal (0.0.26) from source at /home/vagrant/builds/svenfuchs/minimal
-Installing test_declarative (0.0.5)
-Using bundler (1.0.22)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p125/bin/ruby -I"lib:." -I"/home/vagrant/.rvm/gems/ruby-1.9.3-p125/gems/rake-0.9.2.2/lib" "/home/vagrant/.rvm/gems/ruby-1.9.3-p125/gems/rake-0.9.2.2/lib/rake/rake_test_loader.rb" "test/all.rb"
-DEPRECATION WARNING: Inheriting from ActionView::Template::Handler is deprecated. Since Rails 3, all the API your template handler needs to implement is to respond to #call. (called from at /home/vagrant/builds/svenfuchs/minimal/lib/minimal/template/handler.rb:2)
-DEPRECATION WARNING: Including Compilable in your template handler is deprecated. Since Rails 3, all the API your template handler needs to implement is to respond to #call. (called from include at /home/vagrant/builds/svenfuchs/minimal/lib/minimal/template/handler.rb:3)
-Run options:
-
-# Running tests:
-
-.....................
-
-Finished tests in 0.069882s, 300.5079 tests/s, 329.1277 assertions/s.
-
-21 tests, 23 assertions, 0 failures, 0 errors, 0 skips
-
-Done. Build script exited with: 0
-', 747817, 'Artifact::Log', '2012-02-27 00:09:42.930000', '2012-02-27 00:09:43.414000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990667, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-1
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf c2df258d488f99ea2e3a6737810fb829d658773d
-
-
-$ export TRAVIS_RUBY_VERSION=1.8.7
-
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 5.287316 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149383, 'Artifact::Log', '2012-04-22 18:51:03.357000', '2012-04-22 18:51:04.082000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990668, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-5
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf c2df258d488f99ea2e3a6737810fb829d658773d
-
-
-$ export TRAVIS_RUBY_VERSION=1.9.2
-
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p290(B[m
-
-$ ruby --version
-ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 9.252853 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors, 0 skips
-
-Test run options: --seed 64452
-
-
-Done. Build script exited with: 0
-', 1149384, 'Artifact::Log', '2012-04-22 18:51:03.382000', '2012-04-22 18:51:03.912000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990669, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf c2df258d488f99ea2e3a6737810fb829d658773d
-
-
-$ export TRAVIS_RUBY_VERSION=1.9.3
-
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Run options:
-
-# Running tests:
-
-.......................................
-
-Finished tests in 8.001442s, 4.8741 tests/s, 19.4965 assertions/s.
-
-39 tests, 156 assertions, 0 failures, 0 errors, 0 skips
-
-
-Done. Build script exited with: 0
-', 1149385, 'Artifact::Log', '2012-04-22 18:51:03.427000', '2012-04-22 18:51:04.270000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990670, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-2
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf c2df258d488f99ea2e3a6737810fb829d658773d
-
-
-$ export TRAVIS_RUBY_VERSION=ree
-
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 5.029592 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149386, 'Artifact::Log', '2012-04-22 18:51:03.444000', '2012-04-22 18:51:04.394000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990671, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf c2df258d488f99ea2e3a6737810fb829d658773d
-
-
-$ export TRAVIS_RUBY_VERSION=jruby
-
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7(B[m
-
-$ ruby --version
-jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-
-$ gem --version
-1.8.15
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 21.231 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149387, 'Artifact::Log', '2012-04-22 18:51:03.461000', '2012-04-22 18:51:04.141000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990662, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-1
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf cb2b53bfb42e6323966b0caffe6b41a3f360656c
-
-
-$ export TRAVIS_RUBY_VERSION=1.8.7
-
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.1) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 5.728277 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149377, 'Artifact::Log', '2012-04-22 18:51:01.940000', '2012-04-22 18:51:02.647000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990663, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-1
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf cb2b53bfb42e6323966b0caffe6b41a3f360656c
-
-
-$ export TRAVIS_RUBY_VERSION=1.9.2
-
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p290(B[m
-
-$ ruby --version
-ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.1) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 9.837763 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors, 0 skips
-
-Test run options: --seed 25992
-
-
-Done. Build script exited with: 0
-', 1149378, 'Artifact::Log', '2012-04-22 18:51:01.960000', '2012-04-22 18:51:02.735000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990664, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-4
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf cb2b53bfb42e6323966b0caffe6b41a3f360656c
-
-
-$ export TRAVIS_RUBY_VERSION=1.9.3
-
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.1) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Run options:
-
-# Running tests:
-
-.......................................
-
-Finished tests in 7.966073s, 4.8958 tests/s, 19.5830 assertions/s.
-
-39 tests, 156 assertions, 0 failures, 0 errors, 0 skips
-
-
-Done. Build script exited with: 0
-', 1149379, 'Artifact::Log', '2012-04-22 18:51:01.981000', '2012-04-22 18:51:02.808000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990665, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf cb2b53bfb42e6323966b0caffe6b41a3f360656c
-
-
-$ export TRAVIS_RUBY_VERSION=ree
-
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-
-$ gem --version
-1.8.17
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.1) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 4.530154 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149380, 'Artifact::Log', '2012-04-22 18:51:02.006000', '2012-04-22 18:51:02.921000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (990666, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-6
-
-
-
-$ cd ~/builds
-
-
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-
-
-
-$ cd svenfuchs/gem-release
-
-$ git checkout -qf cb2b53bfb42e6323966b0caffe6b41a3f360656c
-
-
-$ export TRAVIS_RUBY_VERSION=jruby
-
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7(B[m
-
-$ ruby --version
-jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (OpenJDK Server VM 1.6.0_23) [linux-i386-java]
-
-$ gem --version
-1.8.15
-
-
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.1) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.11.1)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.3)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-.......................................
-Finished in 20.576 seconds.
-
-39 tests, 150 assertions, 0 failures, 0 errors
-
-
-Done. Build script exited with: 0
-', 1149381, 'Artifact::Log', '2012-04-22 18:51:02.024000', '2012-04-22 18:51:02.473000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844968, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 5.766803 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 965816, 'Artifact::Log', '2012-03-28 15:32:12.381000', '2012-03-28 15:32:49.751000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844969, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p318(B[m
-$ ruby --version
-ruby 1.9.2p318 (2012-02-14 revision 34678) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 8.849885 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors, 0 skips
-
-Test run options: --seed 41587
-
-Done. Build script exited with: 0
-', 965817, 'Artifact::Log', '2012-03-28 15:32:12.397000', '2012-03-28 15:32:58.056000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844970, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Run options:
-
-# Running tests:
-
-......................................
-
-Finished tests in 10.322029s, 3.6814 tests/s, 14.1445 assertions/s.
-
-38 tests, 146 assertions, 0 failures, 0 errors, 0 skips
-
-Done. Build script exited with: 0
-', 965818, 'Artifact::Log', '2012-03-28 15:32:12.420000', '2012-03-28 15:33:00.398000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844971, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=ree
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 7.94773 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 965819, 'Artifact::Log', '2012-03-28 15:32:12.442000', '2012-03-28 15:33:08.892000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844972, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=jruby
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7(B[m
-$ ruby --version
-jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (OpenJDK Server VM 1.6.0_22) [linux-i386-java]
-$ gem --version
-1.8.15
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 30.583 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 965820, 'Artifact::Log', '2012-03-28 15:32:12.455000', '2012-03-28 15:33:11.341000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844061, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 5.763766 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 964705, 'Artifact::Log', '2012-03-28 12:11:01.441000', '2012-03-28 12:11:01.990000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844062, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p318(B[m
-$ ruby --version
-ruby 1.9.2p318 (2012-02-14 revision 34678) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 9.093424 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors, 0 skips
-
-Test run options: --seed 63786
-
-Done. Build script exited with: 0
-', 964706, 'Artifact::Log', '2012-03-28 12:11:01.462000', '2012-03-28 12:11:02.129000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844063, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Run options:
-
-# Running tests:
-
-......................................
-
-Finished tests in 8.772282s, 4.3318 tests/s, 16.6433 assertions/s.
-
-38 tests, 146 assertions, 0 failures, 0 errors, 0 skips
-
-Done. Build script exited with: 0
-', 964707, 'Artifact::Log', '2012-03-28 12:11:01.481000', '2012-03-28 12:11:02.261000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844064, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=ree
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 5.009355 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 964708, 'Artifact::Log', '2012-03-28 12:11:01.495000', '2012-03-28 12:11:01.884000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (844065, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 739aecb81c482f72db99eb2483ef4dc6e25ae65b
-$ export TRAVIS_RUBY_VERSION=jruby
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7(B[m
-$ ruby --version
-jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (OpenJDK Server VM 1.6.0_22) [linux-i386-java]
-$ gem --version
-1.8.15
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 20.622 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 964709, 'Artifact::Log', '2012-03-28 12:11:01.517000', '2012-03-28 12:11:02.045000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (842799, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 531f808ebabc68d16149ae63876e793f1e579c4d
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p358(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 6.994569 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 963075, 'Artifact::Log', '2012-03-28 07:58:24.700000', '2012-03-28 07:58:26.314000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (842801, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-4
-
-Error: #
- org/jruby/ext/socket/RubyTCPSocket.java:121:in `initialize''
- org/jruby/RubyIO.java:876:in `new''
- org/jruby/ext/socket/RubyTCPSocket.java:147:in `open''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/net-ssh-2.2.2/lib/net/ssh/transport/session.rb:66:in `initialize''
- org/jruby/ext/Timeout.java:79:in `timeout''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/net-ssh-2.2.2/lib/net/ssh/transport/session.rb:66:in `initialize''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/net-ssh-2.2.2/lib/net/ssh.rb:186:in `start''
- /home/travis/travis-worker/lib/travis/worker/shell/session.rb:40:in `connect''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-build-8206f339070c/lib/travis/build/remote.rb:35:in `with_shell''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-build-8206f339070c/lib/travis/build/remote.rb:26:in `perform''
- /home/travis/travis-worker/lib/travis/worker/virtual_machine/virtual_box.rb:123:in `sandboxed''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-build-8206f339070c/lib/travis/build/remote.rb:25:in `perform''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-build-8206f339070c/lib/travis/build.rb:57:in `run''
- org/jruby/RubyKernel.java:2076:in `send''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-support-a073badfd701/lib/travis/support/logging.rb:26:in `run_with_log''
- org/jruby/RubyProc.java:270:in `call''
- /home/travis/travis-worker/lib/travis/worker.rb:182:in `work''
- org/jruby/RubyKernel.java:2084:in `send''
- /home/travis/.rvm/gems/jruby-1.6.7/bundler/gems/travis-support-a073badfd701/lib/travis/support/logging.rb:26:in `work_with_log''
- org/jruby/RubyProc.java:270:in `call''
- /home/travis/travis-worker/lib/travis/worker.rb:171:in `process''
- org/jruby/RubyMethod.java:133:in `call''
- org/jruby/RubyProc.java:270:in `call''
- org/jruby/RubyProc.java:220:in `call''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/hot_bunnies-1.3.5-java/lib/hot_bunnies/queue.rb:165:in `handle_message''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/hot_bunnies-1.3.5-java/lib/hot_bunnies/queue.rb:190:in `start''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/hot_bunnies-1.3.5-java/lib/hot_bunnies/queue.rb:159:in `on_message''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/hot_bunnies-1.3.5-java/lib/hot_bunnies/queue.rb:120:in `run''
- /home/travis/.rvm/gems/jruby-1.6.7/gems/hot_bunnies-1.3.5-java/lib/hot_bunnies/queue.rb:82:in `each''
- org/jruby/RubyProc.java:270:in `call''
- org/jruby/RubyProc.java:220:in `call''', 963077, 'Artifact::Log', '2012-03-28 07:58:24.717000', '2012-03-28 07:58:45.049000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (842803, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 531f808ebabc68d16149ae63876e793f1e579c4d
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p125(B[m
-$ ruby --version
-ruby 1.9.3p125 (2012-02-16 revision 34643) [i686-linux]
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Run options:
-
-# Running tests:
-
-......................................
-
-Finished tests in 10.338463s, 3.6756 tests/s, 14.1220 assertions/s.
-
-38 tests, 146 assertions, 0 failures, 0 errors, 0 skips
-
-Done. Build script exited with: 0
-', 963079, 'Artifact::Log', '2012-03-28 07:58:24.767000', '2012-03-28 07:58:26.645000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (842806, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 531f808ebabc68d16149ae63876e793f1e579c4d
-$ export TRAVIS_RUBY_VERSION=ree
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-$ gem --version
-1.8.17
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 8.125428 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 963081, 'Artifact::Log', '2012-03-28 07:58:24.787000', '2012-03-28 07:58:26.756000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (842808, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ git clone --depth=100 --quiet git://github.com/svenfuchs/gem-release.git svenfuchs/gem-release
-$ cd svenfuchs/gem-release
-$ git checkout -qf 531f808ebabc68d16149ae63876e793f1e579c4d
-$ export TRAVIS_RUBY_VERSION=jruby
-$ rvm use jruby
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7(B[m
-$ ruby --version
-jruby 1.6.7 (ruby-1.8.7-p357) (2012-02-22 3e82bc8) (OpenJDK Server VM 1.6.0_22) [linux-i386-java]
-$ gem --version
-1.8.15
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/svenfuchs/gem-release/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/...
-Using gem-release (0.3.0) from source at /home/vagrant/builds/svenfuchs/gem-release
-Installing metaclass (0.0.1)
-Installing mocha (0.10.5)
-Installing test_declarative (0.0.5)
-Using bundler (1.1.0)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ ruby -Ilib:test test/all.rb
-Loaded suite test/all
-Started
-......................................
-Finished in 32.774 seconds.
-
-38 tests, 140 assertions, 0 failures, 0 errors
-
-Done. Build script exited with: 0
-', 963084, 'Artifact::Log', '2012-03-28 07:58:24.812000', '2012-03-28 07:58:26.995000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521780, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p370(B[m
-$ ruby --version
-ruby 1.8.7 (2012-06-29 patchlevel 370) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p370/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-Faraday: you may want to install system_timer for reliable timeouts
-
-GH::Cache
-/home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:20: warning: already initialized constant NET_HTTP_EXCEPTIONS
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
-[31m send HTTP requests for uncached resources (FAILED - 1)[0m
-[31m uses the cache for subsequent requests (FAILED - 2)[0m
-[31m cache is resettable (FAILED - 3)[0m
-
-GH::Pagination
-[31m paginates (FAILED - 4)[0m
-[31m paginates with GH::Normalizer (FAILED - 5)[0m
-[31m paginates on default stack (FAILED - 6)[0m
-[31m gives random access (FAILED - 7)[0m
-[31m does not wrap hash responses (FAILED - 8)[0m
-
-GH::MergeCommit
-[31m adds merge commits (FAILED - 9)[0m
-[31m adds base commits (FAILED - 10)[0m
-[31m adds head commits (FAILED - 11)[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[31m follows links (FAILED - 12)[0m
-[31m works with lazy loading (FAILED - 13)[0m
-[31m does not raise exceptions for unknown fields (FAILED - 14)[0m
-
-GH::Instrumentation
-[31m instruments http (FAILED - 15)[0m
-[31m instruments [] (FAILED - 16)[0m
-[31m instruments load (FAILED - 17)[0m
-
-GH::Error
-[31m wraps connection (FAILED - 18)[0m
-[31m exposes the original exception (FAILED - 19)[0m
-[31m keeps the payload around (FAILED - 20)[0m
-
-GH::Parallel
-[31m allows normal requests (FAILED - 21)[0m
-[31m sets in_parallel? (FAILED - 22)[0m
-[31m runs requests in parallel (FAILED - 23)[0m
-[31m runs requests right away if parallelize is set to false (FAILED - 24)[0m
-[31m works with pagination (FAILED - 25)[0m
-[31m returns the block value (FAILED - 26)[0m
-[31m works two times in a row (FAILED - 27)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[31m handles UTF-8 properly, even if encoded binary (FAILED - 28)[0m
-[31m handles broken encodings properly (FAILED - 29)[0m
-
-GH::Remote
-[31m loads resources from github (FAILED - 30)[0m
-[31m sets headers correctly (FAILED - 31)[0m
-[32m raises an exception for missing resources[0m
-[31m parses the body (FAILED - 32)[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[31m allows doing requests right from the GH object (FAILED - 33)[0m
-[31m allows posting to github (FAILED - 34)[0m
- with
-[31m returns the GH instance if no block is given (FAILED - 35)[0m
-[31m returns the block value if block is given (FAILED - 36)[0m
-[31m propagates options (FAILED - 37)[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[31m is set up properly (FAILED - 38)[0m
-[31m leaves unknown fields in place (FAILED - 39)[0m
-[31m allows normalization with #load (FAILED - 40)[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[31m renames org to organization (FAILED - 41)[0m
-[31m renames orgs to organizations (FAILED - 42)[0m
-[31m renames username to login (FAILED - 43)[0m
-[31m renames repo to repository (FAILED - 44)[0m
-[31m renames repos to repositories (FAILED - 45)[0m
-[31m renames repo_foo to repository_foo (FAILED - 46)[0m
-[31m renames repos_foo to repository_foo (FAILED - 47)[0m
-[31m renames foo_repo to foo_repository (FAILED - 48)[0m
-[31m renames foo_repos to foo_repositories (FAILED - 49)[0m
-[31m renames commit to sha if value is a sha (FAILED - 50)[0m
-[31m does not rename commit to sha if value is not a sha (FAILED - 51)[0m
-[31m renames commit_id to sha if value is a sha (FAILED - 52)[0m
-[31m does not rename commit_id to sha if value is not a sha (FAILED - 53)[0m
-[31m renames comments to comment_count if content is a number (FAILED - 54)[0m
-[31m renames repositories to repository_count if content is a number (FAILED - 55)[0m
-[31m renames repos to repository_count if content is a number (FAILED - 56)[0m
-[31m renames forks to fork_count if content is a number (FAILED - 57)[0m
-[31m does not rename comments to comment_count if content is not a number (FAILED - 58)[0m
-[31m does not rename repositories to repository_count if content is not a number (FAILED - 59)[0m
-[31m does not rename repos to repository_count if content is not a number (FAILED - 60)[0m
-[31m does not rename forks to fork_count if content is not a number (FAILED - 61)[0m
-[31m renames user to owner if appropriate (FAILED - 62)[0m
-[31m renames user to author if appropriate (FAILED - 63)[0m
-[31m leaves user in place if owner exists (FAILED - 64)[0m
-[31m leaves user in place if author exists (FAILED - 65)[0m
-[31m leaves user in place if no indication what kind of user (FAILED - 66)[0m
-[31m copies author to committer (FAILED - 67)[0m
-[31m copies committer to author (FAILED - 68)[0m
-[31m does not override committer or author if both exist (FAILED - 69)[0m
- time
-[31m transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 70)[0m
-[31m transforms dates stored in "timestamp" to a date in "date" (FAILED - 71)[0m
-[31m changes date to UTC (FAILED - 72)[0m
-[31m changes any time entry to UTC (FAILED - 73)[0m
-[31m does not choke on empty values (FAILED - 74)[0m
- links
-[31m does not normalize config (FAILED - 75)[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[31m identifies _url suffix as link (FAILED - 76)[0m
-[31m identifies blog as link (FAILED - 77)[0m
-[31m detects avatar links from gravatar_url (FAILED - 78)[0m
-[31m detects html urls in url field (FAILED - 79)[0m
-[31m detects self urls in url field (FAILED - 80)[0m
-[31m passes through true (FAILED - 81)[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[31m wraps normalizer by default (FAILED - 82)[0m
-[31m send http requests for missing fields (FAILED - 83)[0m
-[31m does not send http requests for existing fields (FAILED - 84)[0m
-[31m allows traversing into nested structures (FAILED - 85)[0m
-[31m does not request twice if the field does not exist upstream (FAILED - 86)[0m
-[31m does not skip an already existing default proc (FAILED - 87)[0m
-[31m is still loading missing fields, even if a default proc is set (FAILED - 88)[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:7[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 2) GH::Cache uses the cache for subsequent requests
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 3) GH::Cache cache is resettable
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 4) GH::Pagination paginates
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:8[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 5) GH::Pagination paginates with GH::Normalizer
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:14[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 6) GH::Pagination paginates on default stack
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 7) GH::Pagination gives random access
- [31mFailure/Error:[0m [31mdata[index].should be == value[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/pagination_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./lib/gh/pagination.rb:12:in `each''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./spec/pagination_spec.rb:24[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 8) GH::Pagination does not wrap hash responses
- [31mFailure/Error:[0m [31msubject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/pagination_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 9) GH::MergeCommit adds merge commits
- [31mFailure/Error:[0m [31mpull_request[''merge_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "ca3c0a44ec1d9bf8557d2653aa1b79fcc9ff5f5d":String[0m
-[36m # ./spec/merge_commit_spec.rb:15[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 10) GH::MergeCommit adds base commits
- [31mFailure/Error:[0m [31mpull_request[''base_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "4a90c0ad9187c8735e1bcbf39a0291a21284994a":String[0m
-[36m # ./spec/merge_commit_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 11) GH::MergeCommit adds head commits
- [31mFailure/Error:[0m [31mpull_request[''head_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "01eae10530ca65b51474b2d950365967ebdf3023":String[0m
-[36m # ./spec/merge_commit_spec.rb:23[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 12) GH::LinkFollower follows links
- [31mFailure/Error:[0m [31mcommentator[''login''].should be == ''rtomayko''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rtomayko":String[0m
-[36m # ./spec/link_follower_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 13) GH::LinkFollower works with lazy loading
- [31mFailure/Error:[0m [31mcommentator["location"].should be == "San Francisco"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "San Francisco":String[0m
-[36m # ./spec/link_follower_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- [31mFailure/Error:[0m [31mcommentator["location"].should be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for nil:NilClass[0m
-[36m # ./spec/link_follower_spec.rb:22[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 15) GH::Instrumentation instruments http
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 16) GH::Instrumentation instruments []
- [31mFailure/Error:[0m [31m@events.size.should be == 2[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 2:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 17) GH::Instrumentation instruments load
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:27[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 18) GH::Error wraps connection
- [31mFailure/Error:[0m [31mexception.should be_an(GH::Error)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 19) GH::Error exposes the original exception
- [31mFailure/Error:[0m [31mexception.error.should be_a(RuntimeError)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 20) GH::Error keeps the payload around
- [31mFailure/Error:[0m [31mexception.payload.should be == {''foo'' => ''bar''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"foo"=>"bar"}:Hash[0m
-[36m # ./spec/error_spec.rb:29[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 21) GH::Parallel allows normal requests
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == ''Konstantin Haase''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/parallel_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 22) GH::Parallel sets in_parallel?
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:16[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 23) GH::Parallel runs requests in parallel
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:51[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/parallel_spec.rb:50[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 25) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 128:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:76[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 26) GH::Parallel returns the block value
- [31mFailure/Error:[0m [31mGH.in_parallel { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:80[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 27) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/net/http.rb:1069:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 28) GH::Response handles UTF-8 properly, even if encoded binary
- [31mFailure/Error:[0m [31mresponse[''foo''].should be == ''über cool sista året''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303\274ber cool sista \303\245ret":String[0m
-[36m # ./spec/response_spec.rb:13[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 29) GH::Response handles broken encodings properly
- [31mFailure/Error:[0m [31mGH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303":String[0m
-[36m # ./spec/response_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 30) GH::Remote loads resources from github
- [31mFailure/Error:[0m [31msubject[''foo''].to_s.should be == ''["foo"]''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "[\"foo\"]":String[0m
-[36m # ./spec/remote_spec.rb:6[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 31) GH::Remote sets headers correctly
- [31mFailure/Error:[0m [31msubject[''foo''].headers[''x-foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:11[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 32) GH::Remote parses the body
- [31mFailure/Error:[0m [31msubject[''foo''][''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 33) GH allows doing requests right from the GH object
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/gh_spec.rb:5[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 34) GH allows posting to github
- [31mFailure/Error:[0m [31mresponse[''hi''].should be == ''ho''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "ho":String[0m
-[36m # ./spec/gh_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 35) GH with returns the GH instance if no block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...").should be_a(GH::Wrapper)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/gh_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 36) GH with returns the block value if block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...") { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/gh_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 37) GH with propagates options
- [31mFailure/Error:[0m [31mGH.options.should be == {:a => :b, :b => :c}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {:a=>:b, :b=>:c}:Hash[0m
-[36m # ./spec/gh_spec.rb:27[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:26[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 38) GH::Normalizer is set up properly
- [31mFailure/Error:[0m [31mbackend.frontend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:20[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 39) GH::Normalizer leaves unknown fields in place
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/normalizer_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 40) GH::Normalizer allows normalization with #load
- [31mFailure/Error:[0m [31mresult.should_not include("org")[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"organization"=>"foo"}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 41) GH::Normalizer renaming renames org to organization
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 42) GH::Normalizer renaming renames orgs to organizations
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 43) GH::Normalizer renaming renames username to login
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 44) GH::Normalizer renaming renames repo to repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 45) GH::Normalizer renaming renames repos to repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 46) GH::Normalizer renaming renames repo_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 47) GH::Normalizer renaming renames repos_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 48) GH::Normalizer renaming renames foo_repo to foo_repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 49) GH::Normalizer renaming renames foo_repos to foo_repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 50) GH::Normalizer renaming renames commit to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:63[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 51) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:70[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 52) GH::Normalizer renaming renames commit_id to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:77[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 53) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:84[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 54) GH::Normalizer renaming renames comments to comment_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comment_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:91[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 55) GH::Normalizer renaming renames repositories to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:98[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 56) GH::Normalizer renaming renames repos to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:105[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 57) GH::Normalizer renaming renames forks to fork_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''fork_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:112[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 58) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comments'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:119[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 59) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:126[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 60) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:133[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 61) GH::Normalizer renaming does not rename forks to fork_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''forks'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:140[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 62) GH::Normalizer renaming renames user to owner if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:147[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 63) GH::Normalizer renaming renames user to author if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:154[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 64) GH::Normalizer renaming leaves user in place if owner exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:161[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 65) GH::Normalizer renaming leaves user in place if author exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:169[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 66) GH::Normalizer renaming leaves user in place if no indication what kind of user
- [31mFailure/Error:[0m [31mnormalized.should_not include(''owner'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:177[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 67) GH::Normalizer renaming copies author to committer
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:185[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 68) GH::Normalizer renaming copies committer to author
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:192[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 69) GH::Normalizer renaming does not override committer or author if both exist
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:199[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 70) GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "1970-01-01T00:20:34Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "1970-01-01T00:20:34Z":String[0m
-[36m # ./spec/normalizer_spec.rb:209[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 71) GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:214[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 72) GH::Normalizer time changes date to UTC
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:219[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 73) GH::Normalizer time changes any time entry to UTC
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:224[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 74) GH::Normalizer time does not choke on empty values
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == ""[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "":String[0m
-[36m # ./spec/normalizer_spec.rb:229[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 75) GH::Normalizer links does not normalize config
- [31mFailure/Error:[0m [31mnormalized[''config''].should be == {''url'' => ''http://localhost''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"url"=>"http://localhost"}:Hash[0m
-[36m # ./spec/normalizer_spec.rb:236[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 76) GH::Normalizer links identifies _url suffix as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''foo_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:254[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 77) GH::Normalizer links identifies blog as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''blog'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:263[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 78) GH::Normalizer links detects avatar links from gravatar_url
- [31mFailure/Error:[0m [31mnormalized.should_not include(''gravatar_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:272[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 79) GH::Normalizer links detects html urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:281[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 80) GH::Normalizer links detects self urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"_links"=>{"self"=>{"href"=>"http://api.github.com/foo"}}}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:289[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 81) GH::Normalizer links passes through true
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == true[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for true:TrueClass[0m
-[36m # ./spec/normalizer_spec.rb:298[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 82) GH::LazyLoader wraps normalizer by default
- [31mFailure/Error:[0m [31mGH::LazyLoader.new.backend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #>[0m
-[36m # ./spec/lazy_loader_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 83) GH::LazyLoader send http requests for missing fields
- [31mFailure/Error:[0m [31mshould_request(1) { rkh[''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 84) GH::LazyLoader does not send http requests for existing fields
- [31mFailure/Error:[0m [31mshould_not_request { rkh[''login''].should be == ''rkh'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rkh":String[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 85) GH::LazyLoader allows traversing into nested structures
- [31mFailure/Error:[0m [31mshould_request(1) { sven[''friends''][0][''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 86) GH::LazyLoader does not request twice if the field does not exist upstream
- [31mFailure/Error:[0m [31mshould_request(1) { 2.times { rkh[''foo''] } }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/spec_helper.rb:26:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:38[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 87) GH::LazyLoader does not skip an already existing default proc
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:47[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:46[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 88) GH::LazyLoader is still loading missing fields, even if a default proc is set
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:58[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:57[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
-Finished in 20.79 seconds
-[31m102 examples, 88 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/cache_spec.rb:6[0m [36m# GH::Cache send HTTP requests for uncached resources[0m
-[31mrspec ./spec/cache_spec.rb:11[0m [36m# GH::Cache uses the cache for subsequent requests[0m
-[31mrspec ./spec/cache_spec.rb:18[0m [36m# GH::Cache cache is resettable[0m
-[31mrspec ./spec/pagination_spec.rb:6[0m [36m# GH::Pagination paginates[0m
-[31mrspec ./spec/pagination_spec.rb:11[0m [36m# GH::Pagination paginates with GH::Normalizer[0m
-[31mrspec ./spec/pagination_spec.rb:17[0m [36m# GH::Pagination paginates on default stack[0m
-[31mrspec ./spec/pagination_spec.rb:22[0m [36m# GH::Pagination gives random access[0m
-[31mrspec ./spec/pagination_spec.rb:29[0m [36m# GH::Pagination does not wrap hash responses[0m
-[31mrspec ./spec/merge_commit_spec.rb:14[0m [36m# GH::MergeCommit adds merge commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:18[0m [36m# GH::MergeCommit adds base commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:22[0m [36m# GH::MergeCommit adds head commits[0m
-[31mrspec ./spec/link_follower_spec.rb:11[0m [36m# GH::LinkFollower follows links[0m
-[31mrspec ./spec/link_follower_spec.rb:15[0m [36m# GH::LinkFollower works with lazy loading[0m
-[31mrspec ./spec/link_follower_spec.rb:21[0m [36m# GH::LinkFollower does not raise exceptions for unknown fields[0m
-[31mrspec ./spec/instrumentation_spec.rb:10[0m [36m# GH::Instrumentation instruments http[0m
-[31mrspec ./spec/instrumentation_spec.rb:16[0m [36m# GH::Instrumentation instruments [][0m
-[31mrspec ./spec/instrumentation_spec.rb:25[0m [36m# GH::Instrumentation instruments load[0m
-[31mrspec ./spec/error_spec.rb:20[0m [36m# GH::Error wraps connection[0m
-[31mrspec ./spec/error_spec.rb:24[0m [36m# GH::Error exposes the original exception[0m
-[31mrspec ./spec/error_spec.rb:28[0m [36m# GH::Error keeps the payload around[0m
-[31mrspec ./spec/parallel_spec.rb:11[0m [36m# GH::Parallel allows normal requests[0m
-[31mrspec ./spec/parallel_spec.rb:15[0m [36m# GH::Parallel sets in_parallel?[0m
-[31mrspec ./spec/parallel_spec.rb:21[0m [36m# GH::Parallel runs requests in parallel[0m
-[31mrspec ./spec/parallel_spec.rb:47[0m [36m# GH::Parallel runs requests right away if parallelize is set to false[0m
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:79[0m [36m# GH::Parallel returns the block value[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-[31mrspec ./spec/response_spec.rb:9[0m [36m# GH::Response handles UTF-8 properly, even if encoded binary[0m
-[31mrspec ./spec/response_spec.rb:16[0m [36m# GH::Response handles broken encodings properly[0m
-[31mrspec ./spec/remote_spec.rb:4[0m [36m# GH::Remote loads resources from github[0m
-[31mrspec ./spec/remote_spec.rb:9[0m [36m# GH::Remote sets headers correctly[0m
-[31mrspec ./spec/remote_spec.rb:19[0m [36m# GH::Remote parses the body[0m
-[31mrspec ./spec/gh_spec.rb:4[0m [36m# GH allows doing requests right from the GH object[0m
-[31mrspec ./spec/gh_spec.rb:8[0m [36m# GH allows posting to github[0m
-[31mrspec ./spec/gh_spec.rb:16[0m [36m# GH with returns the GH instance if no block is given[0m
-[31mrspec ./spec/gh_spec.rb:20[0m [36m# GH with returns the block value if block is given[0m
-[31mrspec ./spec/gh_spec.rb:24[0m [36m# GH with propagates options[0m
-[31mrspec ./spec/normalizer_spec.rb:19[0m [36m# GH::Normalizer is set up properly[0m
-[31mrspec ./spec/normalizer_spec.rb:23[0m [36m# GH::Normalizer leaves unknown fields in place[0m
-[31mrspec ./spec/normalizer_spec.rb:28[0m [36m# GH::Normalizer allows normalization with #load[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames org to organization[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames orgs to organizations[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames username to login[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo to repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos to repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repo to foo_repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repos to foo_repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:61[0m [36m# GH::Normalizer renaming renames commit to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:68[0m [36m# GH::Normalizer renaming does not rename commit to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:75[0m [36m# GH::Normalizer renaming renames commit_id to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:82[0m [36m# GH::Normalizer renaming does not rename commit_id to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:89[0m [36m# GH::Normalizer renaming renames comments to comment_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:96[0m [36m# GH::Normalizer renaming renames repositories to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:103[0m [36m# GH::Normalizer renaming renames repos to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:110[0m [36m# GH::Normalizer renaming renames forks to fork_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:117[0m [36m# GH::Normalizer renaming does not rename comments to comment_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:124[0m [36m# GH::Normalizer renaming does not rename repositories to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:131[0m [36m# GH::Normalizer renaming does not rename repos to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:138[0m [36m# GH::Normalizer renaming does not rename forks to fork_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:145[0m [36m# GH::Normalizer renaming renames user to owner if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:152[0m [36m# GH::Normalizer renaming renames user to author if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:159[0m [36m# GH::Normalizer renaming leaves user in place if owner exists[0m
-[31mrspec ./spec/normalizer_spec.rb:167[0m [36m# GH::Normalizer renaming leaves user in place if author exists[0m
-[31mrspec ./spec/normalizer_spec.rb:175[0m [36m# GH::Normalizer renaming leaves user in place if no indication what kind of user[0m
-[31mrspec ./spec/normalizer_spec.rb:183[0m [36m# GH::Normalizer renaming copies author to committer[0m
-[31mrspec ./spec/normalizer_spec.rb:190[0m [36m# GH::Normalizer renaming copies committer to author[0m
-[31mrspec ./spec/normalizer_spec.rb:197[0m [36m# GH::Normalizer renaming does not override committer or author if both exist[0m
-[31mrspec ./spec/normalizer_spec.rb:207[0m [36m# GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:212[0m [36m# GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:217[0m [36m# GH::Normalizer time changes date to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:222[0m [36m# GH::Normalizer time changes any time entry to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:227[0m [36m# GH::Normalizer time does not choke on empty values[0m
-[31mrspec ./spec/normalizer_spec.rb:234[0m [36m# GH::Normalizer links does not normalize config[0m
-[31mrspec ./spec/normalizer_spec.rb:252[0m [36m# GH::Normalizer links identifies _url suffix as link[0m
-[31mrspec ./spec/normalizer_spec.rb:261[0m [36m# GH::Normalizer links identifies blog as link[0m
-[31mrspec ./spec/normalizer_spec.rb:270[0m [36m# GH::Normalizer links detects avatar links from gravatar_url[0m
-[31mrspec ./spec/normalizer_spec.rb:279[0m [36m# GH::Normalizer links detects html urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:287[0m [36m# GH::Normalizer links detects self urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:296[0m [36m# GH::Normalizer links passes through true[0m
-[31mrspec ./spec/lazy_loader_spec.rb:16[0m [36m# GH::LazyLoader wraps normalizer by default[0m
-[31mrspec ./spec/lazy_loader_spec.rb:20[0m [36m# GH::LazyLoader send http requests for missing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:24[0m [36m# GH::LazyLoader does not send http requests for existing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:28[0m [36m# GH::LazyLoader allows traversing into nested structures[0m
-[31mrspec ./spec/lazy_loader_spec.rb:37[0m [36m# GH::LazyLoader does not request twice if the field does not exist upstream[0m
-[31mrspec ./spec/lazy_loader_spec.rb:41[0m [36m# GH::LazyLoader does not skip an already existing default proc[0m
-[31mrspec ./spec/lazy_loader_spec.rb:52[0m [36m# GH::LazyLoader is still loading missing fields, even if a default proc is set[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p370/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836257, 'Artifact::Log', '2012-07-11 14:17:53.836000', '2012-07-11 14:17:55.538000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521781, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[32m send HTTP requests for uncached resources[0m
-[32m uses the cache for subsequent requests[0m
-[32m cache is resettable[0m
-
-GH::Pagination
-[32m paginates[0m
-[32m paginates with GH::Normalizer[0m
-[32m paginates on default stack[0m
-[32m gives random access[0m
-[32m does not wrap hash responses[0m
-
-GH::MergeCommit
-[32m adds merge commits[0m
-[32m adds base commits[0m
-[32m adds head commits[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[32m follows links[0m
-[32m works with lazy loading[0m
-[32m does not raise exceptions for unknown fields[0m
-
-GH::Instrumentation
-[32m instruments http[0m
-[32m instruments [][0m
-[32m instruments load[0m
-
-GH::Error
-[32m wraps connection[0m
-[32m exposes the original exception[0m
-[32m keeps the payload around[0m
-
-GH::Parallel
-[32m allows normal requests[0m
-[32m sets in_parallel?[0m
-[32m runs requests in parallel[0m
-[32m runs requests right away if parallelize is set to false[0m
-[31m works with pagination (FAILED - 1)[0m
-[32m returns the block value[0m
-[31m works two times in a row (FAILED - 2)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[32m handles UTF-8 properly, even if encoded binary[0m
-[32m handles broken encodings properly[0m
-
-GH::Remote
-[32m loads resources from github[0m
-[32m sets headers correctly[0m
-[32m raises an exception for missing resources[0m
-[32m parses the body[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[32m allows doing requests right from the GH object[0m
-[32m allows posting to github[0m
- with
-[32m returns the GH instance if no block is given[0m
-[32m returns the block value if block is given[0m
-[32m propagates options[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[32m is set up properly[0m
-[32m leaves unknown fields in place[0m
-[32m allows normalization with #load[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[32m renames org to organization[0m
-[32m renames orgs to organizations[0m
-[32m renames username to login[0m
-[32m renames repo to repository[0m
-[32m renames repos to repositories[0m
-[32m renames repo_foo to repository_foo[0m
-[32m renames repos_foo to repository_foo[0m
-[32m renames foo_repo to foo_repository[0m
-[32m renames foo_repos to foo_repositories[0m
-[32m renames commit to sha if value is a sha[0m
-[32m does not rename commit to sha if value is not a sha[0m
-[32m renames commit_id to sha if value is a sha[0m
-[32m does not rename commit_id to sha if value is not a sha[0m
-[32m renames comments to comment_count if content is a number[0m
-[32m renames repositories to repository_count if content is a number[0m
-[32m renames repos to repository_count if content is a number[0m
-[32m renames forks to fork_count if content is a number[0m
-[32m does not rename comments to comment_count if content is not a number[0m
-[32m does not rename repositories to repository_count if content is not a number[0m
-[32m does not rename repos to repository_count if content is not a number[0m
-[32m does not rename forks to fork_count if content is not a number[0m
-[32m renames user to owner if appropriate[0m
-[32m renames user to author if appropriate[0m
-[32m leaves user in place if owner exists[0m
-[32m leaves user in place if author exists[0m
-[32m leaves user in place if no indication what kind of user[0m
-[32m copies author to committer[0m
-[32m copies committer to author[0m
-[32m does not override committer or author if both exist[0m
- time
-[32m transforms timestamps stored in "timestamp" to a date in "date"[0m
-[32m transforms dates stored in "timestamp" to a date in "date"[0m
-[32m changes date to UTC[0m
-[32m changes any time entry to UTC[0m
-[32m does not choke on empty values[0m
- links
-[32m does not normalize config[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[32m identifies _url suffix as link[0m
-[32m identifies blog as link[0m
-[32m detects avatar links from gravatar_url[0m
-[32m detects html urls in url field[0m
-[32m detects self urls in url field[0m
-[32m passes through true[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[32m wraps normalizer by default[0m
-[32m send http requests for missing fields[0m
-[32m does not send http requests for existing fields[0m
-[32m allows traversing into nested structures[0m
-[32m does not request twice if the field does not exist upstream[0m
-[32m does not skip an already existing default proc[0m
-[32m is still loading missing fields, even if a default proc is set[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mrepos = GH.in_parallel { GH[''users/rkh/repos''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/net/http.rb:1205:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:74:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
- 2) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/net/http.rb:1205:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
-Finished in 3.94 seconds
-[31m102 examples, 2 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836258, 'Artifact::Log', '2012-07-11 14:17:53.851000', '2012-07-11 14:17:54.470000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521782, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[32m send HTTP requests for uncached resources[0m
-[32m uses the cache for subsequent requests[0m
-[32m cache is resettable[0m
-
-GH::Pagination
-[32m paginates[0m
-[32m paginates with GH::Normalizer[0m
-[32m paginates on default stack[0m
-[32m gives random access[0m
-[32m does not wrap hash responses[0m
-
-GH::MergeCommit
-[32m adds merge commits[0m
-[32m adds base commits[0m
-[32m adds head commits[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[32m follows links[0m
-[32m works with lazy loading[0m
-[32m does not raise exceptions for unknown fields[0m
-
-GH::Instrumentation
-[32m instruments http[0m
-[32m instruments [][0m
-[32m instruments load[0m
-
-GH::Error
-[32m wraps connection[0m
-[32m exposes the original exception[0m
-[32m keeps the payload around[0m
-
-GH::Parallel
-[32m allows normal requests[0m
-[32m sets in_parallel?[0m
-[32m runs requests in parallel[0m
-[32m runs requests right away if parallelize is set to false[0m
-[31m works with pagination (FAILED - 1)[0m
-[32m returns the block value[0m
-[31m works two times in a row (FAILED - 2)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[32m handles UTF-8 properly, even if encoded binary[0m
-[32m handles broken encodings properly[0m
-
-GH::Remote
-[32m loads resources from github[0m
-[32m sets headers correctly[0m
-[32m raises an exception for missing resources[0m
-[32m parses the body[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[32m allows doing requests right from the GH object[0m
-[32m allows posting to github[0m
- with
-[32m returns the GH instance if no block is given[0m
-[32m returns the block value if block is given[0m
-[32m propagates options[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[32m is set up properly[0m
-[32m leaves unknown fields in place[0m
-[32m allows normalization with #load[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[32m renames org to organization[0m
-[32m renames orgs to organizations[0m
-[32m renames username to login[0m
-[32m renames repo to repository[0m
-[32m renames repos to repositories[0m
-[32m renames repo_foo to repository_foo[0m
-[32m renames repos_foo to repository_foo[0m
-[32m renames foo_repo to foo_repository[0m
-[32m renames foo_repos to foo_repositories[0m
-[32m renames commit to sha if value is a sha[0m
-[32m does not rename commit to sha if value is not a sha[0m
-[32m renames commit_id to sha if value is a sha[0m
-[32m does not rename commit_id to sha if value is not a sha[0m
-[32m renames comments to comment_count if content is a number[0m
-[32m renames repositories to repository_count if content is a number[0m
-[32m renames repos to repository_count if content is a number[0m
-[32m renames forks to fork_count if content is a number[0m
-[32m does not rename comments to comment_count if content is not a number[0m
-[32m does not rename repositories to repository_count if content is not a number[0m
-[32m does not rename repos to repository_count if content is not a number[0m
-[32m does not rename forks to fork_count if content is not a number[0m
-[32m renames user to owner if appropriate[0m
-[32m renames user to author if appropriate[0m
-[32m leaves user in place if owner exists[0m
-[32m leaves user in place if author exists[0m
-[32m leaves user in place if no indication what kind of user[0m
-[32m copies author to committer[0m
-[32m copies committer to author[0m
-[32m does not override committer or author if both exist[0m
- time
-[32m transforms timestamps stored in "timestamp" to a date in "date"[0m
-[32m transforms dates stored in "timestamp" to a date in "date"[0m
-[32m changes date to UTC[0m
-[32m changes any time entry to UTC[0m
-[32m does not choke on empty values[0m
- links
-[32m does not normalize config[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[32m identifies _url suffix as link[0m
-[32m identifies blog as link[0m
-[32m detects avatar links from gravatar_url[0m
-[32m detects html urls in url field[0m
-[32m detects self urls in url field[0m
-[32m passes through true[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[32m wraps normalizer by default[0m
-[32m send http requests for missing fields[0m
-[32m does not send http requests for existing fields[0m
-[32m allows traversing into nested structures[0m
-[32m does not request twice if the field does not exist upstream[0m
-[32m does not skip an already existing default proc[0m
-[32m is still loading missing fields, even if a default proc is set[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mrepos = GH.in_parallel { GH[''users/rkh/repos''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:74:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
- 2) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
-Finished in 2.55 seconds
-[31m102 examples, 2 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836259, 'Artifact::Log', '2012-07-11 14:17:53.874000', '2012-07-11 14:17:55.255000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521783, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Using jruby-openssl (0.7.7)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
-
-GH::Cache
- send HTTP requests for uncached resources (FAILED - 1)
- uses the cache for subsequent requests (FAILED - 2)
- cache is resettable (FAILED - 3)
-
-GH::Pagination
- paginates (FAILED - 4)
- paginates with GH::Normalizer (FAILED - 5)
- paginates on default stack (FAILED - 6)
- gives random access (FAILED - 7)
- does not wrap hash responses (FAILED - 8)
-
-GH::MergeCommit
- adds merge commits (FAILED - 9)
- adds base commits (FAILED - 10)
- adds head commits (FAILED - 11)
- allows lazy loading on the commit
-
-GH::LinkFollower
- follows links (FAILED - 12)
- works with lazy loading (FAILED - 13)
- does not raise exceptions for unknown fields (FAILED - 14)
-
-GH::Instrumentation
- instruments http (FAILED - 15)
- instruments [] (FAILED - 16)
- instruments load (FAILED - 17)
-
-GH::Error
- wraps connection (FAILED - 18)
- exposes the original exception (FAILED - 19)
- keeps the payload around (FAILED - 20)
-
-GH::Parallel
- allows normal requests (FAILED - 21)
- sets in_parallel? (FAILED - 22)
- runs requests in parallel (FAILED - 23)
- runs requests right away if parallelize is set to false (FAILED - 24)
- works with pagination (FAILED - 25)
- returns the block value (FAILED - 26)
- works two times in a row (FAILED - 27)
-
-GH::Response
- parses content endpoints correctly (FAILED - 28)
- handles UTF-8 properly, even if encoded binary (FAILED - 29)
- handles broken encodings properly (FAILED - 30)
-
-GH::Remote
- loads resources from github (FAILED - 31)
- sets headers correctly (FAILED - 32)
- raises an exception for missing resources
- parses the body (FAILED - 33)
- sends http calls through the frontend
- sends request calls through the frontend
-
-GH
- allows doing requests right from the GH object (FAILED - 34)
- allows posting to github (FAILED - 35)
- with
- returns the GH instance if no block is given (FAILED - 36)
- returns the block value if block is given (FAILED - 37)
- propagates options (FAILED - 38)
-
-GH::Wrapper
- is specified (PENDING: Not yet implemented)
-
-GH::Normalizer
- is set up properly (FAILED - 39)
- leaves unknown fields in place (FAILED - 40)
- allows normalization with #load (FAILED - 41)
- works for deeply nested fields (PENDING: Not yet implemented)
- works for lists (PENDING: Not yet implemented)
- date fields
- generates date from timestamp (PENDING: Not yet implemented)
- renaming
- renames org to organization (FAILED - 42)
- renames orgs to organizations (FAILED - 43)
- renames username to login (FAILED - 44)
- renames repo to repository (FAILED - 45)
- renames repos to repositories (FAILED - 46)
- renames repo_foo to repository_foo (FAILED - 47)
- renames repos_foo to repository_foo (FAILED - 48)
- renames foo_repo to foo_repository (FAILED - 49)
- renames foo_repos to foo_repositories (FAILED - 50)
- renames commit to sha if value is a sha (FAILED - 51)
- does not rename commit to sha if value is not a sha (FAILED - 52)
- renames commit_id to sha if value is a sha (FAILED - 53)
- does not rename commit_id to sha if value is not a sha (FAILED - 54)
- renames comments to comment_count if content is a number (FAILED - 55)
- renames repositories to repository_count if content is a number (FAILED - 56)
- renames repos to repository_count if content is a number (FAILED - 57)
- renames forks to fork_count if content is a number (FAILED - 58)
- does not rename comments to comment_count if content is not a number (FAILED - 59)
- does not rename repositories to repository_count if content is not a number (FAILED - 60)
- does not rename repos to repository_count if content is not a number (FAILED - 61)
- does not rename forks to fork_count if content is not a number (FAILED - 62)
- renames user to owner if appropriate (FAILED - 63)
- renames user to author if appropriate (FAILED - 64)
- leaves user in place if owner exists (FAILED - 65)
- leaves user in place if author exists (FAILED - 66)
- leaves user in place if no indication what kind of user (FAILED - 67)
- copies author to committer (FAILED - 68)
- copies committer to author (FAILED - 69)
- does not override committer or author if both exist (FAILED - 70)
- time
- transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 71)
- transforms dates stored in "timestamp" to a date in "date" (FAILED - 72)
- changes date to UTC (FAILED - 73)
- changes any time entry to UTC (FAILED - 74)
- does not choke on empty values (FAILED - 75)
- links
- does not normalize config (FAILED - 76)
- generates link entries from link headers (PENDING: No reason given)
- generates link headers from link entries (PENDING: Not yet implemented)
- does not discard existing link entires (PENDING: Not yet implemented)
- does not discard existing link headers (PENDING: Not yet implemented)
- identifies _url suffix as link (FAILED - 77)
- identifies blog as link (FAILED - 78)
- detects avatar links from gravatar_url (FAILED - 79)
- detects html urls in url field (FAILED - 80)
- detects self urls in url field (FAILED - 81)
- passes through true (FAILED - 82)
-
-GH::Stack
- is specified (PENDING: Not yet implemented)
-
-GH::LazyLoader
- wraps normalizer by default (FAILED - 83)
- send http requests for missing fields (FAILED - 84)
- does not send http requests for existing fields (FAILED - 85)
- allows traversing into nested structures (FAILED - 86)
- does not request twice if the field does not exist upstream (FAILED - 87)
- does not skip an already existing default proc (FAILED - 88)
- is still loading missing fields, even if a default proc is set (FAILED - 89)
-
-Pending:
- GH::Wrapper is specified
- # Not yet implemented
- # ./spec/wrapper_spec.rb:4
- GH::Normalizer works for deeply nested fields
- # Not yet implemented
- # ./spec/normalizer_spec.rb:34
- GH::Normalizer works for lists
- # Not yet implemented
- # ./spec/normalizer_spec.rb:35
- GH::Normalizer date fields generates date from timestamp
- # Not yet implemented
- # ./spec/normalizer_spec.rb:38
- GH::Normalizer links generates link entries from link headers
- # No reason given
- # ./spec/normalizer_spec.rb:239
- GH::Normalizer links generates link headers from link entries
- # Not yet implemented
- # ./spec/normalizer_spec.rb:248
- GH::Normalizer links does not discard existing link entires
- # Not yet implemented
- # ./spec/normalizer_spec.rb:249
- GH::Normalizer links does not discard existing link headers
- # Not yet implemented
- # ./spec/normalizer_spec.rb:250
- GH::Stack is specified
- # Not yet implemented
- # ./spec/stack_spec.rb:4
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:7:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 2) GH::Cache uses the cache for subsequent requests
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 3) GH::Cache cache is resettable
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 4) GH::Pagination paginates
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:8:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 5) GH::Pagination paginates with GH::Normalizer
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:14:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 6) GH::Pagination paginates on default stack
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 7) GH::Pagination gives random access
- Failure/Error: data[index].should be == value
- NoMethodError:
- undefined method `should'' for #
- # ./spec/pagination_spec.rb:25:in `(root)''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index_with_optional_args_and_block''
- # org/jruby/RubyArray.java:1615:in `each''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./lib/gh/pagination.rb:12:in `each''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index_with_optional_args_and_block''
- # ./spec/pagination_spec.rb:24:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 8) GH::Pagination does not wrap hash responses
- Failure/Error: subject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/pagination_spec.rb:30:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 9) GH::MergeCommit adds merge commits
- Failure/Error: pull_request[''merge_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "ca3c0a44ec1d9bf8557d2653aa1b79fcc9ff5f5d":String
- # ./spec/merge_commit_spec.rb:15:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 10) GH::MergeCommit adds base commits
- Failure/Error: pull_request[''base_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "4a90c0ad9187c8735e1bcbf39a0291a21284994a":String
- # ./spec/merge_commit_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 11) GH::MergeCommit adds head commits
- Failure/Error: pull_request[''head_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "01eae10530ca65b51474b2d950365967ebdf3023":String
- # ./spec/merge_commit_spec.rb:23:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 12) GH::LinkFollower follows links
- Failure/Error: commentator[''login''].should be == ''rtomayko''
- NoMethodError:
- undefined method `should'' for "rtomayko":String
- # ./spec/link_follower_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 13) GH::LinkFollower works with lazy loading
- Failure/Error: commentator["location"].should be == "San Francisco"
- NoMethodError:
- undefined method `should'' for "San Francisco":String
- # ./spec/link_follower_spec.rb:18:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- Failure/Error: commentator["location"].should be_nil
- NoMethodError:
- undefined method `should'' for nil:NilClass
- # ./spec/link_follower_spec.rb:22:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 15) GH::Instrumentation instruments http
- Failure/Error: @events.size.should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/instrumentation_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 16) GH::Instrumentation instruments []
- Failure/Error: @events.size.should be == 2
- NoMethodError:
- undefined method `should'' for 2:Fixnum
- # ./spec/instrumentation_spec.rb:18:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 17) GH::Instrumentation instruments load
- Failure/Error: @events.size.should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/instrumentation_spec.rb:27:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 18) GH::Error wraps connection
- Failure/Error: exception.should be_an(GH::Error)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/error_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 19) GH::Error exposes the original exception
- Failure/Error: exception.error.should be_a(RuntimeError)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/error_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 20) GH::Error keeps the payload around
- Failure/Error: exception.payload.should be == {''foo'' => ''bar''}
- NoMethodError:
- undefined method `should'' for {"foo"=>"bar"}:Hash
- # ./spec/error_spec.rb:29:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 21) GH::Parallel allows normal requests
- Failure/Error: GH[''users/rkh''][''name''].should be == ''Konstantin Haase''
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/parallel_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 22) GH::Parallel sets in_parallel?
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:16:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 23) GH::Parallel runs requests in parallel
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:51:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/parallel_spec.rb:50:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 25) GH::Parallel works with pagination
- Failure/Error: repos = GH.in_parallel { GH[''users/rkh/repos''] }
- OpenSSL::SSL::SSLError:
- certificate verify failed
- # org/jruby/ext/openssl/SSLSocket.java:180:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:586:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:553:in `do_start''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:542:in `start''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/webmock-1.8.7/lib/webmock/http_lib_adapters/net_http.rb:90:in `request_with_webmock''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:224:in `pipeline_check''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:171:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1181:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyKernel.java:2076:in `send''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./spec/parallel_spec.rb:74:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 26) GH::Parallel returns the block value
- Failure/Error: GH.in_parallel { 42 }.should be == 42
- NoMethodError:
- undefined method `should'' for 42:Fixnum
- # ./spec/parallel_spec.rb:80:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 27) GH::Parallel works two times in a row
- Failure/Error: a = GH.in_parallel { GH[''users/rkh''] }
- Net::HTTP::Pipeline::PipelineError:
- pipeline connections are not supported
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:215:in `pipeline_check''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:171:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1181:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyKernel.java:2076:in `send''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./spec/parallel_spec.rb:87:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 28) GH::Response parses content endpoints correctly
- Failure/Error: GH[''/repos/rkh/gh/contents/README.md'']
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 2006, last used 0.356 seconds ago
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1183:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./spec/response_spec.rb:6:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 29) GH::Response handles UTF-8 properly, even if encoded binary
- Failure/Error: response[''foo''].should be == ''über cool sista året''
- NoMethodError:
- undefined method `should'' for "\303\274ber cool sista \303\245ret":String
- # ./spec/response_spec.rb:13:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 30) GH::Response handles broken encodings properly
- Failure/Error: GH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"
- NoMethodError:
- undefined method `should'' for "\303":String
- # ./spec/response_spec.rb:17:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 31) GH::Remote loads resources from github
- Failure/Error: subject[''foo''].to_s.should be == ''["foo"]''
- NoMethodError:
- undefined method `should'' for "[\"foo\"]":String
- # ./spec/remote_spec.rb:6:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 32) GH::Remote sets headers correctly
- Failure/Error: subject[''foo''].headers[''x-foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/remote_spec.rb:11:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 33) GH::Remote parses the body
- Failure/Error: subject[''foo''][''foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/remote_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 34) GH allows doing requests right from the GH object
- Failure/Error: GH[''users/rkh''][''name''].should be == "Konstantin Haase"
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 2006, last used 0.313 seconds ago
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1183:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./spec/gh_spec.rb:5:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 35) GH allows posting to github
- Failure/Error: response[''hi''].should be == ''ho''
- NoMethodError:
- undefined method `should'' for "ho":String
- # ./spec/gh_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 36) GH with returns the GH instance if no block is given
- Failure/Error: GH.with(:token => "...").should be_a(GH::Wrapper)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/gh_spec.rb:17:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 37) GH with returns the block value if block is given
- Failure/Error: GH.with(:token => "...") { 42 }.should be == 42
- NoMethodError:
- undefined method `should'' for 42:Fixnum
- # ./spec/gh_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 38) GH with propagates options
- Failure/Error: GH.options.should be == {:a => :b, :b => :c}
- NoMethodError:
- undefined method `should'' for {:a=>:b, :b=>:c}:Hash
- # ./spec/gh_spec.rb:27:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/gh_spec.rb:26:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/gh_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 39) GH::Normalizer is set up properly
- Failure/Error: backend.frontend.should be_a(GH::Normalizer)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:20:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 40) GH::Normalizer leaves unknown fields in place
- Failure/Error: normalized[''foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/normalizer_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 41) GH::Normalizer allows normalization with #load
- Failure/Error: result.should_not include("org")
- NoMethodError:
- undefined method `should_not'' for {"organization"=>"foo"}:GH::Response
- # ./spec/normalizer_spec.rb:30:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 42) GH::Normalizer renaming renames org to organization
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 43) GH::Normalizer renaming renames orgs to organizations
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 44) GH::Normalizer renaming renames username to login
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 45) GH::Normalizer renaming renames repo to repository
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 46) GH::Normalizer renaming renames repos to repositories
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 47) GH::Normalizer renaming renames repo_foo to repository_foo
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 48) GH::Normalizer renaming renames repos_foo to repository_foo
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 49) GH::Normalizer renaming renames foo_repo to foo_repository
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 50) GH::Normalizer renaming renames foo_repos to foo_repositories
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 51) GH::Normalizer renaming renames commit to sha if value is a sha
- Failure/Error: normalized.should_not include(''commit'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:63:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 52) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- Failure/Error: normalized.should include(''commit'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:70:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 53) GH::Normalizer renaming renames commit_id to sha if value is a sha
- Failure/Error: normalized.should_not include(''commit_id'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:77:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 54) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- Failure/Error: normalized.should include(''commit_id'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:84:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 55) GH::Normalizer renaming renames comments to comment_count if content is a number
- Failure/Error: normalized.should include(''comment_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:91:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 56) GH::Normalizer renaming renames repositories to repository_count if content is a number
- Failure/Error: normalized.should include(''repository_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:98:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 57) GH::Normalizer renaming renames repos to repository_count if content is a number
- Failure/Error: normalized.should include(''repository_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:105:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 58) GH::Normalizer renaming renames forks to fork_count if content is a number
- Failure/Error: normalized.should include(''fork_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:112:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 59) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- Failure/Error: normalized.should include(''comments'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:119:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 60) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- Failure/Error: normalized.should include(''repositories'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:126:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 61) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- Failure/Error: normalized.should include(''repositories'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:133:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 62) GH::Normalizer renaming does not rename forks to fork_count if content is not a number
- Failure/Error: normalized.should include(''forks'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:140:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 63) GH::Normalizer renaming renames user to owner if appropriate
- Failure/Error: normalized.should_not include(''user'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:147:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 64) GH::Normalizer renaming renames user to author if appropriate
- Failure/Error: normalized.should_not include(''user'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:154:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 65) GH::Normalizer renaming leaves user in place if owner exists
- Failure/Error: normalized.should include(''user'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:161:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 66) GH::Normalizer renaming leaves user in place if author exists
- Failure/Error: normalized.should include(''user'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:169:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 67) GH::Normalizer renaming leaves user in place if no indication what kind of user
- Failure/Error: normalized.should_not include(''owner'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:177:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 68) GH::Normalizer renaming copies author to committer
- Failure/Error: normalized.should include(''author'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:185:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 69) GH::Normalizer renaming copies committer to author
- Failure/Error: normalized.should include(''author'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:192:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 70) GH::Normalizer renaming does not override committer or author if both exist
- Failure/Error: normalized.should include(''author'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:199:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 71) GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
- Failure/Error: normalized[''date''].should be == "1970-01-01T00:20:34Z"
- NoMethodError:
- undefined method `should'' for "1970-01-01T00:20:34Z":String
- # ./spec/normalizer_spec.rb:209:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 72) GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
- Failure/Error: normalized[''date''].should be == "2012-04-12T15:29:51Z"
- NoMethodError:
- undefined method `should'' for "2012-04-12T15:29:51Z":String
- # ./spec/normalizer_spec.rb:214:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 73) GH::Normalizer time changes date to UTC
- Failure/Error: normalized[''date''].should be == "2012-04-12T15:29:51Z"
- NoMethodError:
- undefined method `should'' for "2012-04-12T15:29:51Z":String
- # ./spec/normalizer_spec.rb:219:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 74) GH::Normalizer time changes any time entry to UTC
- Failure/Error: normalized[''foo''].should be == "2012-04-12T15:29:51Z"
- NoMethodError:
- undefined method `should'' for "2012-04-12T15:29:51Z":String
- # ./spec/normalizer_spec.rb:224:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 75) GH::Normalizer time does not choke on empty values
- Failure/Error: normalized[''date''].should be == ""
- NoMethodError:
- undefined method `should'' for "":String
- # ./spec/normalizer_spec.rb:229:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 76) GH::Normalizer links does not normalize config
- Failure/Error: normalized[''config''].should be == {''url'' => ''http://localhost''}
- NoMethodError:
- undefined method `should'' for {"url"=>"http://localhost"}:Hash
- # ./spec/normalizer_spec.rb:236:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 77) GH::Normalizer links identifies _url suffix as link
- Failure/Error: normalized.should_not include(''foo_url'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:254:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 78) GH::Normalizer links identifies blog as link
- Failure/Error: normalized.should_not include(''blog'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:263:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 79) GH::Normalizer links detects avatar links from gravatar_url
- Failure/Error: normalized.should_not include(''gravatar_url'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:272:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 80) GH::Normalizer links detects html urls in url field
- Failure/Error: normalized.should_not include(''url'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:281:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 81) GH::Normalizer links detects self urls in url field
- Failure/Error: normalized.should_not include(''url'')
- NoMethodError:
- undefined method `should_not'' for {"_links"=>{"self"=>{"href"=>"http://api.github.com/foo"}}}:GH::Response
- # ./spec/normalizer_spec.rb:289:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 82) GH::Normalizer links passes through true
- Failure/Error: normalized[''foo''].should be == true
- NoMethodError:
- undefined method `should'' for true:TrueClass
- # ./spec/normalizer_spec.rb:298:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 83) GH::LazyLoader wraps normalizer by default
- Failure/Error: GH::LazyLoader.new.backend.should be_a(GH::Normalizer)
- NoMethodError:
- undefined method `should'' for #>
- # ./spec/lazy_loader_spec.rb:17:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 84) GH::LazyLoader send http requests for missing fields
- Failure/Error: should_request(1) { rkh[''name''].should be == ''Konstantin Haase'' }
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/lazy_loader_spec.rb:21:in `(root)''
- # ./spec/spec_helper.rb:25:in `should_request''
- # ./spec/lazy_loader_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 85) GH::LazyLoader does not send http requests for existing fields
- Failure/Error: should_not_request { rkh[''login''].should be == ''rkh'' }
- NoMethodError:
- undefined method `should'' for "rkh":String
- # ./spec/lazy_loader_spec.rb:25:in `(root)''
- # ./spec/spec_helper.rb:25:in `should_request''
- # ./spec/spec_helper.rb:30:in `should_not_request''
- # ./spec/lazy_loader_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 86) GH::LazyLoader allows traversing into nested structures
- Failure/Error: should_request(1) { sven[''friends''][0][''name''].should be == ''Konstantin Haase'' }
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/lazy_loader_spec.rb:34:in `(root)''
- # ./spec/spec_helper.rb:25:in `should_request''
- # ./spec/lazy_loader_spec.rb:34:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 87) GH::LazyLoader does not request twice if the field does not exist upstream
- Failure/Error: should_request(1) { 2.times { rkh[''foo''] } }
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/spec_helper.rb:26:in `should_request''
- # ./spec/lazy_loader_spec.rb:38:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 88) GH::LazyLoader does not skip an already existing default proc
- Failure/Error: rkh[''foo''].should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/lazy_loader_spec.rb:47:in `(root)''
- # ./spec/spec_helper.rb:25:in `should_request''
- # ./spec/spec_helper.rb:30:in `should_not_request''
- # ./spec/lazy_loader_spec.rb:46:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 89) GH::LazyLoader is still loading missing fields, even if a default proc is set
- Failure/Error: rkh[''foo''].should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/lazy_loader_spec.rb:58:in `(root)''
- # ./spec/spec_helper.rb:25:in `should_request''
- # ./spec/lazy_loader_spec.rb:57:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
-Finished in 19.33 seconds
-102 examples, 89 failures, 9 pending
-
-Failed examples:
-
-rspec ./spec/cache_spec.rb:6 # GH::Cache send HTTP requests for uncached resources
-rspec ./spec/cache_spec.rb:11 # GH::Cache uses the cache for subsequent requests
-rspec ./spec/cache_spec.rb:18 # GH::Cache cache is resettable
-rspec ./spec/pagination_spec.rb:6 # GH::Pagination paginates
-rspec ./spec/pagination_spec.rb:11 # GH::Pagination paginates with GH::Normalizer
-rspec ./spec/pagination_spec.rb:17 # GH::Pagination paginates on default stack
-rspec ./spec/pagination_spec.rb:22 # GH::Pagination gives random access
-rspec ./spec/pagination_spec.rb:29 # GH::Pagination does not wrap hash responses
-rspec ./spec/merge_commit_spec.rb:14 # GH::MergeCommit adds merge commits
-rspec ./spec/merge_commit_spec.rb:18 # GH::MergeCommit adds base commits
-rspec ./spec/merge_commit_spec.rb:22 # GH::MergeCommit adds head commits
-rspec ./spec/link_follower_spec.rb:11 # GH::LinkFollower follows links
-rspec ./spec/link_follower_spec.rb:15 # GH::LinkFollower works with lazy loading
-rspec ./spec/link_follower_spec.rb:21 # GH::LinkFollower does not raise exceptions for unknown fields
-rspec ./spec/instrumentation_spec.rb:10 # GH::Instrumentation instruments http
-rspec ./spec/instrumentation_spec.rb:16 # GH::Instrumentation instruments []
-rspec ./spec/instrumentation_spec.rb:25 # GH::Instrumentation instruments load
-rspec ./spec/error_spec.rb:20 # GH::Error wraps connection
-rspec ./spec/error_spec.rb:24 # GH::Error exposes the original exception
-rspec ./spec/error_spec.rb:28 # GH::Error keeps the payload around
-rspec ./spec/parallel_spec.rb:11 # GH::Parallel allows normal requests
-rspec ./spec/parallel_spec.rb:15 # GH::Parallel sets in_parallel?
-rspec ./spec/parallel_spec.rb:21 # GH::Parallel runs requests in parallel
-rspec ./spec/parallel_spec.rb:47 # GH::Parallel runs requests right away if parallelize is set to false
-rspec ./spec/parallel_spec.rb:71 # GH::Parallel works with pagination
-rspec ./spec/parallel_spec.rb:79 # GH::Parallel returns the block value
-rspec ./spec/parallel_spec.rb:83 # GH::Parallel works two times in a row
-rspec ./spec/response_spec.rb:5 # GH::Response parses content endpoints correctly
-rspec ./spec/response_spec.rb:9 # GH::Response handles UTF-8 properly, even if encoded binary
-rspec ./spec/response_spec.rb:16 # GH::Response handles broken encodings properly
-rspec ./spec/remote_spec.rb:4 # GH::Remote loads resources from github
-rspec ./spec/remote_spec.rb:9 # GH::Remote sets headers correctly
-rspec ./spec/remote_spec.rb:19 # GH::Remote parses the body
-rspec ./spec/gh_spec.rb:4 # GH allows doing requests right from the GH object
-rspec ./spec/gh_spec.rb:8 # GH allows posting to github
-rspec ./spec/gh_spec.rb:16 # GH with returns the GH instance if no block is given
-rspec ./spec/gh_spec.rb:20 # GH with returns the block value if block is given
-rspec ./spec/gh_spec.rb:24 # GH with propagates options
-rspec ./spec/normalizer_spec.rb:19 # GH::Normalizer is set up properly
-rspec ./spec/normalizer_spec.rb:23 # GH::Normalizer leaves unknown fields in place
-rspec ./spec/normalizer_spec.rb:28 # GH::Normalizer allows normalization with #load
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames org to organization
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames orgs to organizations
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames username to login
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames repo to repository
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames repos to repositories
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames repo_foo to repository_foo
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames repos_foo to repository_foo
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames foo_repo to foo_repository
-rspec ./spec/normalizer_spec.rb:43 # GH::Normalizer renaming renames foo_repos to foo_repositories
-rspec ./spec/normalizer_spec.rb:61 # GH::Normalizer renaming renames commit to sha if value is a sha
-rspec ./spec/normalizer_spec.rb:68 # GH::Normalizer renaming does not rename commit to sha if value is not a sha
-rspec ./spec/normalizer_spec.rb:75 # GH::Normalizer renaming renames commit_id to sha if value is a sha
-rspec ./spec/normalizer_spec.rb:82 # GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
-rspec ./spec/normalizer_spec.rb:89 # GH::Normalizer renaming renames comments to comment_count if content is a number
-rspec ./spec/normalizer_spec.rb:96 # GH::Normalizer renaming renames repositories to repository_count if content is a number
-rspec ./spec/normalizer_spec.rb:103 # GH::Normalizer renaming renames repos to repository_count if content is a number
-rspec ./spec/normalizer_spec.rb:110 # GH::Normalizer renaming renames forks to fork_count if content is a number
-rspec ./spec/normalizer_spec.rb:117 # GH::Normalizer renaming does not rename comments to comment_count if content is not a number
-rspec ./spec/normalizer_spec.rb:124 # GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
-rspec ./spec/normalizer_spec.rb:131 # GH::Normalizer renaming does not rename repos to repository_count if content is not a number
-rspec ./spec/normalizer_spec.rb:138 # GH::Normalizer renaming does not rename forks to fork_count if content is not a number
-rspec ./spec/normalizer_spec.rb:145 # GH::Normalizer renaming renames user to owner if appropriate
-rspec ./spec/normalizer_spec.rb:152 # GH::Normalizer renaming renames user to author if appropriate
-rspec ./spec/normalizer_spec.rb:159 # GH::Normalizer renaming leaves user in place if owner exists
-rspec ./spec/normalizer_spec.rb:167 # GH::Normalizer renaming leaves user in place if author exists
-rspec ./spec/normalizer_spec.rb:175 # GH::Normalizer renaming leaves user in place if no indication what kind of user
-rspec ./spec/normalizer_spec.rb:183 # GH::Normalizer renaming copies author to committer
-rspec ./spec/normalizer_spec.rb:190 # GH::Normalizer renaming copies committer to author
-rspec ./spec/normalizer_spec.rb:197 # GH::Normalizer renaming does not override committer or author if both exist
-rspec ./spec/normalizer_spec.rb:207 # GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
-rspec ./spec/normalizer_spec.rb:212 # GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
-rspec ./spec/normalizer_spec.rb:217 # GH::Normalizer time changes date to UTC
-rspec ./spec/normalizer_spec.rb:222 # GH::Normalizer time changes any time entry to UTC
-rspec ./spec/normalizer_spec.rb:227 # GH::Normalizer time does not choke on empty values
-rspec ./spec/normalizer_spec.rb:234 # GH::Normalizer links does not normalize config
-rspec ./spec/normalizer_spec.rb:252 # GH::Normalizer links identifies _url suffix as link
-rspec ./spec/normalizer_spec.rb:261 # GH::Normalizer links identifies blog as link
-rspec ./spec/normalizer_spec.rb:270 # GH::Normalizer links detects avatar links from gravatar_url
-rspec ./spec/normalizer_spec.rb:279 # GH::Normalizer links detects html urls in url field
-rspec ./spec/normalizer_spec.rb:287 # GH::Normalizer links detects self urls in url field
-rspec ./spec/normalizer_spec.rb:296 # GH::Normalizer links passes through true
-rspec ./spec/lazy_loader_spec.rb:16 # GH::LazyLoader wraps normalizer by default
-rspec ./spec/lazy_loader_spec.rb:20 # GH::LazyLoader send http requests for missing fields
-rspec ./spec/lazy_loader_spec.rb:24 # GH::LazyLoader does not send http requests for existing fields
-rspec ./spec/lazy_loader_spec.rb:28 # GH::LazyLoader allows traversing into nested structures
-rspec ./spec/lazy_loader_spec.rb:37 # GH::LazyLoader does not request twice if the field does not exist upstream
-rspec ./spec/lazy_loader_spec.rb:41 # GH::LazyLoader does not skip an already existing default proc
-rspec ./spec/lazy_loader_spec.rb:52 # GH::LazyLoader is still loading missing fields, even if a default proc is set
-org.jruby.exceptions.RaiseException: (SystemExit) exit
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-
-Done. Build script exited with: 1
-', 1836260, 'Artifact::Log', '2012-07-11 14:17:53.893000', '2012-07-11 14:17:55.728000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521784, 'Using worker: ruby3.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=jruby-19mode
-$ rvm use jruby-19mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-07-11 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Using jruby-openssl (0.7.7)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
- send HTTP requests for uncached resources
- uses the cache for subsequent requests
- cache is resettable
-
-GH::Pagination
- paginates
- paginates with GH::Normalizer
- paginates on default stack
- gives random access
- does not wrap hash responses
-
-GH::MergeCommit
- adds merge commits
- adds base commits
- adds head commits
- allows lazy loading on the commit
-
-GH::LinkFollower
- follows links
- works with lazy loading
- does not raise exceptions for unknown fields
-
-GH::Instrumentation
- instruments http
- instruments []
- instruments load
-
-GH::Error
- wraps connection
- exposes the original exception
- keeps the payload around
-
-GH::Parallel
- allows normal requests
- sets in_parallel?
- runs requests in parallel (FAILED - 1)
- runs requests right away if parallelize is set to false
- works with pagination (FAILED - 2)
- returns the block value
- works two times in a row (FAILED - 3)
-
-GH::Response
- parses content endpoints correctly (FAILED - 4)
- handles UTF-8 properly, even if encoded binary
- handles broken encodings properly (FAILED - 5)
-
-GH::Remote
- loads resources from github
- sets headers correctly
- raises an exception for missing resources
- parses the body
- sends http calls through the frontend
- sends request calls through the frontend
-
-GH
- allows doing requests right from the GH object (FAILED - 6)
- allows posting to github
- with
- returns the GH instance if no block is given
- returns the block value if block is given
- propagates options
-
-GH::Wrapper
- is specified (PENDING: Not yet implemented)
-
-GH::Normalizer
- is set up properly
- leaves unknown fields in place
- allows normalization with #load
- works for deeply nested fields (PENDING: Not yet implemented)
- works for lists (PENDING: Not yet implemented)
- date fields
- generates date from timestamp (PENDING: Not yet implemented)
- renaming
- renames org to organization
- renames orgs to organizations
- renames username to login
- renames repo to repository
- renames repos to repositories
- renames repo_foo to repository_foo
- renames repos_foo to repository_foo
- renames foo_repo to foo_repository
- renames foo_repos to foo_repositories
- renames commit to sha if value is a sha
- does not rename commit to sha if value is not a sha
- renames commit_id to sha if value is a sha
- does not rename commit_id to sha if value is not a sha
- renames comments to comment_count if content is a number
- renames repositories to repository_count if content is a number
- renames repos to repository_count if content is a number
- renames forks to fork_count if content is a number
- does not rename comments to comment_count if content is not a number
- does not rename repositories to repository_count if content is not a number
- does not rename repos to repository_count if content is not a number
- does not rename forks to fork_count if content is not a number
- renames user to owner if appropriate
- renames user to author if appropriate
- leaves user in place if owner exists
- leaves user in place if author exists
- leaves user in place if no indication what kind of user
- copies author to committer
- copies committer to author
- does not override committer or author if both exist
- time
- transforms timestamps stored in "timestamp" to a date in "date"
- transforms dates stored in "timestamp" to a date in "date"
- changes date to UTC
- changes any time entry to UTC
- does not choke on empty values
- links
- does not normalize config
- generates link entries from link headers (PENDING: No reason given)
- generates link headers from link entries (PENDING: Not yet implemented)
- does not discard existing link entires (PENDING: Not yet implemented)
- does not discard existing link headers (PENDING: Not yet implemented)
- identifies _url suffix as link
- identifies blog as link
- detects avatar links from gravatar_url
- detects html urls in url field
- detects self urls in url field
- passes through true
-
-GH::Stack
- is specified (PENDING: Not yet implemented)
-
-GH::LazyLoader
- wraps normalizer by default
- send http requests for missing fields
- does not send http requests for existing fields
- allows traversing into nested structures
- does not request twice if the field does not exist upstream
- does not skip an already existing default proc
- is still loading missing fields, even if a default proc is set
-
-Pending:
- GH::Wrapper is specified
- # Not yet implemented
- # ./spec/wrapper_spec.rb:4
- GH::Normalizer works for deeply nested fields
- # Not yet implemented
- # ./spec/normalizer_spec.rb:34
- GH::Normalizer works for lists
- # Not yet implemented
- # ./spec/normalizer_spec.rb:35
- GH::Normalizer date fields generates date from timestamp
- # Not yet implemented
- # ./spec/normalizer_spec.rb:38
- GH::Normalizer links generates link entries from link headers
- # No reason given
- # ./spec/normalizer_spec.rb:239
- GH::Normalizer links generates link headers from link entries
- # Not yet implemented
- # ./spec/normalizer_spec.rb:248
- GH::Normalizer links does not discard existing link entires
- # Not yet implemented
- # ./spec/normalizer_spec.rb:249
- GH::Normalizer links does not discard existing link headers
- # Not yet implemented
- # ./spec/normalizer_spec.rb:250
- GH::Stack is specified
- # Not yet implemented
- # ./spec/stack_spec.rb:4
-
-Failures:
-
- 1) GH::Parallel runs requests in parallel
- Failure/Error: GH.in_parallel do
- OpenSSL::SSL::SSLError:
- certificate verify failed
- # org/jruby/ext/openssl/SSLSocket.java:180:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/lib/ruby/1.9/net/http.rb:678:in `connect''
- # org/jruby/ext/Timeout.java:79:in `timeout''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/lib/ruby/1.9/net/http.rb:678:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/lib/ruby/1.9/net/http.rb:1205:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1186:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # ./spec/parallel_spec.rb:28:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 2) GH::Parallel works with pagination
- Failure/Error: repos = GH.in_parallel { GH[''users/rkh/repos''] }
- NoMethodError:
- undefined method `closed?'' for nil:NilClass
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/lib/ruby/1.9/net/http.rb:1205:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1186:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # ./spec/parallel_spec.rb:74:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 3) GH::Parallel works two times in a row
- Failure/Error: a = GH.in_parallel { GH[''users/rkh''] }
- NoMethodError:
- undefined method `closed?'' for nil:NilClass
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/lib/ruby/1.9/net/http.rb:1205:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1186:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # org/jruby/RubyBasicObject.java:1698:in `__send__''
- # ./spec/parallel_spec.rb:87:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 4) GH::Response parses content endpoints correctly
- Failure/Error: GH[''/repos/rkh/gh/contents/README.md'']
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 8682, last used 0.313 seconds ago
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1197:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./spec/response_spec.rb:6:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 5) GH::Response handles broken encodings properly
- Failure/Error: GH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"
- ArgumentError:
- invalid byte sequence in UTF-8
- # org/jruby/RubyRegexp.java:1505:in `match''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json/vendor/okjson.rb:245:in `strtok''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json/vendor/okjson.rb:213:in `tok''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json/vendor/okjson.rb:176:in `lex''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json/vendor/okjson.rb:44:in `decode''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json/adapters/ok_json.rb:10:in `load''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/multi_json-1.3.6/lib/multi_json.rb:93:in `load''
- # ./lib/gh/response.rb:35:in `initialize''
- # ./spec/response_spec.rb:17:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 6) GH allows doing requests right from the GH object
- Failure/Error: GH[''users/rkh''][''name''].should be == "Konstantin Haase"
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 8682, last used 0.313 seconds ago
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1197:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # org/jruby/RubyBasicObject.java:1725:in `__send__''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyBasicObject.java:1704:in `__send__''
- # ./spec/gh_spec.rb:5:in `(root)''
- # org/jruby/RubyBasicObject.java:1730:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2339:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
-Finished in 17.12 seconds
-102 examples, 6 failures, 9 pending
-
-Failed examples:
-
-rspec ./spec/parallel_spec.rb:21 # GH::Parallel runs requests in parallel
-rspec ./spec/parallel_spec.rb:71 # GH::Parallel works wiorg.jruby.exceptions.RaiseException: (SystemExit) exit
-th pagination
-rspec ./spec/parallel_spec.rb:83 # GH::Parallel works two times in a row
-rspec ./spec/response_spec.rb:5 # GH::Response parses content endpoints correctly
-rspec ./spec/response_spec.rb:16 # GH::Response handles broken encodings properly
-rspec ./spec/gh_spec.rb:4 # GH allows doing requests right from the GH object
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2-d19/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836261, 'Artifact::Log', '2012-07-11 14:17:53.927000', '2012-07-11 14:17:56.553000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521785, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-1
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=rbx-18mode
-$ rvm use rbx-18mode
-[32mUsing /home/vagrant/.rvm/gems/rbx-head(B[m
-$ ruby --version
-rubinius 2.0.0dev (1.8.7 73a338b2 yyyy-mm-dd JI) [i686-pc-linux-gnu]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/rbx-head/bin/rbx -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
-[31m send HTTP requests for uncached resources (FAILED - 1)[0m
-[31m uses the cache for subsequent requests (FAILED - 2)[0m
-[31m cache is resettable (FAILED - 3)[0m
-
-GH::Pagination
-[31m paginates (FAILED - 4)[0m
-[31m paginates with GH::Normalizer (FAILED - 5)[0m
-[31m paginates on default stack (FAILED - 6)[0m
-[31m gives random access (FAILED - 7)[0m
-[31m does not wrap hash responses (FAILED - 8)[0m
-
-GH::MergeCommit
-[31m adds merge commits (FAILED - 9)[0m
-[31m adds base commits (FAILED - 10)[0m
-[31m adds head commits (FAILED - 11)[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[31m follows links (FAILED - 12)[0m
-[31m works with lazy loading (FAILED - 13)[0m
-[31m does not raise exceptions for unknown fields (FAILED - 14)[0m
-
-GH::Instrumentation
-[31m instruments http (FAILED - 15)[0m
-[31m instruments [] (FAILED - 16)[0m
-[31m instruments load (FAILED - 17)[0m
-
-GH::Error
-[31m wraps connection (FAILED - 18)[0m
-[31m exposes the original exception (FAILED - 19)[0m
-[31m keeps the payload around (FAILED - 20)[0m
-
-GH::Parallel
-[31m allows normal requests (FAILED - 21)[0m
-[31m sets in_parallel? (FAILED - 22)[0m
-[31m runs requests in parallel (FAILED - 23)[0m
-[31m runs requests right away if parallelize is set to false (FAILED - 24)[0m
-[31m works with pagination (FAILED - 25)[0m
-[31m returns the block value (FAILED - 26)[0m
-[31m works two times in a row (FAILED - 27)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[31m handles UTF-8 properly, even if encoded binary (FAILED - 28)[0m
-[31m handles broken encodings properly (FAILED - 29)[0m
-
-GH::Remote
-[31m loads resources from github (FAILED - 30)[0m
-[31m sets headers correctly (FAILED - 31)[0m
-[32m raises an exception for missing resources[0m
-[31m parses the body (FAILED - 32)[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[31m allows doing requests right from the GH object (FAILED - 33)[0m
-[31m allows posting to github (FAILED - 34)[0m
- with
-[31m returns the GH instance if no block is given (FAILED - 35)[0m
-[31m returns the block value if block is given (FAILED - 36)[0m
-[31m propagates options (FAILED - 37)[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[31m is set up properly (FAILED - 38)[0m
-[31m leaves unknown fields in place (FAILED - 39)[0m
-[31m allows normalization with #load (FAILED - 40)[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[31m renames org to organization (FAILED - 41)[0m
-[31m renames orgs to organizations (FAILED - 42)[0m
-[31m renames username to login (FAILED - 43)[0m
-[31m renames repo to repository (FAILED - 44)[0m
-[31m renames repos to repositories (FAILED - 45)[0m
-[31m renames repo_foo to repository_foo (FAILED - 46)[0m
-[31m renames repos_foo to repository_foo (FAILED - 47)[0m
-[31m renames foo_repo to foo_repository (FAILED - 48)[0m
-[31m renames foo_repos to foo_repositories (FAILED - 49)[0m
-[31m renames commit to sha if value is a sha (FAILED - 50)[0m
-[31m does not rename commit to sha if value is not a sha (FAILED - 51)[0m
-[31m renames commit_id to sha if value is a sha (FAILED - 52)[0m
-[31m does not rename commit_id to sha if value is not a sha (FAILED - 53)[0m
-[31m renames comments to comment_count if content is a number (FAILED - 54)[0m
-[31m renames repositories to repository_count if content is a number (FAILED - 55)[0m
-[31m renames repos to repository_count if content is a number (FAILED - 56)[0m
-[31m renames forks to fork_count if content is a number (FAILED - 57)[0m
-[31m does not rename comments to comment_count if content is not a number (FAILED - 58)[0m
-[31m does not rename repositories to repository_count if content is not a number (FAILED - 59)[0m
-[31m does not rename repos to repository_count if content is not a number (FAILED - 60)[0m
-[31m does not rename forks to fork_count if content is not a number (FAILED - 61)[0m
-[31m renames user to owner if appropriate (FAILED - 62)[0m
-[31m renames user to author if appropriate (FAILED - 63)[0m
-[31m leaves user in place if owner exists (FAILED - 64)[0m
-[31m leaves user in place if author exists (FAILED - 65)[0m
-[31m leaves user in place if no indication what kind of user (FAILED - 66)[0m
-[31m copies author to committer (FAILED - 67)[0m
-[31m copies committer to author (FAILED - 68)[0m
-[31m does not override committer or author if both exist (FAILED - 69)[0m
- time
-[31m transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 70)[0m
-[31m transforms dates stored in "timestamp" to a date in "date" (FAILED - 71)[0m
-[31m changes date to UTC (FAILED - 72)[0m
-[31m changes any time entry to UTC (FAILED - 73)[0m
-[31m does not choke on empty values (FAILED - 74)[0m
- links
-[31m does not normalize config (FAILED - 75)[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[31m identifies _url suffix as link (FAILED - 76)[0m
-[31m identifies blog as link (FAILED - 77)[0m
-[31m detects avatar links from gravatar_url (FAILED - 78)[0m
-[31m detects html urls in url field (FAILED - 79)[0m
-[31m detects self urls in url field (FAILED - 80)[0m
-[31m passes through true (FAILED - 81)[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[31m wraps normalizer by default (FAILED - 82)[0m
-[31m send http requests for missing fields (FAILED - 83)[0m
-[31m does not send http requests for existing fields (FAILED - 84)[0m
-[31m allows traversing into nested structures (FAILED - 85)[0m
-[31m does not request twice if the field does not exist upstream (FAILED - 86)[0m
-[31m does not skip an already existing default proc (FAILED - 87)[0m
-[31m is still loading missing fields, even if a default proc is set (FAILED - 88)[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/cache_spec.rb:7:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 2) GH::Cache uses the cache for subsequent requests
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/cache_spec.rb:12:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 3) GH::Cache cache is resettable
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/cache_spec.rb:19:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 4) GH::Pagination paginates
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 125:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/pagination_spec.rb:8:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 5) GH::Pagination paginates with GH::Normalizer
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 125:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/pagination_spec.rb:14:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 6) GH::Pagination paginates on default stack
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 125:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/pagination_spec.rb:19:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 7) GH::Pagination gives random access
- [31mFailure/Error:[0m [31mdata[index].should be == value[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of Hash.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/pagination_spec.rb:25:in `__script__''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index_with_optional_args_and_block''[0m
-[36m # kernel/bootstrap/array.rb:68:in `each''[0m
-[36m # ./lib/gh/pagination.rb:12:in `each''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index (each_with_index_with_optional_args_and_block)''[0m
-[36m # ./spec/pagination_spec.rb:24:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 8) GH::Pagination does not wrap hash responses
- [31mFailure/Error:[0m [31msubject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/pagination_spec.rb:30:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 9) GH::MergeCommit adds merge commits
- [31mFailure/Error:[0m [31mpull_request[''merge_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/merge_commit_spec.rb:15:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 10) GH::MergeCommit adds base commits
- [31mFailure/Error:[0m [31mpull_request[''base_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/merge_commit_spec.rb:19:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 11) GH::MergeCommit adds head commits
- [31mFailure/Error:[0m [31mpull_request[''head_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/merge_commit_spec.rb:23:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 12) GH::LinkFollower follows links
- [31mFailure/Error:[0m [31mcommentator[''login''].should be == ''rtomayko''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/link_follower_spec.rb:12:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 13) GH::LinkFollower works with lazy loading
- [31mFailure/Error:[0m [31mcommentator["location"].should be == "San Francisco"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/link_follower_spec.rb:18:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- [31mFailure/Error:[0m [31mcommentator["location"].should be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on nil:NilClass.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/link_follower_spec.rb:22:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 15) GH::Instrumentation instruments http
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 1:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/instrumentation_spec.rb:12:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 16) GH::Instrumentation instruments []
- [31mFailure/Error:[0m [31m@events.size.should be == 2[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 2:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/instrumentation_spec.rb:18:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 17) GH::Instrumentation instruments load
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 1:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/instrumentation_spec.rb:27:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 18) GH::Error wraps connection
- [31mFailure/Error:[0m [31mexception.should be_an(GH::Error)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Error.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/error_spec.rb:21:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 19) GH::Error exposes the original exception
- [31mFailure/Error:[0m [31mexception.error.should be_a(RuntimeError)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of RuntimeError.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/error_spec.rb:25:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 20) GH::Error keeps the payload around
- [31mFailure/Error:[0m [31mexception.payload.should be == {''foo'' => ''bar''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of Hash.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/error_spec.rb:29:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 21) GH::Parallel allows normal requests
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == ''Konstantin Haase''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:12:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 22) GH::Parallel sets in_parallel?
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on GH (Module)[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:16:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 23) GH::Parallel runs requests in parallel
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on GH (Module)[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:25:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on GH (Module)[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:51:in `__script__''[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/parallel_spec.rb:50:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 25) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 128:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:76:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 26) GH::Parallel returns the block value
- [31mFailure/Error:[0m [31mGH.in_parallel { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 42:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/parallel_spec.rb:80:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 27) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' on nil:NilClass.[0m
-[36m # kernel/delta/kernel.rb:81:in `closed? (method_missing)''[0m
-[36m # /home/vagrant/.rvm/rubies/rbx-head/lib/18/net/http.rb:1063:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # kernel/common/hash18.rb:172:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 28) GH::Response handles UTF-8 properly, even if encoded binary
- [31mFailure/Error:[0m [31mresponse[''foo''].should be == ''über cool sista året''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/response_spec.rb:13:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 29) GH::Response handles broken encodings properly
- [31mFailure/Error:[0m [31mGH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/response_spec.rb:17:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 30) GH::Remote loads resources from github
- [31mFailure/Error:[0m [31msubject[''foo''].to_s.should be == ''["foo"]''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/remote_spec.rb:6:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 31) GH::Remote sets headers correctly
- [31mFailure/Error:[0m [31msubject[''foo''].headers[''x-foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/remote_spec.rb:11:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 32) GH::Remote parses the body
- [31mFailure/Error:[0m [31msubject[''foo''][''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/remote_spec.rb:21:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 33) GH allows doing requests right from the GH object
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/gh_spec.rb:5:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 34) GH allows posting to github
- [31mFailure/Error:[0m [31mresponse[''hi''].should be == ''ho''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/gh_spec.rb:12:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 35) GH with returns the GH instance if no block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...").should be_a(GH::Wrapper)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Instrumentation.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/gh_spec.rb:17:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 36) GH with returns the block value if block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...") { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 42:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/gh_spec.rb:21:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 37) GH with propagates options
- [31mFailure/Error:[0m [31mGH.options.should be == {:a => :b, :b => :c}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of Hash.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/gh_spec.rb:27:in `__script__''[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:26:in `__script__''[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:25:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 38) GH::Normalizer is set up properly
- [31mFailure/Error:[0m [31mbackend.frontend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Normalizer.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:20:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 39) GH::Normalizer leaves unknown fields in place
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:25:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 40) GH::Normalizer allows normalization with #load
- [31mFailure/Error:[0m [31mresult.should_not include("org")[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:30:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 41) GH::Normalizer renaming renames org to organization
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 42) GH::Normalizer renaming renames orgs to organizations
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 43) GH::Normalizer renaming renames username to login
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 44) GH::Normalizer renaming renames repo to repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 45) GH::Normalizer renaming renames repos to repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 46) GH::Normalizer renaming renames repo_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 47) GH::Normalizer renaming renames repos_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 48) GH::Normalizer renaming renames foo_repo to foo_repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 49) GH::Normalizer renaming renames foo_repos to foo_repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 50) GH::Normalizer renaming renames commit to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:63:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 51) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:70:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 52) GH::Normalizer renaming renames commit_id to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:77:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 53) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:84:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 54) GH::Normalizer renaming renames comments to comment_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comment_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:91:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 55) GH::Normalizer renaming renames repositories to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:98:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 56) GH::Normalizer renaming renames repos to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:105:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 57) GH::Normalizer renaming renames forks to fork_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''fork_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:112:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 58) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comments'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:119:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 59) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:126:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 60) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:133:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 61) GH::Normalizer renaming does not rename forks to fork_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''forks'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:140:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 62) GH::Normalizer renaming renames user to owner if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:147:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 63) GH::Normalizer renaming renames user to author if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:154:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 64) GH::Normalizer renaming leaves user in place if owner exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:161:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 65) GH::Normalizer renaming leaves user in place if author exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:169:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 66) GH::Normalizer renaming leaves user in place if no indication what kind of user
- [31mFailure/Error:[0m [31mnormalized.should_not include(''owner'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:177:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 67) GH::Normalizer renaming copies author to committer
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:185:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 68) GH::Normalizer renaming copies committer to author
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:192:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 69) GH::Normalizer renaming does not override committer or author if both exist
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:199:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 70) GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "1970-01-01T00:20:34Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:209:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 71) GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:214:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 72) GH::Normalizer time changes date to UTC
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:219:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 73) GH::Normalizer time changes any time entry to UTC
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:224:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 74) GH::Normalizer time does not choke on empty values
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == ""[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:229:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 75) GH::Normalizer links does not normalize config
- [31mFailure/Error:[0m [31mnormalized[''config''].should be == {''url'' => ''http://localhost''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of Hash.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:236:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 76) GH::Normalizer links identifies _url suffix as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''foo_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:254:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 77) GH::Normalizer links identifies blog as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''blog'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:263:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 78) GH::Normalizer links detects avatar links from gravatar_url
- [31mFailure/Error:[0m [31mnormalized.should_not include(''gravatar_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:272:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 79) GH::Normalizer links detects html urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:281:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 80) GH::Normalizer links detects self urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' on an instance of GH::Response.[0m
-[36m # kernel/delta/kernel.rb:81:in `should_not (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:289:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 81) GH::Normalizer links passes through true
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == true[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on true:TrueClass.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/normalizer_spec.rb:298:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 82) GH::LazyLoader wraps normalizer by default
- [31mFailure/Error:[0m [31mGH::LazyLoader.new.backend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of GH::Normalizer.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:17:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 83) GH::LazyLoader send http requests for missing fields
- [31mFailure/Error:[0m [31mshould_request(1) { rkh[''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:21:in `__script__''[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:21:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 84) GH::LazyLoader does not send http requests for existing fields
- [31mFailure/Error:[0m [31mshould_not_request { rkh[''login''].should be == ''rkh'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:25:in `__script__''[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:25:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 85) GH::LazyLoader allows traversing into nested structures
- [31mFailure/Error:[0m [31mshould_request(1) { sven[''friends''][0][''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on an instance of String.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:34:in `__script__''[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:34:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 86) GH::LazyLoader does not request twice if the field does not exist upstream
- [31mFailure/Error:[0m [31mshould_request(1) { 2.times { rkh[''foo''] } }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 1:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/spec_helper.rb:26:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:38:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 87) GH::LazyLoader does not skip an already existing default proc
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 1:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:47:in `__script__''[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:46:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 88) GH::LazyLoader is still loading missing fields, even if a default proc is set
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' on 1:Fixnum.[0m
-[36m # kernel/delta/kernel.rb:81:in `should (method_missing)''[0m
-[36m # ./spec/lazy_loader_spec.rb:58:in `__script__''[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:57:in `__script__''[0m
-[36m # kernel/common/eval18.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array18.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
-Finished in 59.21 seconds
-[31m102 examples, 88 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/cache_spec.rb:6[0m [36m# GH::Cache send HTTP requests for uncached resources[0m
-[31mrspec ./spec/cache_spec.rb:11[0m [36m# GH::Cache uses the cache for subsequent requests[0m
-[31mrspec ./spec/cache_spec.rb:18[0m [36m# GH::Cache cache is resettable[0m
-[31mrspec ./spec/pagination_spec.rb:6[0m [36m# GH::Pagination paginates[0m
-[31mrspec ./spec/pagination_spec.rb:11[0m [36m# GH::Pagination paginates with GH::Normalizer[0m
-[31mrspec ./spec/pagination_spec.rb:17[0m [36m# GH::Pagination paginates on default stack[0m
-[31mrspec ./spec/pagination_spec.rb:22[0m [36m# GH::Pagination gives random access[0m
-[31mrspec ./spec/pagination_spec.rb:29[0m [36m# GH::Pagination does not wrap hash responses[0m
-[31mrspec ./spec/merge_commit_spec.rb:14[0m [36m# GH::MergeCommit adds merge commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:18[0m [36m# GH::MergeCommit adds base commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:22[0m [36m# GH::MergeCommit adds head commits[0m
-[31mrspec ./spec/link_follower_spec.rb:11[0m [36m# GH::LinkFollower follows links[0m
-[31mrspec ./spec/link_follower_spec.rb:15[0m [36m# GH::LinkFollower works with lazy loading[0m
-[31mrspec ./spec/link_follower_spec.rb:21[0m [36m# GH::LinkFollower does not raise exceptions for unknown fields[0m
-[31mrspec ./spec/instrumentation_spec.rb:10[0m [36m# GH::Instrumentation instruments http[0m
-[31mrspec ./spec/instrumentation_spec.rb:16[0m [36m# GH::Instrumentation instruments [][0m
-[31mrspec ./spec/instrumentation_spec.rb:25[0m [36m# GH::Instrumentation instruments load[0m
-[31mrspec ./spec/error_spec.rb:20[0m [36m# GH::Error wraps connection[0m
-[31mrspec ./spec/error_spec.rb:24[0m [36m# GH::Error exposes the original exception[0m
-[31mrspec ./spec/error_spec.rb:28[0m [36m# GH::Error keeps the payload around[0m
-[31mrspec ./spec/parallel_spec.rb:11[0m [36m# GH::Parallel allows normal requests[0m
-[31mrspec ./spec/parallel_spec.rb:15[0m [36m# GH::Parallel sets in_parallel?[0m
-[31mrspec ./spec/parallel_spec.rb:21[0m [36m# GH::Parallel runs requests in parallel[0m
-[31mrspec ./spec/parallel_spec.rb:47[0m [36m# GH::Parallel runs requests right away if parallelize is set to false[0m
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:79[0m [36m# GH::Parallel returns the block value[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-[31mrspec ./spec/response_spec.rb:9[0m [36m# GH::Response handles UTF-8 properly, even if encoded binary[0m
-[31mrspec ./spec/response_spec.rb:16[0m [36m# GH::Response handles broken encodings properly[0m
-[31mrspec ./spec/remote_spec.rb:4[0m [36m# GH::Remote loads resources from github[0m
-[31mrspec ./spec/remote_spec.rb:9[0m [36m# GH::Remote sets headers correctly[0m
-[31mrspec ./spec/remote_spec.rb:19[0m [36m# GH::Remote parses the body[0m
-[31mrspec ./spec/gh_spec.rb:4[0m [36m# GH allows doing requests right from the GH object[0m
-[31mrspec ./spec/gh_spec.rb:8[0m [36m# GH allows posting to github[0m
-[31mrspec ./spec/gh_spec.rb:16[0m [36m# GH with returns the GH instance if no block is given[0m
-[31mrspec ./spec/gh_spec.rb:20[0m [36m# GH with returns the block value if block is given[0m
-[31mrspec ./spec/gh_spec.rb:24[0m [36m# GH with propagates options[0m
-[31mrspec ./spec/normalizer_spec.rb:19[0m [36m# GH::Normalizer is set up properly[0m
-[31mrspec ./spec/normalizer_spec.rb:23[0m [36m# GH::Normalizer leaves unknown fields in place[0m
-[31mrspec ./spec/normalizer_spec.rb:28[0m [36m# GH::Normalizer allows normalization with #load[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames org to organization[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames orgs to organizations[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames username to login[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo to repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos to repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repo to foo_repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repos to foo_repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:61[0m [36m# GH::Normalizer renaming renames commit to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:68[0m [36m# GH::Normalizer renaming does not rename commit to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:75[0m [36m# GH::Normalizer renaming renames commit_id to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:82[0m [36m# GH::Normalizer renaming does not rename commit_id to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:89[0m [36m# GH::Normalizer renaming renames comments to comment_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:96[0m [36m# GH::Normalizer renaming renames repositories to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:103[0m [36m# GH::Normalizer renaming renames repos to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:110[0m [36m# GH::Normalizer renaming renames forks to fork_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:117[0m [36m# GH::Normalizer renaming does not rename comments to comment_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:124[0m [36m# GH::Normalizer renaming does not rename repositories to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:131[0m [36m# GH::Normalizer renaming does not rename repos to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:138[0m [36m# GH::Normalizer renaming does not rename forks to fork_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:145[0m [36m# GH::Normalizer renaming renames user to owner if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:152[0m [36m# GH::Normalizer renaming renames user to author if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:159[0m [36m# GH::Normalizer renaming leaves user in place if owner exists[0m
-[31mrspec ./spec/normalizer_spec.rb:167[0m [36m# GH::Normalizer renaming leaves user in place if author exists[0m
-[31mrspec ./spec/normalizer_spec.rb:175[0m [36m# GH::Normalizer renaming leaves user in place if no indication what kind of user[0m
-[31mrspec ./spec/normalizer_spec.rb:183[0m [36m# GH::Normalizer renaming copies author to committer[0m
-[31mrspec ./spec/normalizer_spec.rb:190[0m [36m# GH::Normalizer renaming copies committer to author[0m
-[31mrspec ./spec/normalizer_spec.rb:197[0m [36m# GH::Normalizer renaming does not override committer or author if both exist[0m
-[31mrspec ./spec/normalizer_spec.rb:207[0m [36m# GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:212[0m [36m# GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:217[0m [36m# GH::Normalizer time changes date to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:222[0m [36m# GH::Normalizer time changes any time entry to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:227[0m [36m# GH::Normalizer time does not choke on empty values[0m
-[31mrspec ./spec/normalizer_spec.rb:234[0m [36m# GH::Normalizer links does not normalize config[0m
-[31mrspec ./spec/normalizer_spec.rb:252[0m [36m# GH::Normalizer links identifies _url suffix as link[0m
-[31mrspec ./spec/normalizer_spec.rb:261[0m [36m# GH::Normalizer links identifies blog as link[0m
-[31mrspec ./spec/normalizer_spec.rb:270[0m [36m# GH::Normalizer links detects avatar links from gravatar_url[0m
-[31mrspec ./spec/normalizer_spec.rb:279[0m [36m# GH::Normalizer links detects html urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:287[0m [36m# GH::Normalizer links detects self urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:296[0m [36m# GH::Normalizer links passes through true[0m
-[31mrspec ./spec/lazy_loader_spec.rb:16[0m [36m# GH::LazyLoader wraps normalizer by default[0m
-[31mrspec ./spec/lazy_loader_spec.rb:20[0m [36m# GH::LazyLoader send http requests for missing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:24[0m [36m# GH::LazyLoader does not send http requests for existing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:28[0m [36m# GH::LazyLoader allows traversing into nested structures[0m
-[31mrspec ./spec/lazy_loader_spec.rb:37[0m [36m# GH::LazyLoader does not request twice if the field does not exist upstream[0m
-[31mrspec ./spec/lazy_loader_spec.rb:41[0m [36m# GH::LazyLoader does not skip an already existing default proc[0m
-[31mrspec ./spec/lazy_loader_spec.rb:52[0m [36m# GH::LazyLoader is still loading missing fields, even if a default proc is set[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/rbx-head/bin/rbx -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836262, 'Artifact::Log', '2012-07-11 14:17:53.957000', '2012-07-11 14:17:55.978000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521786, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=rbx-19mode
-$ rvm use rbx-19mode
-[32mUsing /home/vagrant/.rvm/gems/rbx-head-d19(B[m
-$ ruby --version
-rubinius 2.0.0dev (1.9.3 73a338b2 yyyy-mm-dd JI) [i686-pc-linux-gnu]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/rbx-head-d19/bin/rbx -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[32m send HTTP requests for uncached resources[0m
-[32m uses the cache for subsequent requests[0m
-[32m cache is resettable[0m
-
-GH::Pagination
-[32m paginates[0m
-[32m paginates with GH::Normalizer[0m
-[32m paginates on default stack[0m
-[32m gives random access[0m
-[32m does not wrap hash responses[0m
-
-GH::MergeCommit
-[32m adds merge commits[0m
-[32m adds base commits[0m
-[32m adds head commits[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[32m follows links[0m
-[32m works with lazy loading[0m
-[32m does not raise exceptions for unknown fields[0m
-
-GH::Instrumentation
-[32m instruments http[0m
-[32m instruments [][0m
-[32m instruments load[0m
-
-GH::Error
-[32m wraps connection[0m
-[32m exposes the original exception[0m
-[32m keeps the payload around[0m
-
-GH::Parallel
-[32m allows normal requests[0m
-[32m sets in_parallel?[0m
-[32m runs requests in parallel[0m
-[32m runs requests right away if parallelize is set to false[0m
-[31m works with pagination (FAILED - 1)[0m
-[32m returns the block value[0m
-[31m works two times in a row (FAILED - 2)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[32m handles UTF-8 properly, even if encoded binary[0m
-[32m handles broken encodings properly[0m
-
-GH::Remote
-[32m loads resources from github[0m
-[32m sets headers correctly[0m
-[32m raises an exception for missing resources[0m
-[32m parses the body[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[32m allows doing requests right from the GH object[0m
-[32m allows posting to github[0m
- with
-[32m returns the GH instance if no block is given[0m
-[32m returns the block value if block is given[0m
-[32m propagates options[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[32m is set up properly[0m
-[32m leaves unknown fields in place[0m
-[32m allows normalization with #load[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[32m renames org to organization[0m
-[32m renames orgs to organizations[0m
-[32m renames username to login[0m
-[32m renames repo to repository[0m
-[32m renames repos to repositories[0m
-[32m renames repo_foo to repository_foo[0m
-[32m renames repos_foo to repository_foo[0m
-[32m renames foo_repo to foo_repository[0m
-[32m renames foo_repos to foo_repositories[0m
-[32m renames commit to sha if value is a sha[0m
-[32m does not rename commit to sha if value is not a sha[0m
-[32m renames commit_id to sha if value is a sha[0m
-[32m does not rename commit_id to sha if value is not a sha[0m
-[32m renames comments to comment_count if content is a number[0m
-[32m renames repositories to repository_count if content is a number[0m
-[32m renames repos to repository_count if content is a number[0m
-[32m renames forks to fork_count if content is a number[0m
-[32m does not rename comments to comment_count if content is not a number[0m
-[32m does not rename repositories to repository_count if content is not a number[0m
-[32m does not rename repos to repository_count if content is not a number[0m
-[32m does not rename forks to fork_count if content is not a number[0m
-[32m renames user to owner if appropriate[0m
-[32m renames user to author if appropriate[0m
-[32m leaves user in place if owner exists[0m
-[32m leaves user in place if author exists[0m
-[32m leaves user in place if no indication what kind of user[0m
-[32m copies author to committer[0m
-[32m copies committer to author[0m
-[32m does not override committer or author if both exist[0m
- time
-[32m transforms timestamps stored in "timestamp" to a date in "date"[0m
-[32m transforms dates stored in "timestamp" to a date in "date"[0m
-[32m changes date to UTC[0m
-[32m changes any time entry to UTC[0m
-[32m does not choke on empty values[0m
- links
-[32m does not normalize config[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[32m identifies _url suffix as link[0m
-[32m identifies blog as link[0m
-[32m detects avatar links from gravatar_url[0m
-[32m detects html urls in url field[0m
-[32m detects self urls in url field[0m
-[32m passes through true[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[32m wraps normalizer by default[0m
-[32m send http requests for missing fields[0m
-[32m does not send http requests for existing fields[0m
-[32m allows traversing into nested structures[0m
-[32m does not request twice if the field does not exist upstream[0m
-[32m does not skip an already existing default proc[0m
-[32m is still loading missing fields, even if a default proc is set[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mrepos = GH.in_parallel { GH[''users/rkh/repos''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' on nil:NilClass.[0m
-[36m # kernel/delta/kernel.rb:81:in `closed? (method_missing)''[0m
-[36m # /home/vagrant/.rvm/rubies/rbx-head-d19/lib/19/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # kernel/common/hash19.rb:243:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:74:in `__script__''[0m
-[36m # kernel/common/eval19.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array19.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array19.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
- 2) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' on nil:NilClass.[0m
-[36m # kernel/delta/kernel.rb:81:in `closed? (method_missing)''[0m
-[36m # /home/vagrant/.rvm/rubies/rbx-head-d19/lib/19/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # kernel/common/hash19.rb:243:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `__script__''[0m
-[36m # kernel/common/eval19.rb:45:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # kernel/bootstrap/array19.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # kernel/bootstrap/array19.rb:18:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/rbx-head-d19/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # kernel/loader.rb:714:in `run_at_exits''[0m
-[36m # kernel/loader.rb:734:in `epilogue''[0m
-[36m # kernel/loader.rb:864:in `main''[0m
-
-Finished in 25.62 seconds
-[31m102 examples, 2 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/rbx-head-d19/bin/rbx -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836263, 'Artifact::Log', '2012-07-11 14:17:54.027000', '2012-07-11 14:17:57.243000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521787, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=jruby-head
-$ rvm use jruby-head
-[32mUsing /home/vagrant/.rvm/gems/jruby-head(B[m
-$ ruby --version
-jruby 1.7.0.preview2.dev (ruby-1.9.3-p203) (2012-07-11 3bb1b37) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Using jruby-openssl (0.7.7)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-/home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:12 warning: already initialized constant NET_HTTP_EXCEPTIONS
- send HTTP requests for uncached resources
- uses the cache for subsequent requests
- cache is resettable
-
-GH::Pagination
- paginates
- paginates with GH::Normalizer
- paginates on default stack (FAILED - 1)
- gives random access
- does not wrap hash responses
-
-GH::MergeCommit
- adds merge commits
- adds base commits
- adds head commits
- allows lazy loading on the commit
-
-GH::LinkFollower
- follows links
- works with lazy loading
- does not raise exceptions for unknown fields
-
-GH::Instrumentation
- instruments http
- instruments []
- instruments load
-
-GH::Error
- wraps connection
- exposes the original exception
- keeps the payload around
-
-GH::Parallel
- allows normal requests
- sets in_parallel?
- runs requests in parallel (FAILED - 2)
- runs requests right away if parallelize is set to false
- works with pagination (FAILED - 3)
- returns the block value
- works two times in a row (FAILED - 4)
-
-GH::Response
- parses content endpoints correctly (FAILED - 5)
- handles UTF-8 properly, even if encoded binary (FAILED - 6)
- handles broken encodings properly (FAILED - 7)
-
-GH::Remote
- loads resources from github
- sets headers correctly
- raises an exception for missing resources
- parses the body
- sends http calls through the frontend
- sends request calls through the frontend
-
-GH
- allows doing requests right from the GH object (FAILED - 8)
- allows posting to github
- with
- returns the GH instance if no block is given
- returns the block value if block is given
- propagates options
-
-GH::Wrapper
- is specified (PENDING: Not yet implemented)
-
-GH::Normalizer
- is set up properly
- leaves unknown fields in place
- allows normalization with #load
- works for deeply nested fields (PENDING: Not yet implemented)
- works for lists (PENDING: Not yet implemented)
- date fields
- generates date from timestamp (PENDING: Not yet implemented)
- renaming
- renames org to organization
- renames orgs to organizations
- renames username to login
- renames repo to repository
- renames repos to repositories
- renames repo_foo to repository_foo
- renames repos_foo to repository_foo
- renames foo_repo to foo_repository
- renames foo_repos to foo_repositories
- renames commit to sha if value is a sha
- does not rename commit to sha if value is not a sha
- renames commit_id to sha if value is a sha
- does not rename commit_id to sha if value is not a sha
- renames comments to comment_count if content is a number
- renames repositories to repository_count if content is a number
- renames repos to repository_count if content is a number
- renames forks to fork_count if content is a number
- does not rename comments to comment_count if content is not a number
- does not rename repositories to repository_count if content is not a number
- does not rename repos to repository_count if content is not a number
- does not rename forks to fork_count if content is not a number
- renames user to owner if appropriate
- renames user to author if appropriate
- leaves user in place if owner exists
- leaves user in place if author exists
- leaves user in place if no indication what kind of user
- copies author to committer
- copies committer to author
- does not override committer or author if both exist
- time
- transforms timestamps stored in "timestamp" to a date in "date"
- transforms dates stored in "timestamp" to a date in "date"
- changes date to UTC
- changes any time entry to UTC
- does not choke on empty values
- links
- does not normalize config
- generates link entries from link headers (PENDING: No reason given)
- generates link headers from link entries (PENDING: Not yet implemented)
- does not discard existing link entires (PENDING: Not yet implemented)
- does not discard existing link headers (PENDING: Not yet implemented)
- identifies _url suffix as link
- identifies blog as link
- detects avatar links from gravatar_url
- detects html urls in url field
- detects self urls in url field
- passes through true
-
-GH::Stack
- is specified (PENDING: Not yet implemented)
-
-GH::LazyLoader
- wraps normalizer by default
- send http requests for missing fields
- does not send http requests for existing fields
- allows traversing into nested structures
- does not request twice if the field does not exist upstream
- does not skip an already existing default proc
- is still loading missing fields, even if a default proc is set
-
-Pending:
- GH::Wrapper is specified
- # Not yet implemented
- # ./spec/wrapper_spec.rb:4
- GH::Normalizer works for deeply nested fields
- # Not yet implemented
- # ./spec/normalizer_spec.rb:34
- GH::Normalizer works for lists
- # Not yet implemented
- # ./spec/normalizer_spec.rb:35
- GH::Normalizer date fields generates date from timestamp
- # Not yet implemented
- # ./spec/normalizer_spec.rb:38
- GH::Normalizer links generates link entries from link headers
- # No reason given
- # ./spec/normalizer_spec.rb:239
- GH::Normalizer links generates link headers from link entries
- # Not yet implemented
- # ./spec/normalizer_spec.rb:248
- GH::Normalizer links does not discard existing link entires
- # Not yet implemented
- # ./spec/normalizer_spec.rb:249
- GH::Normalizer links does not discard existing link headers
- # Not yet implemented
- # ./spec/normalizer_spec.rb:250
- GH::Stack is specified
- # Not yet implemented
- # ./spec/stack_spec.rb:4
-
-Failures:
-
- 1) GH::Pagination paginates on default stack
- Failure/Error: counter = GH[''users/rkh/repos''].map { 1 }.reduce(:+) # map/reduce!
- GH::Error:
- GH request failed (RuntimeError: Invalid encoding in https://api.github.com/users/rkh/repos?per_page=100, please contact github.) with payload: [{"_links"=>{"html"=>{"href"=>"https://github.com/rkh/mw_api"}, "self"=>{"href"=>"https://api.git...
- # ./lib/gh/response.rb:37:in `initialize''
- # ./lib/gh/wrapper.rb:163:in `modify_response''
- # ./lib/gh/wrapper.rb:150:in `double_dispatch''
- # ./lib/gh/wrapper.rb:145:in `modify''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/parallel.rb:27:in `generate_response''
- # ./lib/gh/wrapper.rb:78:in `generate_response''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyBasicObject.java:1792:in `__send__''
- # ./spec/pagination_spec.rb:18:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 2) GH::Parallel runs requests in parallel
- Failure/Error: GH.in_parallel do
- OpenSSL::SSL::SSLError:
- certificate verify failed
- # org/jruby/ext/openssl/SSLSocket.java:178:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-head/lib/ruby/1.9/net/http.rb:799:in `connect''
- # org/jruby/ext/timeout/Timeout.java:103:in `timeout''
- # /home/vagrant/.rvm/rubies/jruby-head/lib/ruby/1.9/net/http.rb:799:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-head/lib/ruby/1.9/net/http.rb:1335:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1194:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # ./spec/parallel_spec.rb:28:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 3) GH::Parallel works with pagination
- Failure/Error: repos = GH.in_parallel { GH[''users/rkh/repos''] }
- NoMethodError:
- undefined method `closed?'' for nil:NilClass
- # /home/vagrant/.rvm/rubies/jruby-head/lib/ruby/1.9/net/http.rb:1335:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1194:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # ./spec/parallel_spec.rb:74:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 4) GH::Parallel works two times in a row
- Failure/Error: a = GH.in_parallel { GH[''users/rkh''] }
- NoMethodError:
- undefined method `closed?'' for nil:NilClass
- # /home/vagrant/.rvm/rubies/jruby-head/lib/ruby/1.9/net/http.rb:1335:in `begin_transport''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1194:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # org/jruby/RubyBasicObject.java:1786:in `__send__''
- # ./spec/parallel_spec.rb:87:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 5) GH::Response parses content endpoints correctly
- Failure/Error: GH[''/repos/rkh/gh/contents/README.md'']
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 6302, last used 0.255 seconds ago
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1154:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyBasicObject.java:1792:in `__send__''
- # ./spec/response_spec.rb:6:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 6) GH::Response handles UTF-8 properly, even if encoded binary
- Failure/Error: response[''foo''].should be == ''über cool sista året''
- expected: == "über cool sista året"
- got: "\xC3\xBCber cool sista \xC3\xA5ret"
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-expectations-2.11.1/lib/rspec/expectations/fail_with.rb:33:in `fail_with''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-expectations-2.11.1/lib/rspec/expectations/handler.rb:19:in `handle_matcher''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-expectations-2.11.1/lib/rspec/expectations/syntax.rb:48:in `should''
- # ./spec/response_spec.rb:13:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 7) GH::Response handles broken encodings properly
- Failure/Error: GH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"
- RuntimeError:
- Invalid encoding in , please contact github.
- # ./lib/gh/response.rb:37:in `initialize''
- # ./lib/gh/response.rb:35:in `initialize''
- # ./spec/response_spec.rb:17:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
- 8) GH allows doing requests right from the GH object
- Failure/Error: GH[''users/rkh''][''name''].should be == "Konstantin Haase"
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 6302, last used 0.228 seconds ago
- # /home/vagrant/.rvm/gems/jruby-head/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1154:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-head/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # org/jruby/RubyBasicObject.java:1813:in `__send__''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyBasicObject.java:1792:in `__send__''
- # ./spec/gh_spec.rb:5:in `(root)''
- # org/jruby/RubyBasicObject.java:1818:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2354:in `map''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-head/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
-
-Finished in 20.36 seconds
-102 examples, 8 failures, 9 pending
-
-Failed examples:
-
-rspec ./spec/pagination_spec.rb:17 # GH::Pagination paginates on default stack
-rspec ./spec/parallel_spec.rb:21 # GH::Parallel runs requests in parallel
-rspec ./spec/parallel_spec.rb:71 # GH::Parallel works with pagination
-rspec ./spec/parallel_spec.rb:83 # GH::Parallel works two times in a row
-rspec ./spec/response_spec.rb:5 # GH::Response parses content endpoints correctly
-rspec ./spec/response_spec.rb:9 # GH::Response handles UTF-8 properly, even if encoded binary
-rspec ./spec/response_spec.rb:16 # GH::Response handles broken encodings properly
-rspec ./spec/gh_spec.rb:4 # GH allows doing requests right from the GH object
-rake aborted!
-/home/vagrant/.rvm/rubies/jruby-head/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836264, 'Artifact::Log', '2012-07-11 14:17:54.039000', '2012-07-11 14:17:56.979000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521788, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-5
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf f01ff0648f35f42ac1844b821930c15974fd9f40
-$ export TRAVIS_RUBY_VERSION=ree
-$ rvm use ree
-[32mUsing /home/vagrant/.rvm/gems/ree-1.8.7-2012.02(B[m
-$ ruby --version
-ruby 1.8.7 (2012-02-08 MBARI 8/0x8770 on patchlevel 358) [i686-linux], MBARI 0x8770, Ruby Enterprise Edition 2012.02
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ree-1.8.7-2012.02/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-Faraday: you may want to install system_timer for reliable timeouts
-
-GH::Cache
-/home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:20: warning: already initialized constant NET_HTTP_EXCEPTIONS
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
-[31m send HTTP requests for uncached resources (FAILED - 1)[0m
-[31m uses the cache for subsequent requests (FAILED - 2)[0m
-[31m cache is resettable (FAILED - 3)[0m
-
-GH::Pagination
-[31m paginates (FAILED - 4)[0m
-[31m paginates with GH::Normalizer (FAILED - 5)[0m
-[31m paginates on default stack (FAILED - 6)[0m
-[31m gives random access (FAILED - 7)[0m
-[31m does not wrap hash responses (FAILED - 8)[0m
-
-GH::MergeCommit
-[31m adds merge commits (FAILED - 9)[0m
-[31m adds base commits (FAILED - 10)[0m
-[31m adds head commits (FAILED - 11)[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[31m follows links (FAILED - 12)[0m
-[31m works with lazy loading (FAILED - 13)[0m
-[31m does not raise exceptions for unknown fields (FAILED - 14)[0m
-
-GH::Instrumentation
-[31m instruments http (FAILED - 15)[0m
-[31m instruments [] (FAILED - 16)[0m
-[31m instruments load (FAILED - 17)[0m
-
-GH::Error
-[31m wraps connection (FAILED - 18)[0m
-[31m exposes the original exception (FAILED - 19)[0m
-[31m keeps the payload around (FAILED - 20)[0m
-
-GH::Parallel
-[31m allows normal requests (FAILED - 21)[0m
-[31m sets in_parallel? (FAILED - 22)[0m
-[31m runs requests in parallel (FAILED - 23)[0m
-[31m runs requests right away if parallelize is set to false (FAILED - 24)[0m
-[31m works with pagination (FAILED - 25)[0m
-[31m returns the block value (FAILED - 26)[0m
-[31m works two times in a row (FAILED - 27)[0m
-
-GH::Response
-[32m parses content endpoints correctly[0m
-[31m handles UTF-8 properly, even if encoded binary (FAILED - 28)[0m
-[31m handles broken encodings properly (FAILED - 29)[0m
-
-GH::Remote
-[31m loads resources from github (FAILED - 30)[0m
-[31m sets headers correctly (FAILED - 31)[0m
-[32m raises an exception for missing resources[0m
-[31m parses the body (FAILED - 32)[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[31m allows doing requests right from the GH object (FAILED - 33)[0m
-[31m allows posting to github (FAILED - 34)[0m
- with
-[31m returns the GH instance if no block is given (FAILED - 35)[0m
-[31m returns the block value if block is given (FAILED - 36)[0m
-[31m propagates options (FAILED - 37)[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[31m is set up properly (FAILED - 38)[0m
-[31m leaves unknown fields in place (FAILED - 39)[0m
-[31m allows normalization with #load (FAILED - 40)[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[31m renames org to organization (FAILED - 41)[0m
-[31m renames orgs to organizations (FAILED - 42)[0m
-[31m renames username to login (FAILED - 43)[0m
-[31m renames repo to repository (FAILED - 44)[0m
-[31m renames repos to repositories (FAILED - 45)[0m
-[31m renames repo_foo to repository_foo (FAILED - 46)[0m
-[31m renames repos_foo to repository_foo (FAILED - 47)[0m
-[31m renames foo_repo to foo_repository (FAILED - 48)[0m
-[31m renames foo_repos to foo_repositories (FAILED - 49)[0m
-[31m renames commit to sha if value is a sha (FAILED - 50)[0m
-[31m does not rename commit to sha if value is not a sha (FAILED - 51)[0m
-[31m renames commit_id to sha if value is a sha (FAILED - 52)[0m
-[31m does not rename commit_id to sha if value is not a sha (FAILED - 53)[0m
-[31m renames comments to comment_count if content is a number (FAILED - 54)[0m
-[31m renames repositories to repository_count if content is a number (FAILED - 55)[0m
-[31m renames repos to repository_count if content is a number (FAILED - 56)[0m
-[31m renames forks to fork_count if content is a number (FAILED - 57)[0m
-[31m does not rename comments to comment_count if content is not a number (FAILED - 58)[0m
-[31m does not rename repositories to repository_count if content is not a number (FAILED - 59)[0m
-[31m does not rename repos to repository_count if content is not a number (FAILED - 60)[0m
-[31m does not rename forks to fork_count if content is not a number (FAILED - 61)[0m
-[31m renames user to owner if appropriate (FAILED - 62)[0m
-[31m renames user to author if appropriate (FAILED - 63)[0m
-[31m leaves user in place if owner exists (FAILED - 64)[0m
-[31m leaves user in place if author exists (FAILED - 65)[0m
-[31m leaves user in place if no indication what kind of user (FAILED - 66)[0m
-[31m copies author to committer (FAILED - 67)[0m
-[31m copies committer to author (FAILED - 68)[0m
-[31m does not override committer or author if both exist (FAILED - 69)[0m
- time
-[31m transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 70)[0m
-[31m transforms dates stored in "timestamp" to a date in "date" (FAILED - 71)[0m
-[31m changes date to UTC (FAILED - 72)[0m
-[31m changes any time entry to UTC (FAILED - 73)[0m
-[31m does not choke on empty values (FAILED - 74)[0m
- links
-[31m does not normalize config (FAILED - 75)[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[31m identifies _url suffix as link (FAILED - 76)[0m
-[31m identifies blog as link (FAILED - 77)[0m
-[31m detects avatar links from gravatar_url (FAILED - 78)[0m
-[31m detects html urls in url field (FAILED - 79)[0m
-[31m detects self urls in url field (FAILED - 80)[0m
-[31m passes through true (FAILED - 81)[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[31m wraps normalizer by default (FAILED - 82)[0m
-[31m send http requests for missing fields (FAILED - 83)[0m
-[31m does not send http requests for existing fields (FAILED - 84)[0m
-[31m allows traversing into nested structures (FAILED - 85)[0m
-[31m does not request twice if the field does not exist upstream (FAILED - 86)[0m
-[31m does not skip an already existing default proc (FAILED - 87)[0m
-[31m is still loading missing fields, even if a default proc is set (FAILED - 88)[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:7[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 2) GH::Cache uses the cache for subsequent requests
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 3) GH::Cache cache is resettable
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 4) GH::Pagination paginates
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:8[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 5) GH::Pagination paginates with GH::Normalizer
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:14[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 6) GH::Pagination paginates on default stack
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 7) GH::Pagination gives random access
- [31mFailure/Error:[0m [31mdata[index].should be == value[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/pagination_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./lib/gh/pagination.rb:12:in `each''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./spec/pagination_spec.rb:24[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 8) GH::Pagination does not wrap hash responses
- [31mFailure/Error:[0m [31msubject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/pagination_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 9) GH::MergeCommit adds merge commits
- [31mFailure/Error:[0m [31mpull_request[''merge_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "ca3c0a44ec1d9bf8557d2653aa1b79fcc9ff5f5d":String[0m
-[36m # ./spec/merge_commit_spec.rb:15[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 10) GH::MergeCommit adds base commits
- [31mFailure/Error:[0m [31mpull_request[''base_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "4a90c0ad9187c8735e1bcbf39a0291a21284994a":String[0m
-[36m # ./spec/merge_commit_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 11) GH::MergeCommit adds head commits
- [31mFailure/Error:[0m [31mpull_request[''head_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "01eae10530ca65b51474b2d950365967ebdf3023":String[0m
-[36m # ./spec/merge_commit_spec.rb:23[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 12) GH::LinkFollower follows links
- [31mFailure/Error:[0m [31mcommentator[''login''].should be == ''rtomayko''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rtomayko":String[0m
-[36m # ./spec/link_follower_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 13) GH::LinkFollower works with lazy loading
- [31mFailure/Error:[0m [31mcommentator["location"].should be == "San Francisco"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "San Francisco":String[0m
-[36m # ./spec/link_follower_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- [31mFailure/Error:[0m [31mcommentator["location"].should be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for nil:NilClass[0m
-[36m # ./spec/link_follower_spec.rb:22[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 15) GH::Instrumentation instruments http
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 16) GH::Instrumentation instruments []
- [31mFailure/Error:[0m [31m@events.size.should be == 2[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 2:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 17) GH::Instrumentation instruments load
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:27[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 18) GH::Error wraps connection
- [31mFailure/Error:[0m [31mexception.should be_an(GH::Error)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 19) GH::Error exposes the original exception
- [31mFailure/Error:[0m [31mexception.error.should be_a(RuntimeError)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 20) GH::Error keeps the payload around
- [31mFailure/Error:[0m [31mexception.payload.should be == {''foo'' => ''bar''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"foo"=>"bar"}:Hash[0m
-[36m # ./spec/error_spec.rb:29[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 21) GH::Parallel allows normal requests
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == ''Konstantin Haase''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/parallel_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 22) GH::Parallel sets in_parallel?
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:16[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 23) GH::Parallel runs requests in parallel
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:51[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/parallel_spec.rb:50[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 25) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 128:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:76[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 26) GH::Parallel returns the block value
- [31mFailure/Error:[0m [31mGH.in_parallel { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:80[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 27) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ree-1.8.7-2012.02/lib/ruby/1.8/net/http.rb:1069:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 28) GH::Response handles UTF-8 properly, even if encoded binary
- [31mFailure/Error:[0m [31mresponse[''foo''].should be == ''über cool sista året''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303\274ber cool sista \303\245ret":String[0m
-[36m # ./spec/response_spec.rb:13[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 29) GH::Response handles broken encodings properly
- [31mFailure/Error:[0m [31mGH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303":String[0m
-[36m # ./spec/response_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 30) GH::Remote loads resources from github
- [31mFailure/Error:[0m [31msubject[''foo''].to_s.should be == ''["foo"]''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "[\"foo\"]":String[0m
-[36m # ./spec/remote_spec.rb:6[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 31) GH::Remote sets headers correctly
- [31mFailure/Error:[0m [31msubject[''foo''].headers[''x-foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:11[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 32) GH::Remote parses the body
- [31mFailure/Error:[0m [31msubject[''foo''][''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 33) GH allows doing requests right from the GH object
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/gh_spec.rb:5[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 34) GH allows posting to github
- [31mFailure/Error:[0m [31mresponse[''hi''].should be == ''ho''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "ho":String[0m
-[36m # ./spec/gh_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 35) GH with returns the GH instance if no block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...").should be_a(GH::Wrapper)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/gh_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 36) GH with returns the block value if block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...") { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/gh_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 37) GH with propagates options
- [31mFailure/Error:[0m [31mGH.options.should be == {:a => :b, :b => :c}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {:a=>:b, :b=>:c}:Hash[0m
-[36m # ./spec/gh_spec.rb:27[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:26[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 38) GH::Normalizer is set up properly
- [31mFailure/Error:[0m [31mbackend.frontend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:20[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 39) GH::Normalizer leaves unknown fields in place
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/normalizer_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 40) GH::Normalizer allows normalization with #load
- [31mFailure/Error:[0m [31mresult.should_not include("org")[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"organization"=>"foo"}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 41) GH::Normalizer renaming renames org to organization
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 42) GH::Normalizer renaming renames orgs to organizations
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 43) GH::Normalizer renaming renames username to login
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 44) GH::Normalizer renaming renames repo to repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 45) GH::Normalizer renaming renames repos to repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 46) GH::Normalizer renaming renames repo_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 47) GH::Normalizer renaming renames repos_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 48) GH::Normalizer renaming renames foo_repo to foo_repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 49) GH::Normalizer renaming renames foo_repos to foo_repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 50) GH::Normalizer renaming renames commit to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:63[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 51) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:70[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 52) GH::Normalizer renaming renames commit_id to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:77[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 53) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:84[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 54) GH::Normalizer renaming renames comments to comment_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comment_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:91[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 55) GH::Normalizer renaming renames repositories to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:98[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 56) GH::Normalizer renaming renames repos to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:105[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 57) GH::Normalizer renaming renames forks to fork_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''fork_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:112[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 58) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comments'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:119[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 59) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:126[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 60) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:133[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 61) GH::Normalizer renaming does not rename forks to fork_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''forks'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:140[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 62) GH::Normalizer renaming renames user to owner if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:147[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 63) GH::Normalizer renaming renames user to author if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:154[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 64) GH::Normalizer renaming leaves user in place if owner exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:161[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 65) GH::Normalizer renaming leaves user in place if author exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:169[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 66) GH::Normalizer renaming leaves user in place if no indication what kind of user
- [31mFailure/Error:[0m [31mnormalized.should_not include(''owner'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:177[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 67) GH::Normalizer renaming copies author to committer
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:185[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 68) GH::Normalizer renaming copies committer to author
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:192[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 69) GH::Normalizer renaming does not override committer or author if both exist
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:199[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 70) GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "1970-01-01T00:20:34Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "1970-01-01T00:20:34Z":String[0m
-[36m # ./spec/normalizer_spec.rb:209[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 71) GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:214[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 72) GH::Normalizer time changes date to UTC
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:219[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 73) GH::Normalizer time changes any time entry to UTC
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:224[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 74) GH::Normalizer time does not choke on empty values
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == ""[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "":String[0m
-[36m # ./spec/normalizer_spec.rb:229[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 75) GH::Normalizer links does not normalize config
- [31mFailure/Error:[0m [31mnormalized[''config''].should be == {''url'' => ''http://localhost''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"url"=>"http://localhost"}:Hash[0m
-[36m # ./spec/normalizer_spec.rb:236[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 76) GH::Normalizer links identifies _url suffix as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''foo_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:254[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 77) GH::Normalizer links identifies blog as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''blog'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:263[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 78) GH::Normalizer links detects avatar links from gravatar_url
- [31mFailure/Error:[0m [31mnormalized.should_not include(''gravatar_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:272[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 79) GH::Normalizer links detects html urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:281[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 80) GH::Normalizer links detects self urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"_links"=>{"self"=>{"href"=>"http://api.github.com/foo"}}}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:289[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 81) GH::Normalizer links passes through true
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == true[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for true:TrueClass[0m
-[36m # ./spec/normalizer_spec.rb:298[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 82) GH::LazyLoader wraps normalizer by default
- [31mFailure/Error:[0m [31mGH::LazyLoader.new.backend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #>[0m
-[36m # ./spec/lazy_loader_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 83) GH::LazyLoader send http requests for missing fields
- [31mFailure/Error:[0m [31mshould_request(1) { rkh[''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 84) GH::LazyLoader does not send http requests for existing fields
- [31mFailure/Error:[0m [31mshould_not_request { rkh[''login''].should be == ''rkh'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rkh":String[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 85) GH::LazyLoader allows traversing into nested structures
- [31mFailure/Error:[0m [31mshould_request(1) { sven[''friends''][0][''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 86) GH::LazyLoader does not request twice if the field does not exist upstream
- [31mFailure/Error:[0m [31mshould_request(1) { 2.times { rkh[''foo''] } }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/spec_helper.rb:26:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:38[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 87) GH::LazyLoader does not skip an already existing default proc
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:47[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:46[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
- 88) GH::LazyLoader is still loading missing fields, even if a default proc is set
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:58[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:57[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ree-1.8.7-2012.02/bin/rspec:23[0m
-
-Finished in 20.93 seconds
-[31m102 examples, 88 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/cache_spec.rb:6[0m [36m# GH::Cache send HTTP requests for uncached resources[0m
-[31mrspec ./spec/cache_spec.rb:11[0m [36m# GH::Cache uses the cache for subsequent requests[0m
-[31mrspec ./spec/cache_spec.rb:18[0m [36m# GH::Cache cache is resettable[0m
-[31mrspec ./spec/pagination_spec.rb:6[0m [36m# GH::Pagination paginates[0m
-[31mrspec ./spec/pagination_spec.rb:11[0m [36m# GH::Pagination paginates with GH::Normalizer[0m
-[31mrspec ./spec/pagination_spec.rb:17[0m [36m# GH::Pagination paginates on default stack[0m
-[31mrspec ./spec/pagination_spec.rb:22[0m [36m# GH::Pagination gives random access[0m
-[31mrspec ./spec/pagination_spec.rb:29[0m [36m# GH::Pagination does not wrap hash responses[0m
-[31mrspec ./spec/merge_commit_spec.rb:14[0m [36m# GH::MergeCommit adds merge commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:18[0m [36m# GH::MergeCommit adds base commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:22[0m [36m# GH::MergeCommit adds head commits[0m
-[31mrspec ./spec/link_follower_spec.rb:11[0m [36m# GH::LinkFollower follows links[0m
-[31mrspec ./spec/link_follower_spec.rb:15[0m [36m# GH::LinkFollower works with lazy loading[0m
-[31mrspec ./spec/link_follower_spec.rb:21[0m [36m# GH::LinkFollower does not raise exceptions for unknown fields[0m
-[31mrspec ./spec/instrumentation_spec.rb:10[0m [36m# GH::Instrumentation instruments http[0m
-[31mrspec ./spec/instrumentation_spec.rb:16[0m [36m# GH::Instrumentation instruments [][0m
-[31mrspec ./spec/instrumentation_spec.rb:25[0m [36m# GH::Instrumentation instruments load[0m
-[31mrspec ./spec/error_spec.rb:20[0m [36m# GH::Error wraps connection[0m
-[31mrspec ./spec/error_spec.rb:24[0m [36m# GH::Error exposes the original exception[0m
-[31mrspec ./spec/error_spec.rb:28[0m [36m# GH::Error keeps the payload around[0m
-[31mrspec ./spec/parallel_spec.rb:11[0m [36m# GH::Parallel allows normal requests[0m
-[31mrspec ./spec/parallel_spec.rb:15[0m [36m# GH::Parallel sets in_parallel?[0m
-[31mrspec ./spec/parallel_spec.rb:21[0m [36m# GH::Parallel runs requests in parallel[0m
-[31mrspec ./spec/parallel_spec.rb:47[0m [36m# GH::Parallel runs requests right away if parallelize is set to false[0m
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:79[0m [36m# GH::Parallel returns the block value[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-[31mrspec ./spec/response_spec.rb:9[0m [36m# GH::Response handles UTF-8 properly, even if encoded binary[0m
-[31mrspec ./spec/response_spec.rb:16[0m [36m# GH::Response handles broken encodings properly[0m
-[31mrspec ./spec/remote_spec.rb:4[0m [36m# GH::Remote loads resources from github[0m
-[31mrspec ./spec/remote_spec.rb:9[0m [36m# GH::Remote sets headers correctly[0m
-[31mrspec ./spec/remote_spec.rb:19[0m [36m# GH::Remote parses the body[0m
-[31mrspec ./spec/gh_spec.rb:4[0m [36m# GH allows doing requests right from the GH object[0m
-[31mrspec ./spec/gh_spec.rb:8[0m [36m# GH allows posting to github[0m
-[31mrspec ./spec/gh_spec.rb:16[0m [36m# GH with returns the GH instance if no block is given[0m
-[31mrspec ./spec/gh_spec.rb:20[0m [36m# GH with returns the block value if block is given[0m
-[31mrspec ./spec/gh_spec.rb:24[0m [36m# GH with propagates options[0m
-[31mrspec ./spec/normalizer_spec.rb:19[0m [36m# GH::Normalizer is set up properly[0m
-[31mrspec ./spec/normalizer_spec.rb:23[0m [36m# GH::Normalizer leaves unknown fields in place[0m
-[31mrspec ./spec/normalizer_spec.rb:28[0m [36m# GH::Normalizer allows normalization with #load[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames org to organization[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames orgs to organizations[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames username to login[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo to repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos to repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repo to foo_repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repos to foo_repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:61[0m [36m# GH::Normalizer renaming renames commit to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:68[0m [36m# GH::Normalizer renaming does not rename commit to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:75[0m [36m# GH::Normalizer renaming renames commit_id to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:82[0m [36m# GH::Normalizer renaming does not rename commit_id to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:89[0m [36m# GH::Normalizer renaming renames comments to comment_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:96[0m [36m# GH::Normalizer renaming renames repositories to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:103[0m [36m# GH::Normalizer renaming renames repos to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:110[0m [36m# GH::Normalizer renaming renames forks to fork_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:117[0m [36m# GH::Normalizer renaming does not rename comments to comment_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:124[0m [36m# GH::Normalizer renaming does not rename repositories to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:131[0m [36m# GH::Normalizer renaming does not rename repos to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:138[0m [36m# GH::Normalizer renaming does not rename forks to fork_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:145[0m [36m# GH::Normalizer renaming renames user to owner if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:152[0m [36m# GH::Normalizer renaming renames user to author if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:159[0m [36m# GH::Normalizer renaming leaves user in place if owner exists[0m
-[31mrspec ./spec/normalizer_spec.rb:167[0m [36m# GH::Normalizer renaming leaves user in place if author exists[0m
-[31mrspec ./spec/normalizer_spec.rb:175[0m [36m# GH::Normalizer renaming leaves user in place if no indication what kind of user[0m
-[31mrspec ./spec/normalizer_spec.rb:183[0m [36m# GH::Normalizer renaming copies author to committer[0m
-[31mrspec ./spec/normalizer_spec.rb:190[0m [36m# GH::Normalizer renaming copies committer to author[0m
-[31mrspec ./spec/normalizer_spec.rb:197[0m [36m# GH::Normalizer renaming does not override committer or author if both exist[0m
-[31mrspec ./spec/normalizer_spec.rb:207[0m [36m# GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:212[0m [36m# GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:217[0m [36m# GH::Normalizer time changes date to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:222[0m [36m# GH::Normalizer time changes any time entry to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:227[0m [36m# GH::Normalizer time does not choke on empty values[0m
-[31mrspec ./spec/normalizer_spec.rb:234[0m [36m# GH::Normalizer links does not normalize config[0m
-[31mrspec ./spec/normalizer_spec.rb:252[0m [36m# GH::Normalizer links identifies _url suffix as link[0m
-[31mrspec ./spec/normalizer_spec.rb:261[0m [36m# GH::Normalizer links identifies blog as link[0m
-[31mrspec ./spec/normalizer_spec.rb:270[0m [36m# GH::Normalizer links detects avatar links from gravatar_url[0m
-[31mrspec ./spec/normalizer_spec.rb:279[0m [36m# GH::Normalizer links detects html urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:287[0m [36m# GH::Normalizer links detects self urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:296[0m [36m# GH::Normalizer links passes through true[0m
-[31mrspec ./spec/lazy_loader_spec.rb:16[0m [36m# GH::LazyLoader wraps normalizer by default[0m
-[31mrspec ./spec/lazy_loader_spec.rb:20[0m [36m# GH::LazyLoader send http requests for missing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:24[0m [36m# GH::LazyLoader does not send http requests for existing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:28[0m [36m# GH::LazyLoader allows traversing into nested structures[0m
-[31mrspec ./spec/lazy_loader_spec.rb:37[0m [36m# GH::LazyLoader does not request twice if the field does not exist upstream[0m
-[31mrspec ./spec/lazy_loader_spec.rb:41[0m [36m# GH::LazyLoader does not skip an already existing default proc[0m
-[31mrspec ./spec/lazy_loader_spec.rb:52[0m [36m# GH::LazyLoader is still loading missing fields, even if a default proc is set[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ree-1.8.7-2012.02/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1836265, 'Artifact::Log', '2012-07-11 14:17:54.052000', '2012-07-11 14:17:57.343000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521573, 'Using worker: ruby4.worker.travis-ci.org:travis-ruby-6
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf 708cc31f907a04102380b97a74a6b6da056a22fc
-$ export TRAVIS_RUBY_VERSION=1.8.7
-$ rvm use 1.8.7
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.8.7-p370(B[m
-$ ruby --version
-ruby 1.8.7 (2012-06-29 patchlevel 370) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p370/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-Faraday: you may want to install system_timer for reliable timeouts
-
-GH::Cache
-/home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:20: warning: already initialized constant NET_HTTP_EXCEPTIONS
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
-[31m send HTTP requests for uncached resources (FAILED - 1)[0m
-[31m uses the cache for subsequent requests (FAILED - 2)[0m
-[31m cache is resettable (FAILED - 3)[0m
-
-GH::Pagination
-[31m paginates (FAILED - 4)[0m
-[31m paginates with GH::Normalizer (FAILED - 5)[0m
-[31m paginates on default stack (FAILED - 6)[0m
-[31m gives random access (FAILED - 7)[0m
-[31m does not wrap hash responses (FAILED - 8)[0m
-
-GH::MergeCommit
-[31m adds merge commits (FAILED - 9)[0m
-[31m adds base commits (FAILED - 10)[0m
-[31m adds head commits (FAILED - 11)[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[31m follows links (FAILED - 12)[0m
-[31m works with lazy loading (FAILED - 13)[0m
-[31m does not raise exceptions for unknown fields (FAILED - 14)[0m
-
-GH::Instrumentation
-[31m instruments http (FAILED - 15)[0m
-[31m instruments [] (FAILED - 16)[0m
-[31m instruments load (FAILED - 17)[0m
-
-GH::Error
-[31m wraps connection (FAILED - 18)[0m
-[31m exposes the original exception (FAILED - 19)[0m
-[31m keeps the payload around (FAILED - 20)[0m
-
-GH::Parallel
-[31m allows normal requests (FAILED - 21)[0m
-[31m sets in_parallel? (FAILED - 22)[0m
-[31m runs requests in parallel (FAILED - 23)[0m
-[31m runs requests right away if parallelize is set to false (FAILED - 24)[0m
-[31m works with pagination (FAILED - 25)[0m
-[31m returns the block value (FAILED - 26)[0m
-[31m works two times in a row (FAILED - 27)[0m
-
-GH::Response
-[31m handles UTF-8 properly, even if encoded binary (FAILED - 28)[0m
-[31m handles broken encodings properly (FAILED - 29)[0m
-
-GH::Remote
-[31m loads resources from github (FAILED - 30)[0m
-[31m sets headers correctly (FAILED - 31)[0m
-[32m raises an exception for missing resources[0m
-[31m parses the body (FAILED - 32)[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[31m allows doing requests right from the GH object (FAILED - 33)[0m
-[31m allows posting to github (FAILED - 34)[0m
- with
-[31m returns the GH instance if no block is given (FAILED - 35)[0m
-[31m returns the block value if block is given (FAILED - 36)[0m
-[31m propagates options (FAILED - 37)[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[31m is set up properly (FAILED - 38)[0m
-[31m leaves unknown fields in place (FAILED - 39)[0m
-[31m allows normalization with #load (FAILED - 40)[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[31m renames org to organization (FAILED - 41)[0m
-[31m renames orgs to organizations (FAILED - 42)[0m
-[31m renames username to login (FAILED - 43)[0m
-[31m renames repo to repository (FAILED - 44)[0m
-[31m renames repos to repositories (FAILED - 45)[0m
-[31m renames repo_foo to repository_foo (FAILED - 46)[0m
-[31m renames repos_foo to repository_foo (FAILED - 47)[0m
-[31m renames foo_repo to foo_repository (FAILED - 48)[0m
-[31m renames foo_repos to foo_repositories (FAILED - 49)[0m
-[31m renames commit to sha if value is a sha (FAILED - 50)[0m
-[31m does not rename commit to sha if value is not a sha (FAILED - 51)[0m
-[31m renames commit_id to sha if value is a sha (FAILED - 52)[0m
-[31m does not rename commit_id to sha if value is not a sha (FAILED - 53)[0m
-[31m renames comments to comment_count if content is a number (FAILED - 54)[0m
-[31m renames repositories to repository_count if content is a number (FAILED - 55)[0m
-[31m renames repos to repository_count if content is a number (FAILED - 56)[0m
-[31m renames forks to fork_count if content is a number (FAILED - 57)[0m
-[31m does not rename comments to comment_count if content is not a number (FAILED - 58)[0m
-[31m does not rename repositories to repository_count if content is not a number (FAILED - 59)[0m
-[31m does not rename repos to repository_count if content is not a number (FAILED - 60)[0m
-[31m does not rename forks to fork_count if content is not a number (FAILED - 61)[0m
-[31m renames user to owner if appropriate (FAILED - 62)[0m
-[31m renames user to author if appropriate (FAILED - 63)[0m
-[31m leaves user in place if owner exists (FAILED - 64)[0m
-[31m leaves user in place if author exists (FAILED - 65)[0m
-[31m leaves user in place if no indication what kind of user (FAILED - 66)[0m
-[31m copies author to committer (FAILED - 67)[0m
-[31m copies committer to author (FAILED - 68)[0m
-[31m does not override committer or author if both exist (FAILED - 69)[0m
- time
-[31m transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 70)[0m
-[31m transforms dates stored in "timestamp" to a date in "date" (FAILED - 71)[0m
-[31m changes date to UTC (FAILED - 72)[0m
-[31m changes any time entry to UTC (FAILED - 73)[0m
-[31m does not choke on empty values (FAILED - 74)[0m
- links
-[31m does not normalize config (FAILED - 75)[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[31m identifies _url suffix as link (FAILED - 76)[0m
-[31m identifies blog as link (FAILED - 77)[0m
-[31m detects avatar links from gravatar_url (FAILED - 78)[0m
-[31m detects html urls in url field (FAILED - 79)[0m
-[31m detects self urls in url field (FAILED - 80)[0m
-[31m passes through true (FAILED - 81)[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[31m wraps normalizer by default (FAILED - 82)[0m
-[31m send http requests for missing fields (FAILED - 83)[0m
-[31m does not send http requests for existing fields (FAILED - 84)[0m
-[31m allows traversing into nested structures (FAILED - 85)[0m
-[31m does not request twice if the field does not exist upstream (FAILED - 86)[0m
-[31m does not skip an already existing default proc (FAILED - 87)[0m
-[31m is still loading missing fields, even if a default proc is set (FAILED - 88)[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:7[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 2) GH::Cache uses the cache for subsequent requests
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 3) GH::Cache cache is resettable
- [31mFailure/Error:[0m [31msubject[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/cache_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 4) GH::Pagination paginates
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:8[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 5) GH::Pagination paginates with GH::Normalizer
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:14[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 6) GH::Pagination paginates on default stack
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 125:Fixnum[0m
-[36m # ./spec/pagination_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 7) GH::Pagination gives random access
- [31mFailure/Error:[0m [31mdata[index].should be == value[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/pagination_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./lib/gh/pagination.rb:12:in `each''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index''[0m
-[36m # ./spec/pagination_spec.rb:24[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 8) GH::Pagination does not wrap hash responses
- [31mFailure/Error:[0m [31msubject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/pagination_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 9) GH::MergeCommit adds merge commits
- [31mFailure/Error:[0m [31mpull_request[''merge_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "ca3c0a44ec1d9bf8557d2653aa1b79fcc9ff5f5d":String[0m
-[36m # ./spec/merge_commit_spec.rb:15[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 10) GH::MergeCommit adds base commits
- [31mFailure/Error:[0m [31mpull_request[''base_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "4a90c0ad9187c8735e1bcbf39a0291a21284994a":String[0m
-[36m # ./spec/merge_commit_spec.rb:19[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 11) GH::MergeCommit adds head commits
- [31mFailure/Error:[0m [31mpull_request[''head_commit''][''sha''].should_not be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for "01eae10530ca65b51474b2d950365967ebdf3023":String[0m
-[36m # ./spec/merge_commit_spec.rb:23[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 12) GH::LinkFollower follows links
- [31mFailure/Error:[0m [31mcommentator[''login''].should be == ''rtomayko''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rtomayko":String[0m
-[36m # ./spec/link_follower_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 13) GH::LinkFollower works with lazy loading
- [31mFailure/Error:[0m [31mcommentator["location"].should be == "San Francisco"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "San Francisco":String[0m
-[36m # ./spec/link_follower_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- [31mFailure/Error:[0m [31mcommentator["location"].should be_nil[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for nil:NilClass[0m
-[36m # ./spec/link_follower_spec.rb:22[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 15) GH::Instrumentation instruments http
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 16) GH::Instrumentation instruments []
- [31mFailure/Error:[0m [31m@events.size.should be == 2[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 2:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:18[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 17) GH::Instrumentation instruments load
- [31mFailure/Error:[0m [31m@events.size.should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/instrumentation_spec.rb:27[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 18) GH::Error wraps connection
- [31mFailure/Error:[0m [31mexception.should be_an(GH::Error)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 19) GH::Error exposes the original exception
- [31mFailure/Error:[0m [31mexception.error.should be_a(RuntimeError)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/error_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 20) GH::Error keeps the payload around
- [31mFailure/Error:[0m [31mexception.payload.should be == {''foo'' => ''bar''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"foo"=>"bar"}:Hash[0m
-[36m # ./spec/error_spec.rb:29[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 21) GH::Parallel allows normal requests
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == ''Konstantin Haase''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/parallel_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 22) GH::Parallel sets in_parallel?
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:16[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 23) GH::Parallel runs requests in parallel
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- [31mFailure/Error:[0m [31mGH.should_not be_in_parallel[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for GH:Module[0m
-[36m # ./spec/parallel_spec.rb:51[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/parallel_spec.rb:50[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 25) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mcounter.should be > 120[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 128:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:76[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 26) GH::Parallel returns the block value
- [31mFailure/Error:[0m [31mGH.in_parallel { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/parallel_spec.rb:80[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 27) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/net/http.rb:1069:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 28) GH::Response handles UTF-8 properly, even if encoded binary
- [31mFailure/Error:[0m [31mresponse[''foo''].should be == ''über cool sista året''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303\274ber cool sista \303\245ret":String[0m
-[36m # ./spec/response_spec.rb:9[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 29) GH::Response handles broken encodings properly
- [31mFailure/Error:[0m [31mGH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "\303":String[0m
-[36m # ./spec/response_spec.rb:13[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 30) GH::Remote loads resources from github
- [31mFailure/Error:[0m [31msubject[''foo''].to_s.should be == ''["foo"]''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "[\"foo\"]":String[0m
-[36m # ./spec/remote_spec.rb:6[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 31) GH::Remote sets headers correctly
- [31mFailure/Error:[0m [31msubject[''foo''].headers[''x-foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:11[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 32) GH::Remote parses the body
- [31mFailure/Error:[0m [31msubject[''foo''][''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/remote_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 33) GH allows doing requests right from the GH object
- [31mFailure/Error:[0m [31mGH[''users/rkh''][''name''].should be == "Konstantin Haase"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/gh_spec.rb:5[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 34) GH allows posting to github
- [31mFailure/Error:[0m [31mresponse[''hi''].should be == ''ho''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "ho":String[0m
-[36m # ./spec/gh_spec.rb:12[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 35) GH with returns the GH instance if no block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...").should be_a(GH::Wrapper)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/gh_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 36) GH with returns the block value if block is given
- [31mFailure/Error:[0m [31mGH.with(:token => "...") { 42 }.should be == 42[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 42:Fixnum[0m
-[36m # ./spec/gh_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 37) GH with propagates options
- [31mFailure/Error:[0m [31mGH.options.should be == {:a => :b, :b => :c}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {:a=>:b, :b=>:c}:Hash[0m
-[36m # ./spec/gh_spec.rb:27[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:26[0m
-[36m # ./lib/gh.rb:32:in `with''[0m
-[36m # ./spec/gh_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 38) GH::Normalizer is set up properly
- [31mFailure/Error:[0m [31mbackend.frontend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:20[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 39) GH::Normalizer leaves unknown fields in place
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == ''bar''[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "bar":String[0m
-[36m # ./spec/normalizer_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 40) GH::Normalizer allows normalization with #load
- [31mFailure/Error:[0m [31mresult.should_not include("org")[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"organization"=>"foo"}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:30[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 41) GH::Normalizer renaming renames org to organization
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 42) GH::Normalizer renaming renames orgs to organizations
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 43) GH::Normalizer renaming renames username to login
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 44) GH::Normalizer renaming renames repo to repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 45) GH::Normalizer renaming renames repos to repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 46) GH::Normalizer renaming renames repo_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 47) GH::Normalizer renaming renames repos_foo to repository_foo
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 48) GH::Normalizer renaming renames foo_repo to foo_repository
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 49) GH::Normalizer renaming renames foo_repos to foo_repositories
- [31mFailure/Error:[0m [31mnormalized.should_not include(a)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:45:in `renames''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 50) GH::Normalizer renaming renames commit to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:63[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 51) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:70[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 52) GH::Normalizer renaming renames commit_id to sha if value is a sha
- [31mFailure/Error:[0m [31mnormalized.should_not include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:77[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 53) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- [31mFailure/Error:[0m [31mnormalized.should include(''commit_id'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:84[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 54) GH::Normalizer renaming renames comments to comment_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comment_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:91[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 55) GH::Normalizer renaming renames repositories to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:98[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 56) GH::Normalizer renaming renames repos to repository_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repository_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:105[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 57) GH::Normalizer renaming renames forks to fork_count if content is a number
- [31mFailure/Error:[0m [31mnormalized.should include(''fork_count'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:112[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 58) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''comments'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:119[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 59) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:126[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 60) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''repositories'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:133[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 61) GH::Normalizer renaming does not rename forks to fork_count if content is not a number
- [31mFailure/Error:[0m [31mnormalized.should include(''forks'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:140[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 62) GH::Normalizer renaming renames user to owner if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:147[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 63) GH::Normalizer renaming renames user to author if appropriate
- [31mFailure/Error:[0m [31mnormalized.should_not include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:154[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 64) GH::Normalizer renaming leaves user in place if owner exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:161[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 65) GH::Normalizer renaming leaves user in place if author exists
- [31mFailure/Error:[0m [31mnormalized.should include(''user'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:169[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 66) GH::Normalizer renaming leaves user in place if no indication what kind of user
- [31mFailure/Error:[0m [31mnormalized.should_not include(''owner'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:177[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 67) GH::Normalizer renaming copies author to committer
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:185[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 68) GH::Normalizer renaming copies committer to author
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:192[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 69) GH::Normalizer renaming does not override committer or author if both exist
- [31mFailure/Error:[0m [31mnormalized.should include(''author'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #[0m
-[36m # ./spec/normalizer_spec.rb:199[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 70) GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "1970-01-01T00:20:34Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "1970-01-01T00:20:34Z":String[0m
-[36m # ./spec/normalizer_spec.rb:209[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 71) GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:214[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 72) GH::Normalizer time changes date to UTC
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:219[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 73) GH::Normalizer time changes any time entry to UTC
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == "2012-04-12T15:29:51Z"[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "2012-04-12T15:29:51Z":String[0m
-[36m # ./spec/normalizer_spec.rb:224[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 74) GH::Normalizer time does not choke on empty values
- [31mFailure/Error:[0m [31mnormalized[''date''].should be == ""[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "":String[0m
-[36m # ./spec/normalizer_spec.rb:229[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 75) GH::Normalizer links does not normalize config
- [31mFailure/Error:[0m [31mnormalized[''config''].should be == {''url'' => ''http://localhost''}[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for {"url"=>"http://localhost"}:Hash[0m
-[36m # ./spec/normalizer_spec.rb:236[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 76) GH::Normalizer links identifies _url suffix as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''foo_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:254[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 77) GH::Normalizer links identifies blog as link
- [31mFailure/Error:[0m [31mnormalized.should_not include(''blog'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:263[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 78) GH::Normalizer links detects avatar links from gravatar_url
- [31mFailure/Error:[0m [31mnormalized.should_not include(''gravatar_url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:272[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 79) GH::Normalizer links detects html urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for #[0m
-[36m # ./spec/normalizer_spec.rb:281[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 80) GH::Normalizer links detects self urls in url field
- [31mFailure/Error:[0m [31mnormalized.should_not include(''url'')[0m
- [31mNoMethodError:[0m
- [31mundefined method `should_not'' for {"_links"=>{"self"=>{"href"=>"http://api.github.com/foo"}}}:GH::Response[0m
-[36m # ./spec/normalizer_spec.rb:289[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 81) GH::Normalizer links passes through true
- [31mFailure/Error:[0m [31mnormalized[''foo''].should be == true[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for true:TrueClass[0m
-[36m # ./spec/normalizer_spec.rb:298[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 82) GH::LazyLoader wraps normalizer by default
- [31mFailure/Error:[0m [31mGH::LazyLoader.new.backend.should be_a(GH::Normalizer)[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for #>[0m
-[36m # ./spec/lazy_loader_spec.rb:17[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 83) GH::LazyLoader send http requests for missing fields
- [31mFailure/Error:[0m [31mshould_request(1) { rkh[''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:21[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 84) GH::LazyLoader does not send http requests for existing fields
- [31mFailure/Error:[0m [31mshould_not_request { rkh[''login''].should be == ''rkh'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "rkh":String[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:25[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 85) GH::LazyLoader allows traversing into nested structures
- [31mFailure/Error:[0m [31mshould_request(1) { sven[''friends''][0][''name''].should be == ''Konstantin Haase'' }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for "Konstantin Haase":String[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:34[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 86) GH::LazyLoader does not request twice if the field does not exist upstream
- [31mFailure/Error:[0m [31mshould_request(1) { 2.times { rkh[''foo''] } }[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/spec_helper.rb:26:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:38[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 87) GH::LazyLoader does not skip an already existing default proc
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:47[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/spec_helper.rb:30:in `should_not_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:46[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
- 88) GH::LazyLoader is still loading missing fields, even if a default proc is set
- [31mFailure/Error:[0m [31mrkh[''foo''].should be == 1[0m
- [31mNoMethodError:[0m
- [31mundefined method `should'' for 1:Fixnum[0m
-[36m # ./spec/lazy_loader_spec.rb:58[0m
-[36m # ./spec/spec_helper.rb:25:in `should_request''[0m
-[36m # ./spec/lazy_loader_spec.rb:57[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.8.7-p370/bin/rspec:23[0m
-
-Finished in 17.29 seconds
-[31m101 examples, 88 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/cache_spec.rb:6[0m [36m# GH::Cache send HTTP requests for uncached resources[0m
-[31mrspec ./spec/cache_spec.rb:11[0m [36m# GH::Cache uses the cache for subsequent requests[0m
-[31mrspec ./spec/cache_spec.rb:18[0m [36m# GH::Cache cache is resettable[0m
-[31mrspec ./spec/pagination_spec.rb:6[0m [36m# GH::Pagination paginates[0m
-[31mrspec ./spec/pagination_spec.rb:11[0m [36m# GH::Pagination paginates with GH::Normalizer[0m
-[31mrspec ./spec/pagination_spec.rb:17[0m [36m# GH::Pagination paginates on default stack[0m
-[31mrspec ./spec/pagination_spec.rb:22[0m [36m# GH::Pagination gives random access[0m
-[31mrspec ./spec/pagination_spec.rb:29[0m [36m# GH::Pagination does not wrap hash responses[0m
-[31mrspec ./spec/merge_commit_spec.rb:14[0m [36m# GH::MergeCommit adds merge commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:18[0m [36m# GH::MergeCommit adds base commits[0m
-[31mrspec ./spec/merge_commit_spec.rb:22[0m [36m# GH::MergeCommit adds head commits[0m
-[31mrspec ./spec/link_follower_spec.rb:11[0m [36m# GH::LinkFollower follows links[0m
-[31mrspec ./spec/link_follower_spec.rb:15[0m [36m# GH::LinkFollower works with lazy loading[0m
-[31mrspec ./spec/link_follower_spec.rb:21[0m [36m# GH::LinkFollower does not raise exceptions for unknown fields[0m
-[31mrspec ./spec/instrumentation_spec.rb:10[0m [36m# GH::Instrumentation instruments http[0m
-[31mrspec ./spec/instrumentation_spec.rb:16[0m [36m# GH::Instrumentation instruments [][0m
-[31mrspec ./spec/instrumentation_spec.rb:25[0m [36m# GH::Instrumentation instruments load[0m
-[31mrspec ./spec/error_spec.rb:20[0m [36m# GH::Error wraps connection[0m
-[31mrspec ./spec/error_spec.rb:24[0m [36m# GH::Error exposes the original exception[0m
-[31mrspec ./spec/error_spec.rb:28[0m [36m# GH::Error keeps the payload around[0m
-[31mrspec ./spec/parallel_spec.rb:11[0m [36m# GH::Parallel allows normal requests[0m
-[31mrspec ./spec/parallel_spec.rb:15[0m [36m# GH::Parallel sets in_parallel?[0m
-[31mrspec ./spec/parallel_spec.rb:21[0m [36m# GH::Parallel runs requests in parallel[0m
-[31mrspec ./spec/parallel_spec.rb:47[0m [36m# GH::Parallel runs requests right away if parallelize is set to false[0m
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:79[0m [36m# GH::Parallel returns the block value[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-[31mrspec ./spec/response_spec.rb:5[0m [36m# GH::Response handles UTF-8 properly, even if encoded binary[0m
-[31mrspec ./spec/response_spec.rb:12[0m [36m# GH::Response handles broken encodings properly[0m
-[31mrspec ./spec/remote_spec.rb:4[0m [36m# GH::Remote loads resources from github[0m
-[31mrspec ./spec/remote_spec.rb:9[0m [36m# GH::Remote sets headers correctly[0m
-[31mrspec ./spec/remote_spec.rb:19[0m [36m# GH::Remote parses the body[0m
-[31mrspec ./spec/gh_spec.rb:4[0m [36m# GH allows doing requests right from the GH object[0m
-[31mrspec ./spec/gh_spec.rb:8[0m [36m# GH allows posting to github[0m
-[31mrspec ./spec/gh_spec.rb:16[0m [36m# GH with returns the GH instance if no block is given[0m
-[31mrspec ./spec/gh_spec.rb:20[0m [36m# GH with returns the block value if block is given[0m
-[31mrspec ./spec/gh_spec.rb:24[0m [36m# GH with propagates options[0m
-[31mrspec ./spec/normalizer_spec.rb:19[0m [36m# GH::Normalizer is set up properly[0m
-[31mrspec ./spec/normalizer_spec.rb:23[0m [36m# GH::Normalizer leaves unknown fields in place[0m
-[31mrspec ./spec/normalizer_spec.rb:28[0m [36m# GH::Normalizer allows normalization with #load[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames org to organization[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames orgs to organizations[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames username to login[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo to repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos to repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repo_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames repos_foo to repository_foo[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repo to foo_repository[0m
-[31mrspec ./spec/normalizer_spec.rb:43[0m [36m# GH::Normalizer renaming renames foo_repos to foo_repositories[0m
-[31mrspec ./spec/normalizer_spec.rb:61[0m [36m# GH::Normalizer renaming renames commit to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:68[0m [36m# GH::Normalizer renaming does not rename commit to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:75[0m [36m# GH::Normalizer renaming renames commit_id to sha if value is a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:82[0m [36m# GH::Normalizer renaming does not rename commit_id to sha if value is not a sha[0m
-[31mrspec ./spec/normalizer_spec.rb:89[0m [36m# GH::Normalizer renaming renames comments to comment_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:96[0m [36m# GH::Normalizer renaming renames repositories to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:103[0m [36m# GH::Normalizer renaming renames repos to repository_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:110[0m [36m# GH::Normalizer renaming renames forks to fork_count if content is a number[0m
-[31mrspec ./spec/normalizer_spec.rb:117[0m [36m# GH::Normalizer renaming does not rename comments to comment_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:124[0m [36m# GH::Normalizer renaming does not rename repositories to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:131[0m [36m# GH::Normalizer renaming does not rename repos to repository_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:138[0m [36m# GH::Normalizer renaming does not rename forks to fork_count if content is not a number[0m
-[31mrspec ./spec/normalizer_spec.rb:145[0m [36m# GH::Normalizer renaming renames user to owner if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:152[0m [36m# GH::Normalizer renaming renames user to author if appropriate[0m
-[31mrspec ./spec/normalizer_spec.rb:159[0m [36m# GH::Normalizer renaming leaves user in place if owner exists[0m
-[31mrspec ./spec/normalizer_spec.rb:167[0m [36m# GH::Normalizer renaming leaves user in place if author exists[0m
-[31mrspec ./spec/normalizer_spec.rb:175[0m [36m# GH::Normalizer renaming leaves user in place if no indication what kind of user[0m
-[31mrspec ./spec/normalizer_spec.rb:183[0m [36m# GH::Normalizer renaming copies author to committer[0m
-[31mrspec ./spec/normalizer_spec.rb:190[0m [36m# GH::Normalizer renaming copies committer to author[0m
-[31mrspec ./spec/normalizer_spec.rb:197[0m [36m# GH::Normalizer renaming does not override committer or author if both exist[0m
-[31mrspec ./spec/normalizer_spec.rb:207[0m [36m# GH::Normalizer time transforms timestamps stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:212[0m [36m# GH::Normalizer time transforms dates stored in "timestamp" to a date in "date"[0m
-[31mrspec ./spec/normalizer_spec.rb:217[0m [36m# GH::Normalizer time changes date to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:222[0m [36m# GH::Normalizer time changes any time entry to UTC[0m
-[31mrspec ./spec/normalizer_spec.rb:227[0m [36m# GH::Normalizer time does not choke on empty values[0m
-[31mrspec ./spec/normalizer_spec.rb:234[0m [36m# GH::Normalizer links does not normalize config[0m
-[31mrspec ./spec/normalizer_spec.rb:252[0m [36m# GH::Normalizer links identifies _url suffix as link[0m
-[31mrspec ./spec/normalizer_spec.rb:261[0m [36m# GH::Normalizer links identifies blog as link[0m
-[31mrspec ./spec/normalizer_spec.rb:270[0m [36m# GH::Normalizer links detects avatar links from gravatar_url[0m
-[31mrspec ./spec/normalizer_spec.rb:279[0m [36m# GH::Normalizer links detects html urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:287[0m [36m# GH::Normalizer links detects self urls in url field[0m
-[31mrspec ./spec/normalizer_spec.rb:296[0m [36m# GH::Normalizer links passes through true[0m
-[31mrspec ./spec/lazy_loader_spec.rb:16[0m [36m# GH::LazyLoader wraps normalizer by default[0m
-[31mrspec ./spec/lazy_loader_spec.rb:20[0m [36m# GH::LazyLoader send http requests for missing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:24[0m [36m# GH::LazyLoader does not send http requests for existing fields[0m
-[31mrspec ./spec/lazy_loader_spec.rb:28[0m [36m# GH::LazyLoader allows traversing into nested structures[0m
-[31mrspec ./spec/lazy_loader_spec.rb:37[0m [36m# GH::LazyLoader does not request twice if the field does not exist upstream[0m
-[31mrspec ./spec/lazy_loader_spec.rb:41[0m [36m# GH::LazyLoader does not skip an already existing default proc[0m
-[31mrspec ./spec/lazy_loader_spec.rb:52[0m [36m# GH::LazyLoader is still loading missing fields, even if a default proc is set[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.8.7-p370/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1835990, 'Artifact::Log', '2012-07-11 13:51:09.897000', '2012-07-11 13:51:10.488000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521574, 'Using worker: ruby1.worker.travis-ci.org:travis-ruby-4
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf 708cc31f907a04102380b97a74a6b6da056a22fc
-$ export TRAVIS_RUBY_VERSION=1.9.2
-$ rvm use 1.9.2
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.2-p320(B[m
-$ ruby --version
-ruby 1.9.2p320 (2012-04-20 revision 35421) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[32m send HTTP requests for uncached resources[0m
-[32m uses the cache for subsequent requests[0m
-[32m cache is resettable[0m
-
-GH::Pagination
-[32m paginates[0m
-[32m paginates with GH::Normalizer[0m
-[32m paginates on default stack[0m
-[32m gives random access[0m
-[32m does not wrap hash responses[0m
-
-GH::MergeCommit
-[32m adds merge commits[0m
-[32m adds base commits[0m
-[32m adds head commits[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[32m follows links[0m
-[32m works with lazy loading[0m
-[32m does not raise exceptions for unknown fields[0m
-
-GH::Instrumentation
-[32m instruments http[0m
-[32m instruments [][0m
-[32m instruments load[0m
-
-GH::Error
-[32m wraps connection[0m
-[32m exposes the original exception[0m
-[32m keeps the payload around[0m
-
-GH::Parallel
-[32m allows normal requests[0m
-[32m sets in_parallel?[0m
-[32m runs requests in parallel[0m
-[32m runs requests right away if parallelize is set to false[0m
-[31m works with pagination (FAILED - 1)[0m
-[32m returns the block value[0m
-[31m works two times in a row (FAILED - 2)[0m
-
-GH::Response
-[32m handles UTF-8 properly, even if encoded binary[0m
-[32m handles broken encodings properly[0m
-
-GH::Remote
-[32m loads resources from github[0m
-[32m sets headers correctly[0m
-[32m raises an exception for missing resources[0m
-[32m parses the body[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[32m allows doing requests right from the GH object[0m
-[32m allows posting to github[0m
- with
-[32m returns the GH instance if no block is given[0m
-[32m returns the block value if block is given[0m
-[32m propagates options[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[32m is set up properly[0m
-[32m leaves unknown fields in place[0m
-[32m allows normalization with #load[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[32m renames org to organization[0m
-[32m renames orgs to organizations[0m
-[32m renames username to login[0m
-[32m renames repo to repository[0m
-[32m renames repos to repositories[0m
-[32m renames repo_foo to repository_foo[0m
-[32m renames repos_foo to repository_foo[0m
-[32m renames foo_repo to foo_repository[0m
-[32m renames foo_repos to foo_repositories[0m
-[32m renames commit to sha if value is a sha[0m
-[32m does not rename commit to sha if value is not a sha[0m
-[32m renames commit_id to sha if value is a sha[0m
-[32m does not rename commit_id to sha if value is not a sha[0m
-[32m renames comments to comment_count if content is a number[0m
-[32m renames repositories to repository_count if content is a number[0m
-[32m renames repos to repository_count if content is a number[0m
-[32m renames forks to fork_count if content is a number[0m
-[32m does not rename comments to comment_count if content is not a number[0m
-[32m does not rename repositories to repository_count if content is not a number[0m
-[32m does not rename repos to repository_count if content is not a number[0m
-[32m does not rename forks to fork_count if content is not a number[0m
-[32m renames user to owner if appropriate[0m
-[32m renames user to author if appropriate[0m
-[32m leaves user in place if owner exists[0m
-[32m leaves user in place if author exists[0m
-[32m leaves user in place if no indication what kind of user[0m
-[32m copies author to committer[0m
-[32m copies committer to author[0m
-[32m does not override committer or author if both exist[0m
- time
-[32m transforms timestamps stored in "timestamp" to a date in "date"[0m
-[32m transforms dates stored in "timestamp" to a date in "date"[0m
-[32m changes date to UTC[0m
-[32m changes any time entry to UTC[0m
-[32m does not choke on empty values[0m
- links
-[32m does not normalize config[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[32m identifies _url suffix as link[0m
-[32m identifies blog as link[0m
-[32m detects avatar links from gravatar_url[0m
-[32m detects html urls in url field[0m
-[32m detects self urls in url field[0m
-[32m passes through true[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[32m wraps normalizer by default[0m
-[32m send http requests for missing fields[0m
-[32m does not send http requests for existing fields[0m
-[32m allows traversing into nested structures[0m
-[32m does not request twice if the field does not exist upstream[0m
-[32m does not skip an already existing default proc[0m
-[32m is still loading missing fields, even if a default proc is set[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mrepos = GH.in_parallel { GH[''users/rkh/repos''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/net/http.rb:1205:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:74:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
- 2) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/net/http.rb:1205:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.2-p320/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
-Finished in 2.77 seconds
-[31m101 examples, 2 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.9.2-p320/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1835991, 'Artifact::Log', '2012-07-11 13:51:09.924000', '2012-07-11 13:51:10.954000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521575, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-2
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf 708cc31f907a04102380b97a74a6b6da056a22fc
-$ export TRAVIS_RUBY_VERSION=1.9.3
-$ rvm use 1.9.3
-[32mUsing /home/vagrant/.rvm/gems/ruby-1.9.3-p194(B[m
-$ ruby --version
-ruby 1.9.3p194 (2012-04-20 revision 35410) [i686-linux]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
-[32m send HTTP requests for uncached resources[0m
-[32m uses the cache for subsequent requests[0m
-[32m cache is resettable[0m
-
-GH::Pagination
-[32m paginates[0m
-[32m paginates with GH::Normalizer[0m
-[32m paginates on default stack[0m
-[32m gives random access[0m
-[32m does not wrap hash responses[0m
-
-GH::MergeCommit
-[32m adds merge commits[0m
-[32m adds base commits[0m
-[32m adds head commits[0m
-[32m allows lazy loading on the commit[0m
-
-GH::LinkFollower
-[32m follows links[0m
-[32m works with lazy loading[0m
-[32m does not raise exceptions for unknown fields[0m
-
-GH::Instrumentation
-[32m instruments http[0m
-[32m instruments [][0m
-[32m instruments load[0m
-
-GH::Error
-[32m wraps connection[0m
-[32m exposes the original exception[0m
-[32m keeps the payload around[0m
-
-GH::Parallel
-[32m allows normal requests[0m
-[32m sets in_parallel?[0m
-[32m runs requests in parallel[0m
-[32m runs requests right away if parallelize is set to false[0m
-[31m works with pagination (FAILED - 1)[0m
-[32m returns the block value[0m
-[31m works two times in a row (FAILED - 2)[0m
-
-GH::Response
-[32m handles UTF-8 properly, even if encoded binary[0m
-[32m handles broken encodings properly[0m
-
-GH::Remote
-[32m loads resources from github[0m
-[32m sets headers correctly[0m
-[32m raises an exception for missing resources[0m
-[32m parses the body[0m
-[32m sends http calls through the frontend[0m
-[32m sends request calls through the frontend[0m
-
-GH
-[32m allows doing requests right from the GH object[0m
-[32m allows posting to github[0m
- with
-[32m returns the GH instance if no block is given[0m
-[32m returns the block value if block is given[0m
-[32m propagates options[0m
-
-GH::Wrapper
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::Normalizer
-[32m is set up properly[0m
-[32m leaves unknown fields in place[0m
-[32m allows normalization with #load[0m
-[33m works for deeply nested fields (PENDING: Not yet implemented)[0m
-[33m works for lists (PENDING: Not yet implemented)[0m
- date fields
-[33m generates date from timestamp (PENDING: Not yet implemented)[0m
- renaming
-[32m renames org to organization[0m
-[32m renames orgs to organizations[0m
-[32m renames username to login[0m
-[32m renames repo to repository[0m
-[32m renames repos to repositories[0m
-[32m renames repo_foo to repository_foo[0m
-[32m renames repos_foo to repository_foo[0m
-[32m renames foo_repo to foo_repository[0m
-[32m renames foo_repos to foo_repositories[0m
-[32m renames commit to sha if value is a sha[0m
-[32m does not rename commit to sha if value is not a sha[0m
-[32m renames commit_id to sha if value is a sha[0m
-[32m does not rename commit_id to sha if value is not a sha[0m
-[32m renames comments to comment_count if content is a number[0m
-[32m renames repositories to repository_count if content is a number[0m
-[32m renames repos to repository_count if content is a number[0m
-[32m renames forks to fork_count if content is a number[0m
-[32m does not rename comments to comment_count if content is not a number[0m
-[32m does not rename repositories to repository_count if content is not a number[0m
-[32m does not rename repos to repository_count if content is not a number[0m
-[32m does not rename forks to fork_count if content is not a number[0m
-[32m renames user to owner if appropriate[0m
-[32m renames user to author if appropriate[0m
-[32m leaves user in place if owner exists[0m
-[32m leaves user in place if author exists[0m
-[32m leaves user in place if no indication what kind of user[0m
-[32m copies author to committer[0m
-[32m copies committer to author[0m
-[32m does not override committer or author if both exist[0m
- time
-[32m transforms timestamps stored in "timestamp" to a date in "date"[0m
-[32m transforms dates stored in "timestamp" to a date in "date"[0m
-[32m changes date to UTC[0m
-[32m changes any time entry to UTC[0m
-[32m does not choke on empty values[0m
- links
-[32m does not normalize config[0m
-[33m generates link entries from link headers (PENDING: No reason given)[0m
-[33m generates link headers from link entries (PENDING: Not yet implemented)[0m
-[33m does not discard existing link entires (PENDING: Not yet implemented)[0m
-[33m does not discard existing link headers (PENDING: Not yet implemented)[0m
-[32m identifies _url suffix as link[0m
-[32m identifies blog as link[0m
-[32m detects avatar links from gravatar_url[0m
-[32m detects html urls in url field[0m
-[32m detects self urls in url field[0m
-[32m passes through true[0m
-
-GH::Stack
-[33m is specified (PENDING: Not yet implemented)[0m
-
-GH::LazyLoader
-[32m wraps normalizer by default[0m
-[32m send http requests for missing fields[0m
-[32m does not send http requests for existing fields[0m
-[32m allows traversing into nested structures[0m
-[32m does not request twice if the field does not exist upstream[0m
-[32m does not skip an already existing default proc[0m
-[32m is still loading missing fields, even if a default proc is set[0m
-
-Pending:
-[33m GH::Wrapper is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/wrapper_spec.rb:4[0m
-[33m GH::Normalizer works for deeply nested fields[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:34[0m
-[33m GH::Normalizer works for lists[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:35[0m
-[33m GH::Normalizer date fields generates date from timestamp[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:38[0m
-[33m GH::Normalizer links generates link entries from link headers[0m
-[36m # No reason given[0m
-[36m # ./spec/normalizer_spec.rb:239[0m
-[33m GH::Normalizer links generates link headers from link entries[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:248[0m
-[33m GH::Normalizer links does not discard existing link entires[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:249[0m
-[33m GH::Normalizer links does not discard existing link headers[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/normalizer_spec.rb:250[0m
-[33m GH::Stack is specified[0m
-[36m # Not yet implemented[0m
-[36m # ./spec/stack_spec.rb:4[0m
-
-Failures:
-
- 1) GH::Parallel works with pagination
- [31mFailure/Error:[0m [31mrepos = GH.in_parallel { GH[''users/rkh/repos''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:74:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
- 2) GH::Parallel works two times in a row
- [31mFailure/Error:[0m [31ma = GH.in_parallel { GH[''users/rkh''] }[0m
- [31mNoMethodError:[0m
- [31mundefined method `closed?'' for nil:NilClass[0m
-[36m # /home/vagrant/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/net/http.rb:1335:in `begin_transport''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:356:in `pipeline_send''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:177:in `pipeline''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''[0m
-[36m # ./lib/gh/faraday_adapter.rb:33:in `block in run''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `each''[0m
-[36m # ./lib/gh/faraday_adapter.rb:31:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''[0m
-[36m # ./lib/gh/parallel.rb:37:in `in_parallel''[0m
-[36m # ./spec/parallel_spec.rb:87:in `block (2 levels) in ''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `instance_eval''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `block in run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block (2 levels) in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `map''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `block in run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''[0m
-[36m # /home/vagrant/.rvm/gems/ruby-1.9.3-p194/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `block in autorun''[0m
-
-Finished in 2.46 seconds
-[31m101 examples, 2 failures, 9 pending[0m
-
-Failed examples:
-
-[31mrspec ./spec/parallel_spec.rb:71[0m [36m# GH::Parallel works with pagination[0m
-[31mrspec ./spec/parallel_spec.rb:83[0m [36m# GH::Parallel works two times in a row[0m
-rake aborted!
-/home/vagrant/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd failed
-
-Tasks: TOP => default
-(See full trace by running task with --trace)
-
-Done. Build script exited with: 1
-', 1835992, 'Artifact::Log', '2012-07-11 13:51:09.967000', '2012-07-11 13:51:10.788000');
-
-INSERT INTO artifacts (id, content, job_id, type, created_at, updated_at)
- VALUES (1521576, 'Using worker: ruby2.worker.travis-ci.org:travis-ruby-3
-
-$ cd ~/builds
-$ export TRAVIS_PULL_REQUEST=false
-$ export TRAVIS_SECURE_ENV_VARS=false
-$ git clone --depth=100 --quiet git://github.com/rkh/gh.git rkh/gh
-$ cd rkh/gh
-$ git checkout -qf 708cc31f907a04102380b97a74a6b6da056a22fc
-$ export TRAVIS_RUBY_VERSION=jruby-18mode
-$ rvm use jruby-18mode
-[32mUsing /home/vagrant/.rvm/gems/jruby-1.6.7.2(B[m
-$ ruby --version
-jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (OpenJDK Server VM 1.7.0_147-icedtea) [linux-i386-java]
-$ gem --version
-1.8.24
-$ export BUNDLE_GEMFILE=/home/vagrant/builds/rkh/gh/Gemfile
-$ bundle install
-Fetching gem metadata from http://rubygems.org/........
-Installing rake (0.9.2.2)
-Installing addressable (2.2.8)
-Installing backports (2.6.1)
-Using bouncy-castle-java (1.5.0146.1)
-Installing crack (0.3.1)
-Installing diff-lcs (1.1.3)
-Installing multipart-post (1.1.5)
-Installing faraday (0.8.1)
-Installing multi_json (1.3.6)
-Installing net-http-persistent (2.7)
-Installing net-http-pipeline (1.0.1)
-Using gh (0.7.3) from source at /home/vagrant/builds/rkh/gh
-Using jruby-openssl (0.7.7)
-Installing rspec-core (2.11.0)
-Installing rspec-expectations (2.11.1)
-Installing rspec-mocks (2.11.1)
-Installing rspec (2.11.0)
-Installing webmock (1.8.7)
-Using bundler (1.1.4)
-[32mYour bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.[0m
-$ bundle exec rake
-/home/vagrant/.rvm/rubies/jruby-1.6.7.2/bin/jruby -S rspec ./spec/cache_spec.rb ./spec/pagination_spec.rb ./spec/merge_commit_spec.rb ./spec/link_follower_spec.rb ./spec/instrumentation_spec.rb ./spec/error_spec.rb ./spec/parallel_spec.rb ./spec/response_spec.rb ./spec/remote_spec.rb ./spec/gh_spec.rb ./spec/wrapper_spec.rb ./spec/normalizer_spec.rb ./spec/stack_spec.rb ./spec/lazy_loader_spec.rb -bcfd
-
-GH::Cache
- send HTTP requests for uncached resources (FAILED - 1)
- uses the cache for subsequent requests (FAILED - 2)
-/home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:11 warning: already initialized constant NET_HTTP_EXCEPTIONS
-[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading a different JSON library to improve performance.
- cache is resettable (FAILED - 3)
-
-GH::Pagination
- paginates (FAILED - 4)
- paginates with GH::Normalizer (FAILED - 5)
- paginates on default stack (FAILED - 6)
- gives random access (FAILED - 7)
- does not wrap hash responses (FAILED - 8)
-
-GH::MergeCommit
- adds merge commits (FAILED - 9)
- adds base commits (FAILED - 10)
- adds head commits (FAILED - 11)
- allows lazy loading on the commit
-
-GH::LinkFollower
- follows links (FAILED - 12)
- works with lazy loading (FAILED - 13)
- does not raise exceptions for unknown fields (FAILED - 14)
-
-GH::Instrumentation
- instruments http (FAILED - 15)
- instruments [] (FAILED - 16)
- instruments load (FAILED - 17)
-
-GH::Error
- wraps connection (FAILED - 18)
- exposes the original exception (FAILED - 19)
- keeps the payload around (FAILED - 20)
-
-GH::Parallel
- allows normal requests (FAILED - 21)
- sets in_parallel? (FAILED - 22)
- runs requests in parallel (FAILED - 23)
- runs requests right away if parallelize is set to false (FAILED - 24)
- works with pagination (FAILED - 25)
- returns the block value (FAILED - 26)
- works two times in a row (FAILED - 27)
-
-GH::Response
- handles UTF-8 properly, even if encoded binary (FAILED - 28)
- handles broken encodings properly (FAILED - 29)
-
-GH::Remote
- loads resources from github (FAILED - 30)
- sets headers correctly (FAILED - 31)
- raises an exception for missing resources
- parses the body (FAILED - 32)
- sends http calls through the frontend
- sends request calls through the frontend
-
-GH
- allows doing requests right from the GH object (FAILED - 33)
- allows posting to github (FAILED - 34)
- with
- returns the GH instance if no block is given (FAILED - 35)
- returns the block value if block is given (FAILED - 36)
- propagates options (FAILED - 37)
-
-GH::Wrapper
- is specified (PENDING: Not yet implemented)
-
-GH::Normalizer
- is set up properly (FAILED - 38)
- leaves unknown fields in place (FAILED - 39)
- allows normalization with #load (FAILED - 40)
- works for deeply nested fields (PENDING: Not yet implemented)
- works for lists (PENDING: Not yet implemented)
- date fields
- generates date from timestamp (PENDING: Not yet implemented)
- renaming
- renames org to organization (FAILED - 41)
- renames orgs to organizations (FAILED - 42)
- renames username to login (FAILED - 43)
- renames repo to repository (FAILED - 44)
- renames repos to repositories (FAILED - 45)
- renames repo_foo to repository_foo (FAILED - 46)
- renames repos_foo to repository_foo (FAILED - 47)
- renames foo_repo to foo_repository (FAILED - 48)
- renames foo_repos to foo_repositories (FAILED - 49)
- renames commit to sha if value is a sha (FAILED - 50)
- does not rename commit to sha if value is not a sha (FAILED - 51)
- renames commit_id to sha if value is a sha (FAILED - 52)
- does not rename commit_id to sha if value is not a sha (FAILED - 53)
- renames comments to comment_count if content is a number (FAILED - 54)
- renames repositories to repository_count if content is a number (FAILED - 55)
- renames repos to repository_count if content is a number (FAILED - 56)
- renames forks to fork_count if content is a number (FAILED - 57)
- does not rename comments to comment_count if content is not a number (FAILED - 58)
- does not rename repositories to repository_count if content is not a number (FAILED - 59)
- does not rename repos to repository_count if content is not a number (FAILED - 60)
- does not rename forks to fork_count if content is not a number (FAILED - 61)
- renames user to owner if appropriate (FAILED - 62)
- renames user to author if appropriate (FAILED - 63)
- leaves user in place if owner exists (FAILED - 64)
- leaves user in place if author exists (FAILED - 65)
- leaves user in place if no indication what kind of user (FAILED - 66)
- copies author to committer (FAILED - 67)
- copies committer to author (FAILED - 68)
- does not override committer or author if both exist (FAILED - 69)
- time
- transforms timestamps stored in "timestamp" to a date in "date" (FAILED - 70)
- transforms dates stored in "timestamp" to a date in "date" (FAILED - 71)
- changes date to UTC (FAILED - 72)
- changes any time entry to UTC (FAILED - 73)
- does not choke on empty values (FAILED - 74)
- links
- does not normalize config (FAILED - 75)
- generates link entries from link headers (PENDING: No reason given)
- generates link headers from link entries (PENDING: Not yet implemented)
- does not discard existing link entires (PENDING: Not yet implemented)
- does not discard existing link headers (PENDING: Not yet implemented)
- identifies _url suffix as link (FAILED - 76)
- identifies blog as link (FAILED - 77)
- detects avatar links from gravatar_url (FAILED - 78)
- detects html urls in url field (FAILED - 79)
- detects self urls in url field (FAILED - 80)
- passes through true (FAILED - 81)
-
-GH::Stack
- is specified (PENDING: Not yet implemented)
-
-GH::LazyLoader
- wraps normalizer by default (FAILED - 82)
- send http requests for missing fields (FAILED - 83)
- does not send http requests for existing fields (FAILED - 84)
- allows traversing into nested structures (FAILED - 85)
- does not request twice if the field does not exist upstream (FAILED - 86)
- does not skip an already existing default proc (FAILED - 87)
- is still loading missing fields, even if a default proc is set (FAILED - 88)
-
-Pending:
- GH::Wrapper is specified
- # Not yet implemented
- # ./spec/wrapper_spec.rb:4
- GH::Normalizer works for deeply nested fields
- # Not yet implemented
- # ./spec/normalizer_spec.rb:34
- GH::Normalizer works for lists
- # Not yet implemented
- # ./spec/normalizer_spec.rb:35
- GH::Normalizer date fields generates date from timestamp
- # Not yet implemented
- # ./spec/normalizer_spec.rb:38
- GH::Normalizer links generates link entries from link headers
- # No reason given
- # ./spec/normalizer_spec.rb:239
- GH::Normalizer links generates link headers from link entries
- # Not yet implemented
- # ./spec/normalizer_spec.rb:248
- GH::Normalizer links does not discard existing link entires
- # Not yet implemented
- # ./spec/normalizer_spec.rb:249
- GH::Normalizer links does not discard existing link headers
- # Not yet implemented
- # ./spec/normalizer_spec.rb:250
- GH::Stack is specified
- # Not yet implemented
- # ./spec/stack_spec.rb:4
-
-Failures:
-
- 1) GH::Cache send HTTP requests for uncached resources
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:7:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 2) GH::Cache uses the cache for subsequent requests
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 3) GH::Cache cache is resettable
- Failure/Error: subject[''users/rkh''][''name''].should be == "Konstantin Haase"
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/cache_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 4) GH::Pagination paginates
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:8:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 5) GH::Pagination paginates with GH::Normalizer
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:14:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 6) GH::Pagination paginates on default stack
- Failure/Error: counter.should be > 120
- NoMethodError:
- undefined method `should'' for 125:Fixnum
- # ./spec/pagination_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 7) GH::Pagination gives random access
- Failure/Error: data[index].should be == value
- NoMethodError:
- undefined method `should'' for #
- # ./spec/pagination_spec.rb:25:in `(root)''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index_with_optional_args_and_block''
- # org/jruby/RubyArray.java:1615:in `each''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./lib/gh/pagination.rb:12:in `each''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/backports-2.6.1/lib/backports/1.8.7/enumerable.rb:67:in `each_with_index_with_optional_args_and_block''
- # ./spec/pagination_spec.rb:24:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 8) GH::Pagination does not wrap hash responses
- Failure/Error: subject[''users/rkh''].should_not be_a(GH::Pagination::Paginated)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/pagination_spec.rb:30:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 9) GH::MergeCommit adds merge commits
- Failure/Error: pull_request[''merge_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "ca3c0a44ec1d9bf8557d2653aa1b79fcc9ff5f5d":String
- # ./spec/merge_commit_spec.rb:15:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 10) GH::MergeCommit adds base commits
- Failure/Error: pull_request[''base_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "4a90c0ad9187c8735e1bcbf39a0291a21284994a":String
- # ./spec/merge_commit_spec.rb:19:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 11) GH::MergeCommit adds head commits
- Failure/Error: pull_request[''head_commit''][''sha''].should_not be_nil
- NoMethodError:
- undefined method `should_not'' for "01eae10530ca65b51474b2d950365967ebdf3023":String
- # ./spec/merge_commit_spec.rb:23:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 12) GH::LinkFollower follows links
- Failure/Error: commentator[''login''].should be == ''rtomayko''
- NoMethodError:
- undefined method `should'' for "rtomayko":String
- # ./spec/link_follower_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 13) GH::LinkFollower works with lazy loading
- Failure/Error: commentator["location"].should be == "San Francisco"
- NoMethodError:
- undefined method `should'' for "San Francisco":String
- # ./spec/link_follower_spec.rb:18:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 14) GH::LinkFollower does not raise exceptions for unknown fields
- Failure/Error: commentator["location"].should be_nil
- NoMethodError:
- undefined method `should'' for nil:NilClass
- # ./spec/link_follower_spec.rb:22:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 15) GH::Instrumentation instruments http
- Failure/Error: @events.size.should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/instrumentation_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 16) GH::Instrumentation instruments []
- Failure/Error: @events.size.should be == 2
- NoMethodError:
- undefined method `should'' for 2:Fixnum
- # ./spec/instrumentation_spec.rb:18:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 17) GH::Instrumentation instruments load
- Failure/Error: @events.size.should be == 1
- NoMethodError:
- undefined method `should'' for 1:Fixnum
- # ./spec/instrumentation_spec.rb:27:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 18) GH::Error wraps connection
- Failure/Error: exception.should be_an(GH::Error)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/error_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 19) GH::Error exposes the original exception
- Failure/Error: exception.error.should be_a(RuntimeError)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/error_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 20) GH::Error keeps the payload around
- Failure/Error: exception.payload.should be == {''foo'' => ''bar''}
- NoMethodError:
- undefined method `should'' for {"foo"=>"bar"}:Hash
- # ./spec/error_spec.rb:29:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 21) GH::Parallel allows normal requests
- Failure/Error: GH[''users/rkh''][''name''].should be == ''Konstantin Haase''
- NoMethodError:
- undefined method `should'' for "Konstantin Haase":String
- # ./spec/parallel_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 22) GH::Parallel sets in_parallel?
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:16:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 23) GH::Parallel runs requests in parallel
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 24) GH::Parallel runs requests right away if parallelize is set to false
- Failure/Error: GH.should_not be_in_parallel
- NoMethodError:
- undefined method `should_not'' for GH:Module
- # ./spec/parallel_spec.rb:51:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/parallel_spec.rb:50:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 25) GH::Parallel works with pagination
- Failure/Error: repos = GH.in_parallel { GH[''users/rkh/repos''] }
- OpenSSL::SSL::SSLError:
- certificate verify failed
- # org/jruby/ext/openssl/SSLSocket.java:180:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:586:in `connect''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:553:in `do_start''
- # /home/vagrant/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:542:in `start''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/webmock-1.8.7/lib/webmock/http_lib_adapters/net_http.rb:90:in `request_with_webmock''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:224:in `pipeline_check''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:171:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1181:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyKernel.java:2076:in `send''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./spec/parallel_spec.rb:74:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 26) GH::Parallel returns the block value
- Failure/Error: GH.in_parallel { 42 }.should be == 42
- NoMethodError:
- undefined method `should'' for 42:Fixnum
- # ./spec/parallel_spec.rb:80:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 27) GH::Parallel works two times in a row
- Failure/Error: a = GH.in_parallel { GH[''users/rkh''] }
- Net::HTTP::Pipeline::PipelineError:
- pipeline connections are not supported
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:215:in `pipeline_check''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-pipeline-1.0.1/lib/net/http/pipeline.rb:171:in `pipeline''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:671:in `pipeline''
- # ./lib/gh/faraday_adapter.rb:33:in `run''
- # org/jruby/RubyHash.java:1181:in `each''
- # ./lib/gh/faraday_adapter.rb:31:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:148:in `in_parallel''
- # ./lib/gh/parallel.rb:37:in `in_parallel''
- # org/jruby/RubyKernel.java:2076:in `send''
- # org/jruby/RubyKernel.java:2076:in `send''
- # ./spec/parallel_spec.rb:87:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 28) GH::Response handles UTF-8 properly, even if encoded binary
- Failure/Error: response[''foo''].should be == ''über cool sista året''
- NoMethodError:
- undefined method `should'' for "\303\274ber cool sista \303\245ret":String
- # ./spec/response_spec.rb:9:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 29) GH::Response handles broken encodings properly
- Failure/Error: GH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"
- NoMethodError:
- undefined method `should'' for "\303":String
- # ./spec/response_spec.rb:13:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 30) GH::Remote loads resources from github
- Failure/Error: subject[''foo''].to_s.should be == ''["foo"]''
- NoMethodError:
- undefined method `should'' for "[\"foo\"]":String
- # ./spec/remote_spec.rb:6:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 31) GH::Remote sets headers correctly
- Failure/Error: subject[''foo''].headers[''x-foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/remote_spec.rb:11:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 32) GH::Remote parses the body
- Failure/Error: subject[''foo''][''foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/remote_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 33) GH allows doing requests right from the GH object
- Failure/Error: GH[''users/rkh''][''name''].should be == "Konstantin Haase"
- Net::HTTP::Persistent::Error:
- too many connection resets (due to certificate verify failed - OpenSSL::SSL::SSLError) after 0 requests on 2006, last used 0.296 seconds ago
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/net-http-persistent-2.7/lib/net/http/persistent.rb:839:in `request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http_persistent.rb:17:in `perform_request''
- # ./lib/gh/faraday_adapter.rb:55:in `perform_request''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/adapter/net_http.rb:35:in `call''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # org/jruby/RubyKernel.java:1183:in `catch''
- # ./lib/gh/faraday_adapter.rb:51:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/response.rb:8:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/request/retry.rb:11:in `call''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/faraday-0.8.1/lib/faraday/connection.rb:226:in `run_request''
- # ./lib/gh/remote.rb:74:in `http''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # org/jruby/RubyKernel.java:2088:in `send''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:16:in `http''
- # ./lib/gh/remote.rb:61:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/pagination.rb:45:in `fetch_resource''
- # org/jruby/RubyKernel.java:2080:in `send''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./lib/gh/wrapper.rb:73:in `[]''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # ./lib/gh/instrumentation.rb:30:in `instrument''
- # ./lib/gh/instrumentation.rb:24:in `[]''
- # org/jruby/RubyKernel.java:2080:in `send''
- # ./spec/gh_spec.rb:5:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 34) GH allows posting to github
- Failure/Error: response[''hi''].should be == ''ho''
- NoMethodError:
- undefined method `should'' for "ho":String
- # ./spec/gh_spec.rb:12:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 35) GH with returns the GH instance if no block is given
- Failure/Error: GH.with(:token => "...").should be_a(GH::Wrapper)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/gh_spec.rb:17:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 36) GH with returns the block value if block is given
- Failure/Error: GH.with(:token => "...") { 42 }.should be == 42
- NoMethodError:
- undefined method `should'' for 42:Fixnum
- # ./spec/gh_spec.rb:21:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 37) GH with propagates options
- Failure/Error: GH.options.should be == {:a => :b, :b => :c}
- NoMethodError:
- undefined method `should'' for {:a=>:b, :b=>:c}:Hash
- # ./spec/gh_spec.rb:27:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/gh_spec.rb:26:in `(root)''
- # ./lib/gh.rb:32:in `with''
- # ./spec/gh_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 38) GH::Normalizer is set up properly
- Failure/Error: backend.frontend.should be_a(GH::Normalizer)
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:20:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 39) GH::Normalizer leaves unknown fields in place
- Failure/Error: normalized[''foo''].should be == ''bar''
- NoMethodError:
- undefined method `should'' for "bar":String
- # ./spec/normalizer_spec.rb:25:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 40) GH::Normalizer allows normalization with #load
- Failure/Error: result.should_not include("org")
- NoMethodError:
- undefined method `should_not'' for {"organization"=>"foo"}:GH::Response
- # ./spec/normalizer_spec.rb:30:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 41) GH::Normalizer renaming renames org to organization
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 42) GH::Normalizer renaming renames orgs to organizations
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 43) GH::Normalizer renaming renames username to login
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 44) GH::Normalizer renaming renames repo to repository
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 45) GH::Normalizer renaming renames repos to repositories
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 46) GH::Normalizer renaming renames repo_foo to repository_foo
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 47) GH::Normalizer renaming renames repos_foo to repository_foo
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 48) GH::Normalizer renaming renames foo_repo to foo_repository
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 49) GH::Normalizer renaming renames foo_repos to foo_repositories
- Failure/Error: normalized.should_not include(a)
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:45:in `renames''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 50) GH::Normalizer renaming renames commit to sha if value is a sha
- Failure/Error: normalized.should_not include(''commit'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:63:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 51) GH::Normalizer renaming does not rename commit to sha if value is not a sha
- Failure/Error: normalized.should include(''commit'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:70:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 52) GH::Normalizer renaming renames commit_id to sha if value is a sha
- Failure/Error: normalized.should_not include(''commit_id'')
- NoMethodError:
- undefined method `should_not'' for #
- # ./spec/normalizer_spec.rb:77:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 53) GH::Normalizer renaming does not rename commit_id to sha if value is not a sha
- Failure/Error: normalized.should include(''commit_id'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:84:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 54) GH::Normalizer renaming renames comments to comment_count if content is a number
- Failure/Error: normalized.should include(''comment_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:91:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 55) GH::Normalizer renaming renames repositories to repository_count if content is a number
- Failure/Error: normalized.should include(''repository_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:98:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 56) GH::Normalizer renaming renames repos to repository_count if content is a number
- Failure/Error: normalized.should include(''repository_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:105:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 57) GH::Normalizer renaming renames forks to fork_count if content is a number
- Failure/Error: normalized.should include(''fork_count'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:112:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 58) GH::Normalizer renaming does not rename comments to comment_count if content is not a number
- Failure/Error: normalized.should include(''comments'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:119:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 59) GH::Normalizer renaming does not rename repositories to repository_count if content is not a number
- Failure/Error: normalized.should include(''repositories'')
- NoMethodError:
- undefined method `should'' for #
- # ./spec/normalizer_spec.rb:126:in `(root)''
- # org/jruby/RubyKernel.java:2045:in `instance_eval''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:113:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:111:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:253:in `with_around_each_hooks''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:110:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example.rb:108:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:378:in `run_examples''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:374:in `run_examples''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:360:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/example_group.rb:361:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # org/jruby/RubyArray.java:2331:in `collect''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:28:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/reporter.rb:34:in `report''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/command_line.rb:25:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:69:in `run''
- # /home/vagrant/.rvm/gems/jruby-1.6.7.2/gems/rspec-core-2.11.0/lib/rspec/core/runner.rb:8:in `autorun''
- # org/jruby/RubyProc.java:270:in `call''
- # org/jruby/RubyProc.java:224:in `call''
-
- 60) GH::Normalizer renaming does not rename repos to repository_count if content is not a number
- Failure/Error: normalized.should include(''repositories'')
- NoMethodError:
- undefined method `should'' for #