Module: Lambdatest::Sdk::Utils
- Defined in:
- lib/lambdatest/sdk/utils.rb,
lib/lambdatest/sdk/utils/logger.rb,
lib/lambdatest/sdk/utils/version.rb,
lib/lambdatest/sdk/utils/constants.rb
Constant Summary collapse
- VERSION =
"1.0.2".freeze
Class Method Summary collapse
- .fetch_dom_serializer ⇒ Object
- .get_logger(pkgName) ⇒ Object
- .get_pkg_name ⇒ Object
- .get_smart_ui_server_address ⇒ Object
- .is_smartui_enabled? ⇒ Boolean
- .log_level ⇒ Object
- .make_api_call(endpoint, method: :get, data: nil) ⇒ Object
- .post_snapshot(snapshot, pkg_name, options = {}) ⇒ Object
Class Method Details
.fetch_dom_serializer ⇒ Object
25 26 27 |
# File 'lib/lambdatest/sdk/utils.rb', line 25 def self.fetch_dom_serializer make_api_call('/domserializer', method: :get,data: nil) end |
.get_logger(pkgName) ⇒ Object
27 28 29 30 31 32 |
# File 'lib/lambdatest/sdk/utils/logger.rb', line 27 def self.get_logger(pkgName) logger = Logger.new(STDOUT) logger.level = log_level logger.progname = pkgName logger end |
.get_pkg_name ⇒ Object
5 6 7 |
# File 'lib/lambdatest/sdk/utils/constants.rb', line 5 def self.get_pkg_name "@lambdatest/lambdatest-sdk-utils".freeze end |
.get_smart_ui_server_address ⇒ Object
9 10 11 12 13 14 |
# File 'lib/lambdatest/sdk/utils/constants.rb', line 9 def self.get_smart_ui_server_address unless ENV.fetch('SMARTUI_SERVER_ADDRESS') raise 'SmartUI server address not found' end ENV.fetch('SMARTUI_SERVER_ADDRESS') end |
.is_smartui_enabled? ⇒ Boolean
15 16 17 18 19 20 21 22 23 |
# File 'lib/lambdatest/sdk/utils.rb', line 15 def self.is_smartui_enabled? begin make_api_call("/healthcheck", method: :get, data: nil) return true rescue => exception @logger.debug("#{exception.}") return false end end |
.log_level ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/lambdatest/sdk/utils/logger.rb', line 7 def self.log_level if ENV['LT_SDK_DEBUG'] == 'true' Logger::DEBUG else log_level_str = ENV.fetch('LT_SDK_LOG_LEVEL', 'info').downcase case log_level_str when 'debug' Logger::DEBUG when 'warning' Logger::WARN when 'error' Logger::ERROR when 'critical' Logger::FATAL else Logger::INFO end end end |
.make_api_call(endpoint, method: :get, data: nil) ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/lambdatest/sdk/utils.rb', line 41 def self.make_api_call(endpoint, method: :get, data: nil) uri = URI("#{get_smart_ui_server_address}#{endpoint}") response = case method when :get Net::HTTP.get_response(uri) when :post Net::HTTP.post(uri, data, 'Content-Type' => 'application/json') end unless response.is_a? Net::HTTPSuccess raise StandardError, "Failed with HTTP error code: #{response.code}" end response.is_a?(Net::HTTPSuccess) ? response.body : nil end |
.post_snapshot(snapshot, pkg_name, options = {}) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/lambdatest/sdk/utils.rb', line 29 def self.post_snapshot(snapshot,pkg_name,={}) uri = URI("#{get_smart_ui_server_address}/snapshot") data = JSON.generate({ snapshot: { **snapshot, options: }, testType: pkg_name }) make_api_call('/snapshot', method: :post, data: data) end |