bddfire 2.0.4 → 2.0.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 950fbe5285e3fdc75a409fe698e6b9db4c707060
4
- data.tar.gz: 5b0940e3ed1de52b5a7db9e24c1705ad20dd9ce2
3
+ metadata.gz: 28795caaa4b6cb09f488ab7f19563ec04655965b
4
+ data.tar.gz: 3ec92026af9864cadc98c7bb874fe0839c4e4cc7
5
5
  SHA512:
6
- metadata.gz: c5488fe86536da67b6605fa29cbce5ce7364e93afd33081095137ce0c6379732ca5cc731ecfc03f26710686cf6d193b7b76ff7b628a16ced299460da8a770bbb
7
- data.tar.gz: 76fdaff5b194422d6f354603c44729380b2399107bb633aba69ee5877a3cc85d9fcb8ee37e66c674c5b5425ec63d7ec90d73c69171559309c4313ff9455bc5fa
6
+ metadata.gz: eaa510e053292ee65cff179b481213c7d2d2a1b6845a498747d58d4abfd9c4562c7dabfa4cf039a19a32343ccd9e65bd60bb912d4d4bbc42316142fa0d41a304
7
+ data.tar.gz: ff0f88c1a900076624386aa6164562027912e437169630afd50791fc5544e8e56a290459bf28cac4fb7ec9fbfb9ac9587454236f216e67c522fa7f80b464c60b
data/.gitignore CHANGED
@@ -4,5 +4,7 @@ doc/*
4
4
  *.gem
5
5
  .bundle
6
6
  .yardoc
7
+ *.DS_Store
8
+ .DS_Store
7
9
 
8
10
 
data/.travis.yml ADDED
@@ -0,0 +1,13 @@
1
+ language: ruby
2
+ cache: bundler
3
+
4
+ rvm:
5
+ - 2.3.0
6
+
7
+ before_script: 'bundle install'
8
+ script: 'bundle exec cucumber'
9
+
10
+ branches:
11
+ only:
12
+ - master
13
+ - develop
data/Gemfile.lock ADDED
@@ -0,0 +1,205 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ bddfire (2.0.5)
5
+ axe-matchers
6
+ be_valid_asset
7
+ bundler
8
+ capybara
9
+ chromedriver-helper
10
+ cucumber
11
+ cuke_sniffer
12
+ json
13
+ magic_encoding
14
+ nokogiri
15
+ poltergeist
16
+ rake
17
+ redcarpet
18
+ relish
19
+ require_all (~> 1.3.1, >= 1.3.0)
20
+ rest-client
21
+ rspec
22
+ rubocop
23
+ rubocop-checkstyle_formatter
24
+ selenium-webdriver
25
+ site_prism
26
+ yard-cucumber
27
+
28
+ GEM
29
+ remote: http://rubygems.org/
30
+ specs:
31
+ activesupport (5.0.1)
32
+ concurrent-ruby (~> 1.0, >= 1.0.2)
33
+ i18n (~> 0.7)
34
+ minitest (~> 5.1)
35
+ tzinfo (~> 1.1)
36
+ addressable (2.5.0)
37
+ public_suffix (~> 2.0, >= 2.0.2)
38
+ archive-tar-minitar (0.5.2)
39
+ archive-zip (0.7.0)
40
+ io-like (~> 0.3.0)
41
+ aruba (0.14.2)
42
+ childprocess (~> 0.5.6)
43
+ contracts (~> 0.9)
44
+ cucumber (>= 1.3.19)
45
+ ffi (~> 1.9.10)
46
+ rspec-expectations (>= 2.99)
47
+ thor (~> 0.19)
48
+ ast (2.3.0)
49
+ axe-matchers (1.3.2)
50
+ dumb_delegator (~> 0.8)
51
+ virtus (~> 1.0)
52
+ axiom-types (0.1.1)
53
+ descendants_tracker (~> 0.0.4)
54
+ ice_nine (~> 0.11.0)
55
+ thread_safe (~> 0.3, >= 0.3.1)
56
+ be_valid_asset (1.3.1)
57
+ rspec
58
+ builder (3.2.2)
59
+ capybara (2.11.0)
60
+ addressable
61
+ mime-types (>= 1.16)
62
+ nokogiri (>= 1.3.3)
63
+ rack (>= 1.0.0)
64
+ rack-test (>= 0.5.4)
65
+ xpath (~> 2.0)
66
+ childprocess (0.5.9)
67
+ ffi (~> 1.0, >= 1.0.11)
68
+ chromedriver-helper (1.0.0)
69
+ archive-zip (~> 0.7.0)
70
+ nokogiri (~> 1.6)
71
+ cliver (0.3.2)
72
+ coercible (1.0.0)
73
+ descendants_tracker (~> 0.0.1)
74
+ concurrent-ruby (1.0.4)
75
+ contracts (0.14.0)
76
+ cucumber (2.4.0)
77
+ builder (>= 2.1.2)
78
+ cucumber-core (~> 1.5.0)
79
+ cucumber-wire (~> 0.0.1)
80
+ diff-lcs (>= 1.1.3)
81
+ gherkin (~> 4.0)
82
+ multi_json (>= 1.7.5, < 2.0)
83
+ multi_test (>= 0.1.2)
84
+ cucumber-core (1.5.0)
85
+ gherkin (~> 4.0)
86
+ cucumber-wire (0.0.1)
87
+ cuke_sniffer (1.0.1)
88
+ nokogiri (~> 1.6, >= 1.6.8)
89
+ roxml (~> 3.3, >= 3.3.1)
90
+ descendants_tracker (0.0.4)
91
+ thread_safe (~> 0.3, >= 0.3.1)
92
+ diff-lcs (1.2.5)
93
+ domain_name (0.5.20161129)
94
+ unf (>= 0.0.5, < 1.0.0)
95
+ dumb_delegator (0.8.0)
96
+ equalizer (0.0.11)
97
+ ffi (1.9.14)
98
+ gherkin (4.0.0)
99
+ http-cookie (1.0.3)
100
+ domain_name (~> 0.5)
101
+ i18n (0.7.0)
102
+ ice_nine (0.11.2)
103
+ io-like (0.3.0)
104
+ json (2.0.2)
105
+ magic_encoding (0.0.2)
106
+ mime-types (3.1)
107
+ mime-types-data (~> 3.2015)
108
+ mime-types-data (3.2016.0521)
109
+ mini_portile2 (2.1.0)
110
+ minitest (5.10.1)
111
+ multi_json (1.12.1)
112
+ multi_test (0.1.2)
113
+ netrc (0.11.0)
114
+ nokogiri (1.7.0.1)
115
+ mini_portile2 (~> 2.1.0)
116
+ parser (2.3.3.1)
117
+ ast (~> 2.2)
118
+ poltergeist (1.12.0)
119
+ capybara (~> 2.1)
120
+ cliver (~> 0.3.1)
121
+ websocket-driver (>= 0.2.0)
122
+ powerpack (0.1.1)
123
+ public_suffix (2.0.5)
124
+ rack (2.0.1)
125
+ rack-test (0.6.3)
126
+ rack (>= 1.0)
127
+ rainbow (2.2.1)
128
+ rake (12.0.0)
129
+ redcarpet (3.4.0)
130
+ relish (0.7.1)
131
+ archive-tar-minitar (>= 0.5.2)
132
+ json (>= 1.4.6)
133
+ rest-client (>= 1.7.2)
134
+ require_all (1.3.3)
135
+ rest-client (2.0.0)
136
+ http-cookie (>= 1.0.2, < 2.0)
137
+ mime-types (>= 1.16, < 4.0)
138
+ netrc (~> 0.8)
139
+ roxml (3.3.1)
140
+ activesupport (>= 2.3.0)
141
+ nokogiri (>= 1.3.3)
142
+ rspec (3.5.0)
143
+ rspec-core (~> 3.5.0)
144
+ rspec-expectations (~> 3.5.0)
145
+ rspec-mocks (~> 3.5.0)
146
+ rspec-core (3.5.4)
147
+ rspec-support (~> 3.5.0)
148
+ rspec-expectations (3.5.0)
149
+ diff-lcs (>= 1.2.0, < 2.0)
150
+ rspec-support (~> 3.5.0)
151
+ rspec-mocks (3.5.0)
152
+ diff-lcs (>= 1.2.0, < 2.0)
153
+ rspec-support (~> 3.5.0)
154
+ rspec-support (3.5.0)
155
+ rubocop (0.46.0)
156
+ parser (>= 2.3.1.1, < 3.0)
157
+ powerpack (~> 0.1)
158
+ rainbow (>= 1.99.1, < 3.0)
159
+ ruby-progressbar (~> 1.7)
160
+ unicode-display_width (~> 1.0, >= 1.0.1)
161
+ rubocop-checkstyle_formatter (0.3.0)
162
+ rubocop (>= 0.30.1)
163
+ ruby-progressbar (1.8.1)
164
+ rubyzip (1.2.0)
165
+ selenium-webdriver (3.0.5)
166
+ childprocess (~> 0.5)
167
+ rubyzip (~> 1.0)
168
+ websocket (~> 1.0)
169
+ site_prism (2.9)
170
+ addressable (>= 2.3.3, < 3.0)
171
+ capybara (>= 2.1, < 3.0)
172
+ thor (0.19.4)
173
+ thread_safe (0.3.5)
174
+ tzinfo (1.2.2)
175
+ thread_safe (~> 0.1)
176
+ unf (0.1.4)
177
+ unf_ext
178
+ unf_ext (0.0.7.2)
179
+ unicode-display_width (1.1.2)
180
+ virtus (1.0.5)
181
+ axiom-types (~> 0.1)
182
+ coercible (~> 1.0)
183
+ descendants_tracker (~> 0.0, >= 0.0.3)
184
+ equalizer (~> 0.0, >= 0.0.9)
185
+ websocket (1.2.3)
186
+ websocket-driver (0.6.4)
187
+ websocket-extensions (>= 0.1.0)
188
+ websocket-extensions (0.1.2)
189
+ xpath (2.0.0)
190
+ nokogiri (~> 1.3)
191
+ yard (0.9.5)
192
+ yard-cucumber (3.1.0)
193
+ cucumber (~> 2)
194
+ gherkin (~> 4.0)
195
+ yard (~> 0.8, >= 0.8.1)
196
+
197
+ PLATFORMS
198
+ ruby
199
+
200
+ DEPENDENCIES
201
+ aruba (~> 0.14.1)
202
+ bddfire!
203
+
204
+ BUNDLED WITH
205
+ 1.13.7
data/README.markdown CHANGED
@@ -1,3 +1,6 @@
1
+
2
+ <a href="https://travis-ci.org/Shashikant86/bddfire/"><img src="https://img.shields.io/travis/Shashikant86/bddfire.svg" /></a>
3
+
1
4
  # bddfire
2
5
 
3
6
  BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber BDD framework which supports various popular open-source libraries like Capybara, Selenium-WebDriver, Poltergeist, Relish, Cuke_sniffer, Rubocop, Appium, Saucelabs, Browserstack. Generate default toolkit around BDD with cucumber and friends. BDDfire can do API testing with RestClient. It also added support for Docker, Gatling, Axe Accessibility Engine
data/bddfire.gemspec CHANGED
@@ -14,15 +14,28 @@ Gem::Specification.new do |s|
14
14
  s.summary = 'BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber BDD framework'
15
15
  s.description = 'A Wholesale framework for web, mobile, api, load, accessibility testing. Get you going in a minute. An instant setup of Ruby, Cucumber, Capybara, selenium, REST API Appium, Docker, Gatling and Axe Engine'
16
16
  s.add_runtime_dependency "bundler"
17
- s.add_runtime_dependency "cucumber", '~> 2.3', '>= 2.3'
18
- s.add_runtime_dependency "capybara", '~> 2.6', '>= 2.4'
19
- s.add_runtime_dependency "rspec", '~> 3.4', '>= 3.0.0'
20
- s.add_runtime_dependency "selenium-webdriver", '~> 2.52', '>= 2.52'
21
- s.add_runtime_dependency "axe-matchers", '~> 1.1.1', '>= 1.0.0'
22
- s.add_runtime_dependency 'rest-client', '~> 1.8.0', '>= 1.7.3'
23
- s.add_runtime_dependency 'json', '~> 1.8.3', '>= 1.7.3'
24
- s.add_runtime_dependency 'be_valid_asset', '~> 1.3', '>= 1.3.0'
17
+ s.add_runtime_dependency "nokogiri"
18
+ s.add_runtime_dependency "cucumber"
19
+ s.add_runtime_dependency "capybara"
20
+ s.add_runtime_dependency "poltergeist"
21
+ s.add_runtime_dependency "rake"
22
+ s.add_runtime_dependency "yard-cucumber"
23
+ s.add_runtime_dependency "rspec"
24
+ s.add_runtime_dependency "selenium-webdriver"
25
+ s.add_runtime_dependency "axe-matchers"
26
+ s.add_runtime_dependency 'rest-client'
27
+ s.add_runtime_dependency 'json'
28
+ s.add_runtime_dependency 'redcarpet'
29
+ s.add_runtime_dependency 'rubocop'
30
+ s.add_runtime_dependency 'cuke_sniffer'
31
+ s.add_runtime_dependency 'relish'
32
+ s.add_runtime_dependency 'rubocop-checkstyle_formatter'
33
+ s.add_runtime_dependency 'site_prism'
34
+ s.add_runtime_dependency 'chromedriver-helper'
35
+ s.add_runtime_dependency 'magic_encoding'
36
+ s.add_runtime_dependency 'be_valid_asset'
25
37
  s.add_runtime_dependency 'require_all', '~> 1.3.1', '>= 1.3.0'
38
+ s.add_development_dependency 'aruba', '~> 0.14.1'
26
39
  s.files = `git ls-files`.split("\n")
27
40
  s.test_files = `git ls-files -- {features}/*`.split("\n")
28
41
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
@@ -0,0 +1,16 @@
1
+ Feature: Install bddfire
2
+
3
+
4
+ Scenario: Print version
5
+ Given I successfully run `bddfire version`
6
+ Then output should be
7
+ """
8
+ 2.0.4
9
+ """
10
+
11
+ Scenario: Using rubygems
12
+ Given I successfully run `bddfire`
13
+ Then the output should contain:
14
+ """
15
+ Usage: bddfire <command-name> [parameters] [options]
16
+ """
@@ -0,0 +1,8 @@
1
+ Feature: Install bddfire
2
+
3
+
4
+ Scenario: Using rubygems
5
+ Given I successfully run `gem install bddfire`
6
+ Then bddfire should be installed on the local system
7
+
8
+
@@ -0,0 +1,13 @@
1
+
2
+ Then(/^bddfire should be installed on the local system$/) do
3
+ run('gem list bddfire')
4
+ expect(last_command_started).to have_output(/bddfire/)
5
+ end
6
+
7
+ Then(/^output should be$/) do |output|
8
+ expect(last_command_started).to have_output(output)
9
+ end
10
+
11
+ Then(/^output should be contain$/) do |string|
12
+ expect(last_command_started).to include?(output)
13
+ end
@@ -0,0 +1 @@
1
+ require 'aruba/cucumber'
data/homebrew/bddfire ADDED
@@ -0,0 +1,198 @@
1
+ #!/usr/bin/env ruby
2
+ require 'fileutils'
3
+ require 'tempfile'
4
+
5
+ lib_dir = File.expand_path('../lib', File.dirname(__FILE__))
6
+ $LOAD_PATH.unshift lib_dir unless $LOAD_PATH.include?(lib_dir)
7
+
8
+ @root_dir = File.join(FileUtils.pwd, 'cucumber')
9
+ @root_feature_dir = File.join(@root_dir, 'features')
10
+ @root_scripts_dir = File.join(@root_dir, 'script')
11
+ @root_accessibility_dir = File.join(@root_dir, 'accessibility')
12
+ @root_load_dir = File.join(@root_dir, 'load')
13
+ @source_dir = File.join(File.dirname(__FILE__), '..', 'scaffold')
14
+ @source_feature_dir = File.join(@source_dir, 'features')
15
+ @source_scripts_dir = File.join(@source_dir, 'scripts')
16
+ @source_config_dir = File.join(@source_dir, 'config_files')
17
+ @source_load_dir = File.join(@source_dir, 'load')
18
+ @source_accessibility_dir = File.join(@source_dir, 'accessibility')
19
+
20
+ def bddfire_scaffold
21
+ if File.exist?(@root_dir)
22
+ puts 'There is already cucumber directory. Please move existing cucumber directory to carry on '
23
+ exit 1
24
+ end
25
+
26
+ FileUtils.cp_r(@source_config_dir, @root_dir)
27
+ msg ('Info') do
28
+ puts "=======BDDfire is creating 'cucumber' framework. Please have a look which files are being created============\n"
29
+ end
30
+
31
+ msg('Gemfile') do
32
+ puts "=======BDDfire created Gemfile containing all required Gems============\n"
33
+ end
34
+ msg('cucumber.yml') do
35
+ puts "=======BDDfire created cucumber.yml file with profiles of all Capybara Drivers============\n"
36
+ end
37
+ msg('package.json') do
38
+ puts "=======BDDfire created pakage.json file with required npm dependencies============\n"
39
+ end
40
+ msg('README.md') do
41
+ puts "=======BDDfire created README.md file with template usage============\n"
42
+ end
43
+ msg('browser.json') do
44
+ puts "=======BDDfire created browser.json file with browsers and devices config for cloud testng============\n"
45
+ end
46
+ msg('.relish') do
47
+ puts "=======BDDfire created .relish file, you need to add your relish api key============\n"
48
+ end
49
+ msg('.rubocop.yml') do
50
+ puts "=======BDDfire created .rubocop.yml file to check Ruby code============\n"
51
+ end
52
+ msg('Dockerfile') do
53
+ puts "=======BDDfire created Dockerfile===========\n"
54
+ end
55
+ msg('docker.sh') do
56
+ puts "=======BDDfire created script for Docker ============\n"
57
+ end
58
+ msg('.yard.yml') do
59
+ puts "=======BDDfire created .yard.yml to generate YARD documentation for your project============\n"
60
+ end
61
+ msg('Rakefile') do
62
+ puts "=======BDDfire created Rakefile to generate Rake tasks ============\n"
63
+ end
64
+ msg('Info') do
65
+ puts "All Config files created. \n"
66
+ end
67
+
68
+ FileUtils.cp_r(@source_feature_dir, @root_feature_dir)
69
+ msg('feature directory') do
70
+ puts "=======BDDfire created features and support directories for cucumber projects============\n"
71
+ end
72
+
73
+ FileUtils.cp_r(@source_scripts_dir, @root_scripts_dir)
74
+
75
+ msg('Scripts') do
76
+ puts "Scripts subdirectory created. \n"
77
+ end
78
+
79
+ msg('Thanks for installing Cucumber functional test framework !') do
80
+ puts "=====BDDfire recommend you to install LOAD and Accessibility Frameworks as well====== \n"
81
+ puts "=====Just Run 'bddfire fire_load' and 'bddfire fire_accessibility' command now====== \n"
82
+ end
83
+
84
+
85
+ end
86
+
87
+ def msg(title, &_block)
88
+ puts "\n" + '-' * 10 + title + '-' * 10
89
+ yield
90
+ puts '-' * 10 + '-------' + '-' * 10 + "\n"
91
+ sleep 1
92
+ end
93
+
94
+ def install
95
+ msg('Installing BDDfire Dependencies') do
96
+ puts "Wait till bundler finish installtions. \n"
97
+ end
98
+ cmd = 'bundle install --gemfile=$(pwd)/cucumber/Gemfile --path=$(pwd)/cucumber/vendor/'
99
+ system(cmd)
100
+ end
101
+
102
+ def accessibility
103
+ if File.exist?(@root_dir)
104
+ FileUtils.cp_r(@source_accessibility_dir, @root_accessibility_dir)
105
+ msg('Accessibility Setup') do
106
+ puts "Accessibility Setup to run accessibility tests \n"
107
+ end
108
+ else
109
+ msg('BDDfire Voilation') do
110
+ puts "Please run 'fire_cucumber' before 'fire_accessibility' \n"
111
+ end
112
+ end
113
+ end
114
+
115
+ def load
116
+ if File.exist?(@root_dir)
117
+ FileUtils.cp_r(@source_load_dir, @root_load_dir)
118
+ msg('Gatling') do
119
+ puts "Gatling setup to run load tests. \n"
120
+ end
121
+ else
122
+ msg('BDDfire Voilation') do
123
+ puts "Please run 'fire_cucumber' before 'fire_load' \n"
124
+ end
125
+ end
126
+ end
127
+
128
+ def print_usage
129
+ puts <<EOF
130
+
131
+ Usage: bddfire <command-name> [parameters] [options]
132
+
133
+ <command-name> can be one of
134
+ help
135
+ prints more detailed help information.
136
+ fire_cucumber
137
+ generate a features folder structure.
138
+ fire_accessibility
139
+ setup accessibility checks with axe-matchers
140
+ fire_load
141
+ setup load and performance tests using Gatling
142
+ version
143
+ prints the gem version
144
+
145
+
146
+ <options> can be
147
+ -v, --verbose Turns on verbose logging
148
+ EOF
149
+ end
150
+
151
+ def print_help
152
+ puts <<EOF
153
+
154
+ Usage: bddfire <command-name> [parameters] [options]
155
+
156
+ <command-name> can be one of
157
+ help
158
+ fire_cucumber
159
+ fire_accessibility
160
+ fire_load
161
+ version
162
+
163
+ Commands:
164
+ help : prints more detailed help information.
165
+
166
+ fire_cucumber : creates a skeleton features dir. This is usually used once when
167
+ setting up project to ensure that the features folder contains
168
+ the right step definitions and environment to run with cucumber.
169
+
170
+ fire_accessibility : setup accessibility checks with axe-matchers
171
+
172
+ fire_load : setup load and performance tests using Gatling
173
+
174
+ version : prints the gem version
175
+
176
+ <Options>
177
+ -v, --verbose Turns on verbose logging
178
+ EOF
179
+ end
180
+
181
+ if ARGV.length == 0
182
+ print_usage
183
+ else
184
+ cmd = ARGV.shift
185
+ if cmd == 'help'
186
+ print_help
187
+ elsif cmd == 'fire_cucumber'
188
+ bddfire_scaffold
189
+ elsif cmd == 'version'
190
+ puts "2.x"
191
+ elsif cmd == 'fire_accessibility'
192
+ accessibility
193
+ elsif cmd == 'fire_load'
194
+ load
195
+ else
196
+ print_usage
197
+ end
198
+ end
@@ -1,3 +1,3 @@
1
1
  module BDDfire
2
- VERSION = '2.0.4'.freeze
2
+ VERSION = '2.0.5'.freeze
3
3
  end
@@ -1,23 +1,3 @@
1
1
  source 'http://rubygems.org'
2
- gem 'nokogiri', '1.5.9'
3
- gem 'cucumber'
4
- gem 'capybara'
2
+
5
3
  gem 'bddfire'
6
- gem 'selenium-webdriver'
7
- gem 'poltergeist'
8
- gem 'rake'
9
- gem 'yard-cucumber'
10
- gem 'redcarpet'
11
- gem 'rubocop'
12
- gem 'cuke_sniffer'
13
- gem 'json'
14
- gem 'rspec'
15
- gem 'relish'
16
- gem 'rubocop-checkstyle_formatter'
17
- gem 'parallel_tests'
18
- gem 'axe-matchers'
19
- gem 'site_prism'
20
- gem 'chromedriver-helper', '0.0.6'
21
- gem 'magic_encoding'
22
- gem 'be_valid_asset'
23
- gem 'rest-client'
@@ -0,0 +1,23 @@
1
+ source 'http://rubygems.org'
2
+ gem 'nokogiri'
3
+ gem 'cucumber'
4
+ gem 'capybara'
5
+ gem 'bddfire'
6
+ gem 'selenium-webdriver'
7
+ gem 'poltergeist'
8
+ gem 'rake'
9
+ gem 'yard-cucumber'
10
+ gem 'redcarpet'
11
+ gem 'rubocop'
12
+ gem 'cuke_sniffer'
13
+ gem 'json'
14
+ gem 'rspec'
15
+ gem 'relish'
16
+ gem 'rubocop-checkstyle_formatter'
17
+ gem 'parallel_tests'
18
+ gem 'axe-matchers'
19
+ gem 'site_prism'
20
+ gem 'chromedriver-helper'
21
+ gem 'magic_encoding'
22
+ gem 'be_valid_asset'
23
+ gem 'rest-client'
@@ -1,4 +1,4 @@
1
- default: -p selenium
1
+ default: -p poltergeist
2
2
  html: --format --out reports/test-report.html
3
3
  bvt: --tags @test
4
4
  browserstack : DRIVER=browserstack
@@ -12,4 +12,4 @@ sauce : DRIVER=sauce
12
12
  chrome: DRIVER=chrome
13
13
  parallel_html: --format html --out reports/process<%= ENV['TEST_ENV_NUMBER'] %>.html
14
14
  pretty: -f pretty
15
- parallel: --format pretty --profile parallel_html --format ParallelTests::Cucumber::FailuresLogger --out cucumber_failures.log
15
+ parallel: --format pretty -p poltergeist --profile parallel_html --format ParallelTests::Cucumber::FailuresLogger --out cucumber_failures.log
data/spec/file_spec.rb ADDED
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ # These are just demo test, please contribue to the cucumber tests in the features directories
4
+
5
+ RSpec.describe 'False positive test to check if bddfire has created Cucumber directoey', :type => :aruba do
6
+ let(:directory) { 'cucumber' }
7
+
8
+ before(:each) { create_directory(directory) }
9
+
10
+ it { expect(exist?(directory)).to be true }
11
+ end
@@ -0,0 +1,9 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+
3
+ if RUBY_VERSION < '1.9.3'
4
+ ::Dir.glob(::File.expand_path('../support/*.rb', __FILE__)).each { |f| require File.join(File.dirname(f), File.basename(f, '.rb')) }
5
+ ::Dir.glob(::File.expand_path('../support/**/*.rb', __FILE__)).each { |f| require File.join(File.dirname(f), File.basename(f, '.rb')) }
6
+ else
7
+ ::Dir.glob(::File.expand_path('../support/*.rb', __FILE__)).each { |f| require_relative f }
8
+ ::Dir.glob(::File.expand_path('../support/**/*.rb', __FILE__)).each { |f| require_relative f }
9
+ end
@@ -0,0 +1 @@
1
+ require 'aruba/rspec'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bddfire
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shashikant Jagtap
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-30 00:00:00.000000000 Z
11
+ date: 2017-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -25,165 +25,285 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: cucumber
28
+ name: nokogiri
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '2.3'
34
31
  - - ">="
35
32
  - !ruby/object:Gem::Version
36
- version: '2.3'
33
+ version: '0'
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
- - - "~>"
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: cucumber
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
42
46
  - !ruby/object:Gem::Version
43
- version: '2.3'
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
44
52
  - - ">="
45
53
  - !ruby/object:Gem::Version
46
- version: '2.3'
54
+ version: '0'
47
55
  - !ruby/object:Gem::Dependency
48
56
  name: capybara
49
57
  requirement: !ruby/object:Gem::Requirement
50
58
  requirements:
51
- - - "~>"
52
- - !ruby/object:Gem::Version
53
- version: '2.6'
54
59
  - - ">="
55
60
  - !ruby/object:Gem::Version
56
- version: '2.4'
61
+ version: '0'
57
62
  type: :runtime
58
63
  prerelease: false
59
64
  version_requirements: !ruby/object:Gem::Requirement
60
65
  requirements:
61
- - - "~>"
66
+ - - ">="
62
67
  - !ruby/object:Gem::Version
63
- version: '2.6'
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: poltergeist
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
64
73
  - - ">="
65
74
  - !ruby/object:Gem::Version
66
- version: '2.4'
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
67
83
  - !ruby/object:Gem::Dependency
68
- name: rspec
84
+ name: rake
69
85
  requirement: !ruby/object:Gem::Requirement
70
86
  requirements:
71
- - - "~>"
87
+ - - ">="
72
88
  - !ruby/object:Gem::Version
73
- version: '3.4'
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: yard-cucumber
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
74
101
  - - ">="
75
102
  - !ruby/object:Gem::Version
76
- version: 3.0.0
103
+ version: '0'
77
104
  type: :runtime
78
105
  prerelease: false
79
106
  version_requirements: !ruby/object:Gem::Requirement
80
107
  requirements:
81
- - - "~>"
108
+ - - ">="
82
109
  - !ruby/object:Gem::Version
83
- version: '3.4'
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rspec
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
84
115
  - - ">="
85
116
  - !ruby/object:Gem::Version
86
- version: 3.0.0
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
87
125
  - !ruby/object:Gem::Dependency
88
126
  name: selenium-webdriver
89
127
  requirement: !ruby/object:Gem::Requirement
90
128
  requirements:
91
- - - "~>"
92
- - !ruby/object:Gem::Version
93
- version: '2.52'
94
129
  - - ">="
95
130
  - !ruby/object:Gem::Version
96
- version: '2.52'
131
+ version: '0'
97
132
  type: :runtime
98
133
  prerelease: false
99
134
  version_requirements: !ruby/object:Gem::Requirement
100
135
  requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '2.52'
104
136
  - - ">="
105
137
  - !ruby/object:Gem::Version
106
- version: '2.52'
138
+ version: '0'
107
139
  - !ruby/object:Gem::Dependency
108
140
  name: axe-matchers
109
141
  requirement: !ruby/object:Gem::Requirement
110
142
  requirements:
111
- - - "~>"
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
112
151
  - !ruby/object:Gem::Version
113
- version: 1.1.1
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rest-client
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
114
157
  - - ">="
115
158
  - !ruby/object:Gem::Version
116
- version: 1.0.0
159
+ version: '0'
117
160
  type: :runtime
118
161
  prerelease: false
119
162
  version_requirements: !ruby/object:Gem::Requirement
120
163
  requirements:
121
- - - "~>"
164
+ - - ">="
122
165
  - !ruby/object:Gem::Version
123
- version: 1.1.1
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: json
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
124
178
  - - ">="
125
179
  - !ruby/object:Gem::Version
126
- version: 1.0.0
180
+ version: '0'
127
181
  - !ruby/object:Gem::Dependency
128
- name: rest-client
182
+ name: redcarpet
129
183
  requirement: !ruby/object:Gem::Requirement
130
184
  requirements:
131
- - - "~>"
185
+ - - ">="
132
186
  - !ruby/object:Gem::Version
133
- version: 1.8.0
187
+ version: '0'
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: rubocop
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
134
199
  - - ">="
135
200
  - !ruby/object:Gem::Version
136
- version: 1.7.3
201
+ version: '0'
137
202
  type: :runtime
138
203
  prerelease: false
139
204
  version_requirements: !ruby/object:Gem::Requirement
140
205
  requirements:
141
- - - "~>"
206
+ - - ">="
142
207
  - !ruby/object:Gem::Version
143
- version: 1.8.0
208
+ version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: cuke_sniffer
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
144
213
  - - ">="
145
214
  - !ruby/object:Gem::Version
146
- version: 1.7.3
215
+ version: '0'
216
+ type: :runtime
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
147
223
  - !ruby/object:Gem::Dependency
148
- name: json
224
+ name: relish
149
225
  requirement: !ruby/object:Gem::Requirement
150
226
  requirements:
151
- - - "~>"
227
+ - - ">="
152
228
  - !ruby/object:Gem::Version
153
- version: 1.8.3
229
+ version: '0'
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
154
234
  - - ">="
155
235
  - !ruby/object:Gem::Version
156
- version: 1.7.3
236
+ version: '0'
237
+ - !ruby/object:Gem::Dependency
238
+ name: rubocop-checkstyle_formatter
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - ">="
242
+ - !ruby/object:Gem::Version
243
+ version: '0'
157
244
  type: :runtime
158
245
  prerelease: false
159
246
  version_requirements: !ruby/object:Gem::Requirement
160
247
  requirements:
161
- - - "~>"
248
+ - - ">="
162
249
  - !ruby/object:Gem::Version
163
- version: 1.8.3
250
+ version: '0'
251
+ - !ruby/object:Gem::Dependency
252
+ name: site_prism
253
+ requirement: !ruby/object:Gem::Requirement
254
+ requirements:
164
255
  - - ">="
165
256
  - !ruby/object:Gem::Version
166
- version: 1.7.3
257
+ version: '0'
258
+ type: :runtime
259
+ prerelease: false
260
+ version_requirements: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ version: '0'
167
265
  - !ruby/object:Gem::Dependency
168
- name: be_valid_asset
266
+ name: chromedriver-helper
169
267
  requirement: !ruby/object:Gem::Requirement
170
268
  requirements:
171
- - - "~>"
269
+ - - ">="
172
270
  - !ruby/object:Gem::Version
173
- version: '1.3'
271
+ version: '0'
272
+ type: :runtime
273
+ prerelease: false
274
+ version_requirements: !ruby/object:Gem::Requirement
275
+ requirements:
174
276
  - - ">="
175
277
  - !ruby/object:Gem::Version
176
- version: 1.3.0
278
+ version: '0'
279
+ - !ruby/object:Gem::Dependency
280
+ name: magic_encoding
281
+ requirement: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
177
286
  type: :runtime
178
287
  prerelease: false
179
288
  version_requirements: !ruby/object:Gem::Requirement
180
289
  requirements:
181
- - - "~>"
290
+ - - ">="
182
291
  - !ruby/object:Gem::Version
183
- version: '1.3'
292
+ version: '0'
293
+ - !ruby/object:Gem::Dependency
294
+ name: be_valid_asset
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
184
297
  - - ">="
185
298
  - !ruby/object:Gem::Version
186
- version: 1.3.0
299
+ version: '0'
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - ">="
305
+ - !ruby/object:Gem::Version
306
+ version: '0'
187
307
  - !ruby/object:Gem::Dependency
188
308
  name: require_all
189
309
  requirement: !ruby/object:Gem::Requirement
@@ -204,6 +324,20 @@ dependencies:
204
324
  - - ">="
205
325
  - !ruby/object:Gem::Version
206
326
  version: 1.3.0
327
+ - !ruby/object:Gem::Dependency
328
+ name: aruba
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - "~>"
332
+ - !ruby/object:Gem::Version
333
+ version: 0.14.1
334
+ type: :development
335
+ prerelease: false
336
+ version_requirements: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - "~>"
339
+ - !ruby/object:Gem::Version
340
+ version: 0.14.1
207
341
  description: A Wholesale framework for web, mobile, api, load, accessibility testing.
208
342
  Get you going in a minute. An instant setup of Ruby, Cucumber, Capybara, selenium,
209
343
  REST API Appium, Docker, Gatling and Axe Engine
@@ -215,16 +349,19 @@ extensions: []
215
349
  extra_rdoc_files: []
216
350
  files:
217
351
  - ".gitignore"
352
+ - ".travis.yml"
218
353
  - Gemfile
354
+ - Gemfile.lock
219
355
  - LICENSE
220
356
  - README.markdown
221
357
  - Rakefile
222
358
  - bddfire.gemspec
223
359
  - bin/bddfire
224
- - features/cucumber_template.feature
225
- - features/step_definitions/all_steps.rb
226
- - features/support/env.rb
227
- - features/support/support_code.rb
360
+ - features/bddfire_cli.feature
361
+ - features/install.feature
362
+ - features/step_definition/install.rb
363
+ - features/support/aruba.rb
364
+ - homebrew/bddfire
228
365
  - lib/bddfire.rb
229
366
  - lib/bddfire/accessibility/axe.rb
230
367
  - lib/bddfire/api/rest-api.rb
@@ -273,6 +410,7 @@ files:
273
410
  - scaffold/config_files/.yard.yml
274
411
  - scaffold/config_files/Dockerfile
275
412
  - scaffold/config_files/Gemfile
413
+ - scaffold/config_files/Gemfile-raw
276
414
  - scaffold/config_files/README.md
277
415
  - scaffold/config_files/Rakefile
278
416
  - scaffold/config_files/browser.json
@@ -306,6 +444,9 @@ files:
306
444
  - scaffold/scripts/ci_script
307
445
  - scaffold/scripts/load
308
446
  - scaffold/scripts/run_appium
447
+ - spec/file_spec.rb
448
+ - spec/spec_helper.rb
449
+ - spec/support/aruba.rb
309
450
  homepage: https://github.com/Shashikant86/bddfire
310
451
  licenses:
311
452
  - MIT
@@ -327,10 +468,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
327
468
  version: '0'
328
469
  requirements: []
329
470
  rubyforge_project:
330
- rubygems_version: 2.4.6
471
+ rubygems_version: 2.6.8
331
472
  signing_key:
332
473
  specification_version: 4
333
474
  summary: 'BDDfire: Automate Mobile & Web apps with less code. An instant Ruby-Cucumber
334
475
  BDD framework'
335
476
  test_files: []
336
- has_rdoc:
@@ -1,7 +0,0 @@
1
- Feature: Generate cucumber template
2
-
3
- Scenario: Generate Cucumber
4
-
5
- Given I have empty directory
6
- When I run BDDfire
7
- Then I shouls see all the files and directories are created
@@ -1,8 +0,0 @@
1
- Given(/^I have empty directory$/) do
2
- end
3
-
4
- When(/^I run BDDfire$/) do
5
- end
6
-
7
- Then(/^I shouls see all the files and directories are created$/) do
8
- end
@@ -1,6 +0,0 @@
1
- require 'rubygems'
2
- require 'bundler/setup'
3
-
4
- require 'aruba'
5
-
6
- require 'bddfire'
File without changes