Skip to content

Commit 97719c2

Browse files
committed
Add doc examples
1 parent 4b4f5a0 commit 97719c2

File tree

1 file changed

+60
-0
lines changed

1 file changed

+60
-0
lines changed

mithril-common/src/test_utils/cardano_transactions_builder.rs

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,66 @@
11
use crate::entities::{BlockRange, CardanoTransaction};
22

33
/// Builder to easily build transactions with consistent values.
4+
///
5+
/// Note: the names generated for the transaction hashes and block hashes are not meaningful.
6+
///
7+
/// # Example 'build_transactions'
8+
///
9+
/// ```
10+
/// use mithril_common::entities::CardanoTransaction;
11+
/// use mithril_common::test_utils::CardanoTransactionsBuilder;
12+
///
13+
/// let txs = CardanoTransactionsBuilder::new()
14+
/// .max_transactions_per_block(3)
15+
/// .blocks_per_block_range(2)
16+
/// .build_transactions(8);
17+
///
18+
/// assert_eq!(8, txs.len());
19+
/// assert_eq!(
20+
/// vec![
21+
/// CardanoTransaction::new("tx-hash-0-100", 0, 100, "block-hash-0", 1),
22+
/// CardanoTransaction::new("tx-hash-0-101", 0, 101, "block-hash-0", 2),
23+
/// CardanoTransaction::new("tx-hash-0-102", 0, 102, "block-hash-0", 3),
24+
/// CardanoTransaction::new("tx-hash-1-103", 1, 103, "block-hash-1", 4),
25+
/// CardanoTransaction::new("tx-hash-1-104", 1, 104, "block-hash-1", 5),
26+
/// CardanoTransaction::new("tx-hash-1-105", 1, 105, "block-hash-1", 6),
27+
/// CardanoTransaction::new("tx-hash-15-106", 15, 106, "block-hash-15", 7),
28+
/// CardanoTransaction::new("tx-hash-15-107", 15, 107, "block-hash-15", 8)
29+
/// ],
30+
/// txs
31+
/// );
32+
/// ```
33+
///
34+
/// # Example 'build_block_ranges'
35+
///
36+
/// ```
37+
/// use mithril_common::entities::CardanoTransaction;
38+
/// use mithril_common::test_utils::CardanoTransactionsBuilder;
39+
///
40+
/// let txs = CardanoTransactionsBuilder::new()
41+
/// .max_transactions_per_block(3)
42+
/// .blocks_per_block_range(2)
43+
/// .build_block_ranges(2);
44+
///
45+
/// assert_eq!(3 * 2 * 2, txs.len());
46+
/// assert_eq!(
47+
/// vec![
48+
/// CardanoTransaction::new("tx-hash-0-100", 0, 100, "block-hash-0", 1),
49+
/// CardanoTransaction::new("tx-hash-0-101", 0, 101, "block-hash-0", 2),
50+
/// CardanoTransaction::new("tx-hash-0-102", 0, 102, "block-hash-0", 3),
51+
/// CardanoTransaction::new("tx-hash-1-103", 1, 103, "block-hash-1", 4),
52+
/// CardanoTransaction::new("tx-hash-1-104", 1, 104, "block-hash-1", 5),
53+
/// CardanoTransaction::new("tx-hash-1-105", 1, 105, "block-hash-1", 6),
54+
/// CardanoTransaction::new("tx-hash-15-106", 15, 106, "block-hash-15", 7),
55+
/// CardanoTransaction::new("tx-hash-15-107", 15, 107, "block-hash-15", 8),
56+
/// CardanoTransaction::new("tx-hash-15-108", 15, 108, "block-hash-15", 9),
57+
/// CardanoTransaction::new("tx-hash-16-109", 16, 109, "block-hash-16", 10),
58+
/// CardanoTransaction::new("tx-hash-16-110", 16, 110, "block-hash-16", 11),
59+
/// CardanoTransaction::new("tx-hash-16-111", 16, 111, "block-hash-16", 12),
60+
/// ],
61+
/// txs
62+
/// );
63+
/// ```
464
pub struct CardanoTransactionsBuilder {
565
max_transactions_per_block: usize,
666
max_blocks_per_block_range: usize,

0 commit comments

Comments
 (0)