simmer 2.0.0.pre.alpha.1 → 4.0.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.
@@ -1,83 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- #
4
- # Copyright (c) 2020-present, Blue Marble Payroll, LLC
5
- #
6
- # This source code is licensed under the MIT license found in the
7
- # LICENSE file in the root directory of this source tree.
8
- #
9
-
10
- module Simmer
11
- class Suite
12
- # Understands how to write a SessionResult instance to disk.
13
- class Reporter
14
- DATA_FILE = 'data.yaml'
15
- PDI_OUT_FILE = 'pdi_out.txt'
16
-
17
- def initialize(session_result)
18
- raise ArgumentError, 'session_result is required' unless session_result
19
-
20
- @session_result = session_result
21
-
22
- freeze
23
- end
24
-
25
- def write!(dir)
26
- dir = setup_directory(dir)
27
-
28
- IO.write(data_path(dir), session_result.to_h.to_yaml)
29
-
30
- pdi_out_file = File.open(pdi_out_path(dir), 'w')
31
-
32
- write_part(session_result.runner_results, pdi_out_file)
33
-
34
- pdi_out_file.close
35
-
36
- self
37
- end
38
-
39
- private
40
-
41
- attr_reader :session_result
42
-
43
- def data_path(dir)
44
- File.join(dir, DATA_FILE)
45
- end
46
-
47
- def pdi_out_path(dir)
48
- File.join(dir, PDI_OUT_FILE)
49
- end
50
-
51
- def setup_directory(dir)
52
- File.expand_path(dir).tap do |expanded_dir|
53
- FileUtils.mkdir_p(expanded_dir)
54
- end
55
- end
56
-
57
- def write_part(runner_results, pdi_out_file)
58
- runner_results.each do |runner_result|
59
- name = runner_result.name
60
- runner_id = runner_result.id
61
- out_contents = runner_result.spoon_client_result.execution_result.out
62
-
63
- write_block(pdi_out_file, name, runner_id, out_contents)
64
- end
65
-
66
- nil
67
- end
68
-
69
- def write_block(file, name, runner_id, contents)
70
- hyphens = '-' * 80
71
-
72
- file.write("#{hyphens}\n")
73
- file.write("Name: #{name}\n")
74
- file.write("Runner ID: #{runner_id}\n")
75
- file.write("#{hyphens}\n")
76
- file.write("#{contents}\n")
77
- file.write("\n")
78
-
79
- nil
80
- end
81
- end
82
- end
83
- end