Module: Mumukit::Templates::WithMetatestResults

Defined in:
lib/mumukit/templates/with_metatest_results.rb

Instance Method Summary collapse

Instance Method Details

#compile_file_content(request) ⇒ Object



2
3
4
5
# File 'lib/mumukit/templates/with_metatest_results.rb', line 2

def compile_file_content(request)
  @examples = compile_metatest_examples(request)
  compile_metatest_file_content(request)
end

#compile_metatest_examples(request) ⇒ Object



7
8
9
# File 'lib/mumukit/templates/with_metatest_results.rb', line 7

def compile_metatest_examples(request)
  YAML.load(request.test).deep_symbolize_keys[:examples]
end

#post_process_file(file, result, status) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/mumukit/templates/with_metatest_results.rb', line 11

def post_process_file(file, result, status)
  if status == :passed
    run_metatest! to_metatest_compilation(result), @examples
  else
    post_process_unsuccessful_result(file, result, status)
  end
rescue JSON::ParserError
  [result, :errored]
end

#post_process_unsuccessful_result(_file, result, status) ⇒ Object



21
22
23
# File 'lib/mumukit/templates/with_metatest_results.rb', line 21

def post_process_unsuccessful_result(_file, result, status)
  [result, status]
end

#to_metatest_compilation(result) ⇒ Object



25
26
27
# File 'lib/mumukit/templates/with_metatest_results.rb', line 25

def to_metatest_compilation(result)
  JSON.pretty_parse(result).deep_symbolize_keys
end