Module Mavryk_alpha_test_helpers.Incremental

type t
type incremental = t
val predecessor : incremental -> Block.t
val level : incremental -> int32

begin_construction ?mempool_mode predecessor uses Main.begin_validation_and_application to create a validation and application state on top of predecessor for the construction of a new block.

Optional arguments allow to override defaults:

  • ?mempool_mode:bool: when true, use Partial_construction mode. By default, it is false and the mode is Construction.

validate_operation ?expect_failure ?check_size i op tries to validate op in the validation state of i. If the validation succeeds, the function returns the incremental value with a validation state updated after the validate. Otherwise raise the error from the validation of op.

Optional arguments allow to override defaults:

  • ?expect_failure:(error list -> unit tzresult Lwt.t): validation of op is expected to fail and expect_failure should handle the error. In case validate does not fail and an expect_failure is provided, validate_operation fails.
  • ?check_size:bool: enable the check that an operation size should not exceed Constants_repr.max_operation_data_length. Enabled (set to true) by default.
val add_operation : ?expect_failure: (Mavryk_base.TzPervasives.error list -> unit Mavryk_base.TzPervasives.tzresult Lwt.t) -> ?expect_apply_failure: (Mavryk_base.TzPervasives.error list -> unit Mavryk_base.TzPervasives.tzresult Lwt.t) -> ?allow_manager_failure:bool -> ?check_size:bool -> incremental -> Mavryk_protocol_alpha.Protocol.Alpha_context.Operation.packed -> incremental Mavryk_base.TzPervasives.tzresult Lwt.t

add_operation ?expect_failure ?expect_apply_failure ?allow_manager_failure ?check_size i op tries to validate then apply op in the validation and application state of i. If the validation of op succeeds, the function returns the incremental value with a validation state updated after the application of op. Otherwise raise the error from the validation of op.

Optional arguments allow to override defaults:

  • parameter expect_failure

    validation of op is expected to fail and expect_failure should handle the error. In case validate does not fail and expect_failure is provided, validate_operation fails.

  • parameter expect_apply_failure

    application of op is expected to fail and expect_apply_failure should handle the errror. In case the application of op does not fail and expect_apply_failure is provided, add_operation fails.

  • parameter allow_manager_failure

    marks that manager operation failures after fee taken are ignored.

  • parameter check_size

    enable the check that an operation size should not exceed Constants_repr.max_operation_data_length. Enabled (set to true) by default.

finalize_block i creates a Block.t based on the protocol states and the operations contained in i. The function calls Main.finalize_application to compute a new context.

assert_validate_operation_fails expect_failure operation block calls begin_construction on top of block, then validate_operation with ~expect_failure.