mina_p2p_messages/v2/dummy/
mod.rs

1use std::sync::Arc;
2
3use binprot::BinProtRead;
4
5use super::{MinaBaseProofStableV2, TransactionSnarkProofStableV2};
6
7/// Value of `Proof.transaction_dummy` when we run `dune runtest src/lib/staged_ledger -f`
8/// The file was generated this way:
9///
10/// let dummy = Proof.transaction_dummy in
11///
12/// let buf = Bigstring.create (Proof.Stable.V2.bin_size_t dummy) in
13/// ignore (Proof.Stable.V2.bin_write_t buf ~pos:0 dummy : int) ;
14/// let bytes = Bigstring.to_bytes buf in
15///
16/// let explode s = List.init (String.length s) ~f:(fun i -> String.get s i) in
17///
18/// let s = (String.concat ~sep:"," (List.map (explode (Bytes.to_string bytes)) ~f:(fun b -> string_of_int (Char.to_int b)))) in
19///
20/// Core.Printf.eprintf !"dummy proof= %{sexp: Proof.t}\n%!" dummy;
21/// Core.Printf.eprintf !"dummy proof= %s\n%!" s;
22pub fn dummy_transaction_proof() -> Arc<TransactionSnarkProofStableV2> {
23    lazy_static::lazy_static! {
24        static ref DUMMY_PROOF: Arc<TransactionSnarkProofStableV2> = {
25            let bytes = include_bytes!("dummy_transaction_proof.bin");
26            TransactionSnarkProofStableV2::binprot_read(&mut bytes.as_slice())
27                .unwrap()
28                .into()
29        };
30    }
31
32    DUMMY_PROOF.clone()
33}
34
35pub fn sideloaded_transaction_proof() -> Arc<TransactionSnarkProofStableV2> {
36    lazy_static::lazy_static! {
37        static ref DUMMY_PROOF: Arc<TransactionSnarkProofStableV2> = {
38            let bytes = include_bytes!("sideloaded_proof.bin");
39            TransactionSnarkProofStableV2::binprot_read(&mut bytes.as_slice())
40                .unwrap()
41                .into()
42        };
43    }
44
45    DUMMY_PROOF.clone()
46}
47
48/// Value of `Proof.blockchain_dummy`
49pub fn dummy_blockchain_proof() -> Arc<MinaBaseProofStableV2> {
50    lazy_static::lazy_static! {
51        static ref DUMMY_PROOF: Arc<MinaBaseProofStableV2> = {
52            let bytes = include_bytes!("dummy_blockchain_proof.bin");
53            MinaBaseProofStableV2::binprot_read(&mut bytes.as_slice())
54                .unwrap()
55                .into()
56        };
57    }
58
59    DUMMY_PROOF.clone()
60}