Skip to content

Commit f2ba621

Browse files
committed
Add doctests
1 parent 49ef2c8 commit f2ba621

1 file changed

Lines changed: 24 additions & 8 deletions

File tree

src/lib.rs

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -995,6 +995,14 @@ impl CompactEncoding for Ipv6Addr {
995995
Ok(IPV6_ADDR_ENCODED_SIZE)
996996
}
997997

998+
/// ```
999+
/// # use std::net::Ipv6Addr;
1000+
/// # use compact_encoding::CompactEncoding;
1001+
/// let addr: Ipv6Addr = "1:2:3::1".parse()?;
1002+
/// let buff = addr.to_encoded_bytes()?.to_vec();
1003+
/// assert_eq!(buff, vec![0, 1, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]);
1004+
/// # Ok::<(), Box<dyn std::error::Error>>(())
1005+
/// ```
9981006
fn encode<'a>(&self, buffer: &'a mut [u8]) -> std::result::Result<&'a mut [u8], EncodingError> {
9991007
let Some((dest, rest)) = buffer.split_first_chunk_mut::<16>() else {
10001008
return Err(EncodingError::out_of_bounds(&format!(
@@ -1163,6 +1171,14 @@ impl CompactEncoding for SocketAddrV4 {
11631171
Ok(SOCKET_ADDR_V4_ENCODED_SIZE)
11641172
}
11651173

1174+
/// ```
1175+
/// # use std::net::SocketAddrV4;
1176+
/// # use compact_encoding::CompactEncoding;
1177+
/// let addr: SocketAddrV4 = "127.0.0.1:42".parse()?;
1178+
/// let buff = addr.to_encoded_bytes()?.to_vec();
1179+
/// assert_eq!(buff, vec![127, 0, 0, 1, 42, 0]);
1180+
/// # Ok::<(), Box<dyn std::error::Error>>(())
1181+
/// ```
11661182
fn encode<'a>(&self, buffer: &'a mut [u8]) -> Result<&'a mut [u8], EncodingError> {
11671183
let rest = self.ip().encode(buffer)?;
11681184
encode_u16(self.port(), rest)
@@ -1182,6 +1198,14 @@ impl CompactEncoding for SocketAddrV6 {
11821198
Ok(SOCKET_ADDR_V6_ENCODED_SIZE)
11831199
}
11841200

1201+
/// ```
1202+
/// # use std::net::SocketAddrV6;
1203+
/// # use compact_encoding::CompactEncoding;
1204+
/// let addr: SocketAddrV6 = "[1:2:3::1]:80".parse()?;
1205+
/// let buff = addr.to_encoded_bytes()?.to_vec();
1206+
/// assert_eq!(buff, vec![0, 1, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 80, 0]);
1207+
/// # Ok::<(), Box<dyn std::error::Error>>(())
1208+
/// ```
11851209
fn encode<'a>(&self, buffer: &'a mut [u8]) -> Result<&'a mut [u8], EncodingError> {
11861210
let rest = self.ip().encode(buffer)?;
11871211
encode_u16(self.port(), rest)
@@ -1255,12 +1279,4 @@ mod test {
12551279

12561280
Ok(())
12571281
}
1258-
1259-
#[test]
1260-
fn addr_6() -> Result<(), Box<dyn std::error::Error>> {
1261-
let addr: Ipv6Addr = "1:2:3::1".parse()?;
1262-
let buff = addr.to_encoded_bytes()?.to_vec();
1263-
assert_eq!(buff, vec![0, 1, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]);
1264-
Ok(())
1265-
}
12661282
}

0 commit comments

Comments
 (0)