Class: Evilution::Result::MutationResult

Inherits:
Object
  • Object
show all
Defined in:
lib/evilution/result/mutation_result.rb

Constant Summary collapse

STATUSES =
%i[killed survived timeout error neutral equivalent].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(mutation:, status:, duration: 0.0, killing_test: nil, test_command: nil, child_rss_kb: nil, memory_delta_kb: nil) ⇒ MutationResult

Returns a new instance of MutationResult.

Raises:

  • (ArgumentError)


11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/evilution/result/mutation_result.rb', line 11

def initialize(mutation:, status:, duration: 0.0, killing_test: nil, test_command: nil,
               child_rss_kb: nil, memory_delta_kb: nil)
  raise ArgumentError, "invalid status: #{status}" unless STATUSES.include?(status)

  @mutation = mutation
  @status = status
  @duration = duration
  @killing_test = killing_test
  @test_command = test_command
  @child_rss_kb = child_rss_kb
  @memory_delta_kb = memory_delta_kb
  freeze
end

Instance Attribute Details

#child_rss_kbObject (readonly)

Returns the value of attribute child_rss_kb.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def child_rss_kb
  @child_rss_kb
end

#durationObject (readonly)

Returns the value of attribute duration.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def duration
  @duration
end

#killing_testObject (readonly)

Returns the value of attribute killing_test.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def killing_test
  @killing_test
end

#memory_delta_kbObject (readonly)

Returns the value of attribute memory_delta_kb.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def memory_delta_kb
  @memory_delta_kb
end

#mutationObject (readonly)

Returns the value of attribute mutation.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def mutation
  @mutation
end

#statusObject (readonly)

Returns the value of attribute status.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def status
  @status
end

#test_commandObject (readonly)

Returns the value of attribute test_command.



8
9
10
# File 'lib/evilution/result/mutation_result.rb', line 8

def test_command
  @test_command
end

Instance Method Details

#equivalent?Boolean

Returns:

  • (Boolean)


45
46
47
# File 'lib/evilution/result/mutation_result.rb', line 45

def equivalent?
  status == :equivalent
end

#error?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/evilution/result/mutation_result.rb', line 37

def error?
  status == :error
end

#killed?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/evilution/result/mutation_result.rb', line 25

def killed?
  status == :killed
end

#neutral?Boolean

Returns:

  • (Boolean)


41
42
43
# File 'lib/evilution/result/mutation_result.rb', line 41

def neutral?
  status == :neutral
end

#survived?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/evilution/result/mutation_result.rb', line 29

def survived?
  status == :survived
end

#timeout?Boolean

Returns:

  • (Boolean)


33
34
35
# File 'lib/evilution/result/mutation_result.rb', line 33

def timeout?
  status == :timeout
end