capybara-harness 0.0.5 → 0.0.6
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.
- data/lib/capybara/harness.rb +10 -3
- data/lib/capybara/harness/dom/attribute.rb +1 -5
- data/lib/capybara/harness/dom/configuration.rb +2 -2
- data/lib/capybara/harness/dom/field_set.rb +1 -1
- data/lib/capybara/harness/dom/form.rb +2 -2
- data/lib/capybara/harness/dom/subject.rb +2 -2
- data/lib/capybara/harness/dom_harness.rb +4 -6
- data/lib/capybara/harness/version.rb +1 -1
- metadata +17 -13
data/lib/capybara/harness.rb
CHANGED
@@ -1,9 +1,16 @@
|
|
1
1
|
require "capybara"
|
2
|
+
require "capybara/dsl"
|
2
3
|
require "capybara/harness/version"
|
4
|
+
require "capybara/harness/dom_harness"
|
5
|
+
require "capybara/harness/dom/attribute"
|
6
|
+
require "capybara/harness/dom/configuration"
|
7
|
+
require "capybara/harness/dom/field"
|
8
|
+
require "capybara/harness/dom/field_set"
|
9
|
+
require "capybara/harness/dom/form"
|
10
|
+
require "capybara/harness/dom/subject"
|
11
|
+
|
3
12
|
|
4
13
|
module Capybara
|
5
14
|
module Harness
|
6
15
|
end
|
7
|
-
end
|
8
|
-
|
9
|
-
require "capybara/harness/dom_harness"
|
16
|
+
end
|
@@ -9,11 +9,7 @@ module Capybara::Harness::Dom
|
|
9
9
|
self.contents = options.delete(:contents)
|
10
10
|
end
|
11
11
|
|
12
|
-
def
|
13
|
-
|
14
|
-
end
|
15
|
-
|
16
|
-
def extract_value(values)
|
12
|
+
def extract_value(values = {})
|
17
13
|
values = HashWithIndifferentAccess.new(values)
|
18
14
|
if contents
|
19
15
|
contents.call(values)
|
@@ -10,11 +10,11 @@ module Capybara::Harness::Dom
|
|
10
10
|
|
11
11
|
def add_attribute(name, options = {})
|
12
12
|
self.finder_attr_name = name.to_sym if options.has_key?(:finder) && options[:finder] == true
|
13
|
-
self.attributes[name] = Capybara::Dom::Attribute.new(name, options)
|
13
|
+
self.attributes[name] = Capybara::Harness::Dom::Attribute.new(name, options)
|
14
14
|
end
|
15
15
|
|
16
16
|
def set_form(name = nil, block = nil)
|
17
|
-
form = Capybara::Dom::Form.new(name)
|
17
|
+
form = Capybara::Harness::Dom::Form.new(name)
|
18
18
|
block.call(form) unless block.nil?
|
19
19
|
self.form = form
|
20
20
|
end
|
@@ -11,7 +11,7 @@ module Capybara::Harness::Dom
|
|
11
11
|
options = args.last.is_a?(Hash) ? args.pop : {}
|
12
12
|
|
13
13
|
args.each do |field_name|
|
14
|
-
fields << Capybara::Dom::Field.new(options.merge(:name => field_name))
|
14
|
+
fields << Capybara::Harness::Dom::Field.new(options.merge(:name => field_name))
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
@@ -11,12 +11,12 @@ module Capybara::Harness::Dom
|
|
11
11
|
options = args.last.is_a?(Hash) ? args.pop : {}
|
12
12
|
|
13
13
|
args.each do |field_name|
|
14
|
-
elements << Capybara::Dom::Field.new(options.merge(:name => field_name))
|
14
|
+
elements << Capybara::Harness::Dom::Field.new(options.merge(:name => field_name))
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
18
18
|
def fieldset(name = nil, &block)
|
19
|
-
fieldset = Capybara::Dom::FieldSet.new(name)
|
19
|
+
fieldset = Capybara::Harness::Dom::FieldSet.new(name)
|
20
20
|
block.call(fieldset)
|
21
21
|
elements << fieldset
|
22
22
|
end
|
@@ -4,12 +4,12 @@ module Capybara::Harness::Dom
|
|
4
4
|
|
5
5
|
attr_accessor :selector, :attributes, :finder_attr_name, :values, :form
|
6
6
|
|
7
|
-
def initialize(configuration, values =
|
7
|
+
def initialize(configuration, values = {})
|
8
8
|
self.selector = configuration.selector
|
9
9
|
self.finder_attr_name = configuration.finder_attr_name
|
10
10
|
self.attributes = configuration.attributes
|
11
11
|
self.form = configuration.form
|
12
|
-
|
12
|
+
reset!(values)
|
13
13
|
end
|
14
14
|
|
15
15
|
# Public: Returns the value of the finder attribute for this subject.
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'active_support/core_ext/class'
|
2
|
-
require 'spec/support/capybara/dom/configuration'
|
3
2
|
require 'forwardable'
|
4
3
|
|
5
4
|
class Capybara::Harness::DomHarness
|
6
5
|
|
7
6
|
extend Forwardable
|
8
7
|
include Capybara::DSL
|
9
|
-
include Rails.application.routes.url_helpers
|
10
8
|
|
11
9
|
attr_accessor :subject
|
12
10
|
|
@@ -22,12 +20,12 @@ class Capybara::Harness::DomHarness
|
|
22
20
|
:click_action
|
23
21
|
|
24
22
|
def initialize(values = {})
|
25
|
-
self.subject = Capybara::Dom::Subject.new(self.class.configuration, values)
|
23
|
+
self.subject = Capybara::Harness::Dom::Subject.new(self.class.configuration, values)
|
26
24
|
create_aliases!
|
27
25
|
end
|
28
26
|
|
29
27
|
def self.configuration
|
30
|
-
@configuration = Capybara::Dom::Configuration.new(self) unless @configuration
|
28
|
+
@configuration = Capybara::Harness::Dom::Configuration.new(self) unless @configuration
|
31
29
|
@configuration
|
32
30
|
end
|
33
31
|
|
@@ -50,8 +48,8 @@ class Capybara::Harness::DomHarness
|
|
50
48
|
self
|
51
49
|
end
|
52
50
|
|
53
|
-
singleton.send(:alias_method, selector, element)
|
54
|
-
singleton.send(:alias_method, "#{selector}_list", list)
|
51
|
+
singleton.send(:alias_method, selector.to_sym, :element)
|
52
|
+
singleton.send(:alias_method, "#{selector}_list".to_sym, :list)
|
55
53
|
end
|
56
54
|
|
57
55
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capybara-harness
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-01-
|
12
|
+
date: 2013-01-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: capybara
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '1.1'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '1.1'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: activesupport
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,7 +37,12 @@ dependencies:
|
|
32
37
|
version: '3.0'
|
33
38
|
type: :runtime
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '3.0'
|
36
46
|
description: A test harness strategy to easily query and manipulate DOM elements as
|
37
47
|
self-contained objects in the context of feature or acceptance tests.
|
38
48
|
email:
|
@@ -69,21 +79,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
69
79
|
- - ! '>='
|
70
80
|
- !ruby/object:Gem::Version
|
71
81
|
version: '0'
|
72
|
-
segments:
|
73
|
-
- 0
|
74
|
-
hash: -2686545725984384636
|
75
82
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
76
83
|
none: false
|
77
84
|
requirements:
|
78
85
|
- - ! '>='
|
79
86
|
- !ruby/object:Gem::Version
|
80
87
|
version: '0'
|
81
|
-
segments:
|
82
|
-
- 0
|
83
|
-
hash: -2686545725984384636
|
84
88
|
requirements: []
|
85
89
|
rubyforge_project:
|
86
|
-
rubygems_version: 1.8.
|
90
|
+
rubygems_version: 1.8.24
|
87
91
|
signing_key:
|
88
92
|
specification_version: 3
|
89
93
|
summary: A test harness strategy to easily query and manipulate DOM elements as self-contained
|