lib/fennel/run/local_runner.ex

defmodule Fennel.Run.LocalRunner do
  alias Fennel.{Response}

  def call(_client, query, variables, schema) do
    Absinthe.run(query, schema, variables: variables)
    |> case do
      {:ok, %{errors: errors}} ->
        {:ok, %Response{errors: errors}}

      {:ok, %{data: data}} ->
        {:ok, %Response{data: data}}

      {:ok, %{errors: errors, data: data}} ->
        {:ok, %Response{errors: errors, data: data}}
    end
  end
end