zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

assertions.ex (1252B)


      1 defmodule Credo.Test.Assertions do
      2   @moduledoc false
      3 
      4   import ExUnit.Assertions
      5 
      6   def assert_trigger(issue, trigger)
      7 
      8   def assert_trigger([issue], trigger), do: [assert_trigger(issue, trigger)]
      9 
     10   def assert_trigger(issue, trigger) do
     11     assert trigger == issue.trigger
     12 
     13     issue
     14   end
     15 
     16   def refute_issues(issues) do
     17     assert [] == issues,
     18            "There should be no issues, got #{Enum.count(issues)}: #{to_inspected(issues)}"
     19 
     20     issues
     21   end
     22 
     23   def assert_issue(issues, callback \\ nil) do
     24     refute Enum.empty?(issues), "There should be one issue, got none."
     25 
     26     assert Enum.count(issues) == 1,
     27            "There should be only 1 issue, got #{Enum.count(issues)}: #{to_inspected(issues)}"
     28 
     29     if callback do
     30       issues |> List.first() |> callback.()
     31     end
     32 
     33     issues
     34   end
     35 
     36   def assert_issues(issues, callback \\ nil) do
     37     assert Enum.count(issues) > 0, "There should be multiple issues, got none."
     38 
     39     assert Enum.count(issues) > 1,
     40            "There should be more than one issue, got: #{to_inspected(issues)}"
     41 
     42     if callback, do: callback.(issues)
     43 
     44     issues
     45   end
     46 
     47   def to_inspected(value) do
     48     value
     49     |> Inspect.Algebra.to_doc(%Inspect.Opts{})
     50     |> Inspect.Algebra.format(50)
     51     |> Enum.join("")
     52   end
     53 end