2014-03-27 06:41:23 +08:00
|
|
|
group :test do
|
2016-09-19 06:02:43 +08:00
|
|
|
gem 'gergich', '0.1.5', require: false
|
2015-04-07 00:03:44 +08:00
|
|
|
gem 'testingbot', require: false
|
|
|
|
gem 'simplecov', '0.9.2', require: false
|
2016-10-11 01:21:38 +08:00
|
|
|
gem 'docile', '1.1.5', require: false
|
2015-04-07 00:03:44 +08:00
|
|
|
gem 'simplecov-rcov', '0.2.3', require: false
|
2014-12-27 07:45:10 +08:00
|
|
|
gem 'bluecloth', '2.2.0' # for generating api docs
|
2015-05-30 00:06:44 +08:00
|
|
|
gem 'redcarpet', '3.2.3', require: false
|
2015-04-07 00:03:44 +08:00
|
|
|
gem 'github-markdown', '0.6.8', require: false
|
2015-05-30 01:04:15 +08:00
|
|
|
gem 'bullet_instructure', '4.14.8', require: 'bullet'
|
2016-10-12 02:07:13 +08:00
|
|
|
gem 'mocha', github: 'maneframe/mocha', ref: 'bb8813fbb4cc589d7c58073d93983722d61b6919', require: false
|
2016-10-11 01:21:38 +08:00
|
|
|
gem 'metaclass', '0.0.4', require: false
|
2016-10-11 01:26:34 +08:00
|
|
|
gem 'thin', '1.7.0'
|
|
|
|
gem 'eventmachine', '1.2.0.1', require: false
|
2014-06-21 04:54:55 +08:00
|
|
|
|
2016-10-11 01:06:43 +08:00
|
|
|
gem 'rspec', '3.5.0'
|
|
|
|
gem 'rspec-rails', '3.5.2'
|
2014-12-26 05:48:37 +08:00
|
|
|
gem 'rspec-collection_matchers', '1.1.2'
|
2015-08-04 13:26:42 +08:00
|
|
|
gem 'shoulda-matchers', '2.8.0'
|
2015-04-05 08:49:25 +08:00
|
|
|
|
|
|
|
gem 'rubocop', require: false
|
|
|
|
gem 'rubocop-rspec', require: false
|
|
|
|
gem 'rubocop-canvas', require: false, path: 'gems/rubocop-canvas'
|
|
|
|
|
2016-08-20 04:13:36 +08:00
|
|
|
gem 'once-ler', '0.0.16'
|
2014-07-24 01:14:22 +08:00
|
|
|
|
2016-10-11 01:21:38 +08:00
|
|
|
gem 'sequel', '4.34.0', require: false
|
2016-06-22 00:43:38 +08:00
|
|
|
# Keep this gem synced with docker-compose/seleniumff/Dockerfile
|
2016-07-16 02:20:53 +08:00
|
|
|
gem 'selenium-webdriver', '2.53.4'
|
2016-10-11 01:21:38 +08:00
|
|
|
gem 'childprocess', '0.5.9', require: false
|
|
|
|
gem 'websocket', '1.2.3', require: false
|
selinimum: run the minimum selenium necessary for your commit
What is this?
=============
Selinimum speeds up selenium by only running the specs it needs to for
your commit (iff it can safely determine that). For the purposes of the
initial implementation, that means that if your commit ONLY affects:
1. controllers (but not ApplicationController)
2. views (but not shared / layouts)
3. misc whitelisted stuff (images, .md files, etc.)
then it will only run the selenium specs that actually exercise those.
If your commit touches ANYTHING else (models, lib, etc.), all selenium
specs will run.
But wait, there's more!
=======================
Very soon selinimum will also handle:
1. js/coffee/jsx/hbs (except in the common bundle)
2. scss (except in the common bundle)
We already capture which bundles get used by each spec (see Capture), we
just need to correlate that with the individual files via a dependency
graph (probably using madge and sass-graph)
How does it work?
=================
The new post-merge selenium build will run all the specs with selinimum
capturing enabled. This records any controllers/views/js_bundle/css_bundle
that gets used in the course of each selenium spec, and stores a bunch of
data in S3.
Then when your patchset build runs, it will run Selinimum.minimize (via
corresponding tweak in rspect repo) on the list of spec files. If your
commit's dependents can be fully inferred and synthesized with the spec
dependency data from S3, only the relevant specs will actually be run.
Test Plan
=========
This commit doesn't actually cause selinimum to run on jenkins; that
requires some rspect changes and jenkins config. Refer to the test plan
here: https://gerrit.instructure.com/#/c/58088/
Change-Id: I991574c327a3a580c6fdc3ca3797dcfe0490a096
Reviewed-on: https://gerrit.instructure.com/58085
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Jon Jensen <jon@instructure.com>
QA-Review: Jon Jensen <jon@instructure.com>
2015-07-10 03:00:50 +08:00
|
|
|
gem 'selinimum', '0.0.1', require: false, path: 'gems/selinimum'
|
2016-08-20 04:13:36 +08:00
|
|
|
gem 'test_after_commit', '1.1.0'
|
2016-08-26 00:13:12 +08:00
|
|
|
gem 'testrailtagging', '~> 0.3.6.9', require: false
|
2016-04-19 20:19:57 +08:00
|
|
|
|
2015-12-05 06:08:40 +08:00
|
|
|
gem 'webmock', '1.22.3', require: false
|
|
|
|
gem 'addressable', '2.3.8', require: false
|
|
|
|
gem 'crack', '0.4.3', require: false
|
2015-03-14 04:07:54 +08:00
|
|
|
gem 'yard', '0.8.7.6'
|
2014-03-27 06:41:23 +08:00
|
|
|
gem 'yard-appendix', '>=0.1.8'
|
|
|
|
gem 'timecop', '0.6.3'
|
2015-10-15 22:55:39 +08:00
|
|
|
gem 'jira_ref_parser', '1.0.0'
|
2016-01-05 04:45:37 +08:00
|
|
|
gem 'headless', '2.2.0', require: false
|
2016-02-19 12:14:04 +08:00
|
|
|
gem 'escape_code', '0.2'
|
2015-12-30 05:34:43 +08:00
|
|
|
|
|
|
|
unless CANVAS_RAILS4_0
|
|
|
|
gem 'rails-dom-testing', '1.0.7'
|
|
|
|
end
|
2014-03-27 06:41:23 +08:00
|
|
|
end
|