-module(startest). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([describe/2, it/2, xit/2, run/1, default_config/0]). -spec describe(binary(), list(startest@test_tree:test_tree())) -> startest@test_tree:test_tree(). describe(Name, Suite) -> {suite, Name, Suite}. -spec it(binary(), fun(() -> nil)) -> startest@test_tree:test_tree(). it(Name, Body) -> _pipe = {test, Name, Body, false}, {test, _pipe}. -spec xit(binary(), fun(() -> nil)) -> startest@test_tree:test_tree(). xit(Name, _) -> _pipe = {test, Name, fun() -> nil end, true}, {test, _pipe}. -spec run(startest@config:config()) -> nil. run(Config) -> startest@cli:run(Config). -spec default_config() -> startest@config:config(). default_config() -> _assert_subject = gleam@regex:from_string(<<"_tests$"/utf8>>), {ok, Discover_describe_tests_pattern} = case _assert_subject of {ok, _} -> _assert_subject; _assert_fail -> erlang:error(#{gleam_error => let_assert, message => <<"Assertion pattern match failed"/utf8>>, value => _assert_fail, module => <<"startest"/utf8>>, function => <<"default_config"/utf8>>, line => 41}) end, _assert_subject@1 = gleam@regex:from_string(<<"_test$"/utf8>>), {ok, Discover_standalone_tests_pattern} = case _assert_subject@1 of {ok, _} -> _assert_subject@1; _assert_fail@1 -> erlang:error(#{gleam_error => let_assert, message => <<"Assertion pattern match failed"/utf8>>, value => _assert_fail@1, module => <<"startest"/utf8>>, function => <<"default_config"/utf8>>, line => 42}) end, {config, [startest@reporters@default:new()], Discover_describe_tests_pattern, Discover_standalone_tests_pattern, [], none}.