SimpliTest 0.0.4 → 0.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 +4 -4
- data/README.md +21 -21
- data/SimpliTest.gemspec +42 -42
- data/bin/SimpliTest +22 -22
- data/lib/SimpliTest.rb +2 -2
- data/lib/SimpliTest/cli/main.rb +333 -333
- data/lib/SimpliTest/config/configuration.rb +107 -107
- data/lib/SimpliTest/config/directory_paths.rb +36 -36
- data/lib/SimpliTest/config/environment.rb +67 -67
- data/lib/SimpliTest/config/local_environment.rb +20 -20
- data/lib/SimpliTest/config/profiles/chrome.rb +18 -18
- data/lib/SimpliTest/config/profiles/firefox.rb +14 -14
- data/lib/SimpliTest/config/profiles/internet_explorer.rb +11 -11
- data/lib/SimpliTest/config/profiles/phantom.rb +9 -9
- data/lib/SimpliTest/config/profiles/phantom_debug.rb +12 -12
- data/lib/SimpliTest/config/profiles/selenium.rb +13 -13
- data/lib/SimpliTest/config/screen_size.rb +25 -25
- data/lib/SimpliTest/config/steps.rb +8 -8
- data/lib/SimpliTest/helpers/data_validation.rb +60 -60
- data/lib/SimpliTest/helpers/file.rb +38 -38
- data/lib/SimpliTest/helpers/project_setup.rb +186 -186
- data/lib/SimpliTest/helpers/step_helpers/custom_chrome_helpers.rb +14 -14
- data/lib/SimpliTest/helpers/step_helpers/custom_date_helpers.rb +64 -64
- data/lib/SimpliTest/helpers/step_helpers/custom_form_helpers.rb +66 -66
- data/lib/SimpliTest/helpers/step_helpers/custom_phantomjs_helpers.rb +49 -49
- data/lib/SimpliTest/helpers/step_helpers/custom_selenium_helpers.rb +41 -41
- data/lib/SimpliTest/helpers/step_helpers/html_selectors_helpers.rb +154 -154
- data/lib/SimpliTest/helpers/step_helpers/navigation_helpers.rb +206 -206
- data/lib/SimpliTest/helpers/step_helpers/tolerance_for_sync_issues.rb +38 -38
- data/lib/SimpliTest/helpers/step_helpers/within_helpers.rb +6 -6
- data/lib/SimpliTest/helpers/windows_ui.rb +51 -51
- data/lib/SimpliTest/steps/debugging_steps.rb +19 -19
- data/lib/SimpliTest/steps/form_steps.rb +348 -352
- data/lib/SimpliTest/steps/form_verification_steps.rb +189 -189
- data/lib/SimpliTest/steps/navigation_steps.rb +58 -47
- data/lib/SimpliTest/steps/scoper.rb +42 -42
- data/lib/SimpliTest/steps/verification_steps.rb +306 -306
- data/lib/SimpliTest/tasks/document.rb +169 -169
- data/lib/SimpliTest/tasks/examples.rb +18 -18
- data/lib/SimpliTest/tasks/testinstall.rb +5 -5
- data/lib/SimpliTest/templates/NewSimpliTestProject/Readme.txt +4 -4
- data/lib/SimpliTest/templates/NewSimpliTestProject/cucumber.yml +26 -26
- data/lib/SimpliTest/templates/NewSimpliTestProject/documentation/step_definitions.html +88 -87
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/specifications/RegressionTests/HelloWorld.feature +3 -3
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/specifications/SmokeTest/HelloWorld.feature +3 -3
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/specifications/accessibilityTests/HelloWorld.feature +3 -3
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/support/config/environments.yml +10 -10
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/support/config/pages.yml +26 -26
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/support/config/selectors.yml +44 -44
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/support/config/settings.yml +26 -26
- data/lib/SimpliTest/templates/NewSimpliTestProject/features/support/env.rb +33 -33
- data/lib/SimpliTest/templates/NewSimpliTestProject/license.txt +29 -29
- data/lib/SimpliTest/templates/document/css/style.css +28 -28
- data/lib/SimpliTest/templates/document/index.html +60 -60
- data/lib/version.rb +3 -3
- metadata +4 -4
@@ -1,107 +1,107 @@
|
|
1
|
-
require "yaml"
|
2
|
-
require 'SimpliTest/config/directory_paths'
|
3
|
-
# Loads configuration from satelite projects
|
4
|
-
module SimpliTest
|
5
|
-
@config = {
|
6
|
-
:support_directory => nil,
|
7
|
-
:environments_file => nil,
|
8
|
-
:pages_file => nil,
|
9
|
-
:selectors_file => nil,
|
10
|
-
:settings_file => nil,
|
11
|
-
:environments => nil,
|
12
|
-
:pages => nil,
|
13
|
-
:selectors => nil,
|
14
|
-
:settings => nil,
|
15
|
-
:environment => nil
|
16
|
-
}
|
17
|
-
@valid_config_keys = @config.keys
|
18
|
-
|
19
|
-
class << self
|
20
|
-
|
21
|
-
#TODO: Improve the documentation below
|
22
|
-
=begin
|
23
|
-
****************************************************************
|
24
|
-
Load Order/ Dependencies
|
25
|
-
****************************************************************
|
26
|
-
|
27
|
-
********TEST PROJECTS****************
|
28
|
-
In Test Projects, first load this file
|
29
|
-
Then set any config variables
|
30
|
-
Then load the environments file in the @config_dir
|
31
|
-
The environments file loads the steps directory
|
32
|
-
Steps Directory is self sufficient (no external files need to be loaded)
|
33
|
-
**************************************
|
34
|
-
|
35
|
-
********BIN STUBS*********************
|
36
|
-
The gem has one bin stub: SimpliTest
|
37
|
-
This simply executes a method in the Main class with @cli_directory
|
38
|
-
The Main class in the cli dir requires @helpers_dir and @tasks_dir
|
39
|
-
***************************************
|
40
|
-
|
41
|
-
********RAKE TASKS*********************
|
42
|
-
Some cli commands execute rake tasks in the @tasks_dir
|
43
|
-
@tasks_dir requires @helpers_dir
|
44
|
-
***************************************
|
45
|
-
|
46
|
-
*****************************************************************
|
47
|
-
=end
|
48
|
-
|
49
|
-
def configure(opts={})
|
50
|
-
opts.each {|k,v| @config[k.to_sym] = v if @valid_config_keys.include? k.to_sym}
|
51
|
-
load_configuration
|
52
|
-
end
|
53
|
-
|
54
|
-
def default_path_for(key)
|
55
|
-
File.join(@config[:support_directory], 'config', "#{key.to_s}.yml")
|
56
|
-
end
|
57
|
-
|
58
|
-
def read_from(path_to_file)
|
59
|
-
begin
|
60
|
-
YAML::load(IO.read(path_to_file))
|
61
|
-
rescue Errno::ENOENT
|
62
|
-
alert ("Expected to find #{path_to_file} but did not find it.")
|
63
|
-
rescue Psych::SyntaxError
|
64
|
-
alert "#{path_to_file} YAML file contains invalid syntax. Please correct it"
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
def config
|
69
|
-
@config
|
70
|
-
end
|
71
|
-
|
72
|
-
def load_configuration
|
73
|
-
begin
|
74
|
-
@config[:environments] = read_from(@config[:environments_file] || default_path_for(:environments))
|
75
|
-
@config[:pages] = read_from(@config[:pages_file] || default_path_for(:pages))
|
76
|
-
@config[:selectors] = read_from(@config[:selectors_file] || default_path_for(:selectors))
|
77
|
-
@config[:settings] = read_from(@config[:settings_file] || default_path_for(:settings))
|
78
|
-
@config[:environment] = ENV['ENVIRONMENT'] || @config[:settings]['DEFAULT_ENVIRONMENT'] || @config[:settings][:environments].values.first
|
79
|
-
@valid_config_keys = @config.keys
|
80
|
-
rescue Exception => e
|
81
|
-
alert "There was a problem reading one of the required configuration files\n" + e.message
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
def driver
|
86
|
-
ENV['SimpliTest_DRIVER'] || @config[:settings]['DRIVER'] || 'selenium'
|
87
|
-
end
|
88
|
-
|
89
|
-
def driver=(name)
|
90
|
-
@config[:driver]=name
|
91
|
-
end
|
92
|
-
|
93
|
-
def mode
|
94
|
-
@config[:settings]['MODE'] || 'REGULAR'
|
95
|
-
end
|
96
|
-
|
97
|
-
def screen_size
|
98
|
-
ENV['SCREEN_SIZE'] || @config[:settings]['SCREEN_SIZE'] || 'Desktop'
|
99
|
-
end
|
100
|
-
|
101
|
-
def wait_for_page_load
|
102
|
-
@config[:settings]['WAIT_FOR_PAGE_LOAD'].to_i rescue 0
|
103
|
-
end
|
104
|
-
|
105
|
-
end #end self << class all methods below this are instance methods
|
106
|
-
|
107
|
-
end
|
1
|
+
require "yaml"
|
2
|
+
require 'SimpliTest/config/directory_paths'
|
3
|
+
# Loads configuration from satelite projects
|
4
|
+
module SimpliTest
|
5
|
+
@config = {
|
6
|
+
:support_directory => nil,
|
7
|
+
:environments_file => nil,
|
8
|
+
:pages_file => nil,
|
9
|
+
:selectors_file => nil,
|
10
|
+
:settings_file => nil,
|
11
|
+
:environments => nil,
|
12
|
+
:pages => nil,
|
13
|
+
:selectors => nil,
|
14
|
+
:settings => nil,
|
15
|
+
:environment => nil
|
16
|
+
}
|
17
|
+
@valid_config_keys = @config.keys
|
18
|
+
|
19
|
+
class << self
|
20
|
+
|
21
|
+
#TODO: Improve the documentation below
|
22
|
+
=begin
|
23
|
+
****************************************************************
|
24
|
+
Load Order/ Dependencies
|
25
|
+
****************************************************************
|
26
|
+
|
27
|
+
********TEST PROJECTS****************
|
28
|
+
In Test Projects, first load this file
|
29
|
+
Then set any config variables
|
30
|
+
Then load the environments file in the @config_dir
|
31
|
+
The environments file loads the steps directory
|
32
|
+
Steps Directory is self sufficient (no external files need to be loaded)
|
33
|
+
**************************************
|
34
|
+
|
35
|
+
********BIN STUBS*********************
|
36
|
+
The gem has one bin stub: SimpliTest
|
37
|
+
This simply executes a method in the Main class with @cli_directory
|
38
|
+
The Main class in the cli dir requires @helpers_dir and @tasks_dir
|
39
|
+
***************************************
|
40
|
+
|
41
|
+
********RAKE TASKS*********************
|
42
|
+
Some cli commands execute rake tasks in the @tasks_dir
|
43
|
+
@tasks_dir requires @helpers_dir
|
44
|
+
***************************************
|
45
|
+
|
46
|
+
*****************************************************************
|
47
|
+
=end
|
48
|
+
|
49
|
+
def configure(opts={})
|
50
|
+
opts.each {|k,v| @config[k.to_sym] = v if @valid_config_keys.include? k.to_sym}
|
51
|
+
load_configuration
|
52
|
+
end
|
53
|
+
|
54
|
+
def default_path_for(key)
|
55
|
+
File.join(@config[:support_directory], 'config', "#{key.to_s}.yml")
|
56
|
+
end
|
57
|
+
|
58
|
+
def read_from(path_to_file)
|
59
|
+
begin
|
60
|
+
YAML::load(IO.read(path_to_file))
|
61
|
+
rescue Errno::ENOENT
|
62
|
+
alert ("Expected to find #{path_to_file} but did not find it.")
|
63
|
+
rescue Psych::SyntaxError
|
64
|
+
alert "#{path_to_file} YAML file contains invalid syntax. Please correct it"
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def config
|
69
|
+
@config
|
70
|
+
end
|
71
|
+
|
72
|
+
def load_configuration
|
73
|
+
begin
|
74
|
+
@config[:environments] = read_from(@config[:environments_file] || default_path_for(:environments))
|
75
|
+
@config[:pages] = read_from(@config[:pages_file] || default_path_for(:pages))
|
76
|
+
@config[:selectors] = read_from(@config[:selectors_file] || default_path_for(:selectors))
|
77
|
+
@config[:settings] = read_from(@config[:settings_file] || default_path_for(:settings))
|
78
|
+
@config[:environment] = ENV['ENVIRONMENT'] || @config[:settings]['DEFAULT_ENVIRONMENT'] || @config[:settings][:environments].values.first
|
79
|
+
@valid_config_keys = @config.keys
|
80
|
+
rescue Exception => e
|
81
|
+
alert "There was a problem reading one of the required configuration files\n" + e.message
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
def driver
|
86
|
+
ENV['SimpliTest_DRIVER'] || @config[:settings]['DRIVER'] || 'selenium'
|
87
|
+
end
|
88
|
+
|
89
|
+
def driver=(name)
|
90
|
+
@config[:driver]=name
|
91
|
+
end
|
92
|
+
|
93
|
+
def mode
|
94
|
+
@config[:settings]['MODE'] || 'REGULAR'
|
95
|
+
end
|
96
|
+
|
97
|
+
def screen_size
|
98
|
+
ENV['SCREEN_SIZE'] || @config[:settings]['SCREEN_SIZE'] || 'Desktop'
|
99
|
+
end
|
100
|
+
|
101
|
+
def wait_for_page_load
|
102
|
+
@config[:settings]['WAIT_FOR_PAGE_LOAD'].to_i rescue 0
|
103
|
+
end
|
104
|
+
|
105
|
+
end #end self << class all methods below this are instance methods
|
106
|
+
|
107
|
+
end
|
@@ -1,36 +1,36 @@
|
|
1
|
-
require 'yaml'
|
2
|
-
require 'pathname'
|
3
|
-
require 'SimpliTest/helpers/project_setup'
|
4
|
-
# exports instance variables for various directories of interest in the gem and the satelite projects
|
5
|
-
module SimpliTest
|
6
|
-
extend ProjectSetupHelpers
|
7
|
-
@config_dir = File.dirname(__FILE__)
|
8
|
-
@SimpliTest_dir = Pathname.new( @config_dir).parent.to_s
|
9
|
-
@helpers_dir = File.join(@SimpliTest_dir, 'helpers')
|
10
|
-
@steps_dir = File.join(@SimpliTest_dir, 'steps')
|
11
|
-
@step_helpers_dir = File.join(@helpers_dir, 'step_helpers')
|
12
|
-
@templates_dir = File.join(@SimpliTest_dir, 'templates')
|
13
|
-
@lib_dir = Pathname.new(@SimpliTest_dir).parent.to_s
|
14
|
-
@tasks_dir = File.join(@SimpliTest_dir, 'tasks')
|
15
|
-
@gem_dir = Pathname.new(@lib_dir).parent.to_s
|
16
|
-
class << self
|
17
|
-
#TODO: Using method missing despite all the reasons not to
|
18
|
-
#FIXME: Get rid of this
|
19
|
-
def method_missing(meth, *args, &block)
|
20
|
-
if match = meth.to_s.match(/^config_(.+)$/)
|
21
|
-
config[match[1].to_sym]
|
22
|
-
elsif match = meth.to_s.match(/^path_to_(.+)$/)
|
23
|
-
instance_variable_get("@#{match[1]}")
|
24
|
-
else
|
25
|
-
super # You *must* call super if you don't handle the
|
26
|
-
# method, otherwise you'll mess up Ruby's method
|
27
|
-
# lookup.
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
def respond_to_missing?(method_name, include_private = false)
|
32
|
-
method_name.to_s.start_with?('config_') || meth.to_s.start_with?('path_to_') || super
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
end
|
1
|
+
require 'yaml'
|
2
|
+
require 'pathname'
|
3
|
+
require 'SimpliTest/helpers/project_setup'
|
4
|
+
# exports instance variables for various directories of interest in the gem and the satelite projects
|
5
|
+
module SimpliTest
|
6
|
+
extend ProjectSetupHelpers
|
7
|
+
@config_dir = File.dirname(__FILE__)
|
8
|
+
@SimpliTest_dir = Pathname.new( @config_dir).parent.to_s
|
9
|
+
@helpers_dir = File.join(@SimpliTest_dir, 'helpers')
|
10
|
+
@steps_dir = File.join(@SimpliTest_dir, 'steps')
|
11
|
+
@step_helpers_dir = File.join(@helpers_dir, 'step_helpers')
|
12
|
+
@templates_dir = File.join(@SimpliTest_dir, 'templates')
|
13
|
+
@lib_dir = Pathname.new(@SimpliTest_dir).parent.to_s
|
14
|
+
@tasks_dir = File.join(@SimpliTest_dir, 'tasks')
|
15
|
+
@gem_dir = Pathname.new(@lib_dir).parent.to_s
|
16
|
+
class << self
|
17
|
+
#TODO: Using method missing despite all the reasons not to
|
18
|
+
#FIXME: Get rid of this
|
19
|
+
def method_missing(meth, *args, &block)
|
20
|
+
if match = meth.to_s.match(/^config_(.+)$/)
|
21
|
+
config[match[1].to_sym]
|
22
|
+
elsif match = meth.to_s.match(/^path_to_(.+)$/)
|
23
|
+
instance_variable_get("@#{match[1]}")
|
24
|
+
else
|
25
|
+
super # You *must* call super if you don't handle the
|
26
|
+
# method, otherwise you'll mess up Ruby's method
|
27
|
+
# lookup.
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def respond_to_missing?(method_name, include_private = false)
|
32
|
+
method_name.to_s.start_with?('config_') || meth.to_s.start_with?('path_to_') || super
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
@@ -1,67 +1,67 @@
|
|
1
|
-
require 'capybara'
|
2
|
-
require 'capybara/cucumber'
|
3
|
-
require 'capybara/dsl'
|
4
|
-
require 'rspec'
|
5
|
-
require "nokogiri"
|
6
|
-
require 'open-uri'
|
7
|
-
require_relative './local_environment'
|
8
|
-
require_relative './screen_size'
|
9
|
-
require_relative './steps'
|
10
|
-
require File.join(SimpliTest.path_to_helpers_dir, 'project_setup')
|
11
|
-
RSpec.configure do |config|
|
12
|
-
config.include Capybara::DSL
|
13
|
-
end
|
14
|
-
|
15
|
-
Capybara.save_and_open_page_path = File.expand_path(File.join(SimpliTest.config_support_directory,'../../tmp')) if SimpliTest.config[:support_directory]
|
16
|
-
Capybara.default_max_wait_time = 2
|
17
|
-
|
18
|
-
driver = SimpliTest.driver #default is selenium
|
19
|
-
profiles_dir = File.join(File.dirname(__FILE__), 'profiles')
|
20
|
-
profiles = {
|
21
|
-
'phantomjs' => 'phantom',
|
22
|
-
'phantom_debug' => 'phantom_debug',
|
23
|
-
'chrome' => 'chrome',
|
24
|
-
'selenium' => 'selenium',
|
25
|
-
'ie' => 'internet_explorer',
|
26
|
-
'fire' => 'firefox'
|
27
|
-
}
|
28
|
-
profile = File.join profiles_dir, profiles[driver]
|
29
|
-
require profile
|
30
|
-
puts "Loaded Environment"
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
#Leave the window open after a test fails if this tag is provided
|
35
|
-
After('@leave_the_window_open') do |scenario|
|
36
|
-
if scenario.respond_to?(:status) && scenario.status == :failed
|
37
|
-
print "Step Failed. Press Return to close browser"
|
38
|
-
STDIN.getc
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
Before do |s|
|
43
|
-
# if SimpliTest.env_or_setting('JIRA_INTEGRATION_ENABLED') && SimpliTest.env_or_setting('JIRA_URL')
|
44
|
-
# $has_jira_info ||= false
|
45
|
-
# return $has_jira_info if $has_jira_info
|
46
|
-
# $jira = SimpliTest::JiraIntegration.load_project_details
|
47
|
-
# $has_jira_info = true
|
48
|
-
# end
|
49
|
-
end
|
50
|
-
|
51
|
-
After do |s|
|
52
|
-
|
53
|
-
#Reuse Browser sessions
|
54
|
-
if SimpliTest.config[:settings]['REUSE_BROWSER_SESSIONS']
|
55
|
-
Capybara.current_session.instance_variable_set('@touched', !SimpliTest.config[:settings]['REUSE_BROWSER_SESSIONS'])
|
56
|
-
else
|
57
|
-
Capybara.current_session.instance_variable_set('@touched', true)
|
58
|
-
end
|
59
|
-
|
60
|
-
# Tell Cucumber to quit after this scenario is done - if it failed.
|
61
|
-
#Cucumber.wants_to_quit = true if SimpliTest.config[:settings][QUIT_ON_FAIL] && s.failed?
|
62
|
-
#zephyr_reporter = SimpliTest::JiraIntegration.new(s)
|
63
|
-
#zephyr_reporter.report
|
64
|
-
end
|
65
|
-
|
66
|
-
|
67
|
-
|
1
|
+
require 'capybara'
|
2
|
+
require 'capybara/cucumber'
|
3
|
+
require 'capybara/dsl'
|
4
|
+
require 'rspec'
|
5
|
+
require "nokogiri"
|
6
|
+
require 'open-uri'
|
7
|
+
require_relative './local_environment'
|
8
|
+
require_relative './screen_size'
|
9
|
+
require_relative './steps'
|
10
|
+
require File.join(SimpliTest.path_to_helpers_dir, 'project_setup')
|
11
|
+
RSpec.configure do |config|
|
12
|
+
config.include Capybara::DSL
|
13
|
+
end
|
14
|
+
|
15
|
+
Capybara.save_and_open_page_path = File.expand_path(File.join(SimpliTest.config_support_directory,'../../tmp')) if SimpliTest.config[:support_directory]
|
16
|
+
Capybara.default_max_wait_time = 2
|
17
|
+
|
18
|
+
driver = SimpliTest.driver #default is selenium
|
19
|
+
profiles_dir = File.join(File.dirname(__FILE__), 'profiles')
|
20
|
+
profiles = {
|
21
|
+
'phantomjs' => 'phantom',
|
22
|
+
'phantom_debug' => 'phantom_debug',
|
23
|
+
'chrome' => 'chrome',
|
24
|
+
'selenium' => 'selenium',
|
25
|
+
'ie' => 'internet_explorer',
|
26
|
+
'fire' => 'firefox'
|
27
|
+
}
|
28
|
+
profile = File.join profiles_dir, profiles[driver]
|
29
|
+
require profile
|
30
|
+
puts "Loaded Environment"
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
#Leave the window open after a test fails if this tag is provided
|
35
|
+
After('@leave_the_window_open') do |scenario|
|
36
|
+
if scenario.respond_to?(:status) && scenario.status == :failed
|
37
|
+
print "Step Failed. Press Return to close browser"
|
38
|
+
STDIN.getc
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
Before do |s|
|
43
|
+
# if SimpliTest.env_or_setting('JIRA_INTEGRATION_ENABLED') && SimpliTest.env_or_setting('JIRA_URL')
|
44
|
+
# $has_jira_info ||= false
|
45
|
+
# return $has_jira_info if $has_jira_info
|
46
|
+
# $jira = SimpliTest::JiraIntegration.load_project_details
|
47
|
+
# $has_jira_info = true
|
48
|
+
# end
|
49
|
+
end
|
50
|
+
|
51
|
+
After do |s|
|
52
|
+
|
53
|
+
#Reuse Browser sessions
|
54
|
+
if SimpliTest.config[:settings]['REUSE_BROWSER_SESSIONS']
|
55
|
+
Capybara.current_session.instance_variable_set('@touched', !SimpliTest.config[:settings]['REUSE_BROWSER_SESSIONS'])
|
56
|
+
else
|
57
|
+
Capybara.current_session.instance_variable_set('@touched', true)
|
58
|
+
end
|
59
|
+
|
60
|
+
# Tell Cucumber to quit after this scenario is done - if it failed.
|
61
|
+
#Cucumber.wants_to_quit = true if SimpliTest.config[:settings][QUIT_ON_FAIL] && s.failed?
|
62
|
+
#zephyr_reporter = SimpliTest::JiraIntegration.new(s)
|
63
|
+
#zephyr_reporter.report
|
64
|
+
end
|
65
|
+
|
66
|
+
|
67
|
+
|
@@ -1,20 +1,20 @@
|
|
1
|
-
module SimpliTest
|
2
|
-
def self.gems_installed?(list)
|
3
|
-
specs = []
|
4
|
-
list.each do |gem|
|
5
|
-
dep = Gem::Dependency.new(gem)
|
6
|
-
specs << !dep.matching_specs.empty?
|
7
|
-
end
|
8
|
-
specs.uniq == [true]
|
9
|
-
end
|
10
|
-
|
11
|
-
def self.chromedriver_detected?
|
12
|
-
installed = `chromedriver --help` rescue false
|
13
|
-
installed ? true : false
|
14
|
-
end
|
15
|
-
|
16
|
-
def self.env_or_setting(setting_name)
|
17
|
-
ENV[setting_name] || SimpliTest.config_settings[setting_name]
|
18
|
-
end
|
19
|
-
end
|
20
|
-
|
1
|
+
module SimpliTest
|
2
|
+
def self.gems_installed?(list)
|
3
|
+
specs = []
|
4
|
+
list.each do |gem|
|
5
|
+
dep = Gem::Dependency.new(gem)
|
6
|
+
specs << !dep.matching_specs.empty?
|
7
|
+
end
|
8
|
+
specs.uniq == [true]
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.chromedriver_detected?
|
12
|
+
installed = `chromedriver --help` rescue false
|
13
|
+
installed ? true : false
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.env_or_setting(setting_name)
|
17
|
+
ENV[setting_name] || SimpliTest.config_settings[setting_name]
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|