teaspoon 0.9.1 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +141 -0
- data/README.md +9 -19
- data/{vendor → app}/assets/javascripts/support/bind-poly.js +0 -0
- data/{vendor → app}/assets/javascripts/support/sinon.js +0 -0
- data/app/assets/javascripts/teaspoon-filterer.js +55 -0
- data/app/assets/javascripts/teaspoon/error.coffee +5 -0
- data/app/assets/javascripts/teaspoon/{base/fixture.coffee → fixture.coffee} +15 -15
- data/app/assets/javascripts/teaspoon/{base/hook.coffee → hook.coffee} +0 -0
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/console.coffee +18 -10
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html.coffee +43 -40
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html/base_view.coffee +0 -0
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html/failure_view.coffee +2 -0
- data/app/assets/javascripts/teaspoon/reporters/html/progress_view.coffee +18 -0
- data/app/assets/javascripts/teaspoon/{base/reporters/html/progress_view.coffee → reporters/html/radial_progress_view.coffee} +1 -34
- data/app/assets/javascripts/teaspoon/reporters/html/simple_progress_view.coffee +15 -0
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html/spec_view.coffee +5 -3
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html/suite_view.coffee +4 -2
- data/app/assets/javascripts/teaspoon/{base/reporters → reporters}/html/template.coffee +0 -0
- data/app/assets/javascripts/teaspoon/{base/runner.coffee → runner.coffee} +7 -3
- data/app/assets/javascripts/teaspoon/teaspoon.coffee +90 -32
- data/app/controllers/teaspoon/suite_controller.rb +5 -0
- data/app/views/teaspoon/suite/index.html.erb +1 -1
- data/lib/generators/teaspoon/install/install_generator.rb +67 -37
- data/lib/generators/teaspoon/install/templates/MISSING_FRAMEWORK +14 -0
- data/lib/generators/teaspoon/install/{POST_INSTALL → templates/POST_INSTALL} +0 -0
- data/lib/generators/teaspoon/install/templates/env.rb.tt +14 -0
- data/lib/generators/teaspoon/install/templates/{jasmine/env_comments.rb.tt → env_comments.rb.tt} +34 -43
- data/lib/tasks/teaspoon/info.rake +17 -0
- data/lib/teaspoon-devkit.rb +61 -0
- data/lib/teaspoon.rb +2 -0
- data/lib/teaspoon/command_line.rb +19 -14
- data/lib/teaspoon/configuration.rb +24 -35
- data/lib/teaspoon/console.rb +11 -21
- data/lib/teaspoon/coverage.rb +14 -7
- data/lib/teaspoon/deprecated.rb +22 -4
- data/lib/teaspoon/driver.rb +15 -0
- data/lib/teaspoon/driver/base.rb +7 -0
- data/lib/teaspoon/{drivers/capybara_webkit_driver.rb → driver/capybara_webkit.rb} +8 -5
- data/lib/teaspoon/{drivers/phantomjs_driver.rb → driver/phantomjs.rb} +8 -4
- data/lib/teaspoon/{drivers → driver}/phantomjs/runner.js +0 -0
- data/lib/teaspoon/{drivers/selenium_driver.rb → driver/selenium.rb} +11 -9
- data/lib/teaspoon/engine.rb +38 -25
- data/lib/teaspoon/environment.rb +24 -15
- data/lib/teaspoon/exceptions.rb +154 -41
- data/lib/teaspoon/exporter.rb +2 -2
- data/lib/teaspoon/formatter.rb +30 -0
- data/lib/teaspoon/{formatters → formatter}/base.rb +2 -36
- data/lib/teaspoon/{formatters/clean_formatter.rb → formatter/clean.rb} +4 -2
- data/lib/teaspoon/{formatters/documentation_formatter.rb → formatter/documentation.rb} +4 -3
- data/lib/teaspoon/{formatters/dot_formatter.rb → formatter/dot.rb} +4 -3
- data/lib/teaspoon/{formatters/json_formatter.rb → formatter/json.rb} +4 -2
- data/lib/teaspoon/{formatters/junit_formatter.rb → formatter/junit.rb} +3 -2
- data/lib/teaspoon/{formatters → formatter}/modules/report_module.rb +1 -1
- data/lib/teaspoon/{formatters/pride_formatter.rb → formatter/pride.rb} +4 -2
- data/lib/teaspoon/{formatters/rspec_html_formatter.rb → formatter/rspec_html.rb} +3 -2
- data/lib/teaspoon/{formatters/snowday_formatter.rb → formatter/snowday.rb} +3 -2
- data/lib/teaspoon/formatter/swayze_or_oprah.rb +111 -0
- data/lib/teaspoon/{formatters/tap_formatter.rb → formatter/tap.rb} +4 -2
- data/lib/teaspoon/{formatters/tap_y_formatter.rb → formatter/tap_y.rb} +3 -2
- data/lib/teaspoon/{formatters/teamcity_formatter.rb → formatter/teamcity.rb} +4 -2
- data/lib/teaspoon/framework.rb +17 -0
- data/lib/teaspoon/framework/base.rb +88 -0
- data/lib/teaspoon/instrumentation.rb +12 -2
- data/lib/teaspoon/registry.rb +47 -0
- data/lib/teaspoon/registry/has_default.rb +11 -0
- data/lib/teaspoon/runner.rb +6 -7
- data/lib/teaspoon/server.rb +2 -2
- data/lib/teaspoon/suite.rb +28 -30
- data/lib/teaspoon/utility.rb +5 -0
- data/lib/teaspoon/version.rb +1 -1
- metadata +52 -276
- data/app/assets/javascripts/teaspoon-jasmine.js +0 -1344
- data/app/assets/javascripts/teaspoon-mocha.js +0 -1350
- data/app/assets/javascripts/teaspoon-qunit.js +0 -1415
- data/app/assets/javascripts/teaspoon-teaspoon.js +0 -51
- data/app/assets/javascripts/teaspoon/base/teaspoon.coffee +0 -69
- data/app/assets/javascripts/teaspoon/jasmine.coffee +0 -119
- data/app/assets/javascripts/teaspoon/jasmine/reporters/html.coffee +0 -11
- data/app/assets/javascripts/teaspoon/mocha.coffee +0 -90
- data/app/assets/javascripts/teaspoon/mocha/reporters/console.coffee +0 -16
- data/app/assets/javascripts/teaspoon/mocha/reporters/html.coffee +0 -27
- data/app/assets/javascripts/teaspoon/qunit.coffee +0 -81
- data/app/assets/javascripts/teaspoon/qunit/reporters/console.coffee +0 -25
- data/app/assets/javascripts/teaspoon/qunit/reporters/html.coffee +0 -80
- data/lib/generators/teaspoon/install/templates/jasmine/env.rb +0 -11
- data/lib/generators/teaspoon/install/templates/jasmine/spec_helper.coffee +0 -31
- data/lib/generators/teaspoon/install/templates/jasmine/spec_helper.js +0 -31
- data/lib/generators/teaspoon/install/templates/mocha/env.rb +0 -11
- data/lib/generators/teaspoon/install/templates/mocha/env_comments.rb.tt +0 -187
- data/lib/generators/teaspoon/install/templates/mocha/spec_helper.coffee +0 -40
- data/lib/generators/teaspoon/install/templates/mocha/spec_helper.js +0 -40
- data/lib/generators/teaspoon/install/templates/qunit/env.rb +0 -11
- data/lib/generators/teaspoon/install/templates/qunit/env_comments.rb.tt +0 -187
- data/lib/generators/teaspoon/install/templates/qunit/test_helper.coffee +0 -29
- data/lib/generators/teaspoon/install/templates/qunit/test_helper.js +0 -30
- data/lib/teaspoon/drivers/base.rb +0 -10
- data/lib/teaspoon/formatters/description.rb +0 -36
- data/lib/teaspoon/formatters/swayze_or_oprah_formatter.rb +0 -101
- data/spec/dummy/Rakefile +0 -7
- data/spec/dummy/app/assets/javascripts/instrumented1.coffee +0 -1
- data/spec/dummy/app/assets/javascripts/instrumented2.coffee +0 -1
- data/spec/dummy/app/assets/javascripts/integration/integration.coffee +0 -1
- data/spec/dummy/app/assets/javascripts/integration/integration_spec.coffee +0 -32
- data/spec/dummy/app/assets/javascripts/integration/spec_helper.coffee +0 -7
- data/spec/dummy/app/assets/javascripts/specs/asset_spec.js +0 -11
- data/spec/dummy/config.ru +0 -15
- data/spec/dummy/config/application.rb +0 -29
- data/spec/dummy/config/boot.rb +0 -3
- data/spec/dummy/config/environment.rb +0 -5
- data/spec/dummy/config/environments/development.rb +0 -41
- data/spec/dummy/config/environments/production.rb +0 -79
- data/spec/dummy/config/environments/test.rb +0 -42
- data/spec/dummy/config/routes.rb +0 -2
- data/spec/dummy/config/secrets.yml +0 -22
- data/spec/dummy/log/.gitkeep +0 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/dummy/script/rails +0 -6
- data/spec/features/console_reporter_spec.rb +0 -62
- data/spec/features/hooks_spec.rb +0 -60
- data/spec/features/html_reporter_spec.rb +0 -81
- data/spec/features/install_generator_spec.rb +0 -54
- data/spec/features/instrumentation_spec.rb +0 -21
- data/spec/fixtures/coverage.json +0 -243
- data/spec/javascripts/fixtures/_body.html.erb +0 -1
- data/spec/javascripts/fixtures/fixture.html.haml +0 -4
- data/spec/javascripts/fixtures/fixture.json +0 -4
- data/spec/javascripts/jasmine_helper.coffee +0 -3
- data/spec/javascripts/mocha_helper.coffee +0 -4
- data/spec/javascripts/spec_helper.coffee +0 -7
- data/spec/javascripts/stylesheets/stylesheet.css.scss +0 -0
- data/spec/javascripts/support/json2.js +0 -486
- data/spec/javascripts/support/support.js.coffee +0 -0
- data/spec/javascripts/teaspoon/base/fixture_spec.coffee +0 -93
- data/spec/javascripts/teaspoon/base/reporters/console_spec.coffee +0 -162
- data/spec/javascripts/teaspoon/base/reporters/html/base_view_spec.coffee +0 -88
- data/spec/javascripts/teaspoon/base/reporters/html/failure_view_spec.coffee +0 -28
- data/spec/javascripts/teaspoon/base/reporters/html/progress_view_spec.coffee +0 -1
- data/spec/javascripts/teaspoon/base/reporters/html/spec_view_spec.coffee +0 -1
- data/spec/javascripts/teaspoon/base/reporters/html/suite_view_spec.coffee +0 -1
- data/spec/javascripts/teaspoon/base/reporters/html_spec.coffee +0 -372
- data/spec/javascripts/teaspoon/base/runner_spec.coffee +0 -58
- data/spec/javascripts/teaspoon/base/teaspoon_spec.coffee +0 -47
- data/spec/javascripts/teaspoon/jasmine/fixture_jspec.coffee +0 -13
- data/spec/javascripts/teaspoon/jasmine/models_jspec.coffee +0 -101
- data/spec/javascripts/teaspoon/jasmine/reporters/html_jspec.coffee +0 -17
- data/spec/javascripts/teaspoon/jasmine/runner_jspec.coffee +0 -59
- data/spec/javascripts/teaspoon/jasmine/spec_jspec.coffee +0 -3
- data/spec/javascripts/teaspoon/mocha/fixture_mspec.coffee +0 -12
- data/spec/javascripts/teaspoon/mocha/models_mspec.coffee +0 -93
- data/spec/javascripts/teaspoon/mocha/reporters/console_mspec.coffee +0 -24
- data/spec/javascripts/teaspoon/mocha/reporters/html_mspec.coffee +0 -41
- data/spec/javascripts/teaspoon/mocha/runner_mspec.coffee +0 -23
- data/spec/javascripts/teaspoon/mocha/spec_mspec.coffee +0 -9
- data/spec/javascripts/teaspoon/other/erb_spec.js.coffee.erb +0 -4
- data/spec/javascripts/teaspoon/phantomjs/runner_spec.coffee +0 -161
- data/spec/javascripts/turbolinks_helper.coffee +0 -2
- data/spec/spec_helper.rb +0 -25
- data/spec/support/aruba.rb +0 -15
- data/spec/teaspoon/command_line_spec.rb +0 -157
- data/spec/teaspoon/configuration_spec.rb +0 -236
- data/spec/teaspoon/console_spec.rb +0 -224
- data/spec/teaspoon/coverage_spec.rb +0 -118
- data/spec/teaspoon/drivers/base_spec.rb +0 -5
- data/spec/teaspoon/drivers/capybara_webkit_driver_spec.rb +0 -39
- data/spec/teaspoon/drivers/phantomjs_driver_spec.rb +0 -66
- data/spec/teaspoon/drivers/selenium_driver_spec.rb +0 -68
- data/spec/teaspoon/engine_spec.rb +0 -22
- data/spec/teaspoon/environment_spec.rb +0 -109
- data/spec/teaspoon/exceptions_spec.rb +0 -57
- data/spec/teaspoon/exporter_spec.rb +0 -96
- data/spec/teaspoon/formatters/base_spec.rb +0 -259
- data/spec/teaspoon/formatters/clean_formatter_spec.rb +0 -37
- data/spec/teaspoon/formatters/documentation_formatter_spec.rb +0 -127
- data/spec/teaspoon/formatters/dot_formatter_spec.rb +0 -116
- data/spec/teaspoon/formatters/json_formatter_spec.rb +0 -77
- data/spec/teaspoon/formatters/junit_formatter_spec.rb +0 -114
- data/spec/teaspoon/formatters/pride_formatter_spec.rb +0 -37
- data/spec/teaspoon/formatters/rspec_html_formatter_spec.rb +0 -107
- data/spec/teaspoon/formatters/snowday_formatter_spec.rb +0 -35
- data/spec/teaspoon/formatters/tap_formatter_spec.rb +0 -72
- data/spec/teaspoon/formatters/tap_y_formatter_spec.rb +0 -80
- data/spec/teaspoon/formatters/teamcity_formatter_spec.rb +0 -148
- data/spec/teaspoon/instrumentation_spec.rb +0 -113
- data/spec/teaspoon/result_spec.rb +0 -98
- data/spec/teaspoon/runner_spec.rb +0 -116
- data/spec/teaspoon/server_spec.rb +0 -105
- data/spec/teaspoon/suite_spec.rb +0 -138
- data/spec/teaspoon_env.rb +0 -39
- data/test/javascripts/qunit_helper.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/fixture_test.coffee +0 -10
- data/test/javascripts/teaspoon/qunit/models_test.coffee +0 -66
- data/test/javascripts/teaspoon/qunit/reporters/console_test.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/reporters/html/failure_view_test.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/reporters/html/spec_view_test.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/reporters/html/suite_view_test.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/reporters/html_test.coffee +0 -3
- data/test/javascripts/teaspoon/qunit/runner_test.coffee +0 -18
- data/vendor/assets/javascripts/jasmine/1.3.1.js +0 -2602
- data/vendor/assets/javascripts/jasmine/2.0.0.js +0 -2412
- data/vendor/assets/javascripts/jasmine/MIT.LICENSE +0 -20
- data/vendor/assets/javascripts/mocha/1.10.0.js +0 -5374
- data/vendor/assets/javascripts/mocha/1.17.1.js +0 -5813
- data/vendor/assets/javascripts/mocha/MIT.LICENSE +0 -22
- data/vendor/assets/javascripts/qunit/1.12.0.js +0 -2212
- data/vendor/assets/javascripts/qunit/1.14.0.js +0 -2288
- data/vendor/assets/javascripts/qunit/MIT.LICENSE +0 -21
- data/vendor/assets/javascripts/support/chai-1.10.0.js +0 -4800
- data/vendor/assets/javascripts/support/chai-jq-0.0.7.js +0 -524
- data/vendor/assets/javascripts/support/chai.js +0 -4782
- data/vendor/assets/javascripts/support/expect.js +0 -1284
- data/vendor/assets/javascripts/support/jasmine-jquery-1.7.0.js +0 -720
- data/vendor/assets/javascripts/support/jasmine-jquery-2.0.0.js +0 -812
- data/vendor/assets/javascripts/support/sinon-chai.js +0 -126
@@ -0,0 +1,17 @@
|
|
1
|
+
require "teaspoon/registry"
|
2
|
+
|
3
|
+
module Teaspoon
|
4
|
+
module Framework
|
5
|
+
extend Teaspoon::Registry
|
6
|
+
|
7
|
+
not_found_in_registry Teaspoon::UnknownFramework
|
8
|
+
|
9
|
+
def self.default
|
10
|
+
# Frameworks are special in that the default is the first framework
|
11
|
+
# that was registered, but can be nil, meaning the teaspoon gem is
|
12
|
+
# in the Gemfile, instead of the framework-specific equivalent
|
13
|
+
# eg teaspoon-jasmine
|
14
|
+
available.keys.first
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,88 @@
|
|
1
|
+
module Teaspoon
|
2
|
+
module Framework
|
3
|
+
class Base
|
4
|
+
class << self
|
5
|
+
attr_accessor :_versions
|
6
|
+
attr_accessor :_asset_paths
|
7
|
+
attr_accessor :_template_paths
|
8
|
+
attr_accessor :_install_path
|
9
|
+
attr_accessor :_install_proc
|
10
|
+
|
11
|
+
def inherited(base)
|
12
|
+
base._versions = {}
|
13
|
+
base._asset_paths = []
|
14
|
+
base._template_paths = []
|
15
|
+
base._install_path = "spec"
|
16
|
+
base._install_proc = proc {}
|
17
|
+
end
|
18
|
+
|
19
|
+
def framework_name(name = nil)
|
20
|
+
name.present? ? @_framework_name ||= name.to_sym : @_framework_name
|
21
|
+
end
|
22
|
+
|
23
|
+
def register_version(version, js_runner, dependencies: [], dev_deps: [])
|
24
|
+
if ENV["TEASPOON_DEVELOPMENT"] && dev_deps.any?
|
25
|
+
dependencies = dev_deps
|
26
|
+
end
|
27
|
+
|
28
|
+
if dependencies.empty?
|
29
|
+
raise Teaspoon::UnspecifiedDependencies.new(framework: @_framework_name, version: version)
|
30
|
+
end
|
31
|
+
|
32
|
+
dependencies.unshift(js_runner)
|
33
|
+
@_versions[version] = dependencies
|
34
|
+
Teaspoon.configuration.asset_manifest += dependencies
|
35
|
+
end
|
36
|
+
|
37
|
+
def add_asset_path(path)
|
38
|
+
@_asset_paths << path
|
39
|
+
end
|
40
|
+
|
41
|
+
def add_template_path(path)
|
42
|
+
@_template_paths << path
|
43
|
+
end
|
44
|
+
|
45
|
+
def install_to(path, &block)
|
46
|
+
@_install_path = path
|
47
|
+
@_install_proc = block if block_given?
|
48
|
+
end
|
49
|
+
|
50
|
+
def description
|
51
|
+
"#{@_framework_name}[#{@_versions.keys.join(', ')}]"
|
52
|
+
end
|
53
|
+
|
54
|
+
def asset_paths
|
55
|
+
@_asset_paths
|
56
|
+
end
|
57
|
+
|
58
|
+
def versions
|
59
|
+
_versions.keys
|
60
|
+
end
|
61
|
+
|
62
|
+
def name
|
63
|
+
framework_name
|
64
|
+
end
|
65
|
+
|
66
|
+
def javascripts_for(version = nil)
|
67
|
+
_versions[version || versions.last]
|
68
|
+
end
|
69
|
+
|
70
|
+
def template_paths
|
71
|
+
_template_paths
|
72
|
+
end
|
73
|
+
|
74
|
+
def install_path
|
75
|
+
_install_path
|
76
|
+
end
|
77
|
+
|
78
|
+
def install_callback
|
79
|
+
_install_proc
|
80
|
+
end
|
81
|
+
|
82
|
+
def modify_config(_config)
|
83
|
+
# noop - Implement this in subclass to modify suite configuration
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require "sprockets/environment"
|
2
|
+
require "teaspoon/coverage"
|
2
3
|
|
3
4
|
module Teaspoon
|
4
5
|
class Instrumentation
|
@@ -14,7 +15,8 @@ module Teaspoon
|
|
14
15
|
env["QUERY_STRING"].to_s =~ /instrument=(1|true)/ && # the instrument param was provided
|
15
16
|
response[0] == 200 && # the status is 200 (304 maybe?)
|
16
17
|
response[1]["Content-Type"].to_s == "application/javascript" && # the format is something that we care about
|
17
|
-
response[2].respond_to?(:source)
|
18
|
+
response[2].respond_to?(:source) && # it looks like an asset
|
19
|
+
!ignored?(response[2]) # it is not ignored
|
18
20
|
end
|
19
21
|
|
20
22
|
def self.executable
|
@@ -41,6 +43,14 @@ module Teaspoon
|
|
41
43
|
|
42
44
|
protected
|
43
45
|
|
46
|
+
def self.ignored?(asset)
|
47
|
+
Array(Teaspoon::Coverage.configuration.ignore).any? do |ignore|
|
48
|
+
asset.pathname.to_s.match(ignore)
|
49
|
+
end
|
50
|
+
rescue Teaspoon::UnknownCoverage
|
51
|
+
false
|
52
|
+
end
|
53
|
+
|
44
54
|
def add_instrumentation(asset)
|
45
55
|
source_path = asset.pathname.to_s
|
46
56
|
Dir.mktmpdir do |temp_path|
|
@@ -53,7 +63,7 @@ module Teaspoon
|
|
53
63
|
def instrument(input)
|
54
64
|
result = %x{#{self.class.executable} instrument --embed-source #{input.shellescape}}
|
55
65
|
return result if $?.exitstatus == 0
|
56
|
-
raise Teaspoon::
|
66
|
+
raise Teaspoon::DependencyError.new("Unable to add instrumentation to #{File.basename(input)}.")
|
57
67
|
end
|
58
68
|
end
|
59
69
|
|
@@ -0,0 +1,47 @@
|
|
1
|
+
module Teaspoon
|
2
|
+
module Registry
|
3
|
+
def self.extended(host)
|
4
|
+
host.instance_variable_set(:@registry, {})
|
5
|
+
host.instance_variable_set(:@options, {})
|
6
|
+
end
|
7
|
+
|
8
|
+
def not_found_in_registry(klass)
|
9
|
+
@not_found_exception = klass
|
10
|
+
end
|
11
|
+
|
12
|
+
def register(name, constant, path, options = {})
|
13
|
+
@registry[normalize_name(name)] = proc {
|
14
|
+
require path
|
15
|
+
constant.constantize
|
16
|
+
}
|
17
|
+
|
18
|
+
@options[normalize_name(name)] = options
|
19
|
+
end
|
20
|
+
|
21
|
+
def fetch(name)
|
22
|
+
if !(driver = @registry[normalize_name(name)])
|
23
|
+
raise not_found_exception.new(name: name, available: available.keys)
|
24
|
+
end
|
25
|
+
|
26
|
+
driver.call
|
27
|
+
end
|
28
|
+
|
29
|
+
def equal?(one, two)
|
30
|
+
normalize_name(one) == normalize_name(two)
|
31
|
+
end
|
32
|
+
|
33
|
+
def available
|
34
|
+
@options
|
35
|
+
end
|
36
|
+
|
37
|
+
private
|
38
|
+
|
39
|
+
def normalize_name(name)
|
40
|
+
name.to_s.gsub(/[-|\s]/, '_').to_sym
|
41
|
+
end
|
42
|
+
|
43
|
+
def not_found_exception
|
44
|
+
@not_found_exception || Teaspoon::NotFoundInRegistry
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
data/lib/teaspoon/runner.rb
CHANGED
@@ -22,10 +22,7 @@ module Teaspoon
|
|
22
22
|
|
23
23
|
def resolve_formatter(formatter)
|
24
24
|
formatter, output = formatter.to_s.split(">")
|
25
|
-
|
26
|
-
formatter.new(@suite_name, output)
|
27
|
-
rescue NameError
|
28
|
-
raise Teaspoon::UnknownFormatter, "Unknown formatter: \"#{formatter}\""
|
25
|
+
Teaspoon::Formatter.fetch(formatter).new(@suite_name, output)
|
29
26
|
end
|
30
27
|
|
31
28
|
def notify_formatters(event, result)
|
@@ -49,7 +46,7 @@ module Teaspoon
|
|
49
46
|
end
|
50
47
|
|
51
48
|
def on_exception(result)
|
52
|
-
raise Teaspoon::
|
49
|
+
raise Teaspoon::RunnerError.new(result.message)
|
53
50
|
end
|
54
51
|
|
55
52
|
def on_result(result)
|
@@ -58,8 +55,10 @@ module Teaspoon
|
|
58
55
|
end
|
59
56
|
|
60
57
|
def resolve_coverage(data)
|
61
|
-
return unless Teaspoon.configuration.use_coverage
|
62
|
-
|
58
|
+
return unless Teaspoon.configuration.use_coverage
|
59
|
+
raise Teaspoon::IstanbulNotFoundError unless Teaspoon::Instrumentation.executable
|
60
|
+
|
61
|
+
coverage = Teaspoon::Coverage.new(@suite_name, data)
|
63
62
|
coverage.generate_reports { |msg| notify_formatters("coverage", msg) }
|
64
63
|
coverage.check_thresholds do |msg|
|
65
64
|
notify_formatters("threshold_failure", msg)
|
data/lib/teaspoon/server.rb
CHANGED
@@ -20,7 +20,7 @@ module Teaspoon
|
|
20
20
|
end
|
21
21
|
wait_until_started(thread)
|
22
22
|
rescue => e
|
23
|
-
raise Teaspoon::
|
23
|
+
raise Teaspoon::ServerError.new(desc: e.message)
|
24
24
|
end
|
25
25
|
|
26
26
|
def responsive?
|
@@ -39,7 +39,7 @@ module Teaspoon
|
|
39
39
|
def wait_until_started(thread)
|
40
40
|
Timeout.timeout(Teaspoon.configuration.server_timeout.to_i) { thread.join(0.1) until responsive? }
|
41
41
|
rescue Timeout::Error
|
42
|
-
raise
|
42
|
+
raise Timeout::Error.new("consider increasing the timeout with `config.server_timeout`")
|
43
43
|
end
|
44
44
|
|
45
45
|
def disable_logging
|
data/lib/teaspoon/suite.rb
CHANGED
@@ -13,7 +13,7 @@ module Teaspoon
|
|
13
13
|
end
|
14
14
|
|
15
15
|
attr_accessor :config, :name
|
16
|
-
delegate :helper, :stylesheets, :javascripts, :boot_partial, :body_partial, :
|
16
|
+
delegate :helper, :stylesheets, :javascripts, :boot_partial, :body_partial, :hooks,
|
17
17
|
to: :config
|
18
18
|
|
19
19
|
def initialize(options = {})
|
@@ -33,21 +33,6 @@ module Teaspoon
|
|
33
33
|
asset_tree(assets)
|
34
34
|
end
|
35
35
|
|
36
|
-
def include_spec?(file)
|
37
|
-
glob.include?(file)
|
38
|
-
end
|
39
|
-
|
40
|
-
def ignored_file?(file)
|
41
|
-
for ignored in no_coverage
|
42
|
-
if ignored.is_a?(String)
|
43
|
-
return true if File.basename(file) == ignored
|
44
|
-
elsif ignored.is_a?(Regexp)
|
45
|
-
return true if file =~ ignored
|
46
|
-
end
|
47
|
-
end
|
48
|
-
false
|
49
|
-
end
|
50
|
-
|
51
36
|
def include_spec_for?(file)
|
52
37
|
return file if glob.include?(file)
|
53
38
|
paths = glob.select { |path| path.include?(file) }
|
@@ -64,40 +49,53 @@ module Teaspoon
|
|
64
49
|
end
|
65
50
|
|
66
51
|
def asset_tree(sources)
|
67
|
-
sources.
|
52
|
+
sources.flat_map do |source|
|
68
53
|
asset = @env.find_asset(source)
|
69
|
-
|
70
|
-
|
54
|
+
|
55
|
+
if asset && asset.respond_to?(:logical_path)
|
56
|
+
assets = config.expand_assets ? asset.to_a : [asset]
|
57
|
+
assets.map { |a| asset_url(a) }
|
71
58
|
else
|
72
|
-
source
|
59
|
+
source.blank? ? [] : [source]
|
73
60
|
end
|
74
|
-
end.
|
61
|
+
end.compact.uniq
|
75
62
|
end
|
76
63
|
|
77
64
|
def asset_url(asset)
|
78
|
-
params =
|
79
|
-
params << "
|
80
|
-
"
|
65
|
+
params = []
|
66
|
+
params << "body=1" if config.expand_assets
|
67
|
+
params << "instrument=1" if instrument_file?(asset.pathname.to_s)
|
68
|
+
url = asset.logical_path
|
69
|
+
url += "?#{params.join("&")}" if params.any?
|
70
|
+
url
|
81
71
|
end
|
82
72
|
|
83
73
|
def instrument_file?(file)
|
84
|
-
return false unless
|
85
|
-
return false if
|
74
|
+
return false unless coverage_requested?
|
75
|
+
return false if matched_spec_file?(file)
|
86
76
|
true
|
87
77
|
end
|
88
78
|
|
79
|
+
def coverage_requested?
|
80
|
+
@options[:coverage] || Teaspoon.configuration.use_coverage
|
81
|
+
end
|
82
|
+
|
83
|
+
def matched_spec_file?(file)
|
84
|
+
glob.include?(file)
|
85
|
+
end
|
86
|
+
|
89
87
|
def asset_from_file(original)
|
90
88
|
filename = original
|
91
89
|
Rails.application.config.assets.paths.each do |path|
|
92
90
|
filename = filename.gsub(%r(^#{Regexp.escape(path.to_s)}[\/|\\]), "")
|
93
91
|
end
|
94
92
|
|
95
|
-
raise Teaspoon::
|
93
|
+
raise Teaspoon::AssetNotServableError.new(filename: filename) if filename == original
|
96
94
|
normalize_js_extension(filename)
|
97
95
|
end
|
98
96
|
|
99
97
|
def normalize_js_extension(filename)
|
100
|
-
filename.gsub(".erb", "").gsub(/(\.js\.coffee|\.coffee)$/, ".js")
|
98
|
+
filename.gsub(".erb", "").gsub(/(\.js\.coffee|\.coffee|\.es6|\.js\.es6)$/, ".js")
|
101
99
|
end
|
102
100
|
|
103
101
|
def glob
|
@@ -106,8 +104,8 @@ module Teaspoon
|
|
106
104
|
|
107
105
|
def suite_configuration
|
108
106
|
config = Teaspoon.configuration.suite_configs[name]
|
109
|
-
raise Teaspoon::UnknownSuite
|
110
|
-
config[:instance] ||= Teaspoon::Configuration::Suite.new(&config[:block])
|
107
|
+
raise Teaspoon::UnknownSuite.new(name: name) unless config.present?
|
108
|
+
config[:instance] ||= Teaspoon::Configuration::Suite.new(name, &config[:block])
|
111
109
|
end
|
112
110
|
|
113
111
|
def specs_from_file
|
data/lib/teaspoon/utility.rb
CHANGED
@@ -1,4 +1,9 @@
|
|
1
1
|
module Teaspoon
|
2
|
+
def self.abort(message = nil, code = 1)
|
3
|
+
STDOUT.print("#{message}\n") if message
|
4
|
+
exit(code)
|
5
|
+
end
|
6
|
+
|
2
7
|
module Utility
|
3
8
|
# Cross-platform way of finding an executable in the $PATH.
|
4
9
|
# http://stackoverflow.com/questions/2108727/which-in-ruby-checking-if-program-exists-in-path-from-ruby
|
data/lib/teaspoon/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: teaspoon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jejacks0n
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2015-
|
14
|
+
date: 2015-05-04 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: railties
|
@@ -42,32 +42,26 @@ executables:
|
|
42
42
|
extensions: []
|
43
43
|
extra_rdoc_files: []
|
44
44
|
files:
|
45
|
+
- CHANGELOG.md
|
45
46
|
- MIT.LICENSE
|
46
47
|
- README.md
|
47
|
-
- app/assets/javascripts/
|
48
|
-
- app/assets/javascripts/
|
49
|
-
- app/assets/javascripts/teaspoon-
|
50
|
-
- app/assets/javascripts/teaspoon
|
51
|
-
- app/assets/javascripts/teaspoon/
|
52
|
-
- app/assets/javascripts/teaspoon/
|
53
|
-
- app/assets/javascripts/teaspoon/
|
54
|
-
- app/assets/javascripts/teaspoon/
|
55
|
-
- app/assets/javascripts/teaspoon/
|
56
|
-
- app/assets/javascripts/teaspoon/
|
57
|
-
- app/assets/javascripts/teaspoon/
|
58
|
-
- app/assets/javascripts/teaspoon/
|
59
|
-
- app/assets/javascripts/teaspoon/
|
60
|
-
- app/assets/javascripts/teaspoon/
|
61
|
-
- app/assets/javascripts/teaspoon/
|
62
|
-
- app/assets/javascripts/teaspoon/
|
63
|
-
- app/assets/javascripts/teaspoon/
|
64
|
-
- app/assets/javascripts/teaspoon/jasmine/reporters/html.coffee
|
65
|
-
- app/assets/javascripts/teaspoon/mocha.coffee
|
66
|
-
- app/assets/javascripts/teaspoon/mocha/reporters/console.coffee
|
67
|
-
- app/assets/javascripts/teaspoon/mocha/reporters/html.coffee
|
68
|
-
- app/assets/javascripts/teaspoon/qunit.coffee
|
69
|
-
- app/assets/javascripts/teaspoon/qunit/reporters/console.coffee
|
70
|
-
- app/assets/javascripts/teaspoon/qunit/reporters/html.coffee
|
48
|
+
- app/assets/javascripts/support/bind-poly.js
|
49
|
+
- app/assets/javascripts/support/sinon.js
|
50
|
+
- app/assets/javascripts/teaspoon-filterer.js
|
51
|
+
- app/assets/javascripts/teaspoon/error.coffee
|
52
|
+
- app/assets/javascripts/teaspoon/fixture.coffee
|
53
|
+
- app/assets/javascripts/teaspoon/hook.coffee
|
54
|
+
- app/assets/javascripts/teaspoon/reporters/console.coffee
|
55
|
+
- app/assets/javascripts/teaspoon/reporters/html.coffee
|
56
|
+
- app/assets/javascripts/teaspoon/reporters/html/base_view.coffee
|
57
|
+
- app/assets/javascripts/teaspoon/reporters/html/failure_view.coffee
|
58
|
+
- app/assets/javascripts/teaspoon/reporters/html/progress_view.coffee
|
59
|
+
- app/assets/javascripts/teaspoon/reporters/html/radial_progress_view.coffee
|
60
|
+
- app/assets/javascripts/teaspoon/reporters/html/simple_progress_view.coffee
|
61
|
+
- app/assets/javascripts/teaspoon/reporters/html/spec_view.coffee
|
62
|
+
- app/assets/javascripts/teaspoon/reporters/html/suite_view.coffee
|
63
|
+
- app/assets/javascripts/teaspoon/reporters/html/template.coffee
|
64
|
+
- app/assets/javascripts/teaspoon/runner.coffee
|
71
65
|
- app/assets/javascripts/teaspoon/teaspoon.coffee
|
72
66
|
- app/assets/stylesheets/teaspoon.css
|
73
67
|
- app/controllers/teaspoon/suite_controller.rb
|
@@ -77,177 +71,58 @@ files:
|
|
77
71
|
- app/views/teaspoon/suite/index.html.erb
|
78
72
|
- app/views/teaspoon/suite/show.html.erb
|
79
73
|
- bin/teaspoon
|
80
|
-
- lib/generators/teaspoon/install/POST_INSTALL
|
81
74
|
- lib/generators/teaspoon/install/install_generator.rb
|
75
|
+
- lib/generators/teaspoon/install/templates/MISSING_FRAMEWORK
|
76
|
+
- lib/generators/teaspoon/install/templates/POST_INSTALL
|
82
77
|
- lib/generators/teaspoon/install/templates/_body.html.erb
|
83
78
|
- lib/generators/teaspoon/install/templates/_boot.html.erb
|
84
|
-
- lib/generators/teaspoon/install/templates/
|
85
|
-
- lib/generators/teaspoon/install/templates/
|
86
|
-
- lib/generators/teaspoon/install/templates/jasmine/spec_helper.coffee
|
87
|
-
- lib/generators/teaspoon/install/templates/jasmine/spec_helper.js
|
88
|
-
- lib/generators/teaspoon/install/templates/mocha/env.rb
|
89
|
-
- lib/generators/teaspoon/install/templates/mocha/env_comments.rb.tt
|
90
|
-
- lib/generators/teaspoon/install/templates/mocha/spec_helper.coffee
|
91
|
-
- lib/generators/teaspoon/install/templates/mocha/spec_helper.js
|
92
|
-
- lib/generators/teaspoon/install/templates/qunit/env.rb
|
93
|
-
- lib/generators/teaspoon/install/templates/qunit/env_comments.rb.tt
|
94
|
-
- lib/generators/teaspoon/install/templates/qunit/test_helper.coffee
|
95
|
-
- lib/generators/teaspoon/install/templates/qunit/test_helper.js
|
79
|
+
- lib/generators/teaspoon/install/templates/env.rb.tt
|
80
|
+
- lib/generators/teaspoon/install/templates/env_comments.rb.tt
|
96
81
|
- lib/tasks/teaspoon.rake
|
82
|
+
- lib/tasks/teaspoon/info.rake
|
83
|
+
- lib/teaspoon-devkit.rb
|
97
84
|
- lib/teaspoon.rb
|
98
85
|
- lib/teaspoon/command_line.rb
|
99
86
|
- lib/teaspoon/configuration.rb
|
100
87
|
- lib/teaspoon/console.rb
|
101
88
|
- lib/teaspoon/coverage.rb
|
102
89
|
- lib/teaspoon/deprecated.rb
|
103
|
-
- lib/teaspoon/
|
104
|
-
- lib/teaspoon/
|
105
|
-
- lib/teaspoon/
|
106
|
-
- lib/teaspoon/
|
107
|
-
- lib/teaspoon/
|
90
|
+
- lib/teaspoon/driver.rb
|
91
|
+
- lib/teaspoon/driver/base.rb
|
92
|
+
- lib/teaspoon/driver/capybara_webkit.rb
|
93
|
+
- lib/teaspoon/driver/phantomjs.rb
|
94
|
+
- lib/teaspoon/driver/phantomjs/runner.js
|
95
|
+
- lib/teaspoon/driver/selenium.rb
|
108
96
|
- lib/teaspoon/engine.rb
|
109
97
|
- lib/teaspoon/environment.rb
|
110
98
|
- lib/teaspoon/exceptions.rb
|
111
99
|
- lib/teaspoon/exporter.rb
|
112
|
-
- lib/teaspoon/
|
113
|
-
- lib/teaspoon/
|
114
|
-
- lib/teaspoon/
|
115
|
-
- lib/teaspoon/
|
116
|
-
- lib/teaspoon/
|
117
|
-
- lib/teaspoon/
|
118
|
-
- lib/teaspoon/
|
119
|
-
- lib/teaspoon/
|
120
|
-
- lib/teaspoon/
|
121
|
-
- lib/teaspoon/
|
122
|
-
- lib/teaspoon/
|
123
|
-
- lib/teaspoon/
|
124
|
-
- lib/teaspoon/
|
125
|
-
- lib/teaspoon/
|
126
|
-
- lib/teaspoon/
|
100
|
+
- lib/teaspoon/formatter.rb
|
101
|
+
- lib/teaspoon/formatter/base.rb
|
102
|
+
- lib/teaspoon/formatter/clean.rb
|
103
|
+
- lib/teaspoon/formatter/documentation.rb
|
104
|
+
- lib/teaspoon/formatter/dot.rb
|
105
|
+
- lib/teaspoon/formatter/json.rb
|
106
|
+
- lib/teaspoon/formatter/junit.rb
|
107
|
+
- lib/teaspoon/formatter/modules/report_module.rb
|
108
|
+
- lib/teaspoon/formatter/pride.rb
|
109
|
+
- lib/teaspoon/formatter/rspec_html.rb
|
110
|
+
- lib/teaspoon/formatter/snowday.rb
|
111
|
+
- lib/teaspoon/formatter/swayze_or_oprah.rb
|
112
|
+
- lib/teaspoon/formatter/tap.rb
|
113
|
+
- lib/teaspoon/formatter/tap_y.rb
|
114
|
+
- lib/teaspoon/formatter/teamcity.rb
|
115
|
+
- lib/teaspoon/framework.rb
|
116
|
+
- lib/teaspoon/framework/base.rb
|
127
117
|
- lib/teaspoon/instrumentation.rb
|
118
|
+
- lib/teaspoon/registry.rb
|
119
|
+
- lib/teaspoon/registry/has_default.rb
|
128
120
|
- lib/teaspoon/result.rb
|
129
121
|
- lib/teaspoon/runner.rb
|
130
122
|
- lib/teaspoon/server.rb
|
131
123
|
- lib/teaspoon/suite.rb
|
132
124
|
- lib/teaspoon/utility.rb
|
133
125
|
- lib/teaspoon/version.rb
|
134
|
-
- spec/dummy/Rakefile
|
135
|
-
- spec/dummy/app/assets/javascripts/instrumented1.coffee
|
136
|
-
- spec/dummy/app/assets/javascripts/instrumented2.coffee
|
137
|
-
- spec/dummy/app/assets/javascripts/integration/integration.coffee
|
138
|
-
- spec/dummy/app/assets/javascripts/integration/integration_spec.coffee
|
139
|
-
- spec/dummy/app/assets/javascripts/integration/spec_helper.coffee
|
140
|
-
- spec/dummy/app/assets/javascripts/specs/asset_spec.js
|
141
|
-
- spec/dummy/config.ru
|
142
|
-
- spec/dummy/config/application.rb
|
143
|
-
- spec/dummy/config/boot.rb
|
144
|
-
- spec/dummy/config/environment.rb
|
145
|
-
- spec/dummy/config/environments/development.rb
|
146
|
-
- spec/dummy/config/environments/production.rb
|
147
|
-
- spec/dummy/config/environments/test.rb
|
148
|
-
- spec/dummy/config/routes.rb
|
149
|
-
- spec/dummy/config/secrets.yml
|
150
|
-
- spec/dummy/log/.gitkeep
|
151
|
-
- spec/dummy/public/favicon.ico
|
152
|
-
- spec/dummy/script/rails
|
153
|
-
- spec/features/console_reporter_spec.rb
|
154
|
-
- spec/features/hooks_spec.rb
|
155
|
-
- spec/features/html_reporter_spec.rb
|
156
|
-
- spec/features/install_generator_spec.rb
|
157
|
-
- spec/features/instrumentation_spec.rb
|
158
|
-
- spec/fixtures/coverage.json
|
159
|
-
- spec/javascripts/fixtures/_body.html.erb
|
160
|
-
- spec/javascripts/fixtures/fixture.html.haml
|
161
|
-
- spec/javascripts/fixtures/fixture.json
|
162
|
-
- spec/javascripts/jasmine_helper.coffee
|
163
|
-
- spec/javascripts/mocha_helper.coffee
|
164
|
-
- spec/javascripts/spec_helper.coffee
|
165
|
-
- spec/javascripts/stylesheets/stylesheet.css.scss
|
166
|
-
- spec/javascripts/support/json2.js
|
167
|
-
- spec/javascripts/support/support.js.coffee
|
168
|
-
- spec/javascripts/teaspoon/base/fixture_spec.coffee
|
169
|
-
- spec/javascripts/teaspoon/base/reporters/console_spec.coffee
|
170
|
-
- spec/javascripts/teaspoon/base/reporters/html/base_view_spec.coffee
|
171
|
-
- spec/javascripts/teaspoon/base/reporters/html/failure_view_spec.coffee
|
172
|
-
- spec/javascripts/teaspoon/base/reporters/html/progress_view_spec.coffee
|
173
|
-
- spec/javascripts/teaspoon/base/reporters/html/spec_view_spec.coffee
|
174
|
-
- spec/javascripts/teaspoon/base/reporters/html/suite_view_spec.coffee
|
175
|
-
- spec/javascripts/teaspoon/base/reporters/html_spec.coffee
|
176
|
-
- spec/javascripts/teaspoon/base/runner_spec.coffee
|
177
|
-
- spec/javascripts/teaspoon/base/teaspoon_spec.coffee
|
178
|
-
- spec/javascripts/teaspoon/jasmine/fixture_jspec.coffee
|
179
|
-
- spec/javascripts/teaspoon/jasmine/models_jspec.coffee
|
180
|
-
- spec/javascripts/teaspoon/jasmine/reporters/html_jspec.coffee
|
181
|
-
- spec/javascripts/teaspoon/jasmine/runner_jspec.coffee
|
182
|
-
- spec/javascripts/teaspoon/jasmine/spec_jspec.coffee
|
183
|
-
- spec/javascripts/teaspoon/mocha/fixture_mspec.coffee
|
184
|
-
- spec/javascripts/teaspoon/mocha/models_mspec.coffee
|
185
|
-
- spec/javascripts/teaspoon/mocha/reporters/console_mspec.coffee
|
186
|
-
- spec/javascripts/teaspoon/mocha/reporters/html_mspec.coffee
|
187
|
-
- spec/javascripts/teaspoon/mocha/runner_mspec.coffee
|
188
|
-
- spec/javascripts/teaspoon/mocha/spec_mspec.coffee
|
189
|
-
- spec/javascripts/teaspoon/other/erb_spec.js.coffee.erb
|
190
|
-
- spec/javascripts/teaspoon/phantomjs/runner_spec.coffee
|
191
|
-
- spec/javascripts/turbolinks_helper.coffee
|
192
|
-
- spec/spec_helper.rb
|
193
|
-
- spec/support/aruba.rb
|
194
|
-
- spec/teaspoon/command_line_spec.rb
|
195
|
-
- spec/teaspoon/configuration_spec.rb
|
196
|
-
- spec/teaspoon/console_spec.rb
|
197
|
-
- spec/teaspoon/coverage_spec.rb
|
198
|
-
- spec/teaspoon/drivers/base_spec.rb
|
199
|
-
- spec/teaspoon/drivers/capybara_webkit_driver_spec.rb
|
200
|
-
- spec/teaspoon/drivers/phantomjs_driver_spec.rb
|
201
|
-
- spec/teaspoon/drivers/selenium_driver_spec.rb
|
202
|
-
- spec/teaspoon/engine_spec.rb
|
203
|
-
- spec/teaspoon/environment_spec.rb
|
204
|
-
- spec/teaspoon/exceptions_spec.rb
|
205
|
-
- spec/teaspoon/exporter_spec.rb
|
206
|
-
- spec/teaspoon/formatters/base_spec.rb
|
207
|
-
- spec/teaspoon/formatters/clean_formatter_spec.rb
|
208
|
-
- spec/teaspoon/formatters/documentation_formatter_spec.rb
|
209
|
-
- spec/teaspoon/formatters/dot_formatter_spec.rb
|
210
|
-
- spec/teaspoon/formatters/json_formatter_spec.rb
|
211
|
-
- spec/teaspoon/formatters/junit_formatter_spec.rb
|
212
|
-
- spec/teaspoon/formatters/pride_formatter_spec.rb
|
213
|
-
- spec/teaspoon/formatters/rspec_html_formatter_spec.rb
|
214
|
-
- spec/teaspoon/formatters/snowday_formatter_spec.rb
|
215
|
-
- spec/teaspoon/formatters/tap_formatter_spec.rb
|
216
|
-
- spec/teaspoon/formatters/tap_y_formatter_spec.rb
|
217
|
-
- spec/teaspoon/formatters/teamcity_formatter_spec.rb
|
218
|
-
- spec/teaspoon/instrumentation_spec.rb
|
219
|
-
- spec/teaspoon/result_spec.rb
|
220
|
-
- spec/teaspoon/runner_spec.rb
|
221
|
-
- spec/teaspoon/server_spec.rb
|
222
|
-
- spec/teaspoon/suite_spec.rb
|
223
|
-
- spec/teaspoon_env.rb
|
224
|
-
- test/javascripts/qunit_helper.coffee
|
225
|
-
- test/javascripts/teaspoon/qunit/fixture_test.coffee
|
226
|
-
- test/javascripts/teaspoon/qunit/models_test.coffee
|
227
|
-
- test/javascripts/teaspoon/qunit/reporters/console_test.coffee
|
228
|
-
- test/javascripts/teaspoon/qunit/reporters/html/failure_view_test.coffee
|
229
|
-
- test/javascripts/teaspoon/qunit/reporters/html/spec_view_test.coffee
|
230
|
-
- test/javascripts/teaspoon/qunit/reporters/html/suite_view_test.coffee
|
231
|
-
- test/javascripts/teaspoon/qunit/reporters/html_test.coffee
|
232
|
-
- test/javascripts/teaspoon/qunit/runner_test.coffee
|
233
|
-
- vendor/assets/javascripts/jasmine/1.3.1.js
|
234
|
-
- vendor/assets/javascripts/jasmine/2.0.0.js
|
235
|
-
- vendor/assets/javascripts/jasmine/MIT.LICENSE
|
236
|
-
- vendor/assets/javascripts/mocha/1.10.0.js
|
237
|
-
- vendor/assets/javascripts/mocha/1.17.1.js
|
238
|
-
- vendor/assets/javascripts/mocha/MIT.LICENSE
|
239
|
-
- vendor/assets/javascripts/qunit/1.12.0.js
|
240
|
-
- vendor/assets/javascripts/qunit/1.14.0.js
|
241
|
-
- vendor/assets/javascripts/qunit/MIT.LICENSE
|
242
|
-
- vendor/assets/javascripts/support/bind-poly.js
|
243
|
-
- vendor/assets/javascripts/support/chai-1.10.0.js
|
244
|
-
- vendor/assets/javascripts/support/chai-jq-0.0.7.js
|
245
|
-
- vendor/assets/javascripts/support/chai.js
|
246
|
-
- vendor/assets/javascripts/support/expect.js
|
247
|
-
- vendor/assets/javascripts/support/jasmine-jquery-1.7.0.js
|
248
|
-
- vendor/assets/javascripts/support/jasmine-jquery-2.0.0.js
|
249
|
-
- vendor/assets/javascripts/support/sinon-chai.js
|
250
|
-
- vendor/assets/javascripts/support/sinon.js
|
251
126
|
homepage: https://github.com/modeset/teaspoon
|
252
127
|
licenses:
|
253
128
|
- MIT
|
@@ -272,103 +147,4 @@ rubygems_version: 2.4.5
|
|
272
147
|
signing_key:
|
273
148
|
specification_version: 4
|
274
149
|
summary: 'Teaspoon: A Javascript test runner built on top of Rails'
|
275
|
-
test_files:
|
276
|
-
- spec/dummy/Rakefile
|
277
|
-
- spec/dummy/app/assets/javascripts/instrumented1.coffee
|
278
|
-
- spec/dummy/app/assets/javascripts/instrumented2.coffee
|
279
|
-
- spec/dummy/app/assets/javascripts/integration/integration.coffee
|
280
|
-
- spec/dummy/app/assets/javascripts/integration/integration_spec.coffee
|
281
|
-
- spec/dummy/app/assets/javascripts/integration/spec_helper.coffee
|
282
|
-
- spec/dummy/app/assets/javascripts/specs/asset_spec.js
|
283
|
-
- spec/dummy/config.ru
|
284
|
-
- spec/dummy/config/application.rb
|
285
|
-
- spec/dummy/config/boot.rb
|
286
|
-
- spec/dummy/config/environment.rb
|
287
|
-
- spec/dummy/config/environments/development.rb
|
288
|
-
- spec/dummy/config/environments/production.rb
|
289
|
-
- spec/dummy/config/environments/test.rb
|
290
|
-
- spec/dummy/config/routes.rb
|
291
|
-
- spec/dummy/config/secrets.yml
|
292
|
-
- spec/dummy/log/.gitkeep
|
293
|
-
- spec/dummy/public/favicon.ico
|
294
|
-
- spec/dummy/script/rails
|
295
|
-
- spec/features/console_reporter_spec.rb
|
296
|
-
- spec/features/hooks_spec.rb
|
297
|
-
- spec/features/html_reporter_spec.rb
|
298
|
-
- spec/features/install_generator_spec.rb
|
299
|
-
- spec/features/instrumentation_spec.rb
|
300
|
-
- spec/fixtures/coverage.json
|
301
|
-
- spec/javascripts/fixtures/_body.html.erb
|
302
|
-
- spec/javascripts/fixtures/fixture.html.haml
|
303
|
-
- spec/javascripts/fixtures/fixture.json
|
304
|
-
- spec/javascripts/jasmine_helper.coffee
|
305
|
-
- spec/javascripts/mocha_helper.coffee
|
306
|
-
- spec/javascripts/spec_helper.coffee
|
307
|
-
- spec/javascripts/stylesheets/stylesheet.css.scss
|
308
|
-
- spec/javascripts/support/json2.js
|
309
|
-
- spec/javascripts/support/support.js.coffee
|
310
|
-
- spec/javascripts/teaspoon/base/fixture_spec.coffee
|
311
|
-
- spec/javascripts/teaspoon/base/reporters/console_spec.coffee
|
312
|
-
- spec/javascripts/teaspoon/base/reporters/html/base_view_spec.coffee
|
313
|
-
- spec/javascripts/teaspoon/base/reporters/html/failure_view_spec.coffee
|
314
|
-
- spec/javascripts/teaspoon/base/reporters/html/progress_view_spec.coffee
|
315
|
-
- spec/javascripts/teaspoon/base/reporters/html/spec_view_spec.coffee
|
316
|
-
- spec/javascripts/teaspoon/base/reporters/html/suite_view_spec.coffee
|
317
|
-
- spec/javascripts/teaspoon/base/reporters/html_spec.coffee
|
318
|
-
- spec/javascripts/teaspoon/base/runner_spec.coffee
|
319
|
-
- spec/javascripts/teaspoon/base/teaspoon_spec.coffee
|
320
|
-
- spec/javascripts/teaspoon/jasmine/fixture_jspec.coffee
|
321
|
-
- spec/javascripts/teaspoon/jasmine/models_jspec.coffee
|
322
|
-
- spec/javascripts/teaspoon/jasmine/reporters/html_jspec.coffee
|
323
|
-
- spec/javascripts/teaspoon/jasmine/runner_jspec.coffee
|
324
|
-
- spec/javascripts/teaspoon/jasmine/spec_jspec.coffee
|
325
|
-
- spec/javascripts/teaspoon/mocha/fixture_mspec.coffee
|
326
|
-
- spec/javascripts/teaspoon/mocha/models_mspec.coffee
|
327
|
-
- spec/javascripts/teaspoon/mocha/reporters/console_mspec.coffee
|
328
|
-
- spec/javascripts/teaspoon/mocha/reporters/html_mspec.coffee
|
329
|
-
- spec/javascripts/teaspoon/mocha/runner_mspec.coffee
|
330
|
-
- spec/javascripts/teaspoon/mocha/spec_mspec.coffee
|
331
|
-
- spec/javascripts/teaspoon/other/erb_spec.js.coffee.erb
|
332
|
-
- spec/javascripts/teaspoon/phantomjs/runner_spec.coffee
|
333
|
-
- spec/javascripts/turbolinks_helper.coffee
|
334
|
-
- spec/spec_helper.rb
|
335
|
-
- spec/support/aruba.rb
|
336
|
-
- spec/teaspoon/command_line_spec.rb
|
337
|
-
- spec/teaspoon/configuration_spec.rb
|
338
|
-
- spec/teaspoon/console_spec.rb
|
339
|
-
- spec/teaspoon/coverage_spec.rb
|
340
|
-
- spec/teaspoon/drivers/base_spec.rb
|
341
|
-
- spec/teaspoon/drivers/capybara_webkit_driver_spec.rb
|
342
|
-
- spec/teaspoon/drivers/phantomjs_driver_spec.rb
|
343
|
-
- spec/teaspoon/drivers/selenium_driver_spec.rb
|
344
|
-
- spec/teaspoon/engine_spec.rb
|
345
|
-
- spec/teaspoon/environment_spec.rb
|
346
|
-
- spec/teaspoon/exceptions_spec.rb
|
347
|
-
- spec/teaspoon/exporter_spec.rb
|
348
|
-
- spec/teaspoon/formatters/base_spec.rb
|
349
|
-
- spec/teaspoon/formatters/clean_formatter_spec.rb
|
350
|
-
- spec/teaspoon/formatters/documentation_formatter_spec.rb
|
351
|
-
- spec/teaspoon/formatters/dot_formatter_spec.rb
|
352
|
-
- spec/teaspoon/formatters/json_formatter_spec.rb
|
353
|
-
- spec/teaspoon/formatters/junit_formatter_spec.rb
|
354
|
-
- spec/teaspoon/formatters/pride_formatter_spec.rb
|
355
|
-
- spec/teaspoon/formatters/rspec_html_formatter_spec.rb
|
356
|
-
- spec/teaspoon/formatters/snowday_formatter_spec.rb
|
357
|
-
- spec/teaspoon/formatters/tap_formatter_spec.rb
|
358
|
-
- spec/teaspoon/formatters/tap_y_formatter_spec.rb
|
359
|
-
- spec/teaspoon/formatters/teamcity_formatter_spec.rb
|
360
|
-
- spec/teaspoon/instrumentation_spec.rb
|
361
|
-
- spec/teaspoon/result_spec.rb
|
362
|
-
- spec/teaspoon/runner_spec.rb
|
363
|
-
- spec/teaspoon/server_spec.rb
|
364
|
-
- spec/teaspoon/suite_spec.rb
|
365
|
-
- spec/teaspoon_env.rb
|
366
|
-
- test/javascripts/qunit_helper.coffee
|
367
|
-
- test/javascripts/teaspoon/qunit/fixture_test.coffee
|
368
|
-
- test/javascripts/teaspoon/qunit/models_test.coffee
|
369
|
-
- test/javascripts/teaspoon/qunit/reporters/console_test.coffee
|
370
|
-
- test/javascripts/teaspoon/qunit/reporters/html/failure_view_test.coffee
|
371
|
-
- test/javascripts/teaspoon/qunit/reporters/html/spec_view_test.coffee
|
372
|
-
- test/javascripts/teaspoon/qunit/reporters/html/suite_view_test.coffee
|
373
|
-
- test/javascripts/teaspoon/qunit/reporters/html_test.coffee
|
374
|
-
- test/javascripts/teaspoon/qunit/runner_test.coffee
|
150
|
+
test_files: []
|