Skip to content

Commit

Permalink
Emit boilerplate values for remediation_points.
Browse files Browse the repository at this point in the history
  • Loading branch information
lucasmazza committed Nov 16, 2016
1 parent 5e7cbe9 commit b184c52
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 3 deletions.
16 changes: 15 additions & 1 deletion lib/engine_credo/issue.ex
Expand Up @@ -8,9 +8,21 @@ defmodule EngineCredo.Issue do

@derive [Poison.Encoder]

@remediation_points %{
"Bug Risk" => 100_000,
"Clarity" => 50_000,
"Compatibility" => 50_000,
"Complexity" => 100_000,
"Duplication" => 100_000,
"Performance" => 50_000,
"Security" => 100_000,
"Style" => 50_000,
}

defstruct type: nil,
check_name: nil,
description: nil,
remediation_points: nil,
categories: [],
location: %{}

Expand All @@ -22,12 +34,14 @@ defmodule EngineCredo.Issue do
"""
def convert(issue, path_prefix \\ "") do
issue = update_in(issue.filename, &Path.relative_to(&1, path_prefix))
category = EngineCredo.IssueCategories.for_check(issue.check)

%EngineCredo.Issue{
type: "issue",
check_name: issue.check,
description: issue.message,
categories: EngineCredo.IssueCategories.for_check(issue.check),
remediation_points: @remediation_points[category],
categories: [category],
location: locations(issue)
}
end
Expand Down
4 changes: 2 additions & 2 deletions test/engine_credo/formatter_test.exs
Expand Up @@ -12,8 +12,8 @@ defmodule EngineCredo.FormatterTest do
|> Formatter.print
end)

first_issue = ~S({"type":"issue","location":{"path":"lib/design_issues.exs","lines":{"end":4,"begin":4}},"description":"Found a TODO tag in a comment: # TODO: issue","check_name":"Elixir.Credo.Check.Design.TagTODO","categories":["Bug Risk"]})
second_issue = ~S({"type":"issue","location":{"path":"lib/design_issues.exs","lines":{"end":5,"begin":5}},"description":"Found a FIXME tag in a comment: # FIXME: issue","check_name":"Elixir.Credo.Check.Design.TagFIXME","categories":["Bug Risk"]})
first_issue = ~S({"type":"issue","remediation_points":100000,"location":{"path":"lib/design_issues.exs","lines":{"end":4,"begin":4}},"description":"Found a TODO tag in a comment: # TODO: issue","check_name":"Elixir.Credo.Check.Design.TagTODO","categories":["Bug Risk"]})
second_issue = ~S({"type":"issue","remediation_points":100000,"location":{"path":"lib/design_issues.exs","lines":{"end":5,"begin":5}},"description":"Found a FIXME tag in a comment: # FIXME: issue","check_name":"Elixir.Credo.Check.Design.TagFIXME","categories":["Bug Risk"]})

expected_output = first_issue <> "\0\n" <> second_issue <> "\0\n"

Expand Down

0 comments on commit b184c52

Please sign in to comment.