rudra 1.0.17 → 1.1.0
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/lib/rudra.rb +18 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b59cfa6497e4560d80369dc076df45638ec043abe069b5f6665e5749aefdef87
|
4
|
+
data.tar.gz: 51e97a957330ffce97411d9f3ad40e01a4be439cc677306d5507ae0136577beb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f7984dccb05ea056c716dd533c5d4662e83ea8711c62a2fc3f02f95d0d7a795914d16c2ceacd2ef2cf1eff26374ae9c8ed795a14797186f696356f3c02c687bf
|
7
|
+
data.tar.gz: 4bfb07ee8abe3ce212c85ca19ab052fb134b47c42e225e7160ea6463795e425e22a594998d2e89365709a3d2b1495a2c5cbbb0894b64bd1bfc073a190519ef8f
|
data/lib/rudra.rb
CHANGED
@@ -11,9 +11,10 @@ require 'webdrivers'
|
|
11
11
|
# @attr_reader [Boolean] headless Headless mode for Google Chrome
|
12
12
|
# @attr_reader [String] window_size Chrome window size when headless
|
13
13
|
# @attr_reader [String] screen_dir The screenshot directory of save_screenshot
|
14
|
-
# @attr_reader [String] log_prefix Prefix for logging
|
14
|
+
# @attr_reader [String] log_prefix Prefix for logging descriptions and methods
|
15
15
|
# @attr_reader [Integer] timeout The driver timeout
|
16
|
-
# @attr_reader [Boolean] verbose Verbose mode
|
16
|
+
# @attr_reader [Boolean] verbose Turn on/off Verbose mode
|
17
|
+
# @attr_reader [Boolean] silent Turn off Turn on/off descriptions
|
17
18
|
class Rudra
|
18
19
|
# Supported Browsers
|
19
20
|
BROWSERS = %i[chrome firefox ie safari].freeze
|
@@ -28,12 +29,12 @@ class Rudra
|
|
28
29
|
ATTRIBUTES = %i[
|
29
30
|
browser driver install_dir locale
|
30
31
|
headless window_size screen_dir
|
31
|
-
log_prefix timeout verbose
|
32
|
+
log_prefix timeout verbose silent
|
32
33
|
].freeze
|
33
34
|
|
34
35
|
attr_reader :browser, :driver, :install_dir, :locale,
|
35
36
|
:headless, :window_size, :screen_dir,
|
36
|
-
:log_prefix, :timeout, :verbose
|
37
|
+
:log_prefix, :timeout, :verbose, :silent
|
37
38
|
|
38
39
|
# Initialize an instance of Rudra
|
39
40
|
# @param [Hash] options the options to initialize Rudra
|
@@ -45,9 +46,10 @@ class Rudra
|
|
45
46
|
# @option options [Boolean] :headless (false) headless mode
|
46
47
|
# @option options [String] :window_size ('1280,720') window size when headless
|
47
48
|
# @option options [String] :screen_dir ('./screens/') the location of screenshots
|
48
|
-
# @option options [String] :log_prefix (' - ') prefix for logging
|
49
|
+
# @option options [String] :log_prefix (' - ') prefix for logging descriptions and methods
|
49
50
|
# @option options [Integer] :timeout (30) implicit_wait timeout
|
50
|
-
# @option options [Boolean] :verbose (
|
51
|
+
# @option options [Boolean] :verbose (false) Turn on/off verbose mode
|
52
|
+
# @option options [Boolean] :silent (false) Turn on/off descriptions
|
51
53
|
def initialize(options = {})
|
52
54
|
self.browser = options.fetch(:browser, :chrome)
|
53
55
|
self.install_dir = options.fetch(:install_dir, './webdrivers/')
|
@@ -56,7 +58,8 @@ class Rudra
|
|
56
58
|
self.window_size = options.fetch(:window_size, '1280,720')
|
57
59
|
self.screen_dir = options.fetch(:screen_dir, './screens/')
|
58
60
|
self.log_prefix = options.fetch(:log_prefix, ' - ')
|
59
|
-
self.verbose = options.fetch(:verbose,
|
61
|
+
self.verbose = options.fetch(:verbose, false)
|
62
|
+
self.silent = options.fetch(:silent, false)
|
60
63
|
self.main_label = caller_locations(2, 1).first.label
|
61
64
|
|
62
65
|
initialize_driver
|
@@ -265,6 +268,12 @@ class Rudra
|
|
265
268
|
driver.page_source
|
266
269
|
end
|
267
270
|
|
271
|
+
# Print description in the console
|
272
|
+
# @param [String] description description to show
|
273
|
+
def puts(description)
|
274
|
+
$stdout.puts "#{log_prefix}#{description.chomp}" unless silent
|
275
|
+
end
|
276
|
+
|
268
277
|
# Refresh the current pagef
|
269
278
|
def refresh
|
270
279
|
driver.navigate.refresh
|
@@ -1069,7 +1078,7 @@ class Rudra
|
|
1069
1078
|
end
|
1070
1079
|
|
1071
1080
|
(instance_methods - superclass.instance_methods).map do |method_name|
|
1072
|
-
next if private_method_defined?(method_name) || ATTRIBUTES.include?(method_name)
|
1081
|
+
next if private_method_defined?(method_name) || ATTRIBUTES.include?(method_name) || method_name == :puts
|
1073
1082
|
|
1074
1083
|
original_method = instance_method(method_name)
|
1075
1084
|
|
@@ -1082,7 +1091,7 @@ class Rudra
|
|
1082
1091
|
private
|
1083
1092
|
|
1084
1093
|
attr_accessor :main_label
|
1085
|
-
attr_writer :window_size
|
1094
|
+
attr_writer :silent, :window_size
|
1086
1095
|
|
1087
1096
|
def browser=(brw)
|
1088
1097
|
unless BROWSERS.include?(brw)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rudra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Aaron Chen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-06-
|
11
|
+
date: 2020-06-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: yard
|