kookaburra 2.0.0 → 3.0.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 +4 -4
- data/.rspec +1 -0
- data/.travis.yml +1 -3
- data/README.markdown +259 -181
- data/Rakefile +11 -2
- data/kookaburra.gemspec +1 -0
- data/lib/kookaburra.rb +24 -9
- data/lib/kookaburra/api_client.rb +1 -1
- data/lib/kookaburra/api_driver.rb +1 -1
- data/lib/kookaburra/assertion.rb +1 -1
- data/lib/kookaburra/configuration.rb +25 -9
- data/lib/kookaburra/configuration/proxy.rb +55 -0
- data/lib/kookaburra/dependency_accessor.rb +7 -0
- data/lib/kookaburra/exceptions.rb +11 -3
- data/lib/kookaburra/mental_model.rb +5 -5
- data/lib/kookaburra/rack_app_server.rb +3 -12
- data/lib/kookaburra/test_helpers.rb +53 -12
- data/lib/kookaburra/ui_driver/ui_component.rb +9 -2
- data/lib/kookaburra/version.rb +1 -1
- data/spec/integration/test_a_rack_application_spec.rb +3 -2
- data/spec/integration/test_multiple_applications_spec.rb +96 -0
- data/spec/kookaburra/api_client_spec.rb +6 -5
- data/spec/kookaburra/api_driver_spec.rb +18 -0
- data/spec/kookaburra/configuration/proxy_spec.rb +39 -0
- data/spec/kookaburra/configuration_spec.rb +54 -2
- data/spec/kookaburra/mental_model_spec.rb +22 -20
- data/spec/kookaburra/test_helpers_spec.rb +60 -24
- data/spec/kookaburra/ui_driver/scoped_browser_spec.rb +3 -2
- data/spec/kookaburra/ui_driver/ui_component/address_bar_spec.rb +2 -1
- data/spec/kookaburra/ui_driver/ui_component_spec.rb +48 -14
- data/spec/kookaburra/ui_driver_spec.rb +4 -3
- data/spec/kookaburra_spec.rb +19 -14
- data/spec/spec_helper.rb +79 -0
- data/spec/support/shared_examples/it_can_have_ui_components.rb +2 -2
- data/spec/support/shared_examples/it_can_make_assertions.rb +3 -3
- data/spec/support/shared_examples/it_has_a_dependency_accessor.rb +3 -4
- metadata +25 -2
@@ -1,10 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
1
2
|
require 'kookaburra/ui_driver/scoped_browser'
|
2
3
|
|
3
4
|
describe Kookaburra::UIDriver::ScopedBrowser do
|
4
5
|
it 'forwards all method calls to the browser but scopes them to the component locator' do
|
5
6
|
browser = double('Browser')
|
6
|
-
browser.
|
7
|
-
browser.
|
7
|
+
expect(browser).to receive(:within).with('#a_component_locator').and_yield
|
8
|
+
expect(browser).to receive(:some_other_method).with(:foo)
|
8
9
|
subject = Kookaburra::UIDriver::ScopedBrowser.new(browser, lambda { '#a_component_locator' })
|
9
10
|
subject.some_other_method(:foo)
|
10
11
|
end
|
@@ -1,10 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
1
2
|
require 'kookaburra/ui_driver/ui_component/address_bar'
|
2
3
|
|
3
4
|
describe Kookaburra::UIDriver::UIComponent::AddressBar do
|
4
5
|
describe '#go_to' do
|
5
6
|
let(:browser) {
|
6
7
|
double('Capybara::Session', text: '').tap do |b|
|
7
|
-
b.
|
8
|
+
allow(b).to receive(:visit).with('http://site.example.com')
|
8
9
|
end
|
9
10
|
}
|
10
11
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'spec_helper'
|
1
2
|
require 'kookaburra/ui_driver/ui_component'
|
2
3
|
require 'support/shared_examples/it_can_make_assertions'
|
3
4
|
require 'support/shared_examples/it_can_have_ui_components'
|
@@ -24,10 +25,10 @@ describe Kookaburra::UIDriver::UIComponent do
|
|
24
25
|
end
|
25
26
|
|
26
27
|
it 'returns true if the component_locator is found in the DOM and is visible' do
|
27
|
-
browser.
|
28
|
-
.with('#my_component', :
|
28
|
+
expect(browser).to receive(:has_css?) \
|
29
|
+
.with('#my_component', visible: true) \
|
29
30
|
.and_return(true)
|
30
|
-
component.
|
31
|
+
expect(component).to be_visible
|
31
32
|
end
|
32
33
|
|
33
34
|
context 'when the component_locator is not found in the DOM' do
|
@@ -35,7 +36,7 @@ describe Kookaburra::UIDriver::UIComponent do
|
|
35
36
|
|
36
37
|
context 'and a server error is not detected' do
|
37
38
|
it 'returns false' do
|
38
|
-
component.
|
39
|
+
expect(component).to_not be_visible
|
39
40
|
end
|
40
41
|
end
|
41
42
|
|
@@ -43,35 +44,68 @@ describe Kookaburra::UIDriver::UIComponent do
|
|
43
44
|
let(:server_error_detection) { ->(browser) { true } }
|
44
45
|
|
45
46
|
it 'raises UnexpectedResponse' do
|
46
|
-
|
47
|
-
|
47
|
+
expect{ component.visible? }.to \
|
48
|
+
raise_error(Kookaburra::UnexpectedResponse)
|
48
49
|
end
|
49
50
|
|
50
51
|
it 'adds the text of the HTTP response to the exception message' do
|
51
|
-
browser.
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
52
|
+
allow(browser).to receive(:text) {
|
53
|
+
'This is text from the HTTP response'
|
54
|
+
}
|
55
|
+
|
56
|
+
expect{ component.visible? }.to \
|
57
|
+
raise_error(Kookaburra::UnexpectedResponse,
|
58
|
+
"Server Error Detected:\n" \
|
59
|
+
+ "This is text from the HTTP response")
|
56
60
|
end
|
57
61
|
end
|
58
62
|
end
|
59
63
|
end
|
60
64
|
|
65
|
+
describe '#not_visible?' do
|
66
|
+
before(:each) do
|
67
|
+
def component.component_locator
|
68
|
+
'#my_component'
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
it 'returns true if the component_locator is not found in the DOM or is not visible' do
|
73
|
+
expect(browser).to receive(:has_no_css?) \
|
74
|
+
.with('#my_component', visible: true) \
|
75
|
+
.and_return(true)
|
76
|
+
expect(component).to be_not_visible
|
77
|
+
end
|
78
|
+
|
79
|
+
it 'returns false if the component_locator is found in the DOM and is visible' do
|
80
|
+
expect(browser).to receive(:has_no_css?) \
|
81
|
+
.with('#my_component', visible: true) \
|
82
|
+
.and_return(false)
|
83
|
+
expect(component).to_not be_not_visible
|
84
|
+
end
|
85
|
+
|
86
|
+
context 'when the component_locator is found in the DOM' do
|
87
|
+
let(:browser) { double('Browser Driver', has_css?: false, text: '') }
|
88
|
+
|
89
|
+
it 'returns false' do
|
90
|
+
expect(component).to_not be_visible
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
61
95
|
describe '#url' do
|
62
96
|
it 'returns the app_host + #component_path' do
|
63
97
|
def component.component_path
|
64
98
|
'/foo/bar'
|
65
99
|
end
|
66
|
-
component.url.
|
100
|
+
expect(component.url).to eq 'http://my.example.com/foo/bar'
|
67
101
|
end
|
68
102
|
end
|
69
103
|
|
70
104
|
describe 'protected methods (for use by subclasses)' do
|
71
105
|
describe '#component_path' do
|
72
106
|
it 'must be defined by subclasses' do
|
73
|
-
|
74
|
-
|
107
|
+
expect{ component.send(:component_path) }.to \
|
108
|
+
raise_error(Kookaburra::ConfigurationError)
|
75
109
|
end
|
76
110
|
end
|
77
111
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'spec_helper'
|
1
2
|
require 'kookaburra/ui_driver'
|
2
3
|
require 'support/shared_examples/it_has_a_dependency_accessor'
|
3
4
|
require 'support/shared_examples/it_can_make_assertions'
|
@@ -9,7 +10,7 @@ describe Kookaburra::UIDriver do
|
|
9
10
|
describe '.ui_driver' do
|
10
11
|
it 'adds an accessor method for the named driver that defaults to an instance of the specified class' do
|
11
12
|
foo_driver_class = double(Class)
|
12
|
-
foo_driver_class.
|
13
|
+
expect(foo_driver_class).to receive(:new) \
|
13
14
|
.with(:configuration) \
|
14
15
|
.and_return(:a_foo_driver)
|
15
16
|
|
@@ -18,7 +19,7 @@ describe Kookaburra::UIDriver do
|
|
18
19
|
end
|
19
20
|
|
20
21
|
ui = ui_driver_class.new(:configuration)
|
21
|
-
ui.foo.
|
22
|
+
expect(ui.foo).to eq :a_foo_driver
|
22
23
|
end
|
23
24
|
end
|
24
25
|
|
@@ -26,7 +27,7 @@ describe Kookaburra::UIDriver do
|
|
26
27
|
it 'returns the configured app_host' do
|
27
28
|
config = double('Configuration', :app_host => 'http://my.example.com')
|
28
29
|
driver = Kookaburra::UIDriver.new(config)
|
29
|
-
driver.url.
|
30
|
+
expect(driver.url).to eq 'http://my.example.com'
|
30
31
|
end
|
31
32
|
end
|
32
33
|
|
data/spec/kookaburra_spec.rb
CHANGED
@@ -1,8 +1,11 @@
|
|
1
|
+
require 'spec_helper'
|
1
2
|
require 'kookaburra'
|
2
3
|
|
3
4
|
describe Kookaburra do
|
4
5
|
let(:configuration) {
|
5
|
-
|
6
|
+
double('configuration', :mental_model= => nil,
|
7
|
+
ui_driver_class: nil,
|
8
|
+
api_driver_class: nil)
|
6
9
|
}
|
7
10
|
|
8
11
|
let(:k) { Kookaburra.new(configuration) }
|
@@ -10,53 +13,55 @@ describe Kookaburra do
|
|
10
13
|
describe '#api' do
|
11
14
|
it 'returns an instance of the configured APIDriver' do
|
12
15
|
my_api_driver_class = double(Class)
|
13
|
-
my_api_driver_class.
|
16
|
+
expect(my_api_driver_class).to receive(:new) \
|
14
17
|
.with(configuration) \
|
15
18
|
.and_return(:an_api_driver)
|
16
|
-
configuration.
|
17
|
-
k.api.
|
19
|
+
allow(configuration).to receive(:api_driver_class) { my_api_driver_class }
|
20
|
+
expect(k.api).to eq :an_api_driver
|
18
21
|
end
|
19
22
|
end
|
20
23
|
|
21
24
|
describe '#ui' do
|
22
25
|
it 'returns an instance of the configured UIDriver' do
|
23
26
|
my_ui_driver_class = double(Class)
|
24
|
-
my_ui_driver_class.
|
27
|
+
expect(my_ui_driver_class).to receive(:new) \
|
25
28
|
.with(configuration) \
|
26
29
|
.and_return(:a_ui_driver)
|
27
|
-
configuration.
|
28
|
-
k.ui.
|
30
|
+
allow(configuration).to receive(:ui_driver_class) { my_ui_driver_class }
|
31
|
+
expect(k.ui).to eq :a_ui_driver
|
29
32
|
end
|
30
33
|
end
|
31
34
|
|
32
35
|
describe '#get_data' do
|
33
36
|
it 'returns a dup of the specified MentalModel::Collection' do
|
34
37
|
collection = double('MentalModel::Collection')
|
35
|
-
collection.
|
38
|
+
expect(collection).to receive(:dup) \
|
36
39
|
.and_return(:mental_model_collection_dup)
|
37
|
-
configuration.
|
38
|
-
|
40
|
+
allow(configuration).to receive(:mental_model) {
|
41
|
+
double(:foos => collection)
|
42
|
+
}
|
43
|
+
expect(k.get_data(:foos)).to eq :mental_model_collection_dup
|
39
44
|
end
|
40
45
|
end
|
41
46
|
|
42
47
|
describe '.configuration' do
|
43
48
|
it 'returns a Kookaburra::Configuration instance' do
|
44
|
-
Kookaburra.configuration.
|
49
|
+
expect(Kookaburra.configuration).to be_kind_of(Kookaburra::Configuration)
|
45
50
|
end
|
46
51
|
|
47
52
|
it 'always returns the same configuration' do
|
48
53
|
x = Kookaburra.configuration
|
49
54
|
y = Kookaburra.configuration
|
50
55
|
x.app_host = 'http://example.com'
|
51
|
-
y.app_host.
|
56
|
+
expect(y.app_host).to eq 'http://example.com'
|
52
57
|
end
|
53
58
|
end
|
54
59
|
|
55
60
|
describe '.configure' do
|
56
61
|
it 'yields Kookaburra.configuration' do
|
57
62
|
configuration = double('Kookaburra::Configuration')
|
58
|
-
configuration.
|
59
|
-
Kookaburra.
|
63
|
+
expect(configuration).to receive(:foo=).with(:bar)
|
64
|
+
allow(Kookaburra).to receive(:configuration) { configuration }
|
60
65
|
Kookaburra.configure do |c|
|
61
66
|
c.foo = :bar
|
62
67
|
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,79 @@
|
|
1
|
+
require 'codeclimate-test-reporter'
|
2
|
+
CodeClimate::TestReporter.start
|
3
|
+
|
4
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
5
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
6
|
+
# The generated `.rspec` file contains `--require spec_helper` which will cause this
|
7
|
+
# file to always be loaded, without a need to explicitly require it in any files.
|
8
|
+
#
|
9
|
+
# Given that it is always loaded, you are encouraged to keep this file as
|
10
|
+
# light-weight as possible. Requiring heavyweight dependencies from this file
|
11
|
+
# will add to the boot time of your test suite on EVERY test run, even for an
|
12
|
+
# individual file that may not need all of that loaded. Instead, make a
|
13
|
+
# separate helper file that requires this one and then use it only in the specs
|
14
|
+
# that actually need it.
|
15
|
+
#
|
16
|
+
# The `.rspec` file also contains a few flags that are not defaults but that
|
17
|
+
# users commonly want.
|
18
|
+
#
|
19
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
20
|
+
RSpec.configure do |config|
|
21
|
+
# The settings below are suggested to provide a good initial experience
|
22
|
+
# with RSpec, but feel free to customize to your heart's content.
|
23
|
+
# These two settings work together to allow you to limit a spec run
|
24
|
+
# to individual examples or groups you care about by tagging them with
|
25
|
+
# `:focus` metadata. When nothing is tagged with `:focus`, all examples
|
26
|
+
# get run.
|
27
|
+
config.filter_run :focus
|
28
|
+
config.run_all_when_everything_filtered = true
|
29
|
+
|
30
|
+
# Many RSpec users commonly either run the entire suite or an individual
|
31
|
+
# file, and it's useful to allow more verbose output when running an
|
32
|
+
# individual spec file.
|
33
|
+
if config.files_to_run.one?
|
34
|
+
# Use the documentation formatter for detailed output,
|
35
|
+
# unless a formatter has already been configured
|
36
|
+
# (e.g. via a command-line flag).
|
37
|
+
config.default_formatter = 'doc'
|
38
|
+
end
|
39
|
+
|
40
|
+
# Print the 10 slowest examples and example groups at the
|
41
|
+
# end of the spec run, to help surface which specs are running
|
42
|
+
# particularly slow.
|
43
|
+
# config.profile_examples = 10
|
44
|
+
|
45
|
+
# Run specs in random order to surface order dependencies. If you find an
|
46
|
+
# order dependency and want to debug it, you can fix the order by providing
|
47
|
+
# the seed, which is printed after each run.
|
48
|
+
# --seed 1234
|
49
|
+
config.order = :random
|
50
|
+
|
51
|
+
# Seed global randomization in this process using the `--seed` CLI option.
|
52
|
+
# Setting this allows you to use `--seed` to deterministically reproduce
|
53
|
+
# test failures related to randomization by passing the same `--seed` value
|
54
|
+
# as the one that triggered the failure.
|
55
|
+
Kernel.srand config.seed
|
56
|
+
|
57
|
+
# rspec-expectations config goes here. You can use an alternate
|
58
|
+
# assertion/expectation library such as wrong or the stdlib/minitest
|
59
|
+
# assertions if you prefer.
|
60
|
+
config.expect_with :rspec do |expectations|
|
61
|
+
# Enable only the newer, non-monkey-patching expect syntax.
|
62
|
+
# For more details, see:
|
63
|
+
# - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
|
64
|
+
expectations.syntax = :expect
|
65
|
+
end
|
66
|
+
|
67
|
+
# rspec-mocks config goes here. You can use an alternate test double
|
68
|
+
# library (such as bogus or mocha) by changing the `mock_with` option here.
|
69
|
+
config.mock_with :rspec do |mocks|
|
70
|
+
# Enable only the newer, non-monkey-patching expect syntax.
|
71
|
+
# For more details, see:
|
72
|
+
# - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
|
73
|
+
mocks.syntax = :expect
|
74
|
+
|
75
|
+
# Prevents you from mocking or stubbing a method that does not exist on
|
76
|
+
# a real object. This is generally recommended.
|
77
|
+
mocks.verify_partial_doubles = true
|
78
|
+
end
|
79
|
+
end
|
@@ -3,7 +3,7 @@ shared_examples_for :it_can_have_ui_components do |subject_class|
|
|
3
3
|
it 'adds an accessor method for the named component that defaults to an instance of the specified class' do
|
4
4
|
configuration = double('Kookaburra::Configuration').as_null_object
|
5
5
|
foo_component_class = double(Class)
|
6
|
-
foo_component_class.
|
6
|
+
allow(foo_component_class).to receive(:new) \
|
7
7
|
.with(configuration, :option => :value) \
|
8
8
|
.and_return(:a_foo_component)
|
9
9
|
|
@@ -12,7 +12,7 @@ shared_examples_for :it_can_have_ui_components do |subject_class|
|
|
12
12
|
end
|
13
13
|
|
14
14
|
component_container = component_container_class.new(configuration)
|
15
|
-
component_container.foo.
|
15
|
+
expect(component_container.foo).to eq :a_foo_component
|
16
16
|
end
|
17
17
|
end
|
18
18
|
end
|
@@ -1,12 +1,12 @@
|
|
1
1
|
shared_examples_for :it_can_make_assertions do
|
2
2
|
describe '#assert' do
|
3
3
|
it 'returns true if the condition is truthy' do
|
4
|
-
subject.send(:assert, true, "Shouldn't see this message").
|
4
|
+
expect(subject.send(:assert, true, "Shouldn't see this message")).to eq true
|
5
5
|
end
|
6
6
|
|
7
7
|
it 'raises a Kookaburra::AssertionFailed exception if the condition is not truthy' do
|
8
|
-
|
9
|
-
|
8
|
+
expect{ subject.send(:assert, false, "False isn't true, dummy.") }.to \
|
9
|
+
raise_error(Kookaburra::AssertionFailed, "False isn't true, dummy.")
|
10
10
|
end
|
11
11
|
end
|
12
12
|
end
|
@@ -2,20 +2,19 @@ shared_examples_for :it_has_a_dependency_accessor do |accessor_name|
|
|
2
2
|
describe accessor_name.to_s do
|
3
3
|
it "returns the #{accessor_name} object as assigned" do
|
4
4
|
subject.send("#{accessor_name}=", :thing)
|
5
|
-
subject.send(accessor_name).
|
5
|
+
expect(subject.send(accessor_name)).to eq :thing
|
6
6
|
end
|
7
7
|
|
8
8
|
context "when the #{accessor_name} object is not set" do
|
9
9
|
it 'raises a StandardError' do
|
10
|
-
|
11
|
-
.should raise_error(StandardError)
|
10
|
+
expect{ subject.send(accessor_name) }.to raise_error(StandardError)
|
12
11
|
end
|
13
12
|
|
14
13
|
it "explains that the #{accessor_name} was not set on initialiation" do
|
15
14
|
begin
|
16
15
|
subject.send(accessor_name)
|
17
16
|
rescue StandardError => e
|
18
|
-
e.message.
|
17
|
+
expect(e.message).to eq "No #{accessor_name} object was set on #{subject.class.name} initialization."
|
19
18
|
end
|
20
19
|
end
|
21
20
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kookaburra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Wilger
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
13
|
+
date: 2014-09-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rest-client
|
@@ -194,6 +194,20 @@ dependencies:
|
|
194
194
|
- - ">="
|
195
195
|
- !ruby/object:Gem::Version
|
196
196
|
version: '0'
|
197
|
+
- !ruby/object:Gem::Dependency
|
198
|
+
name: codeclimate-test-reporter
|
199
|
+
requirement: !ruby/object:Gem::Requirement
|
200
|
+
requirements:
|
201
|
+
- - ">="
|
202
|
+
- !ruby/object:Gem::Version
|
203
|
+
version: '0'
|
204
|
+
type: :development
|
205
|
+
prerelease: false
|
206
|
+
version_requirements: !ruby/object:Gem::Requirement
|
207
|
+
requirements:
|
208
|
+
- - ">="
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
version: '0'
|
197
211
|
description: Cucumber + Capybara = Kookaburra? It made sense at the time.
|
198
212
|
email:
|
199
213
|
- johnwilger@gmail.com
|
@@ -219,6 +233,7 @@ files:
|
|
219
233
|
- lib/kookaburra/api_driver.rb
|
220
234
|
- lib/kookaburra/assertion.rb
|
221
235
|
- lib/kookaburra/configuration.rb
|
236
|
+
- lib/kookaburra/configuration/proxy.rb
|
222
237
|
- lib/kookaburra/dependency_accessor.rb
|
223
238
|
- lib/kookaburra/exceptions.rb
|
224
239
|
- lib/kookaburra/mental_model.rb
|
@@ -231,7 +246,10 @@ files:
|
|
231
246
|
- lib/kookaburra/ui_driver/ui_component/address_bar.rb
|
232
247
|
- lib/kookaburra/version.rb
|
233
248
|
- spec/integration/test_a_rack_application_spec.rb
|
249
|
+
- spec/integration/test_multiple_applications_spec.rb
|
234
250
|
- spec/kookaburra/api_client_spec.rb
|
251
|
+
- spec/kookaburra/api_driver_spec.rb
|
252
|
+
- spec/kookaburra/configuration/proxy_spec.rb
|
235
253
|
- spec/kookaburra/configuration_spec.rb
|
236
254
|
- spec/kookaburra/mental_model_spec.rb
|
237
255
|
- spec/kookaburra/test_helpers_spec.rb
|
@@ -240,6 +258,7 @@ files:
|
|
240
258
|
- spec/kookaburra/ui_driver/ui_component_spec.rb
|
241
259
|
- spec/kookaburra/ui_driver_spec.rb
|
242
260
|
- spec/kookaburra_spec.rb
|
261
|
+
- spec/spec_helper.rb
|
243
262
|
- spec/support/json_api_app_and_kookaburra_drivers.rb
|
244
263
|
- spec/support/shared_examples/it_can_have_ui_components.rb
|
245
264
|
- spec/support/shared_examples/it_can_make_assertions.rb
|
@@ -270,7 +289,10 @@ specification_version: 4
|
|
270
289
|
summary: Window Driver pattern for acceptance tests
|
271
290
|
test_files:
|
272
291
|
- spec/integration/test_a_rack_application_spec.rb
|
292
|
+
- spec/integration/test_multiple_applications_spec.rb
|
273
293
|
- spec/kookaburra/api_client_spec.rb
|
294
|
+
- spec/kookaburra/api_driver_spec.rb
|
295
|
+
- spec/kookaburra/configuration/proxy_spec.rb
|
274
296
|
- spec/kookaburra/configuration_spec.rb
|
275
297
|
- spec/kookaburra/mental_model_spec.rb
|
276
298
|
- spec/kookaburra/test_helpers_spec.rb
|
@@ -279,6 +301,7 @@ test_files:
|
|
279
301
|
- spec/kookaburra/ui_driver/ui_component_spec.rb
|
280
302
|
- spec/kookaburra/ui_driver_spec.rb
|
281
303
|
- spec/kookaburra_spec.rb
|
304
|
+
- spec/spec_helper.rb
|
282
305
|
- spec/support/json_api_app_and_kookaburra_drivers.rb
|
283
306
|
- spec/support/shared_examples/it_can_have_ui_components.rb
|
284
307
|
- spec/support/shared_examples/it_can_make_assertions.rb
|