Class: RSpec::Hermetic::CandidateReport
- Inherits:
-
Object
- Object
- RSpec::Hermetic::CandidateReport
- Defined in:
- lib/rspec/hermetic/candidate_report.rb,
sig/rspec/hermetic.rbs
Instance Method Summary collapse
- #append(candidate) ⇒ Object
-
#initialize(path) ⇒ CandidateReport
constructor
A new instance of CandidateReport.
- #read ⇒ Array[Hash[String, untyped]]
Constructor Details
#initialize(path) ⇒ CandidateReport
Returns a new instance of CandidateReport.
9 10 11 |
# File 'lib/rspec/hermetic/candidate_report.rb', line 9 def initialize(path) @path = path end |
Instance Method Details
#append(candidate) ⇒ Object
13 14 15 16 17 |
# File 'lib/rspec/hermetic/candidate_report.rb', line 13 def append(candidate) candidates = read candidates << candidate write(candidates) end |
#read ⇒ Array[Hash[String, untyped]]
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/rspec/hermetic/candidate_report.rb', line 19 def read return [] unless @path && File.exist?(@path) content = File.read(@path) return [] if content.strip.empty? parsed = JSON.parse(content) parsed.is_a?(Array) ? parsed : [parsed] rescue JSON::ParserError read_json_lines end |