Class: Spinach::Config
- Inherits:
-
Object
- Object
- Spinach::Config
- Defined in:
- lib/spinach/config.rb
Overview
The config object holds all the runtime configurations needed for spinach to run.
Instance Attribute Summary collapse
-
#config_path ⇒ String
It allows you to set a config file to parse for all the other options to be set.
-
#default_reporter ⇒ Object
writeonly
Sets the attribute default_reporter.
-
#failure_exceptions ⇒ Array<Exception>
The failure exceptions return an array of exceptions to be captured and considered as failures (as opposite of errors).
-
#features_path ⇒ String
The “features path” holds the place where your features will be searched for.
-
#save_and_open_page_on_failure ⇒ Object
When using capybara, it automatically shows the current page when there’s a failure.
-
#step_definitions_path ⇒ String
The “step definitions path” holds the place where your feature step classes will be searched for.
-
#support_path ⇒ String
The “support path” helds the place where you can put your configuration files.
-
#tags ⇒ Array
Tags to tell Spinach that you only want to run scenarios that have (or don’t have) certain tags.
Instance Method Summary collapse
-
#[](attribute) ⇒ Object
Allows you to read the config object using a hash-like syntax.
-
#[]=(attribute, value) ⇒ Object
Allows you to set config properties using a hash-like syntax.
-
#parse_from_file ⇒ Boolean
Parse options from the config file.
Instance Attribute Details
#config_path ⇒ String
It allows you to set a config file to parse for all the other options to be set
113 114 115 |
# File 'lib/spinach/config.rb', line 113 def config_path @config_path ||= 'config/spinach.yml' end |
#default_reporter=(value) ⇒ Object (writeonly)
Sets the attribute default_reporter
25 26 27 |
# File 'lib/spinach/config.rb', line 25 def default_reporter=(value) @default_reporter = value end |
#failure_exceptions ⇒ Array<Exception>
The failure exceptions return an array of exceptions to be captured and considered as failures (as opposite of errors)
104 105 106 |
# File 'lib/spinach/config.rb', line 104 def failure_exceptions @failure_exceptions ||= [] end |
#features_path ⇒ String
The “features path” holds the place where your features will be searched for. Defaults to ‘features’
41 42 43 |
# File 'lib/spinach/config.rb', line 41 def features_path @features_path || 'features' end |
#save_and_open_page_on_failure ⇒ Object
When using capybara, it automatically shows the current page when there’s a failure
120 121 122 |
# File 'lib/spinach/config.rb', line 120 def save_and_open_page_on_failure @save_and_open_page_on_failure ||= false end |
#step_definitions_path ⇒ String
The “step definitions path” holds the place where your feature step classes will be searched for. Defaults to ‘##features_path/steps’
52 53 54 |
# File 'lib/spinach/config.rb', line 52 def step_definitions_path @step_definitions_path || "#{self.features_path}/steps" end |
#support_path ⇒ String
The “support path” helds the place where you can put your configuration files. Defaults to ‘##features_path/support’
63 64 65 |
# File 'lib/spinach/config.rb', line 63 def support_path @support_path || "#{self.features_path}/support" end |
#tags ⇒ Array
Tags to tell Spinach that you only want to run scenarios that have (or don’t have) certain tags.
130 131 132 |
# File 'lib/spinach/config.rb', line 130 def @tags ||= [] end |
Instance Method Details
#[](attribute) ⇒ Object
Allows you to read the config object using a hash-like syntax.
77 78 79 |
# File 'lib/spinach/config.rb', line 77 def [](attribute) self.send(attribute) end |
#[]=(attribute, value) ⇒ Object
Allows you to set config properties using a hash-like syntax.
94 95 96 |
# File 'lib/spinach/config.rb', line 94 def []=(attribute, value) self.send("#{attribute}=", value) end |
#parse_from_file ⇒ Boolean
Parse options from the config file
139 140 141 142 143 144 145 146 |
# File 'lib/spinach/config.rb', line 139 def parse_from_file parsed_opts = YAML.load_file(config_path) parsed_opts.delete_if{|k| k.to_s == 'config_path'} parsed_opts.each_pair{|k,v| self[k] = v} true rescue Errno::ENOENT false end |