diff --git a/app/models/linter_check_run.rb b/app/models/linter_check_run.rb index c53ce92c..3c84881f 100644 --- a/app/models/linter_check_run.rb +++ b/app/models/linter_check_run.rb @@ -6,7 +6,7 @@ class LinterCheckRun < ApplicationRecord belongs_to :file, class_name: 'CodeOcean::File' def self.create_from(testrun, assessment) - assessment[:detailed_linter_results].each do |linter_result| + assessment[:detailed_linter_results]&.each do |linter_result| check = LinterCheck.find_or_create_by!(code: linter_result[:code]) do |new_check| new_check.name = linter_result[:name] new_check.severity = linter_result[:severity] diff --git a/lib/py_lint_adapter.rb b/lib/py_lint_adapter.rb index e3e68681..b848bf4f 100644 --- a/lib/py_lint_adapter.rb +++ b/lib/py_lint_adapter.rb @@ -44,6 +44,8 @@ class PyLintAdapter < TestingFrameworkAdapter # The message will be translated once the results were stored in the database # See SubmissionScoring for actual function call + return assessment unless assessment[:detailed_linter_results].present? + assessment[:detailed_linter_results].map! do |message| severity = message[:severity] name = message[:name]