Skip to content

Commit c5f0ce8

Browse files
author
UBL Ops
committed
fix: correct doctest examples for ed25519-dalek v2 API
- Use SigningKey::from_bytes instead of generate - Fix error type imports in examples - All doctests now compile and pass
1 parent 8311683 commit c5f0ce8

3 files changed

Lines changed: 17 additions & 17 deletions

File tree

src/canonicalize.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ use unicode_normalization::UnicodeNormalization;
4646
/// // Mesmo valor sempre produz os mesmos bytes
4747
/// let canonical2 = canonize(&note)?;
4848
/// assert_eq!(canonical, canonical2);
49-
/// # Ok::<(), json_atomic::CanonicalError>(())
49+
/// # Ok::<(), json_atomic::errors::CanonicalError>(())
5050
/// ```
5151
pub fn canonize<T: Serialize>(value: &T) -> Result<Vec<u8>, CanonicalError> {
5252
let v = serde_json::to_value(value).map_err(|e| CanonicalError::Serde(e.to_string()))?;

src/cycle.rs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,7 @@ use crate::{
2929
///
3030
/// ```rust
3131
/// use ed25519_dalek::SigningKey;
32-
/// use json_atomic::seal_value;
33-
/// use rand::rngs::OsRng;
32+
/// use json_atomic::{seal_value, errors::SealError};
3433
/// use serde::Serialize;
3534
///
3635
/// #[derive(Serialize)]
@@ -39,15 +38,16 @@ use crate::{
3938
/// timestamp: u64,
4039
/// }
4140
///
42-
/// let sk = SigningKey::generate(&mut OsRng);
41+
/// // Chave de exemplo (em produção, derive de seed/keystore)
42+
/// let sk = SigningKey::from_bytes(&[0u8; 32]);
4343
/// let fact = Fact {
4444
/// message: "Hello, World!".into(),
4545
/// timestamp: 1735671234,
4646
/// };
4747
///
4848
/// let signed = seal_value(&fact, &sk)?;
4949
/// println!("CID: {}", signed.cid_hex());
50-
/// # Ok::<(), json_atomic::SealError>(())
50+
/// # Ok::<(), SealError>(())
5151
/// ```
5252
pub fn seal_value<T: serde::Serialize>(
5353
value: &T,
@@ -88,21 +88,21 @@ pub fn seal_value<T: serde::Serialize>(
8888
///
8989
/// ```rust
9090
/// use ed25519_dalek::SigningKey;
91-
/// use json_atomic::{seal_value, verify_seal};
92-
/// use rand::rngs::OsRng;
91+
/// use json_atomic::{seal_value, verify_seal, errors::SealError};
9392
/// use serde::Serialize;
9493
///
9594
/// #[derive(Serialize)]
9695
/// struct Fact {
9796
/// data: String,
9897
/// }
9998
///
100-
/// let sk = SigningKey::generate(&mut OsRng);
99+
/// // Chave de exemplo (em produção, derive de seed/keystore)
100+
/// let sk = SigningKey::from_bytes(&[0u8; 32]);
101101
/// let fact = Fact { data: "test".into() };
102102
///
103103
/// let signed = seal_value(&fact, &sk)?;
104104
/// verify_seal(&signed)?; // Verifica integridade e autenticidade
105-
/// # Ok::<(), Box<dyn std::error::Error>>(())
105+
/// # Ok::<(), SealError>(())
106106
/// ```
107107
pub fn verify_seal(f: &SignedFact) -> Result<(), VerifyError> {
108108
// Recalcula CID do canonical e compara
@@ -124,11 +124,11 @@ pub fn verify_seal(f: &SignedFact) -> Result<(), VerifyError> {
124124
///
125125
/// ```rust
126126
/// use ed25519_dalek::SigningKey;
127-
/// use json_atomic::seal_logline;
127+
/// use json_atomic::{seal_logline, errors::SealError};
128128
/// use logline_core::*;
129-
/// use rand::rngs::OsRng;
130129
///
131-
/// let sk = SigningKey::generate(&mut OsRng);
130+
/// // Chave de exemplo (em produção, derive de seed/keystore)
131+
/// let sk = SigningKey::from_bytes(&[0u8; 32]);
132132
/// let line = LogLine::builder()
133133
/// .who("did:ubl:alice")
134134
/// .did(Verb::Approve)
@@ -140,7 +140,7 @@ pub fn verify_seal(f: &SignedFact) -> Result<(), VerifyError> {
140140
///
141141
/// let signed = seal_logline(&line, &sk)?;
142142
/// println!("LogLine CID: {}", signed.cid_hex());
143-
/// # Ok::<(), Box<dyn std::error::Error>>(())
143+
/// # Ok::<(), SealError>(())
144144
/// ```
145145
pub fn seal_logline(line: &LogLine, sk: &SigningKey) -> Result<SignedFact, SealError> {
146146
// Reaproveita `serde` derivado do logline-core

src/signed_fact.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,22 @@ use hex::ToHex;
2525
///
2626
/// ```rust
2727
/// use ed25519_dalek::SigningKey;
28-
/// use json_atomic::{seal_value, verify_seal};
29-
/// use rand::rngs::OsRng;
28+
/// use json_atomic::{seal_value, verify_seal, errors::SealError};
3029
/// use serde::Serialize;
3130
///
3231
/// #[derive(Serialize)]
3332
/// struct Data { value: u64 }
3433
///
35-
/// let sk = SigningKey::generate(&mut OsRng);
34+
/// // Chave de exemplo (em produção, derive de seed/keystore)
35+
/// let sk = SigningKey::from_bytes(&[0u8; 32]);
3636
/// let signed = seal_value(&Data { value: 42 }, &sk)?;
3737
///
3838
/// // Verifica integridade e autenticidade
3939
/// verify_seal(&signed)?;
4040
///
4141
/// // Acessa o CID em hexadecimal
4242
/// println!("CID: {}", signed.cid_hex());
43-
/// # Ok::<(), Box<dyn std::error::Error>>(())
43+
/// # Ok::<(), SealError>(())
4444
/// ```
4545
#[derive(Clone, Debug)]
4646
pub struct SignedFact {

0 commit comments

Comments
 (0)