Top Level Namespace

Includes:
Helper

Defined Under Namespace

Modules: Helper, SaudeiD Classes: BasePage

Constant Summary collapse

CONFIG =
YAML.load_file(File.join(Dir.pwd, "features/support/config/environments/#{ENV['ENV_TYPE']}.yml"))
EL =
YAML.load_file('features/support/config/elements.yml')

Instance Method Summary collapse

Methods included from Helper

#create_message_pubsub, #element_wait, #take_screenshot, #wait_until_element_exist, #wait_until_text_exist

Instance Method Details

#camelize(string) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 27

def camelize(string)
  camelized = ''
  string.split('_').each do |s|
    camelized += s.capitalize
  end
  camelized
end

#create_feature_file(name) ⇒ Object



3
4
5
6
7
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 3

def create_feature_file(name)
  opts = { name: camelize(name) }
  template('feature', File.join(FileUtils.pwd, 'features', 'specs',
                                "#{name.downcase}.feature"), opts)
end

#create_page_file(name) ⇒ Object



15
16
17
18
19
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 15

def create_page_file(name)
  opts = { name: camelize(name) }
  template('page', File.join(FileUtils.pwd, 'features/support', 'pages',
                             "#{name.downcase}_page.rb"), opts)
end

#create_service_file(name) ⇒ Object



21
22
23
24
25
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 21

def create_service_file(name)
  opts = { name: camelize(name) }
  template('services', File.join(FileUtils.pwd, 'features/support', 'services',
                                 "#{name.downcase}_services.rb"), opts)
end

#create_steps_file(name) ⇒ Object



9
10
11
12
13
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 9

def create_steps_file(name)
  opts = { name: camelize(name) }
  template('steps', File.join(FileUtils.pwd, 'features', 'steps_definitions',
                              "#{name.downcase}_steps.rb"), opts)
end

#exception_message(scenario) ⇒ Object



11
12
13
14
15
16
# File 'lib/SkeletonApi/features/support/hooks.rb', line 11

def exception_message(scenario)
  scene = scenario.failed?
  return unless scene == true

  print_reason(scenario)
end

#in_root_project_folder?Boolean

Returns:

  • (Boolean)


35
36
37
38
39
40
41
# File 'lib/SaudeiD/SaudeiD_helper.rb', line 35

def in_root_project_folder?
  unless Dir.exist?(File.join(FileUtils.pwd, 'features', 'specs'))
    puts 'Please run this command on the root folder of the project'
    exist 1
  end
  true
end


18
19
20
21
22
23
24
25
26
# File 'lib/SkeletonApi/features/support/hooks.rb', line 18

def print_reason(scenario)
  puts "\n--------------------------------------------------------------------------------------------"
  puts 'Reason:'
  puts "\n - Request body: #{@payload.to_json}"
  puts "\n - Response code: #{@response.response.code}"
  puts "\n - Response body: #{@response.parsed_response.to_json}"
  puts "\nšŸ”„šŸ”„šŸ”„šŸžšŸžšŸžšŸ”„šŸ”„šŸ”„ #{scenario.exception.message}"
  puts "--------------------------------------------------------------------------------------------\n"
end