cornucopia 0.1.55 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +0 -2
- data/.ruby-version +1 -0
- data/Gemfile +4 -1
- data/Gemfile.lock +297 -0
- data/cornucopia.gemspec +13 -12
- data/lib/cornucopia/capybara/finder_diagnostics/find_action/found_element.rb +155 -0
- data/lib/cornucopia/capybara/finder_diagnostics/find_action.rb +417 -0
- data/lib/cornucopia/capybara/finder_diagnostics.rb +9 -551
- data/lib/cornucopia/capybara/finder_extensions.rb +34 -26
- data/lib/cornucopia/capybara/install_extensions.rb +6 -6
- data/lib/cornucopia/capybara/matcher_extensions.rb +110 -47
- data/lib/cornucopia/capybara/page_diagnostics/window_iterator.rb +42 -0
- data/lib/cornucopia/capybara/page_diagnostics.rb +1 -30
- data/lib/cornucopia/capybara/synchronizable.rb +1 -1
- data/lib/cornucopia/site_prism/class_extensions.rb +13 -0
- data/lib/cornucopia/site_prism/element_extensions.rb +7 -4
- data/lib/cornucopia/site_prism/install_extensions.rb +1 -1
- data/lib/cornucopia/site_prism/page_application.rb +3 -3
- data/lib/cornucopia/site_prism/section_extensions.rb +3 -11
- data/lib/cornucopia/util/report_builder.rb +1 -1
- data/lib/cornucopia/version.rb +1 -1
- data/spec/dummy/app/assets/config/manifest.js +2 -0
- data/spec/dummy/config/application.rb +1 -1
- data/spec/lib/capybara/finder_diagnostics_spec.rb +11 -13
- data/spec/lib/capybara/finder_extensions_spec.rb +19 -11
- data/spec/lib/capybara/matcher_extensions_spec.rb +13 -15
- data/spec/lib/capybara/page_diagnostics_spec.rb +1 -1
- data/spec/lib/site_prism/element_extensions_spec.rb +3 -3
- data/spec/lib/util/configured_report_spec.rb +4 -4
- data/spec/lib/util/log_capture_spec.rb +5 -5
- data/spec/lib/util/report_builder_spec.rb +3 -3
- data/spec/lib/util/report_table_spec.rb +5 -5
- data/spec/pages/cornucopia_report_pages/cornucopia_report_test_contents_page.rb +1 -1
- data/spec/sample_report.rb +6 -6
- data/spec/spec_helper.rb +5 -1
- metadata +37 -10
@@ -47,7 +47,9 @@ describe Cornucopia::Capybara::FinderExtensions, type: :feature do
|
|
47
47
|
num_calls = 0
|
48
48
|
|
49
49
|
allow(contents_frame.page.document).
|
50
|
-
to receive(:
|
50
|
+
to receive(:__cornucopia__call_super?) do |*args|
|
51
|
+
next true if args[0] != :all
|
52
|
+
|
51
53
|
num_calls += 1
|
52
54
|
|
53
55
|
if time_count > 0
|
@@ -55,20 +57,22 @@ describe Cornucopia::Capybara::FinderExtensions, type: :feature do
|
|
55
57
|
raise Selenium::WebDriver::Error::StaleElementReferenceError.new
|
56
58
|
end
|
57
59
|
|
58
|
-
expect(args).to be ==
|
59
|
-
|
60
|
+
expect(args[0]).to be == :all
|
61
|
+
expect(args[1..]).to be == ["a"]
|
62
|
+
|
63
|
+
true
|
60
64
|
end
|
61
65
|
|
62
66
|
second_found = contents_frame.all("a")
|
63
67
|
|
64
68
|
allow(contents_frame.page.document).
|
65
|
-
to receive(:
|
69
|
+
to receive(:__cornucopia__call_super?).
|
66
70
|
and_call_original
|
67
71
|
|
68
72
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
69
73
|
# However, we are really testing that the results returned by the stub are passed back all the way
|
70
74
|
# Which we do need to test.
|
71
|
-
expect(second_found).to be == found_elements
|
75
|
+
expect(second_found.to_a).to be == found_elements.to_a
|
72
76
|
expect(time_count).to be == 0
|
73
77
|
expect(num_calls).to be == num_retries + 1
|
74
78
|
end
|
@@ -89,20 +93,22 @@ describe Cornucopia::Capybara::FinderExtensions, type: :feature do
|
|
89
93
|
and_return(found_elements)
|
90
94
|
|
91
95
|
allow(contents_frame.page.document).
|
92
|
-
to receive(:
|
96
|
+
to receive(:__cornucopia__call_super?) do |function_name|
|
97
|
+
next true if function_name != :all
|
98
|
+
|
93
99
|
raise Selenium::WebDriver::Error::StaleElementReferenceError.new
|
94
100
|
end
|
95
101
|
|
96
102
|
second_found = contents_frame.all("a")
|
97
103
|
|
98
104
|
allow(contents_frame.page.document).
|
99
|
-
to receive(:
|
105
|
+
to receive(:__cornucopia__call_super?).
|
100
106
|
and_call_original
|
101
107
|
|
102
108
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
103
109
|
# However, we are really testing that the results returned by the stub are passed back all the way
|
104
110
|
# Which we do need to test.
|
105
|
-
expect(second_found).to be == found_elements
|
111
|
+
expect(second_found.to_a).to be == found_elements.to_a
|
106
112
|
end
|
107
113
|
end
|
108
114
|
|
@@ -121,14 +127,16 @@ describe Cornucopia::Capybara::FinderExtensions, type: :feature do
|
|
121
127
|
and_return(found_elements)
|
122
128
|
|
123
129
|
allow(contents_frame.page.document).
|
124
|
-
to receive(:
|
130
|
+
to receive(:__cornucopia__call_super?) do |function_name|
|
131
|
+
next true if function_name != :find
|
132
|
+
|
125
133
|
raise "This is an error"
|
126
134
|
end
|
127
135
|
|
128
136
|
second_found = contents_frame.find(".report-block")
|
129
137
|
|
130
138
|
allow(contents_frame.page.document).
|
131
|
-
to receive(:
|
139
|
+
to receive(:__cornucopia__call_super?).
|
132
140
|
and_call_original
|
133
141
|
|
134
142
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
@@ -332,4 +340,4 @@ describe Cornucopia::Capybara::FinderExtensions, type: :feature do
|
|
332
340
|
expect(::Capybara.page.find("\#multi-select-box").value_text).to eq sel_value.map { |value| (value + 200).to_s }
|
333
341
|
end
|
334
342
|
end
|
335
|
-
end
|
343
|
+
end
|
@@ -47,7 +47,9 @@ describe Cornucopia::Capybara::MatcherExtensions, type: :feature do
|
|
47
47
|
num_calls = 0
|
48
48
|
|
49
49
|
allow(contents_frame.page.document).
|
50
|
-
to receive(:
|
50
|
+
to receive(:__cornucopia__call_super?) do |function_name, *args|
|
51
|
+
next true if function_name != :assert_selector
|
52
|
+
|
51
53
|
num_calls += 1
|
52
54
|
|
53
55
|
if time_count > 0
|
@@ -56,14 +58,12 @@ describe Cornucopia::Capybara::MatcherExtensions, type: :feature do
|
|
56
58
|
end
|
57
59
|
|
58
60
|
expect(args).to be == ["a"]
|
59
|
-
|
61
|
+
true
|
60
62
|
end
|
61
63
|
|
62
64
|
second_found = contents_frame.assert_selector("a")
|
63
65
|
|
64
|
-
allow(contents_frame.page.document).
|
65
|
-
to receive(:__cornucopia_capybara_orig_assert_selector).
|
66
|
-
and_call_original
|
66
|
+
allow(contents_frame.page.document).to receive(:__cornucopia__call_super?).and_call_original
|
67
67
|
|
68
68
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
69
69
|
# However, we are really testing that the results returned by the stub are passed back all the way
|
@@ -89,15 +89,15 @@ describe Cornucopia::Capybara::MatcherExtensions, type: :feature do
|
|
89
89
|
and_return(found_elements)
|
90
90
|
|
91
91
|
allow(contents_frame.page.document).
|
92
|
-
to receive(:
|
92
|
+
to receive(:__cornucopia__call_super?) do |function_name|
|
93
|
+
next true if function_name != :assert_selector
|
94
|
+
|
93
95
|
raise Selenium::WebDriver::Error::StaleElementReferenceError.new
|
94
96
|
end
|
95
97
|
|
96
98
|
second_found = contents_frame.assert_selector("a")
|
97
99
|
|
98
|
-
allow(contents_frame.page.document).
|
99
|
-
to receive(:__cornucopia_capybara_orig_assert_selector).
|
100
|
-
and_call_original
|
100
|
+
allow(contents_frame.page.document).to receive(:__cornucopia__call_super?).and_call_original
|
101
101
|
|
102
102
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
103
103
|
# However, we are really testing that the results returned by the stub are passed back all the way
|
@@ -120,16 +120,14 @@ describe Cornucopia::Capybara::MatcherExtensions, type: :feature do
|
|
120
120
|
to receive(:__cornucopia__analyze_selector).
|
121
121
|
and_return(found_elements)
|
122
122
|
|
123
|
-
allow(contents_frame.page.document).
|
124
|
-
|
123
|
+
allow(contents_frame.page.document).to receive(:__cornucopia__call_super?) do |function_name|
|
124
|
+
next true if function_name != :assert_no_selector
|
125
125
|
raise "This is an error"
|
126
126
|
end
|
127
127
|
|
128
128
|
second_found = contents_frame.assert_no_selector(".report-block")
|
129
129
|
|
130
|
-
allow(contents_frame.page.document).
|
131
|
-
to receive(:__cornucopia_capybara_orig_assert_no_selector).
|
132
|
-
and_call_original
|
130
|
+
allow(contents_frame.page.document).to receive(:__cornucopia__call_super?).and_call_original
|
133
131
|
|
134
132
|
# I realize that this is almost like testing that the stub worked, which we don't need to test.
|
135
133
|
# However, we are really testing that the results returned by the stub are passed back all the way
|
@@ -414,4 +412,4 @@ describe Cornucopia::Capybara::MatcherExtensions, type: :feature do
|
|
414
412
|
end
|
415
413
|
end
|
416
414
|
end
|
417
|
-
end
|
415
|
+
end
|
@@ -13,12 +13,12 @@ describe "SitePrism element_extensions" do
|
|
13
13
|
[TestSection, TestPage].sample(2).each do |test_class|
|
14
14
|
describe "#{test_class.name}" do
|
15
15
|
let(:pre_name) { Faker::Lorem.word }
|
16
|
-
let(:element_names) { Faker::Lorem.words(rand(3..10)).map(&:to_sym) }
|
17
|
-
let(:class_element_names) { element_names + rand(3..10).times.map
|
16
|
+
let(:element_names) { Faker::Lorem.words(number: rand(3..10)).map(&:to_sym) }
|
17
|
+
let(:class_element_names) { element_names + rand(3..10).times.map { Faker::Lorem.words(number: rand(2..3)).join("-") } }
|
18
18
|
let(:increment) { rand(2..10) }
|
19
19
|
let(:start_index) { rand(2..10) }
|
20
20
|
let(:options) do
|
21
|
-
Faker::Lorem.words(rand(3..10)).reduce({}) do |hash, option_name|
|
21
|
+
Faker::Lorem.words(number: rand(3..10)).reduce({}) do |hash, option_name|
|
22
22
|
hash[option_name] = Faker::Lorem.word
|
23
23
|
hash
|
24
24
|
end
|
@@ -1043,7 +1043,7 @@ describe Cornucopia::Util::ConfiguredReport do
|
|
1043
1043
|
Cornucopia::Util::ReportTable.new do |report_table|
|
1044
1044
|
simple_report.leaf_options = [{ report_element: [:key_1], report_options: { fake_options: true } }]
|
1045
1045
|
|
1046
|
-
expect(report_table).to receive(:write_stats).with(:key_1, "value", fake_options: true)
|
1046
|
+
expect(report_table).to receive(:write_stats).with(:key_1, "value", { fake_options: true })
|
1047
1047
|
|
1048
1048
|
simple_report.export_field_record({ report_element: [:test,
|
1049
1049
|
:hash_variable,
|
@@ -1060,7 +1060,7 @@ describe Cornucopia::Util::ConfiguredReport do
|
|
1060
1060
|
Cornucopia::Util::ReportTable.new do |report_table|
|
1061
1061
|
simple_report.leaf_options = [{ report_element: [:key_1], report_options: { fake_options: true } }]
|
1062
1062
|
|
1063
|
-
expect(report_table).to receive(:write_stats).with(:key_1, "value", real_options: true)
|
1063
|
+
expect(report_table).to receive(:write_stats).with(:key_1, "value", { real_options: true })
|
1064
1064
|
|
1065
1065
|
simple_report.export_field_record({ report_element: [:test,
|
1066
1066
|
:hash_variable,
|
@@ -1080,7 +1080,7 @@ describe Cornucopia::Util::ConfiguredReport do
|
|
1080
1080
|
simple_report.leaf_options = [{ report_element: [:key_1], report_options: { fake_options: true } }]
|
1081
1081
|
|
1082
1082
|
expect(report_table).
|
1083
|
-
to receive(:write_stats).with(custom_label, "value", real_options: true, label: custom_label)
|
1083
|
+
to receive(:write_stats).with(custom_label, "value", { real_options: true, label: custom_label })
|
1084
1084
|
|
1085
1085
|
simple_report.export_field_record({ report_element: [:test,
|
1086
1086
|
:hash_variable,
|
@@ -1118,4 +1118,4 @@ describe Cornucopia::Util::ConfiguredReport do
|
|
1118
1118
|
end
|
1119
1119
|
end
|
1120
1120
|
end
|
1121
|
-
end
|
1121
|
+
end
|
@@ -73,7 +73,7 @@ describe Cornucopia::Util::LogCapture do
|
|
73
73
|
|
74
74
|
describe "#output_log_file" do
|
75
75
|
it "fetches the last 500 lines of a file" do
|
76
|
-
lines = Faker::Lorem.sentences(rand(600..1000))
|
76
|
+
lines = Faker::Lorem.sentences(number: rand(600..1000))
|
77
77
|
File.open(file_name, "a:UTF-8") do |write_file|
|
78
78
|
write_file.write(lines.join("\n"))
|
79
79
|
end
|
@@ -87,7 +87,7 @@ describe Cornucopia::Util::LogCapture do
|
|
87
87
|
end
|
88
88
|
|
89
89
|
it "fetches the last 500 lines of a file even if it has to fetch multiple times" do
|
90
|
-
lines = (0..rand(600..1000)).to_a.map { Faker::Lorem.sentences(rand(5..10)).join(" ") }
|
90
|
+
lines = (0..rand(600..1000)).to_a.map { Faker::Lorem.sentences(number: rand(5..10)).join(" ") }
|
91
91
|
File.open(file_name, "a:UTF-8") do |write_file|
|
92
92
|
write_file.write(lines.join("\n"))
|
93
93
|
end
|
@@ -174,7 +174,7 @@ describe Cornucopia::Util::LogCapture do
|
|
174
174
|
expect(Cornucopia::Util::LogCapture).to receive(:capture_logs).twice.and_call_original
|
175
175
|
Cornucopia::Util::Configuration.add_log_file("sample_log.log")
|
176
176
|
|
177
|
-
lines = Faker::Lorem.sentences(rand(600..1000))
|
177
|
+
lines = Faker::Lorem.sentences(number: rand(600..1000))
|
178
178
|
File.open(file_name, "a:UTF-8") do |write_file|
|
179
179
|
write_file.write(lines.join("\n"))
|
180
180
|
end
|
@@ -191,7 +191,7 @@ describe Cornucopia::Util::LogCapture do
|
|
191
191
|
expect(Cornucopia::Util::LogCapture).to receive(:capture_logs).twice.and_call_original
|
192
192
|
Cornucopia::Util::Configuration.add_log_file("sample_log.log")
|
193
193
|
|
194
|
-
lines = Faker::Lorem.sentences(rand(600..1000))
|
194
|
+
lines = Faker::Lorem.sentences(number: rand(600..1000))
|
195
195
|
File.open(file_name, "a:UTF-8") do |write_file|
|
196
196
|
write_file.write(lines.join("\n"))
|
197
197
|
end
|
@@ -212,7 +212,7 @@ describe Cornucopia::Util::LogCapture do
|
|
212
212
|
FileUtils.cd Rails.root.to_s
|
213
213
|
expect(Object).to receive(:const_defined?).at_least(1).with("Rails").and_return(false)
|
214
214
|
|
215
|
-
lines = Faker::Lorem.sentences(rand(600..1000))
|
215
|
+
lines = Faker::Lorem.sentences(number: rand(600..1000))
|
216
216
|
File.open(file_name, "a:UTF-8") do |write_file|
|
217
217
|
write_file.write(lines.join("\n"))
|
218
218
|
end
|
@@ -412,7 +412,7 @@ This is a sample string c:/bizarro/ <span class=\"cornucopia-app-file\">features
|
|
412
412
|
describe "#build_index_section" do
|
413
413
|
it "creates a list item with an anchor" do
|
414
414
|
a_title = Faker::Lorem.sentence
|
415
|
-
strings = Faker::Lorem.sentences(5)
|
415
|
+
strings = Faker::Lorem.sentences(number: 5)
|
416
416
|
strings.map! { |string| string.gsub(" ", "/") }
|
417
417
|
result_string = Cornucopia::Util::ReportBuilder.build_index_section(a_title, strings)
|
418
418
|
|
@@ -929,7 +929,7 @@ This is a sample string c:/bizarro/ <span class=\"cornucopia-app-file\">features
|
|
929
929
|
it "initializes the report_contents file" do
|
930
930
|
current_report = send(report_settings[:report])
|
931
931
|
expect(current_report).to receive(:initialize_basic_report_files).and_call_original
|
932
|
-
write_contents = Faker::Lorem.paragraphs(rand(5..8)).join("\n\n")
|
932
|
+
write_contents = Faker::Lorem.paragraphs(number: rand(5..8)).join("\n\n")
|
933
933
|
|
934
934
|
current_report.open_report_contents_file do |writer|
|
935
935
|
writer.write(write_contents)
|
@@ -946,7 +946,7 @@ This is a sample string c:/bizarro/ <span class=\"cornucopia-app-file\">features
|
|
946
946
|
it "initializes the report_contents file" do
|
947
947
|
current_report = send(report_settings[:report])
|
948
948
|
expect(current_report).to receive(:initialize_report_test_files).and_call_original
|
949
|
-
write_contents = Faker::Lorem.paragraphs(rand(5..8)).join("\n\n")
|
949
|
+
write_contents = Faker::Lorem.paragraphs(number: rand(5..8)).join("\n\n")
|
950
950
|
|
951
951
|
current_report.open_report_test_contents_file do |writer|
|
952
952
|
writer.write(write_contents)
|
@@ -165,7 +165,7 @@ describe Cornucopia::Util::ReportTable do
|
|
165
165
|
it "nests tables" do
|
166
166
|
nest_label = "".html_safe + Faker::Lorem.sentence
|
167
167
|
second_label = "".html_safe + Faker::Lorem.sentence
|
168
|
-
second_body = "".html_safe + Faker::Lorem.paragraphs(rand(3..5)).join("\n")
|
168
|
+
second_body = "".html_safe + Faker::Lorem.paragraphs(number: rand(3..5)).join("\n")
|
169
169
|
|
170
170
|
report_table = nil
|
171
171
|
Cornucopia::Util::ReportTable.new(table_prefix: pre_text,
|
@@ -193,7 +193,7 @@ describe Cornucopia::Util::ReportTable do
|
|
193
193
|
it "nests tables if they are not empty" do
|
194
194
|
nest_label = "".html_safe + Faker::Lorem.sentence
|
195
195
|
second_label = "".html_safe + Faker::Lorem.sentence
|
196
|
-
second_body = "".html_safe + Faker::Lorem.paragraphs(rand(3..5)).join("\n")
|
196
|
+
second_body = "".html_safe + Faker::Lorem.paragraphs(number: rand(3..5)).join("\n")
|
197
197
|
|
198
198
|
report_table = nil
|
199
199
|
Cornucopia::Util::ReportTable.new(table_prefix: pre_text,
|
@@ -222,7 +222,7 @@ describe Cornucopia::Util::ReportTable do
|
|
222
222
|
it "does not nest tables if they are empty" do
|
223
223
|
nest_label = "".html_safe + Faker::Lorem.sentence
|
224
224
|
second_label = "".html_safe + Faker::Lorem.sentence
|
225
|
-
second_body = "".html_safe + Faker::Lorem.paragraphs(rand(3..5)).join("\n")
|
225
|
+
second_body = "".html_safe + Faker::Lorem.paragraphs(number: rand(3..5)).join("\n")
|
226
226
|
|
227
227
|
report_table = nil
|
228
228
|
Cornucopia::Util::ReportTable.new(table_prefix: pre_text,
|
@@ -250,7 +250,7 @@ describe Cornucopia::Util::ReportTable do
|
|
250
250
|
it "nests tables even if there is an exception" do
|
251
251
|
nest_label = "".html_safe + Faker::Lorem.sentence
|
252
252
|
second_label = "".html_safe + Faker::Lorem.sentence
|
253
|
-
second_body = "".html_safe + Faker::Lorem.paragraphs(rand(3..5)).join("\n")
|
253
|
+
second_body = "".html_safe + Faker::Lorem.paragraphs(number: rand(3..5)).join("\n")
|
254
254
|
|
255
255
|
report_table = nil
|
256
256
|
expect do
|
@@ -283,7 +283,7 @@ describe Cornucopia::Util::ReportTable do
|
|
283
283
|
it "nests tables even if there is an exception multiple levels deep" do
|
284
284
|
nest_label = "".html_safe + Faker::Lorem.sentence
|
285
285
|
second_label = "".html_safe + Faker::Lorem.sentence
|
286
|
-
second_body = "".html_safe + Faker::Lorem.paragraphs(rand(3..5)).join("\n")
|
286
|
+
second_body = "".html_safe + Faker::Lorem.paragraphs(number: rand(3..5)).join("\n")
|
287
287
|
|
288
288
|
report_table = nil
|
289
289
|
expect do
|
@@ -76,7 +76,7 @@ module CornucopiaReportPages
|
|
76
76
|
element :show_hide, "a.cornucopia-additional-details"
|
77
77
|
|
78
78
|
def details
|
79
|
-
table = TableSection.new self, send(:
|
79
|
+
table = TableSection.new self, send(:all, "div.cornucopia-additional-details > .cornucopia-table").first
|
80
80
|
table.parent_index = 1
|
81
81
|
table.parent_path = "div.cornucopia-additional-details > .cornucopia-table"
|
82
82
|
table.parent_path_owner = self
|
data/spec/sample_report.rb
CHANGED
@@ -9,7 +9,7 @@ def generate_report_file(folder_name)
|
|
9
9
|
build_report.within_table do |table|
|
10
10
|
build_table(table, 0)
|
11
11
|
|
12
|
-
@last_val = Faker::Lorem.words(rand(1..4)).join("_")
|
12
|
+
@last_val = Faker::Lorem.words(number: rand(1..4)).join("_")
|
13
13
|
table.write_stats(@last_val, Faker::Lorem.sentence)
|
14
14
|
end
|
15
15
|
end
|
@@ -27,21 +27,21 @@ def build_table(table, level)
|
|
27
27
|
when 9
|
28
28
|
if level < 3
|
29
29
|
Cornucopia::Util::ReportTable.new(nested_table: table,
|
30
|
-
nested_table_label: Faker::Lorem.words(rand(1..4)).join("_")) do |sub_report|
|
30
|
+
nested_table_label: Faker::Lorem.words(number: rand(1..4)).join("_")) do |sub_report|
|
31
31
|
build_table(sub_report, level + 1)
|
32
32
|
end
|
33
33
|
else
|
34
|
-
table.write_stats(Faker::Lorem.words(rand(1..4)).join("_"), Faker::Lorem.sentence)
|
34
|
+
table.write_stats(Faker::Lorem.words(number: rand(1..4)).join("_"), Faker::Lorem.sentence)
|
35
35
|
end
|
36
36
|
|
37
37
|
when 2
|
38
|
-
table.write_stats(Faker::Lorem.words(rand(1..4)).join("_"), Faker::Lorem.paragraph)
|
38
|
+
table.write_stats(Faker::Lorem.words(number: rand(1..4)).join("_"), Faker::Lorem.paragraph)
|
39
39
|
|
40
40
|
when 3
|
41
|
-
table.write_stats(Faker::Lorem.words(rand(1..4)).join("_"), Faker::Lorem.paragraphs(rand(5..10)).join("\n\n"))
|
41
|
+
table.write_stats(Faker::Lorem.words(number: rand(1..4)).join("_"), Faker::Lorem.paragraphs(number: rand(5..10)).join("\n\n"))
|
42
42
|
|
43
43
|
else
|
44
|
-
table.write_stats(Faker::Lorem.words(rand(1..4)).join("_"), Faker::Lorem.sentence)
|
44
|
+
table.write_stats(Faker::Lorem.words(number: rand(1..4)).join("_"), Faker::Lorem.sentence)
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -58,7 +58,11 @@ end
|
|
58
58
|
|
59
59
|
require ::File.expand_path("../lib/cornucopia/util/configuration", File.dirname(__FILE__))
|
60
60
|
|
61
|
-
Capybara.default_driver = :
|
61
|
+
Capybara.default_driver = :selenium_chrome
|
62
|
+
Capybara.javascript_driver = :selenium_chrome
|
63
|
+
# Capybara.default_driver = :selenium_chrome_headless
|
64
|
+
# Capybara.javascript_driver = :selenium_chrome_headless
|
65
|
+
Capybara.server = :webrick
|
62
66
|
|
63
67
|
# Cornucopia::Util::Configuration.seed = 1
|
64
68
|
# Cornucopia::Util::Configuration.order_seed = 1
|
metadata
CHANGED
@@ -1,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cornucopia
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- RealNobody
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
+
- - ">"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '4.0'
|
17
20
|
- - "<"
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
22
|
+
version: '8.0'
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
27
|
+
- - ">"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '4.0'
|
24
30
|
- - "<"
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
32
|
+
version: '8.0'
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: rails
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -206,6 +212,20 @@ dependencies:
|
|
206
212
|
- - ">="
|
207
213
|
- !ruby/object:Gem::Version
|
208
214
|
version: '0'
|
215
|
+
- !ruby/object:Gem::Dependency
|
216
|
+
name: webrick
|
217
|
+
requirement: !ruby/object:Gem::Requirement
|
218
|
+
requirements:
|
219
|
+
- - ">="
|
220
|
+
- !ruby/object:Gem::Version
|
221
|
+
version: '0'
|
222
|
+
type: :development
|
223
|
+
prerelease: false
|
224
|
+
version_requirements: !ruby/object:Gem::Requirement
|
225
|
+
requirements:
|
226
|
+
- - ">="
|
227
|
+
- !ruby/object:Gem::Version
|
228
|
+
version: '0'
|
209
229
|
description: A collection of tools I created to simplify and make it easier to see
|
210
230
|
what is happening.
|
211
231
|
email:
|
@@ -215,21 +235,27 @@ extensions: []
|
|
215
235
|
extra_rdoc_files: []
|
216
236
|
files:
|
217
237
|
- ".gitignore"
|
238
|
+
- ".ruby-version"
|
218
239
|
- Gemfile
|
240
|
+
- Gemfile.lock
|
219
241
|
- LICENSE.TXT
|
220
242
|
- README.md
|
221
243
|
- Rakefile
|
222
244
|
- cornucopia.gemspec
|
223
245
|
- lib/cornucopia.rb
|
224
246
|
- lib/cornucopia/capybara/finder_diagnostics.rb
|
247
|
+
- lib/cornucopia/capybara/finder_diagnostics/find_action.rb
|
248
|
+
- lib/cornucopia/capybara/finder_diagnostics/find_action/found_element.rb
|
225
249
|
- lib/cornucopia/capybara/finder_extensions.rb
|
226
250
|
- lib/cornucopia/capybara/install_extensions.rb
|
227
251
|
- lib/cornucopia/capybara/matcher_extensions.rb
|
228
252
|
- lib/cornucopia/capybara/page_diagnostics.rb
|
253
|
+
- lib/cornucopia/capybara/page_diagnostics/window_iterator.rb
|
229
254
|
- lib/cornucopia/capybara/selectable_values.rb
|
230
255
|
- lib/cornucopia/capybara/synchronizable.rb
|
231
256
|
- lib/cornucopia/cucumber_hooks.rb
|
232
257
|
- lib/cornucopia/rspec_hooks.rb
|
258
|
+
- lib/cornucopia/site_prism/class_extensions.rb
|
233
259
|
- lib/cornucopia/site_prism/element_extensions.rb
|
234
260
|
- lib/cornucopia/site_prism/install_extensions.rb
|
235
261
|
- lib/cornucopia/site_prism/page_application.rb
|
@@ -260,6 +286,7 @@ files:
|
|
260
286
|
- lib/tasks/cornucopia_tasks.rake
|
261
287
|
- spec/dummy/README.rdoc
|
262
288
|
- spec/dummy/Rakefile
|
289
|
+
- spec/dummy/app/assets/config/manifest.js
|
263
290
|
- spec/dummy/app/assets/images/.keep
|
264
291
|
- spec/dummy/app/assets/javascripts/application.js
|
265
292
|
- spec/dummy/app/assets/stylesheets/application.css
|
@@ -331,7 +358,7 @@ homepage: https://github.com/RealNobody/cornucopia
|
|
331
358
|
licenses:
|
332
359
|
- MIT
|
333
360
|
metadata: {}
|
334
|
-
post_install_message:
|
361
|
+
post_install_message:
|
335
362
|
rdoc_options: []
|
336
363
|
require_paths:
|
337
364
|
- lib
|
@@ -339,21 +366,21 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
339
366
|
requirements:
|
340
367
|
- - ">="
|
341
368
|
- !ruby/object:Gem::Version
|
342
|
-
version: '
|
369
|
+
version: '3'
|
343
370
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
344
371
|
requirements:
|
345
372
|
- - ">="
|
346
373
|
- !ruby/object:Gem::Version
|
347
374
|
version: '0'
|
348
375
|
requirements: []
|
349
|
-
|
350
|
-
|
351
|
-
signing_key:
|
376
|
+
rubygems_version: 3.2.33
|
377
|
+
signing_key:
|
352
378
|
specification_version: 4
|
353
379
|
summary: A collection of tools to simplify testing tasks.
|
354
380
|
test_files:
|
355
381
|
- spec/dummy/README.rdoc
|
356
382
|
- spec/dummy/Rakefile
|
383
|
+
- spec/dummy/app/assets/config/manifest.js
|
357
384
|
- spec/dummy/app/assets/images/.keep
|
358
385
|
- spec/dummy/app/assets/javascripts/application.js
|
359
386
|
- spec/dummy/app/assets/stylesheets/application.css
|