From fe01412467c296e3a76f20e0788376fbde040fd1 Mon Sep 17 00:00:00 2001 From: PlexSheep Date: Sun, 12 May 2024 20:23:04 +0200 Subject: [PATCH] test: add prefix test #12 --- tests/format.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/format.rs b/tests/format.rs index b35538a..7516335 100644 --- a/tests/format.rs +++ b/tests/format.rs @@ -47,3 +47,28 @@ fn format_padding() { assert_eq!(Format::Base64.format(0x41414242, &options), "QUFCQg=="); assert_eq!(Format::Base64.format(0x4141414141414141, &options), "QUFBQUFBQUE="); } + + +#[test] +fn format_prefix() { + let mut options = FormatOptions::default(); + options.set_prefix(true); + + assert_eq!(Format::Dec.format(1337, &options), "0d1337"); + assert_eq!(Format::Dec.format(u128::MAX, &options), format!("0d{}", u128::MAX)); + + assert_eq!(Format::Hex.format(0x1337, &options), "0x1337"); + assert_eq!(Format::Hex.format(u128::MAX, &options), format!("0x{:X}", u128::MAX)); + + assert_eq!(Format::Bin.format(0b1010001001010010010100111, &options), "0b1010001001010010010100111"); + assert_eq!(Format::Bin.format(u128::MAX, &options), format!("0b{:b}", u128::MAX)); + + assert_eq!(Format::Octal.format(0o13377331, &options), "0o13377331"); + assert_eq!(Format::Octal.format(u128::MAX, &options), format!("0o{:o}", u128::MAX)); + + assert_eq!(Format::Base32.format(0x41414242, &options), "032sIFAUEQQ="); + assert_eq!(Format::Base32.format(0x4141414141414141, &options), "032sIFAUCQKBIFAUC==="); + + assert_eq!(Format::Base64.format(0x41414242, &options), "0sQUFCQg=="); + assert_eq!(Format::Base64.format(0x4141414141414141, &options), "0sQUFBQUFBQUE="); +}