p2panda_encryption/
test_utils.rs1use std::fmt::Display;
5
6use serde::{Deserialize, Serialize};
7
8use crate::traits::OperationId;
9
10pub mod crypto {
12 pub use crate::crypto::x25519::SecretKey;
13}
14
15pub mod data_scheme {
16 pub use crate::data_scheme::test_utils::*;
17}
18
19pub mod message_scheme {
20 pub use crate::message_scheme::test_utils::*;
21}
22
23pub type MemberId = usize;
25
26#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash, Serialize, Deserialize)]
31pub struct MessageId {
32 pub sender: MemberId,
33 pub seq: usize,
34}
35
36impl MessageId {
37 pub fn new(my_id: MemberId) -> Self {
38 Self {
39 sender: my_id,
40 seq: 0,
41 }
42 }
43
44 pub fn inc(&self) -> Self {
45 Self {
46 sender: self.sender,
47 seq: self.seq + 1,
48 }
49 }
50}
51
52impl Display for MessageId {
53 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
54 write!(f, "[id={}, seq={}]", self.sender, self.seq)
55 }
56}
57
58impl OperationId for MessageId {}