hermes 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/MIT-LICENSE +1 -1
- data/README.rdoc +11 -2
- data/lib/hermes.rb +0 -1
- data/lib/hermes/actions.rb +4 -8
- data/lib/hermes/assertions.rb +6 -0
- data/lib/hermes/builders.rb +11 -7
- data/lib/hermes/integration_case.rb +1 -2
- data/lib/hermes/perf/scrub.rb +3 -3
- data/lib/hermes/version.rb +2 -2
- data/test/hermes/actions_test.rb +2 -2
- data/test/hermes/assertions_test.rb +8 -17
- data/test/hermes/builders_test.rb +4 -0
- data/test/rails_app/app/controllers/users_controller.rb +7 -1
- data/test/rails_app/app/models/user.rb +0 -1
- data/test/rails_app/config/environments/development.rb +2 -3
- data/test/rails_app/config/environments/production.rb +2 -0
- data/test/rails_app/config/environments/test.rb +2 -3
- data/test/rails_app/config/initializers/secret_token.rb +6 -1
- data/test/test_helper.rb +3 -0
- metadata +57 -22
- data/lib/hermes/scopes.rb +0 -32
- data/test/hermes/scopes_test.rb +0 -47
- data/test/rails_app/log/test.log +0 -13792
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 5f19fa4dfd6cb0dcbbf56afd43753ea94608bfc3
|
4
|
+
data.tar.gz: 300bb3a223a40139e27fa9f181a0828cf938facc
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 32576daed8c2a3dcf369b4a8f2af41ed64156f1a31ff7c28d3090ebd59b367dae31df3bcb3246f17ce37b87aa992dc0b3e28a2aad26187dd6b6269a90e5de164
|
7
|
+
data.tar.gz: dbf442c93afe4441b543b407eccbe9fea2c7c2a36a694ba286808ac1b29e10b1afd8f46d1470bf02bab24617cc59968b8cb7b51c3826127f23a109eafc116a87
|
data/MIT-LICENSE
CHANGED
data/README.rdoc
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
A few testing facilities built on top of Capybara and ActiveSupport::TestCase.
|
4
4
|
|
5
|
-
Requires Rails >=
|
5
|
+
Requires Rails >= 4 and Capybara >= 2.2.
|
6
6
|
|
7
7
|
== TODO
|
8
8
|
|
@@ -12,6 +12,15 @@ Requires Rails >= 3.1 and Capybara >= 1.0.
|
|
12
12
|
|
13
13
|
Require perf optimization for your test suite with "hermes/perf"
|
14
14
|
|
15
|
+
== Capybara tips
|
16
|
+
|
17
|
+
We recommend adding this to `spec/support`:
|
18
|
+
|
19
|
+
Capybara.add_selector :record do
|
20
|
+
xpath { |record| XPath.css("#" + ActionView::RecordIdentifier.dom_id(record)) }
|
21
|
+
match { |record| record.is_a?(ActiveRecord::Base) }
|
22
|
+
end
|
23
|
+
|
15
24
|
== Bugs and Features
|
16
25
|
|
17
26
|
If you discover any bugs or add any features, please let us know using GitHub's tracker.
|
@@ -20,4 +29,4 @@ http://github.com/plataformatec/hermes/issues
|
|
20
29
|
|
21
30
|
== License
|
22
31
|
|
23
|
-
MIT License. Copyright 2011
|
32
|
+
MIT License. Copyright 2011 Plataformatec. http://blog.plataformatec.com.br
|
data/lib/hermes.rb
CHANGED
data/lib/hermes/actions.rb
CHANGED
@@ -40,11 +40,9 @@ module Hermes
|
|
40
40
|
|
41
41
|
def find_and_select_option(select_prefix, postfix, value)
|
42
42
|
full = "#{select_prefix}_#{postfix}"
|
43
|
-
no_select_msg = "cannot select option, no select box with id '#{full}' found"
|
44
|
-
no_option_msg = "cannot select option, no option with text '#{value}' in select box '#{full}'"
|
45
43
|
|
46
|
-
select = find(:css, "##{full}"
|
47
|
-
select.find(:xpath, ".//option[contains(./@value, '#{value}')]"
|
44
|
+
select = find(:css, "##{full}")
|
45
|
+
select.find(:xpath, ".//option[contains(./@value, '#{value}')]").select_option
|
48
46
|
end
|
49
47
|
|
50
48
|
def string_with_double_digits(number)
|
@@ -63,11 +61,9 @@ module Hermes
|
|
63
61
|
end
|
64
62
|
|
65
63
|
def find_prefix_by_label(label)
|
66
|
-
message = "cannot select option, select with label '#{label}' not found"
|
67
64
|
find(:xpath,
|
68
|
-
"//label[contains(normalize-space(string(.)), '#{label}')]
|
69
|
-
|
70
|
-
).text.sub(/_\di$/, '')
|
65
|
+
"//label[contains(normalize-space(string(.)), '#{label}')]"
|
66
|
+
)['for'].sub(/_\di$/, '')
|
71
67
|
end
|
72
68
|
end
|
73
69
|
end
|
data/lib/hermes/assertions.rb
CHANGED
data/lib/hermes/builders.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
|
-
# Rails developers have had bad experience with fixtures
|
2
|
-
# due to
|
1
|
+
# Rails developers have had bad experience with fixtures for a long time
|
2
|
+
# due to misuse.
|
3
3
|
#
|
4
4
|
# This misuse of fixtures is often characterized by a huge ammount of
|
5
5
|
# fixtures, causing a lot of data to maintain and dependence between tests.
|
@@ -9,14 +9,14 @@
|
|
9
9
|
# An example of such tests is a test that assures a given SQL query with
|
10
10
|
# GROUP BY and ORDER BY conditions returns the correct result set. As expected,
|
11
11
|
# we need a huge amount of data in this test which we usually don't need in
|
12
|
-
#
|
12
|
+
# other tests.
|
13
13
|
#
|
14
14
|
# For such scenarios, factories are a fine solution. They won't clutter
|
15
15
|
# all your database since they are created for these specific tests and they
|
16
16
|
# are also easier to maintain.
|
17
17
|
#
|
18
18
|
# I believe this was the primary reason for the Rails community to strongly
|
19
|
-
# adopt factories builders as we saw in the
|
19
|
+
# adopt factories builders as we saw in the last years.
|
20
20
|
#
|
21
21
|
# However, factories are also misused. It is common to see people creating
|
22
22
|
# a huge amount of data with factories before each test in their integration
|
@@ -105,7 +105,11 @@ module Hermes
|
|
105
105
|
if builder = @@builders[name.to_sym]
|
106
106
|
klass, block = builder
|
107
107
|
|
108
|
-
hash =
|
108
|
+
hash = if block
|
109
|
+
scope.instance_exec(&block)
|
110
|
+
else
|
111
|
+
{}
|
112
|
+
end
|
109
113
|
hash.symbolize_keys!
|
110
114
|
hash.merge!(options || {})
|
111
115
|
hash.delete(:id)
|
@@ -123,7 +127,7 @@ module Hermes
|
|
123
127
|
end
|
124
128
|
end
|
125
129
|
|
126
|
-
def respond_to?(method)
|
130
|
+
def respond_to?(method, include_private=false)
|
127
131
|
case method.to_s
|
128
132
|
when BUILDER_REGEX
|
129
133
|
Builders.has_builder?($2)
|
@@ -140,7 +144,7 @@ module Hermes
|
|
140
144
|
return super unless Builders.has_builder?($2)
|
141
145
|
klass, hash = Builders.retrieve(self, $2, method, args.first)
|
142
146
|
object = klass.new
|
143
|
-
object.assign_attributes hash
|
147
|
+
object.assign_attributes hash
|
144
148
|
object.send("save#{$3}") if $1 == "create"
|
145
149
|
object
|
146
150
|
when ATTRIBUTES_REGEX
|
@@ -1,13 +1,12 @@
|
|
1
1
|
class Hermes::IntegrationCase < ActiveSupport::TestCase
|
2
2
|
include Capybara::DSL
|
3
|
-
include
|
3
|
+
include ActionView::RecordIdentifier
|
4
4
|
include Rails.application.routes.url_helpers
|
5
5
|
|
6
6
|
extend Hermes::Context
|
7
7
|
|
8
8
|
include Hermes::Assertions
|
9
9
|
include Hermes::Actions
|
10
|
-
include Hermes::Scopes
|
11
10
|
include Hermes::Builders
|
12
11
|
|
13
12
|
teardown { Capybara.reset_sessions! }
|
data/lib/hermes/perf/scrub.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# Scrub instance variables as in
|
2
2
|
# http://37signals.com/svn/posts/2742-the-road-to-faster-tests
|
3
3
|
|
4
|
-
ActiveSupport::TestCase
|
4
|
+
class ActiveSupport::TestCase
|
5
5
|
teardown :scrub_instance_variables
|
6
6
|
|
7
7
|
@@reserved_ivars = %w(@loaded_fixtures @test_passed @fixture_cache @method_name @_assertion_wrapped @_result)
|
8
8
|
|
9
9
|
def scrub_instance_variables
|
10
|
-
(
|
10
|
+
(instance_variable_names - @@reserved_ivars).each do |ivar|
|
11
11
|
instance_variable_set(ivar, nil)
|
12
12
|
end
|
13
13
|
end
|
14
|
-
end
|
14
|
+
end
|
data/lib/hermes/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Hermes
|
2
|
-
VERSION = "0.
|
3
|
-
end
|
2
|
+
VERSION = "0.6.0".freeze
|
3
|
+
end
|
data/test/hermes/actions_test.rb
CHANGED
@@ -95,7 +95,7 @@ class ActionsTest < Hermes::IntegrationCase
|
|
95
95
|
end
|
96
96
|
|
97
97
|
test "select date and time didn't find the label" do
|
98
|
-
msg =
|
98
|
+
msg = %Q(Unable to find xpath "//label[contains(normalize-space(string(.)), 'Unexistant')]")
|
99
99
|
visit '/users/new'
|
100
100
|
assert_raise_with_message Capybara::ElementNotFound, msg do
|
101
101
|
select_datetime(Time.current, :from => 'Unexistant')
|
@@ -103,7 +103,7 @@ class ActionsTest < Hermes::IntegrationCase
|
|
103
103
|
end
|
104
104
|
|
105
105
|
test "select date and time didn't find the id prefix" do
|
106
|
-
msg =
|
106
|
+
msg = 'Unable to find css "#unexistant_4i"'
|
107
107
|
visit '/users/new'
|
108
108
|
assert_raise_with_message Capybara::ElementNotFound, msg do
|
109
109
|
select_datetime(Time.current, :id_prefix => 'unexistant')
|
@@ -13,7 +13,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
13
13
|
end
|
14
14
|
|
15
15
|
test 'refuse different path' do
|
16
|
-
msg = %Q(
|
16
|
+
msg = %Q(Expected: "/not_a_valid_path"\n Actual: "/users")
|
17
17
|
|
18
18
|
assert_failure(msg) do
|
19
19
|
assert_current_path '/not_a_valid_path'
|
@@ -27,15 +27,14 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
27
27
|
end
|
28
28
|
|
29
29
|
test 'assert difference exists on click button' do
|
30
|
-
fill_in
|
30
|
+
fill_in 'Name', :with => 'User'
|
31
31
|
assert_difference_on_click_button('Submit', 'User.count')
|
32
32
|
end
|
33
33
|
|
34
34
|
test "refuse if difference doesn't exist" do
|
35
35
|
# There's already a user in fixtures
|
36
36
|
msg = "\"User.count\" didn't change by 1.\n" <<
|
37
|
-
"
|
38
|
-
"<1>."
|
37
|
+
"Expected: 2\n Actual: 1"
|
39
38
|
|
40
39
|
assert_failure msg do
|
41
40
|
assert_difference_on_click_button('Submit', 'User.count')
|
@@ -53,8 +52,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
53
52
|
|
54
53
|
test "refuse if difference doesn't exist" do
|
55
54
|
msg = "\"User.blocked.count\" didn't change by 1.\n" <<
|
56
|
-
"
|
57
|
-
"<0>."
|
55
|
+
"Expected: 1\n Actual: 0"
|
58
56
|
|
59
57
|
create_user
|
60
58
|
visit '/users'
|
@@ -380,7 +378,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
380
378
|
test 'assert_table on success' do
|
381
379
|
visit '/users/new'
|
382
380
|
|
383
|
-
assert_table "Useless Table"
|
381
|
+
assert_table "Useless Table"
|
384
382
|
end
|
385
383
|
|
386
384
|
test 'refuse table that does not exist' do
|
@@ -407,7 +405,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
407
405
|
visit '/users/new'
|
408
406
|
|
409
407
|
assert_failure(/Expected to have no table/) do
|
410
|
-
assert_no_table "Useless Table"
|
408
|
+
assert_no_table "Useless Table"
|
411
409
|
end
|
412
410
|
end
|
413
411
|
end
|
@@ -425,7 +423,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
425
423
|
|
426
424
|
test 'refuse verification with different deliveries' do
|
427
425
|
msg = %Q("ActionMailer::Base.deliveries.size" didn't change by 1.\n) <<
|
428
|
-
"
|
426
|
+
"Expected: 1\n Actual: 2"
|
429
427
|
|
430
428
|
assert_failure(msg) do
|
431
429
|
assert_mail_deliveries do
|
@@ -442,7 +440,7 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
442
440
|
|
443
441
|
test 'refuse verification with custom size' do
|
444
442
|
msg = %Q("ActionMailer::Base.deliveries.size" didn't change by 2.\n) <<
|
445
|
-
"
|
443
|
+
"Expected: 2\n Actual: 3"
|
446
444
|
|
447
445
|
assert_failure(msg) do
|
448
446
|
assert_mail_deliveries(2) do
|
@@ -485,11 +483,4 @@ class AssertionsTest < Hermes::IntegrationCase
|
|
485
483
|
def random_string(length=20)
|
486
484
|
Array.new(length) { rand(36).to_s(36) }.join
|
487
485
|
end
|
488
|
-
|
489
|
-
def table_rows
|
490
|
-
[
|
491
|
-
['Cuba Pete', 'King of the Ramba beat'],
|
492
|
-
['Lou Bega', 'Mambo No. 5']
|
493
|
-
]
|
494
|
-
end
|
495
486
|
end
|
@@ -56,6 +56,10 @@ class BuildersTest < Hermes::IntegrationCase
|
|
56
56
|
assert respond_to?(:create_user)
|
57
57
|
end
|
58
58
|
|
59
|
+
test 'respond_to accepts include_private argument' do
|
60
|
+
assert !respond_to?(:not_existing_method, true)
|
61
|
+
end
|
62
|
+
|
59
63
|
test 'blocks are lazily evaluated' do
|
60
64
|
user = new_user
|
61
65
|
assert_not_equal user.counter, new_user.counter
|
@@ -10,7 +10,7 @@ class UsersController < ApplicationController
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def create
|
13
|
-
User.create(
|
13
|
+
User.create(user_params)
|
14
14
|
redirect_to users_path
|
15
15
|
end
|
16
16
|
|
@@ -20,4 +20,10 @@ class UsersController < ApplicationController
|
|
20
20
|
|
21
21
|
redirect_to users_path
|
22
22
|
end
|
23
|
+
|
24
|
+
private
|
25
|
+
|
26
|
+
def user_params
|
27
|
+
params.require(:user).permit([:name, :active_at])
|
28
|
+
end
|
23
29
|
end
|
@@ -1,14 +1,13 @@
|
|
1
1
|
RailsApp::Application.configure do
|
2
2
|
# Settings specified here will take precedence over those in config/application.rb
|
3
3
|
|
4
|
+
config.eager_load = false
|
5
|
+
|
4
6
|
# In the development environment your application's code is reloaded on
|
5
7
|
# every request. This slows down response time but is perfect for development
|
6
8
|
# since you don't have to restart the webserver when you make code changes.
|
7
9
|
config.cache_classes = false
|
8
10
|
|
9
|
-
# Log error messages when you accidentally call methods on nil.
|
10
|
-
config.whiny_nils = true
|
11
|
-
|
12
11
|
# Show full error reports and disable caching
|
13
12
|
config.consider_all_requests_local = true
|
14
13
|
config.action_view.debug_rjs = true
|
@@ -1,6 +1,8 @@
|
|
1
1
|
RailsApp::Application.configure do
|
2
2
|
# Settings specified here will take precedence over those in config/application.rb
|
3
3
|
|
4
|
+
config.eager_load = true
|
5
|
+
|
4
6
|
# The production environment is meant for finished, "live" apps.
|
5
7
|
# Code is not reloaded between requests
|
6
8
|
config.cache_classes = true
|
@@ -1,15 +1,14 @@
|
|
1
1
|
RailsApp::Application.configure do
|
2
2
|
# Settings specified here will take precedence over those in config/application.rb
|
3
3
|
|
4
|
+
config.eager_load = false
|
5
|
+
|
4
6
|
# The test environment is used exclusively to run your application's
|
5
7
|
# test suite. You never need to work with it otherwise. Remember that
|
6
8
|
# your test database is "scratch space" for the test suite and is wiped
|
7
9
|
# and recreated between test runs. Don't rely on the data there!
|
8
10
|
config.cache_classes = true
|
9
11
|
|
10
|
-
# Log error messages when you accidentally call methods on nil.
|
11
|
-
config.whiny_nils = true
|
12
|
-
|
13
12
|
# Show full error reports and disable caching
|
14
13
|
config.consider_all_requests_local = true
|
15
14
|
config.action_controller.perform_caching = false
|
@@ -2,6 +2,11 @@
|
|
2
2
|
|
3
3
|
# Your secret key for verifying the integrity of signed cookies.
|
4
4
|
# If you change this key, all old signed cookies will become invalid!
|
5
|
+
|
5
6
|
# Make sure the secret is at least 30 characters and all random,
|
6
7
|
# no regular words or you'll be exposed to dictionary attacks.
|
7
|
-
|
8
|
+
# You can use `rake secret` to generate a secure secret key.
|
9
|
+
|
10
|
+
# Make sure your secret_key_base is kept private
|
11
|
+
# if you're sharing your code publicly.
|
12
|
+
RailsApp::Application.config.secret_key_base = '968ef21e70ebd681a0391ca5175ef3de7ee0ed8a1e25d86b7473e6191a1734edebdc93f530243b6883096d74cc8b27b225a6e720d306bf42aec8b16212743b1d'
|
data/test/test_helper.rb
CHANGED
@@ -17,6 +17,7 @@ ActiveRecord::Migrator.migrate File.expand_path("../rails_app/db/migrate/", __FI
|
|
17
17
|
require "capybara/rails"
|
18
18
|
Capybara.default_driver = :rack_test
|
19
19
|
Capybara.default_selector = :css
|
20
|
+
Capybara.match = :prefer_exact
|
20
21
|
|
21
22
|
require 'rails/test_help'
|
22
23
|
require 'active_support/test_case'
|
@@ -31,3 +32,5 @@ require 'support/assertions'
|
|
31
32
|
require 'builders'
|
32
33
|
|
33
34
|
ActiveSupport::TestCase.fixture_path = File.expand_path("../fixtures/", __FILE__)
|
35
|
+
|
36
|
+
I18n.enforce_available_locales = true
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hermes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.6.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- José Valim
|
@@ -10,8 +9,50 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date:
|
14
|
-
dependencies:
|
12
|
+
date: 2014-01-31 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: actionpack
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
requirements:
|
18
|
+
- - "~>"
|
19
|
+
- !ruby/object:Gem::Version
|
20
|
+
version: '4.0'
|
21
|
+
type: :runtime
|
22
|
+
prerelease: false
|
23
|
+
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - "~>"
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
version: '4.0'
|
28
|
+
- !ruby/object:Gem::Dependency
|
29
|
+
name: activesupport
|
30
|
+
requirement: !ruby/object:Gem::Requirement
|
31
|
+
requirements:
|
32
|
+
- - "~>"
|
33
|
+
- !ruby/object:Gem::Version
|
34
|
+
version: '4.0'
|
35
|
+
type: :runtime
|
36
|
+
prerelease: false
|
37
|
+
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - "~>"
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
version: '4.0'
|
42
|
+
- !ruby/object:Gem::Dependency
|
43
|
+
name: capybara
|
44
|
+
requirement: !ruby/object:Gem::Requirement
|
45
|
+
requirements:
|
46
|
+
- - "~>"
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: '2.2'
|
49
|
+
type: :runtime
|
50
|
+
prerelease: false
|
51
|
+
version_requirements: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - "~>"
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '2.2'
|
15
56
|
description: A few testing facilities built on top of Capybara and ActiveSupport::TestCase
|
16
57
|
email:
|
17
58
|
- developers@plataformatec.com.br
|
@@ -20,27 +61,26 @@ extensions: []
|
|
20
61
|
extra_rdoc_files:
|
21
62
|
- README.rdoc
|
22
63
|
files:
|
64
|
+
- MIT-LICENSE
|
65
|
+
- README.rdoc
|
66
|
+
- lib/hermes.rb
|
23
67
|
- lib/hermes/actions.rb
|
24
68
|
- lib/hermes/assertions.rb
|
25
69
|
- lib/hermes/builders.rb
|
26
70
|
- lib/hermes/context.rb
|
27
71
|
- lib/hermes/integration_case.rb
|
72
|
+
- lib/hermes/perf.rb
|
28
73
|
- lib/hermes/perf/scrub.rb
|
29
74
|
- lib/hermes/perf/shared_connection.rb
|
30
|
-
- lib/hermes/perf.rb
|
31
75
|
- lib/hermes/rails.rb
|
32
|
-
- lib/hermes/scopes.rb
|
33
76
|
- lib/hermes/version.rb
|
34
|
-
- lib/hermes.rb
|
35
|
-
- README.rdoc
|
36
|
-
- MIT-LICENSE
|
37
77
|
- test/builders.rb
|
38
78
|
- test/fixtures/users.yml
|
39
79
|
- test/hermes/actions_test.rb
|
40
80
|
- test/hermes/assertions_test.rb
|
41
81
|
- test/hermes/builders_test.rb
|
42
82
|
- test/hermes/context_test.rb
|
43
|
-
- test/
|
83
|
+
- test/rails_app/Rakefile
|
44
84
|
- test/rails_app/app/controllers/application_controller.rb
|
45
85
|
- test/rails_app/app/controllers/users_controller.rb
|
46
86
|
- test/rails_app/app/helpers/application_helper.rb
|
@@ -48,6 +88,7 @@ files:
|
|
48
88
|
- test/rails_app/app/views/layouts/application.html.erb
|
49
89
|
- test/rails_app/app/views/users/index.html.erb
|
50
90
|
- test/rails_app/app/views/users/new.html.erb
|
91
|
+
- test/rails_app/config.ru
|
51
92
|
- test/rails_app/config/application.rb
|
52
93
|
- test/rails_app/config/boot.rb
|
53
94
|
- test/rails_app/config/database.yml
|
@@ -62,13 +103,11 @@ files:
|
|
62
103
|
- test/rails_app/config/initializers/session_store.rb
|
63
104
|
- test/rails_app/config/locales/en.yml
|
64
105
|
- test/rails_app/config/routes.rb
|
65
|
-
- test/rails_app/config.ru
|
66
106
|
- test/rails_app/db/migrate/20110228170406_create_users.rb
|
67
107
|
- test/rails_app/db/schema.rb
|
68
108
|
- test/rails_app/log/development.log
|
69
109
|
- test/rails_app/log/production.log
|
70
110
|
- test/rails_app/log/server.log
|
71
|
-
- test/rails_app/log/test.log
|
72
111
|
- test/rails_app/public/404.html
|
73
112
|
- test/rails_app/public/422.html
|
74
113
|
- test/rails_app/public/500.html
|
@@ -79,36 +118,34 @@ files:
|
|
79
118
|
- test/rails_app/public/javascripts/effects.js
|
80
119
|
- test/rails_app/public/javascripts/prototype.js
|
81
120
|
- test/rails_app/public/javascripts/rails.js
|
82
|
-
- test/rails_app/Rakefile
|
83
121
|
- test/rails_app/script/rails
|
84
122
|
- test/support/assertions.rb
|
85
123
|
- test/support/models.rb
|
86
124
|
- test/test_helper.rb
|
87
125
|
homepage: http://github.com/plataformatec/hermes
|
88
126
|
licenses: []
|
127
|
+
metadata: {}
|
89
128
|
post_install_message:
|
90
129
|
rdoc_options:
|
91
|
-
- --main
|
130
|
+
- "--main"
|
92
131
|
- README.rdoc
|
93
132
|
require_paths:
|
94
133
|
- lib
|
95
134
|
required_ruby_version: !ruby/object:Gem::Requirement
|
96
|
-
none: false
|
97
135
|
requirements:
|
98
|
-
- -
|
136
|
+
- - ">="
|
99
137
|
- !ruby/object:Gem::Version
|
100
138
|
version: '0'
|
101
139
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
102
|
-
none: false
|
103
140
|
requirements:
|
104
|
-
- -
|
141
|
+
- - ">="
|
105
142
|
- !ruby/object:Gem::Version
|
106
143
|
version: '0'
|
107
144
|
requirements: []
|
108
145
|
rubyforge_project: hermes
|
109
|
-
rubygems_version:
|
146
|
+
rubygems_version: 2.2.0
|
110
147
|
signing_key:
|
111
|
-
specification_version:
|
148
|
+
specification_version: 4
|
112
149
|
summary: A few testing facilities built on top of Capybara and ActiveSupport::TestCase
|
113
150
|
test_files:
|
114
151
|
- test/builders.rb
|
@@ -117,7 +154,6 @@ test_files:
|
|
117
154
|
- test/hermes/assertions_test.rb
|
118
155
|
- test/hermes/builders_test.rb
|
119
156
|
- test/hermes/context_test.rb
|
120
|
-
- test/hermes/scopes_test.rb
|
121
157
|
- test/rails_app/app/controllers/application_controller.rb
|
122
158
|
- test/rails_app/app/controllers/users_controller.rb
|
123
159
|
- test/rails_app/app/helpers/application_helper.rb
|
@@ -145,7 +181,6 @@ test_files:
|
|
145
181
|
- test/rails_app/log/development.log
|
146
182
|
- test/rails_app/log/production.log
|
147
183
|
- test/rails_app/log/server.log
|
148
|
-
- test/rails_app/log/test.log
|
149
184
|
- test/rails_app/public/404.html
|
150
185
|
- test/rails_app/public/422.html
|
151
186
|
- test/rails_app/public/500.html
|