Packages
espec
1.8.3
1.10.0
1.9.2
1.9.1
1.9.0
1.8.3
1.8.2
1.8.1
1.8.0
1.7.0
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.5.1
1.5.0
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.4
1.3.3
1.3.2
1.3.1
1.3.0
1.2.2
1.2.1
1.2.0
1.1.2
1.1.1
1.1.0
1.0.1
1.0.0
0.8.28
0.8.27
0.8.26
0.8.25
0.8.24
0.8.23
0.8.22
0.8.21
0.8.20
0.8.19
0.8.18
0.8.17
0.8.16
0.8.15
0.8.14
0.8.13
0.8.12
0.8.11
0.8.10
0.8.9
0.8.8
0.8.7
0.8.6
0.8.5
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
0.4.2
0.4.1
0.4.0
0.3.7
0.3.5
0.3.0
0.2.0
0.1.0
BDD testing framework for Elixir inspired by RSpec.
Current section
Files
Jump to
Current section
Files
lib/mix/tasks/init.ex
defmodule Mix.Tasks.Espec.Init do
use Mix.Task
import Mix.Generator
@preferred_cli_env :test
@shortdoc "Create spec/spec_helper.exs"
@moduledoc """
Creates necessary files.
This tasks creates `spec/spec_helper.exs`
"""
@spec_folder "spec"
@spec_helper "spec_helper.exs"
@shared_spec_folder "shared"
@shared_spec_example "example_spec.exs"
def run(_args) do
create_directory(@spec_folder)
create_file(Path.join(@spec_folder, @spec_helper), spec_helper_template(nil))
shared_specs = Path.join(@spec_folder, @shared_spec_folder)
create_directory(shared_specs)
create_file(Path.join(shared_specs, @shared_spec_example), shared_spec_example_template(nil))
end
embed_template(:spec_helper, """
ESpec.configure fn(config) ->
config.before fn(tags) ->
{:shared, hello: :world, tags: tags}
end
config.finally fn(_shared) ->
:ok
end
end
""")
embed_template(:shared_spec_example, """
defmodule ExampleSharedSpec do
use ESpec, shared: true
# This shared spec will always be included!
end
""")
end