Skip to main content

ps_ecc/long/header/methods/
magic.rs

1use crate::long::LongEccHeader;
2
3impl LongEccHeader {
4    /// Returns the magic number identifying a long ECC header.
5    #[inline]
6    #[must_use]
7    pub const fn magic(&self) -> u16 {
8        self.magic
9    }
10}
11
12#[cfg(test)]
13mod tests {
14    use crate::long::{LongEccHeader, OverlapFactor, LONG_ECC_HEADER_MAGIC};
15
16    type TestError = Box<dyn std::error::Error>;
17
18    #[test]
19    fn test_magic_returns_header_magic() -> Result<(), TestError> {
20        let header = LongEccHeader::new(2, OverlapFactor::Simple, 86, 50, 0)?;
21
22        assert_eq!(header.magic(), LONG_ECC_HEADER_MAGIC);
23
24        Ok(())
25    }
26
27    #[test]
28    fn test_magic_is_ascii_lh() -> Result<(), TestError> {
29        let header = LongEccHeader::new(2, OverlapFactor::Simple, 86, 50, 0)?;
30
31        assert_eq!(header.magic().to_be_bytes(), *b"LH");
32
33        Ok(())
34    }
35}