Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion lib/spark.ex
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ defmodule Spark do

# never seen a module with three behaviours in real life, let alone four.
{:behaviour, behaviours} when is_list(behaviours) ->
module in behaviours
behaviour in behaviours

_ ->
false
Expand Down
15 changes: 15 additions & 0 deletions test/spark_test.exs
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,19 @@ defmodule SparkTest do
use ExUnit.Case
doctest Spark
doctest Spark.Options

describe inspect(&Spark.implements_behaviour?/2) do
test "returns true if the module implements the specified behavior" do
defmodule TestModule do
@callback foo :: any()

@behaviour TestModule

def foo, do: :ok
end

refute Spark.implements_behaviour?(TestModule, AnyOtherModule)
assert Spark.implements_behaviour?(TestModule, TestModule)
end
end
end