class Mumukit::Bridge::ResponseType::Base

Public Instance Methods

global_status(test_status, expectation_status, request) click to toggle source
# File lib/mumukit/bridge/runner/response_type.rb, line 14
def global_status(test_status, expectation_status, request)
  if test_status.passed? && expectation_status.failed?
    request[:test].blank? ? :failed : :passed_with_warnings
  else
    test_status
  end
end
parse(response, request) click to toggle source
# File lib/mumukit/bridge/runner/response_type.rb, line 4
def parse(response, request)
  expectation_results = parse_expectation_results(response['expectationResults'] || [])
  feedback = response['feedback'] || ''
  result = response['out'] || ''

  build_hash(response).
      merge(feedback: feedback, expectation_results: expectation_results, result: result).
      update(status: expectation_results.fetch_mumuki_status(:result)) { |_, t, e| global_status(t, e, request) }
end
parse_expectation_results(results) click to toggle source
# File lib/mumukit/bridge/runner/response_type.rb, line 22
def parse_expectation_results(results)
  results.map do |it|
    {binding: it['expectation']['binding'],
     inspection: it['expectation']['inspection'],
     result: it['result'].to_mumuki_status}
  end
end