mix.exs

defmodule Muzak.MixProject do
  use Mix.Project

  def project do
    [
      app: :muzak,
      version: "0.1.1",
      elixir: "~> 1.10",
      elixirc_paths: elixirc_paths(Mix.env()),
      start_permanent: Mix.env() == :prod,
      deps: deps(),
      docs: docs(),
      description: "A basic mutation testing library for Elixir applications",
      package: [
        licenses: [],
        links: [],
        files: ["lib", "mix.exs"]
      ]
    ]
  end

  # Specifies which paths to compile per environment.
  defp elixirc_paths(:test), do: ["lib", "test/support"]
  defp elixirc_paths(_), do: ["lib"]

  # Run "mix help compile.app" to learn about applications.
  def application, do: [extra_applications: [:logger]]

  defp docs() do
    [
      main: "muzak",
      api_reference: false,
      extras: [
        "docs/muzak.md": [filename: "muzak", title: "Muzak"],
        "docs/mutators.md": [filename: "mutators", title: "Included mutators"],
        "docs/why_mutation_testing.md": [
          filename: "what_is_mutation_testing",
          title: "What is mutation testing?"
        ]
      ],
      authors: ["Devon Estes"]
    ]
  end

  # Run "mix help deps" to learn about dependencies.
  defp deps do
    [
      {:assertions, ">= 0.0.0", only: :test, optional: true},
      {:ex_doc, ">= 0.0.0", only: :dev}
    ]
  end
end