Current section
Files
Jump to
Current section
Files
src/testcontainer@stack.erl
-module(testcontainer@stack).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/testcontainer/stack.gleam").
-export([new/2, name/1, run/2]).
-export_type([stack/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
-opaque stack(GXO) :: {stack,
binary(),
fun((testcontainer@network:network()) -> {ok, GXO} |
{error, testcontainer@error:error()})}.
-file("src/testcontainer/stack.gleam", 44).
?DOC(
" Builds a `Stack` with the given network name and a function that, given\n"
" the running `Network`, returns the typed output the test will consume.\n"
"\n"
" testcontainer.stack(\"app-test-net\", fn(net) { Ok(net) })\n"
).
-spec new(
binary(),
fun((testcontainer@network:network()) -> {ok, GXP} |
{error, testcontainer@error:error()})
) -> stack(GXP).
new(Network_name, Run) ->
{stack, Network_name, Run}.
-file("src/testcontainer/stack.gleam", 52).
?DOC(false).
-spec name(stack(any())) -> binary().
name(S) ->
erlang:element(2, S).
-file("src/testcontainer/stack.gleam", 57).
?DOC(false).
-spec run(stack(GXV), testcontainer@network:network()) -> {ok, GXV} |
{error, testcontainer@error:error()}.
run(S, Net) ->
(erlang:element(3, S))(Net).