Class: ProbeDockProbe::UID

Inherits:
Object
  • Object
show all
Defined in:
lib/probe_dock_ruby/uid.rb

Defined Under Namespace

Classes: Error

Constant Summary collapse

ENVIRONMENT_VARIABLE =
'PROBEDOCK_TEST_REPORT_UID'
OLD_ENVIRONMENT_VARIABLE =
'PROBE_DOCK_TEST_REPORT_UID'

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ UID

Returns a new instance of UID.



11
12
13
# File 'lib/probe_dock_ruby/uid.rb', line 11

def initialize options = {}
  @workspace = options[:workspace]
end

Instance Method Details

#clean_uidObject



35
36
37
38
39
# File 'lib/probe_dock_ruby/uid.rb', line 35

def clean_uid
  ENV.delete ENVIRONMENT_VARIABLE
  ENV.delete OLD_ENVIRONMENT_VARIABLE
  FileUtils.remove_entry_secure uid_file if @workspace and File.exists?(uid_file)
end

#generate_uid_to_envObject

Raises:



28
29
30
31
32
33
# File 'lib/probe_dock_ruby/uid.rb', line 28

def generate_uid_to_env
  raise Error.new("$PROBEDOCK_TEST_REPORT_UID is already defined") if env_var
  ENV[ENVIRONMENT_VARIABLE] = generate_uid
  ENV.delete OLD_ENVIRONMENT_VARIABLE
  ENV[ENVIRONMENT_VARIABLE]
end

#generate_uid_to_fileObject

Raises:



23
24
25
26
# File 'lib/probe_dock_ruby/uid.rb', line 23

def generate_uid_to_file
  raise Error.new("No workspace specified; cannot save test run UID") if !@workspace
  generate_uid.tap{ |uid| save_uid uid }
end

#load_uidObject



15
16
17
18
19
20
21
# File 'lib/probe_dock_ruby/uid.rb', line 15

def load_uid
  if env_var
    return env_var
  elsif @workspace
    current_uid
  end
end