cucumber_helper 0.0.8
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 +7 -0
- data/README.md +320 -0
- data/lib/cucumber_helper/api/helpers.rb +32 -0
- data/lib/cucumber_helper/api/hooks.rb +3 -0
- data/lib/cucumber_helper/api/response.rb +155 -0
- data/lib/cucumber_helper/api.rb +17 -0
- data/lib/cucumber_helper/commons/command_helpers.rb +28 -0
- data/lib/cucumber_helper/commons/test_data_helper.rb +27 -0
- data/lib/cucumber_helper/commons/user_data_helper.rb +19 -0
- data/lib/cucumber_helper/commons.rb +6 -0
- data/lib/cucumber_helper/support/env_helper.rb +114 -0
- data/lib/cucumber_helper/support/hooks_helper.rb +40 -0
- data/lib/cucumber_helper/support.rb +4 -0
- data/lib/cucumber_helper/testrail/test_rail_integration.rb +52 -0
- data/lib/cucumber_helper/testrail/testrail.rb +88 -0
- data/lib/cucumber_helper/version.rb +5 -0
- data/lib/cucumber_helper/web/helpers.rb +772 -0
- data/lib/cucumber_helper/web/hooks.rb +4 -0
- data/lib/cucumber_helper/web/table_helper.rb +50 -0
- data/lib/cucumber_helper/web.rb +18 -0
- data/lib/cucumber_helper.rb +5 -0
- metadata +66 -0
@@ -0,0 +1,50 @@
|
|
1
|
+
require 'site_prism'
|
2
|
+
|
3
|
+
module CucumberHelper
|
4
|
+
module Web
|
5
|
+
class TableSection < SitePrism::Section
|
6
|
+
elements :headers, 'thead tr th'
|
7
|
+
elements :rows, 'tbody tr'
|
8
|
+
|
9
|
+
def comparison(exact_text)
|
10
|
+
exact_text ? 'eql?' : 'include?'
|
11
|
+
end
|
12
|
+
|
13
|
+
def headers_title
|
14
|
+
headers.map(&:text).reject(&:empty?)
|
15
|
+
end
|
16
|
+
|
17
|
+
def click_header(name, exact_text: false, sort_arrow: false, sort_path: 'svg[data-icon-name^=sort]')
|
18
|
+
headers.find { |x| x.text.send(comparison(exact_text), name) }.click unless sort_arrow
|
19
|
+
headers.find { |x| x.text.send(comparison(exact_text), name) }.find(sort_path).click if sort_arrow
|
20
|
+
end
|
21
|
+
|
22
|
+
def columns(name, exact_text: false)
|
23
|
+
columns = []
|
24
|
+
id = headers.index { |x| x.text.send(comparison(exact_text), name) }
|
25
|
+
rows.each do |r|
|
26
|
+
columns << r.find_all('td')[id]
|
27
|
+
end
|
28
|
+
columns
|
29
|
+
end
|
30
|
+
|
31
|
+
def data_row_as_text(row_number)
|
32
|
+
data = {}
|
33
|
+
row = rows[row_number].find_all('td')
|
34
|
+
headers.map(&:text).each_with_index do |h, x|
|
35
|
+
data[h] = row[x].text
|
36
|
+
end
|
37
|
+
data
|
38
|
+
end
|
39
|
+
|
40
|
+
def data_column_as_text(name, exact_text: false)
|
41
|
+
columns(name, exact_text: exact_text).map(&:text)
|
42
|
+
end
|
43
|
+
|
44
|
+
# to click data that have/exact text in specific column
|
45
|
+
def click_data_in_column(col_name, text, exact_text: false)
|
46
|
+
columns(col_name, exact_text: exact_text).find { |d| d.text.send(comparison(exact_text), text) }.click
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'cucumber_helper/commons'
|
4
|
+
|
5
|
+
require 'cucumber_helper/web/hooks'
|
6
|
+
require 'cucumber_helper/web/helpers'
|
7
|
+
require 'cucumber_helper/web/table_helper'
|
8
|
+
|
9
|
+
require 'cucumber_helper/testrail/testrail'
|
10
|
+
require 'cucumber_helper/testrail/test_rail_integration'
|
11
|
+
|
12
|
+
require 'rest-client'
|
13
|
+
require 'json-schema'
|
14
|
+
require 'json'
|
15
|
+
require 'jsonpath'
|
16
|
+
|
17
|
+
include CucumberHelper::Web
|
18
|
+
include CucumberHelper::Web::Helpers
|
metadata
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: cucumber_helper
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.8
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Fikri Ramadhan
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2023-06-23 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: " It aims to maintain our minimize maintaining time for our repository.\n"
|
14
|
+
email: fikri.ramadhan@mekari.com
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files:
|
18
|
+
- README.md
|
19
|
+
files:
|
20
|
+
- README.md
|
21
|
+
- lib/cucumber_helper.rb
|
22
|
+
- lib/cucumber_helper/api.rb
|
23
|
+
- lib/cucumber_helper/api/helpers.rb
|
24
|
+
- lib/cucumber_helper/api/hooks.rb
|
25
|
+
- lib/cucumber_helper/api/response.rb
|
26
|
+
- lib/cucumber_helper/commons.rb
|
27
|
+
- lib/cucumber_helper/commons/command_helpers.rb
|
28
|
+
- lib/cucumber_helper/commons/test_data_helper.rb
|
29
|
+
- lib/cucumber_helper/commons/user_data_helper.rb
|
30
|
+
- lib/cucumber_helper/support.rb
|
31
|
+
- lib/cucumber_helper/support/env_helper.rb
|
32
|
+
- lib/cucumber_helper/support/hooks_helper.rb
|
33
|
+
- lib/cucumber_helper/testrail/test_rail_integration.rb
|
34
|
+
- lib/cucumber_helper/testrail/testrail.rb
|
35
|
+
- lib/cucumber_helper/version.rb
|
36
|
+
- lib/cucumber_helper/web.rb
|
37
|
+
- lib/cucumber_helper/web/helpers.rb
|
38
|
+
- lib/cucumber_helper/web/hooks.rb
|
39
|
+
- lib/cucumber_helper/web/table_helper.rb
|
40
|
+
homepage: https://rubygems.org/gems/mekari_testrail
|
41
|
+
licenses:
|
42
|
+
- CPAL-1.0
|
43
|
+
metadata:
|
44
|
+
homepage_uri: https://rubygems.org/gems/mekari_testrail
|
45
|
+
changelog_uri: https://rubygems.org/gems/mekari_testrail
|
46
|
+
source_code_uri: https://rubygems.org/gems/mekari_testrail
|
47
|
+
post_install_message:
|
48
|
+
rdoc_options: []
|
49
|
+
require_paths:
|
50
|
+
- lib
|
51
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
52
|
+
requirements:
|
53
|
+
- - ">="
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 3.0.0
|
56
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
61
|
+
requirements: []
|
62
|
+
rubygems_version: 3.3.26
|
63
|
+
signing_key:
|
64
|
+
specification_version: 4
|
65
|
+
summary: Helper for our cucumber repo
|
66
|
+
test_files: []
|