Module Mavryk_alpha_test_helpers.Consensus_helpers

type mode =
  1. | Application
  2. | Construction
  3. | Mempool
val show_mode : mode -> string
type kind =
  1. | Preattestation
  2. | Attestation

Craft an attestation or preattestation, and bake a block containing it (in application or construction modes) or inject it into a mempool. When error is None, check that it succeeds, otherwise check that it fails as specified by error.

By default, the (pre)attestation is for the first slot and is signed by the delegate that owns this slot. Moreover, the operation points to the given attested_block: in other words, it has that block's level, round, payload hash, and its branch is the predecessor of that block. Optional arguments allow to override these default parameters.

The predecessor is used as the predecessor of the baked block or the head of the mempool. When it is not provided, we use the attested_block for this.

val test_consensus_op_for_next : genesis:Block.t -> kind:[< `Attestation | `Preattestation ] -> next:[< `Level | `Round ] -> (unit, Mavryk_base.TzPervasives.tztrace) Stdlib.result Lwt.t