From c6ad45fb82b132784db8ab8cec54074e283c2816 Mon Sep 17 00:00:00 2001 From: PlexSheep Date: Mon, 13 May 2024 13:39:56 +0200 Subject: [PATCH] test: add tests for numf_parser #13 --- src/format.rs | 2 +- tests/format.rs | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/src/format.rs b/src/format.rs index 9f32bbe..38470f0 100644 --- a/src/format.rs +++ b/src/format.rs @@ -217,7 +217,7 @@ impl Format { /// /// The number is assumed to be base-10 by default, it is parsed as a different /// [Format](format::Format) if the number is prefixed with the [prefix](format::FormatOptions::prefix), -/// case insensitive. So if the user inputs `0b1100` then this is parsed as +/// case sensitive. So if the user inputs `0b1100` then this is parsed as /// [Binary](format::Format::Bin) and so on. /// /// # Example diff --git a/tests/format.rs b/tests/format.rs index 62e18fb..476bd4a 100644 --- a/tests/format.rs +++ b/tests/format.rs @@ -198,3 +198,35 @@ fn set_format_checker() { options.set_format(Format::Base64); assert_eq!(options.format(), Format::Base64); } + +#[test] +fn parser_dec() { + assert_eq!(numf_parser("1337").unwrap(), 1337); + assert_eq!(numf_parser("0d1337").unwrap(), 1337); +} + +#[test] +fn parser_bin() { + assert_eq!(numf_parser("0b11001").unwrap(), 0b11001); + assert_eq!(numf_parser("0b11001").unwrap(), 0b11001); +} + +#[test] +fn parser_hex() { + assert_eq!(numf_parser("0xdeadbeef").unwrap(), 0xdeadbeef); +} + +#[test] +fn parser_oct() { + assert_eq!(numf_parser("0o771171").unwrap(), 0o771171); +} + +#[test] +fn parser_b64() { + assert_eq!(numf_parser("0sQUFCQg==").unwrap(), 0x41414242); +} + +#[test] +fn parser_b32() { + assert_eq!(numf_parser("IFAUEQQ=").unwrap(), 0x41414242); +}