Class: Mumukit::Templates::TryHook

Inherits:
FileHook show all
Defined in:
lib/mumukit/templates/try_hook.rb

Instance Attribute Summary

Attributes inherited from FileHook

#request

Attributes inherited from Hook

#config

Instance Method Summary collapse

Methods inherited from FileHook

#cleanup_raw_result, isolated, line_number_offset, mashup, #masked_tempfile_path, metatested, #run!, structured, with_error_patterns

Methods included from WithTempfile

#create_tempfile, #mask_tempfile_references, #tempfile_extension, #with_tempfile, #write_tempdir!, #write_tempfile!

Methods inherited from Hook

#env, #initialize, #logger, #method_missing, #should_forward_to_config?, stateful_through, #t

Methods included from WithContentType

#content_type

Constructor Details

This class inherits a constructor from Mumukit::Hook

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Mumukit::Hook

Instance Method Details

#compile(request) ⇒ Object



3
4
5
6
7
8
9
# File 'lib/mumukit/templates/try_hook.rb', line 3

def compile(request)
  request_goal = request.goal.with_indifferent_access

  @goal = {postconditions: [[request_goal[:kind], request_goal]]}
  @checker = Metatest::InteractiveChecker.new request
  super request
end

#post_process_file(file, result, status) ⇒ Object



11
12
13
14
15
# File 'lib/mumukit/templates/try_hook.rb', line 11

def post_process_file(file, result, status)
  structured_results = to_structured_results(file, result, status)
  check_results = @checker.check structured_results, @goal
  [check_results[2], check_results[1], structured_results[:query]]
end