View Source Enfiladex (enfiladex v0.1.7)

Enfiladex is the drop-in Common Test wrapper for ExUnit. It also exposes functions to run some code on a freshly started remote node.

All one needs to evaluate the code on one or more of connected nodes, would be to call a function exported from this module.

Known config parameters:

  • transfer_config (default: true) — whether the configuration of application(s) should be transferred to the started nodes, accepts boolean() | atom() where atom() is the application name besides already loaded the config is to be transferred for, normally it’s the main application configuration
  • start_applications (default: true) — boolean() | atom() specifying whether the application(s) should have been starter on the spawned node(s)

  • nodes (default: 3) — for multi_peer/3, the number of nodes to start

To use functions from this module with ExUnit tests, one needs a named node. Either run mix test in a named environment, or use mix enfiladex.ex_unit task.

Summary

Types

The callback to be called on the result on the remote node(s)

The function to be passed for execution on the remote node(s)

Functions

Executes the function given as first argument on several newly spawned nodes, with options passed as config argument.

Executes the function given as first argument on the newly spawned node, with options passed as config argument.

Types

The callback to be called on the result on the remote node(s)

Link to this type

callback_return_value()

View Source
@type callback_return_value() :: any()
@type callee() ::
  {module(), atom(), [term()]}
  | (-> callee_return_value())
  | (node() -> callee_return_value())
  | (:peer.server_ref(), node() -> callee_return_value())

The function to be passed for execution on the remote node(s)

@type callee_return_value() :: any()

Functions

Link to this function

multi_peer(fun, callback \\ [], config \\ [])

View Source
@spec multi_peer(callee(), callback() | keyword(), keyword()) :: callee_return_value()

Executes the function given as first argument on several newly spawned nodes, with options passed as config argument.

It would call Callback(Result) for each result on each node, if callback passed before stopping the peer. The order is not guaranteed.

Link to this function

peer(fun, callback \\ [], config \\ [])

View Source
@spec peer(callee(), callback() | keyword(), keyword()) :: callee_return_value()

Executes the function given as first argument on the newly spawned node, with options passed as config argument.

It would call Callback(Result) if callback passed before stopping the peer.