Class: QAT::Reporter::Opentest::Publisher::Hosted

Inherits:
Base
  • Object
show all
Defined in:
lib/qat/reporter/opentest/publisher/hosted.rb

Instance Attribute Summary

Attributes inherited from Base

#actor_tags, #base_url, #bearer, #environment, #evidences, #session_id, #session_label, #tests

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from QAT::Reporter::Opentest::Publisher::Base

Instance Method Details

#auth_tokenObject



11
12
13
14
15
16
# File 'lib/qat/reporter/opentest/publisher/hosted.rb', line 11

def auth_token
	return @auth_token if @auth_token
	@auth_token = {
		Authorization: "Bearer #{bearer}"
	}
end

#create_sessionObject

Create a session in openTest



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/qat/reporter/opentest/publisher/hosted.rb', line 20

def create_session
	payload = {
		actorTags:     actor_tags,
		environment:   environment,
		maxIterations: 1,
		sessionLabel:  session_label,
		tests:         tests
	}
	headers = {
		'Content-Type': 'application/json',
		'X-Username':   'qat'
	}.merge(auth_token)
	
	puts payload.to_json
	Client.new(base_url).post("/api/session?showImages=#{evidences}", payload.to_json, headers)
end

#session_detailsObject

Get session details by sessionID



39
40
41
42
# File 'lib/qat/reporter/opentest/publisher/hosted.rb', line 39

def session_details
	headers = { 'Content-Type': 'application/json' }.merge(auth_token)
	Client.new(base_url).get("/api/session/#{session_id}", headers)
end

#session_logs(format) ⇒ Object

Get session log by sessionID



46
47
48
49
# File 'lib/qat/reporter/opentest/publisher/hosted.rb', line 46

def session_logs(format)
	headers = { 'Content-Type': 'application/json' }.merge(auth_token)
	Client.new(base_url).get("/api/session/#{session_id}/log?format=#{format}", headers)
end