diff --git a/applications/minotari_console_wallet/README.md b/applications/minotari_console_wallet/README.md index 69ab53b4d3..efb2b91243 100644 --- a/applications/minotari_console_wallet/README.md +++ b/applications/minotari_console_wallet/README.md @@ -251,7 +251,7 @@ example output: 1. whois c69fbe5f05a304eaec65d5f234a6aa258a90b8bb5b9ceffea779653667ef2108 Public Key: c69fbe5f05a304eaec65d5f234a6aa258a90b8bb5b9ceffea779653667ef2108 -Emoji ID : ๐Ÿ“ˆ๐Ÿ‘›๐Ÿ’ญ๐ŸŽพ๐ŸŒ๐Ÿ‘ก๐ŸŒ‹๐Ÿ˜ป๐Ÿš€๐Ÿ‰๐Ÿ”ฅ๐Ÿš“๐Ÿณ๐Ÿ‘น๐Ÿ‘ฟ๐Ÿ•๐Ÿต๐Ÿผ๐Ÿ’ก๐Ÿ’ฆ๐ŸŽบ๐Ÿ‘˜๐ŸšŒ๐Ÿšฟ๐Ÿ‘ป๐Ÿ›๐Ÿ‰๐Ÿต๐Ÿฅ๐ŸšŒ๐Ÿ‘๐ŸŒž๐Ÿน +Emoji ID : ๐Ÿ“ˆ๐Ÿ‘›โž•๐ŸŽพ๐Ÿ‹๐ŸฅŠ๐ŸŽฏ๐Ÿ‘๐Ÿš€โšฝ๐Ÿ”ฅ๐Ÿš“๐Ÿณ๐Ÿคก๐Ÿค ๐Ÿ•๐Ÿต๐Ÿผ๐Ÿ’ก๐Ÿ’ฆ๐ŸŽบ๐Ÿ‘˜๐Ÿšš๐Ÿšฟ๐Ÿ‘ป๐Ÿ›โšฝ๐Ÿต๐Ÿฅ๐Ÿšš๐Ÿ‘๐ŸŒ•๐Ÿพ ``` ## Script mode diff --git a/applications/minotari_console_wallet/src/utils/formatting.rs b/applications/minotari_console_wallet/src/utils/formatting.rs index 1134aca756..5978365d48 100644 --- a/applications/minotari_console_wallet/src/utils/formatting.rs +++ b/applications/minotari_console_wallet/src/utils/formatting.rs @@ -60,10 +60,10 @@ mod test { assert_eq!(display_compressed_string(short_str.clone(), 5, 5), short_str); let long_str = "abcdefghijklmnopqrstuvwxyz".to_string(); assert_eq!(display_compressed_string(long_str, 3, 3), "abc..xyz".to_string()); - let emoji_str = "๐Ÿพ๐Ÿ’Ž๐ŸŽค๐ŸŽจ๐Ÿ“Œ๐Ÿ„๐ŸŽฐ๐Ÿ‰๐Ÿšง๐Ÿ’‰๐Ÿ’ก๐Ÿ‘Ÿ๐Ÿš’๐Ÿ“Œ๐Ÿ”Œ๐Ÿถ๐Ÿพ๐Ÿข๐Ÿ”ญ๐Ÿจ๐Ÿ˜ป๐Ÿ’จ๐ŸŽ๐ŸŠ๐Ÿšข๐Ÿ‘Ÿ๐Ÿšง๐Ÿž๐Ÿšœ๐ŸŒ‚๐ŸŽฉ๐ŸŽฑ๐Ÿ“ˆ".to_string(); + let emoji_str = "๐Ÿพ๐Ÿ’Ž๐ŸŽค๐ŸŽจ๐Ÿ“Œ๐Ÿ„๐ŸŽฐ๐Ÿ‰๐Ÿšง๐Ÿ’‰๐Ÿ’ก๐Ÿ‘Ÿ๐Ÿš’๐Ÿ“Œ๐Ÿ”Œ๐Ÿถ๐Ÿพ๐Ÿข๐Ÿ”ญ๐Ÿจ๐Ÿ‘๐Ÿ’จ๐Ÿฆ๐ŸŠ๐Ÿšข๐Ÿ‘Ÿ๐Ÿšง๐Ÿž๐Ÿšœ๐Ÿ“Ÿ๐ŸŽฉ๐ŸŽฑ๐Ÿ“ˆ".to_string(); assert_eq!( display_compressed_string(emoji_str, 3, 6), - "๐Ÿพ๐Ÿ’Ž๐ŸŽค..๐Ÿž๐Ÿšœ๐ŸŒ‚๐ŸŽฉ๐ŸŽฑ๐Ÿ“ˆ".to_string() + "๐Ÿพ๐Ÿ’Ž๐ŸŽค..๐Ÿž๐Ÿšœ๐Ÿ“Ÿ๐ŸŽฉ๐ŸŽฑ๐Ÿ“ˆ".to_string() ); } } diff --git a/base_layer/common_types/src/emoji.rs b/base_layer/common_types/src/emoji.rs index ac54a95390..8c84882ea7 100644 --- a/base_layer/common_types/src/emoji.rs +++ b/base_layer/common_types/src/emoji.rs @@ -53,7 +53,7 @@ use crate::{ /// use tari_common_types::emoji::EmojiId; /// /// // Construct an emoji ID from an emoji string (this can fail) -/// let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐Ÿ‘ก"; +/// let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸฅŠ"; /// let emoji_id_from_emoji_string = EmojiId::from_emoji_string(emoji_string); /// assert!(emoji_id_from_emoji_string.is_ok()); /// @@ -67,7 +67,7 @@ use crate::{ /// assert_eq!(emoji_id_from_public_key.to_emoji_string(), emoji_string); /// /// // Oh no! We swapped the first two emoji characters by mistake, so this should fail -/// let invalid_emoji_string = "๐Ÿฉ๐ŸŒด๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐Ÿ‘ก"; +/// let invalid_emoji_string = "๐Ÿฆ€๐ŸŒด๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸฅŠ"; /// assert!(EmojiId::from_emoji_string(invalid_emoji_string).is_err()); /// ``` #[derive(Clone, Debug, Eq, PartialEq, Ord, PartialOrd)] @@ -79,20 +79,20 @@ const CHECKSUM_SIZE: usize = 1; // number of bytes in the checksum // The emoji table, mapping byte values to emoji characters pub const EMOJI: [char; DICT_SIZE] = [ - '๐ŸŒ€', '๐ŸŒ‚', '๐ŸŒˆ', '๐ŸŒŠ', '๐ŸŒ‹', '๐ŸŒ', '๐ŸŒ™', '๐ŸŒ', '๐ŸŒž', '๐ŸŒŸ', '๐ŸŒ ', '๐ŸŒฐ', '๐ŸŒด', '๐ŸŒต', '๐ŸŒท', '๐ŸŒธ', '๐ŸŒน', '๐ŸŒป', '๐ŸŒฝ', - '๐Ÿ€', '๐Ÿ', '๐Ÿ„', '๐Ÿ…', '๐Ÿ†', '๐Ÿ‡', '๐Ÿˆ', '๐Ÿ‰', '๐ŸŠ', '๐Ÿ‹', '๐ŸŒ', '๐Ÿ', '๐ŸŽ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', - '๐Ÿ—', '๐Ÿš', '๐Ÿž', '๐ŸŸ', '๐Ÿ ', '๐Ÿฃ', '๐Ÿฆ', '๐Ÿฉ', '๐Ÿช', '๐Ÿซ', '๐Ÿฌ', '๐Ÿญ', '๐Ÿฏ', '๐Ÿฐ', '๐Ÿณ', '๐Ÿด', '๐Ÿต', '๐Ÿถ', '๐Ÿท', - '๐Ÿธ', '๐Ÿน', '๐Ÿบ', '๐Ÿผ', '๐ŸŽ€', '๐ŸŽ', '๐ŸŽ‚', '๐ŸŽƒ', '๐ŸŽ„', '๐ŸŽˆ', '๐ŸŽ‰', '๐ŸŽ’', '๐ŸŽ“', '๐ŸŽ ', '๐ŸŽก', '๐ŸŽข', '๐ŸŽฃ', '๐ŸŽค', '๐ŸŽฅ', + '๐Ÿฆ‹', '๐Ÿ“Ÿ', '๐ŸŒˆ', '๐ŸŒŠ', '๐ŸŽฏ', '๐Ÿ‹', '๐ŸŒ™', '๐Ÿค”', '๐ŸŒ•', 'โญ', '๐ŸŽ‹', '๐ŸŒฐ', '๐ŸŒด', '๐ŸŒต', '๐ŸŒฒ', '๐ŸŒธ', '๐ŸŒน', '๐ŸŒป', '๐ŸŒฝ', + '๐Ÿ€', '๐Ÿ', '๐Ÿ„', '๐Ÿฅ‘', '๐Ÿ†', '๐Ÿ‡', '๐Ÿˆ', '๐Ÿ‰', '๐ŸŠ', '๐Ÿ‹', '๐ŸŒ', '๐Ÿ', '๐ŸŽ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', + '๐Ÿ—', '๐Ÿš', '๐Ÿž', '๐ŸŸ', '๐Ÿฅ', '๐Ÿฃ', '๐Ÿฆ', '๐Ÿฉ', '๐Ÿช', '๐Ÿซ', '๐Ÿฌ', '๐Ÿญ', '๐Ÿฏ', '๐Ÿฅ', '๐Ÿณ', '๐Ÿฅ„', '๐Ÿต', '๐Ÿถ', '๐Ÿท', + '๐Ÿธ', '๐Ÿพ', '๐Ÿบ', '๐Ÿผ', '๐ŸŽ€', '๐ŸŽ', '๐ŸŽ‚', '๐ŸŽƒ', '๐Ÿค–', '๐ŸŽˆ', '๐ŸŽ‰', '๐ŸŽ’', '๐ŸŽ“', '๐ŸŽ ', '๐ŸŽก', '๐ŸŽข', '๐ŸŽฃ', '๐ŸŽค', '๐ŸŽฅ', '๐ŸŽง', '๐ŸŽจ', '๐ŸŽฉ', '๐ŸŽช', '๐ŸŽฌ', '๐ŸŽญ', '๐ŸŽฎ', '๐ŸŽฐ', '๐ŸŽฑ', '๐ŸŽฒ', '๐ŸŽณ', '๐ŸŽต', '๐ŸŽท', '๐ŸŽธ', '๐ŸŽน', '๐ŸŽบ', '๐ŸŽป', '๐ŸŽผ', '๐ŸŽฝ', - '๐ŸŽพ', '๐ŸŽฟ', '๐Ÿ€', '๐Ÿ', '๐Ÿ†', '๐Ÿˆ', '๐Ÿ‰', '๐Ÿ ', '๐Ÿฅ', '๐Ÿฆ', '๐Ÿญ', '๐Ÿฐ', '๐Ÿ€', '๐Ÿ‰', '๐ŸŠ', '๐ŸŒ', '๐Ÿ', '๐ŸŽ', '๐Ÿ', - '๐Ÿ‘', '๐Ÿ“', '๐Ÿ–', '๐Ÿ—', '๐Ÿ˜', '๐Ÿ™', '๐Ÿš', '๐Ÿ›', '๐Ÿœ', '๐Ÿ', '๐Ÿž', '๐Ÿข', '๐Ÿฃ', '๐Ÿจ', '๐Ÿฉ', '๐Ÿช', '๐Ÿฌ', '๐Ÿญ', '๐Ÿฎ', - '๐Ÿฏ', '๐Ÿฐ', '๐Ÿฒ', '๐Ÿณ', '๐Ÿด', '๐Ÿต', '๐Ÿถ', '๐Ÿท', '๐Ÿธ', '๐Ÿบ', '๐Ÿป', '๐Ÿผ', '๐Ÿฝ', '๐Ÿพ', '๐Ÿ‘€', '๐Ÿ‘…', '๐Ÿ‘‘', '๐Ÿ‘’', '๐Ÿ‘“', - '๐Ÿ‘”', '๐Ÿ‘•', '๐Ÿ‘–', '๐Ÿ‘—', '๐Ÿ‘˜', '๐Ÿ‘™', '๐Ÿ‘š', '๐Ÿ‘›', '๐Ÿ‘ž', '๐Ÿ‘Ÿ', '๐Ÿ‘ ', '๐Ÿ‘ก', '๐Ÿ‘ข', '๐Ÿ‘ฃ', '๐Ÿ‘น', '๐Ÿ‘ป', '๐Ÿ‘ฝ', '๐Ÿ‘พ', '๐Ÿ‘ฟ', - '๐Ÿ’€', '๐Ÿ’„', '๐Ÿ’ˆ', '๐Ÿ’‰', '๐Ÿ’Š', '๐Ÿ’‹', '๐Ÿ’Œ', '๐Ÿ’', '๐Ÿ’Ž', '๐Ÿ’', '๐Ÿ’”', '๐Ÿ’•', '๐Ÿ’˜', '๐Ÿ’ก', '๐Ÿ’ฃ', '๐Ÿ’ค', '๐Ÿ’ฆ', '๐Ÿ’จ', '๐Ÿ’ฉ', - '๐Ÿ’ญ', '๐Ÿ’ฏ', '๐Ÿ’ฐ', '๐Ÿ’ณ', '๐Ÿ’ธ', '๐Ÿ’บ', '๐Ÿ’ป', '๐Ÿ’ผ', '๐Ÿ“ˆ', '๐Ÿ“‰', '๐Ÿ“Œ', '๐Ÿ“Ž', '๐Ÿ“š', '๐Ÿ“', '๐Ÿ“ก', '๐Ÿ“ฃ', '๐Ÿ“ฑ', '๐Ÿ“ท', '๐Ÿ”‹', - '๐Ÿ”Œ', '๐Ÿ”Ž', '๐Ÿ”‘', '๐Ÿ””', '๐Ÿ”ฅ', '๐Ÿ”ฆ', '๐Ÿ”ง', '๐Ÿ”จ', '๐Ÿ”ฉ', '๐Ÿ”ช', '๐Ÿ”ซ', '๐Ÿ”ฌ', '๐Ÿ”ญ', '๐Ÿ”ฎ', '๐Ÿ”ฑ', '๐Ÿ—ฝ', '๐Ÿ˜‚', '๐Ÿ˜‡', '๐Ÿ˜ˆ', - '๐Ÿ˜‰', '๐Ÿ˜', '๐Ÿ˜Ž', '๐Ÿ˜ฑ', '๐Ÿ˜ท', '๐Ÿ˜น', '๐Ÿ˜ป', '๐Ÿ˜ฟ', '๐Ÿš€', '๐Ÿš', '๐Ÿš‚', '๐ŸšŒ', '๐Ÿš‘', '๐Ÿš’', '๐Ÿš“', '๐Ÿš•', '๐Ÿš—', '๐Ÿšœ', '๐Ÿšข', - '๐Ÿšฆ', '๐Ÿšง', '๐Ÿšจ', '๐Ÿšช', '๐Ÿšซ', '๐Ÿšฒ', '๐Ÿšฝ', '๐Ÿšฟ', '๐Ÿ›', + '๐ŸŽพ', '๐ŸŽฟ', '๐Ÿ€', '๐Ÿ', '๐Ÿ†', '๐Ÿˆ', 'โšฝ', '๐Ÿ ', '๐Ÿฅ', '๐Ÿฆ', '๐Ÿญ', '๐Ÿฐ', '๐Ÿ€', '๐Ÿ‰', '๐ŸŠ', '๐ŸŒ', '๐Ÿ', '๐Ÿฆ', '๐Ÿ', + '๐Ÿ‘', '๐Ÿ”', '๐Ÿ™ˆ', '๐Ÿ—', '๐Ÿ˜', '๐Ÿ™', '๐Ÿš', '๐Ÿ›', '๐Ÿœ', '๐Ÿ', '๐Ÿž', '๐Ÿข', '๐Ÿฃ', '๐Ÿจ', '๐Ÿฆ€', '๐Ÿช', '๐Ÿฌ', '๐Ÿญ', '๐Ÿฎ', + '๐Ÿฏ', '๐Ÿฐ', '๐Ÿฆ†', '๐Ÿฆ‚', '๐Ÿด', '๐Ÿต', '๐Ÿถ', '๐Ÿท', '๐Ÿธ', '๐Ÿบ', '๐Ÿป', '๐Ÿผ', '๐Ÿฝ', '๐Ÿพ', '๐Ÿ‘€', '๐Ÿ‘…', '๐Ÿ‘‘', '๐Ÿ‘’', '๐Ÿงข', + '๐Ÿ’…', '๐Ÿ‘•', '๐Ÿ‘–', '๐Ÿ‘—', '๐Ÿ‘˜', '๐Ÿ‘™', '๐Ÿ’ƒ', '๐Ÿ‘›', '๐Ÿ‘ž', '๐Ÿ‘Ÿ', '๐Ÿ‘ ', '๐ŸฅŠ', '๐Ÿ‘ข', '๐Ÿ‘ฃ', '๐Ÿคก', '๐Ÿ‘ป', '๐Ÿ‘ฝ', '๐Ÿ‘พ', '๐Ÿค ', + '๐Ÿ‘ƒ', '๐Ÿ’„', '๐Ÿ’ˆ', '๐Ÿ’‰', '๐Ÿ’Š', '๐Ÿ’‹', '๐Ÿ‘‚', '๐Ÿ’', '๐Ÿ’Ž', '๐Ÿ’', '๐Ÿ’”', '๐Ÿ”’', '๐Ÿงฉ', '๐Ÿ’ก', '๐Ÿ’ฃ', '๐Ÿ’ค', '๐Ÿ’ฆ', '๐Ÿ’จ', '๐Ÿ’ฉ', + 'โž•', '๐Ÿ’ฏ', '๐Ÿ’ฐ', '๐Ÿ’ณ', '๐Ÿ’ต', '๐Ÿ’บ', '๐Ÿ’ป', '๐Ÿ’ผ', '๐Ÿ“ˆ', '๐Ÿ“œ', '๐Ÿ“Œ', '๐Ÿ“Ž', '๐Ÿ“–', '๐Ÿ“ฟ', '๐Ÿ“ก', 'โฐ', '๐Ÿ“ฑ', '๐Ÿ“ท', '๐Ÿ”‹', + '๐Ÿ”Œ', '๐Ÿšฐ', '๐Ÿ”‘', '๐Ÿ””', '๐Ÿ”ฅ', '๐Ÿ”ฆ', '๐Ÿ”ง', '๐Ÿ”จ', '๐Ÿ”ฉ', '๐Ÿ”ช', '๐Ÿ”ซ', '๐Ÿ”ฌ', '๐Ÿ”ญ', '๐Ÿ”ฎ', '๐Ÿ”ฑ', '๐Ÿ—ฝ', '๐Ÿ˜‚', '๐Ÿ˜‡', '๐Ÿ˜ˆ', + '๐Ÿค‘', '๐Ÿ˜', '๐Ÿ˜Ž', '๐Ÿ˜ฑ', '๐Ÿ˜ท', '๐Ÿคข', '๐Ÿ‘', '๐Ÿ‘ถ', '๐Ÿš€', '๐Ÿš', '๐Ÿš‚', '๐Ÿšš', '๐Ÿš‘', '๐Ÿš’', '๐Ÿš“', '๐Ÿ›ต', '๐Ÿš—', '๐Ÿšœ', '๐Ÿšข', + '๐Ÿšฆ', '๐Ÿšง', '๐Ÿšจ', '๐Ÿšช', '๐Ÿšซ', '๐Ÿšฒ', '๐Ÿšฝ', '๐Ÿšฟ', '๐Ÿงฒ', ]; // The reverse table, mapping emoji to characters to byte values @@ -237,7 +237,7 @@ mod test { /// Test invalid size fn invalid_size() { // This emoji string is too short to be a valid emoji ID - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’"; assert_eq!(EmojiId::from_str(emoji_string), Err(EmojiIdError::InvalidSize)); } @@ -245,7 +245,7 @@ mod test { /// Test invalid emoji fn invalid_emoji() { // This emoji string contains an invalid emoji character - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐ŸŽ…"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸŽ…"; assert_eq!(EmojiId::from_str(emoji_string), Err(EmojiIdError::InvalidEmoji)); } @@ -253,7 +253,7 @@ mod test { /// Test invalid checksum fn invalid_checksum() { // This emoji string contains an invalid checksum - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐ŸŽ’"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸŽ’"; assert_eq!(EmojiId::from_str(emoji_string), Err(EmojiIdError::InvalidChecksum)); } diff --git a/base_layer/common_types/src/tari_address.rs b/base_layer/common_types/src/tari_address.rs index 78ef770901..93b81b0cf2 100644 --- a/base_layer/common_types/src/tari_address.rs +++ b/base_layer/common_types/src/tari_address.rs @@ -268,13 +268,13 @@ mod test { /// Test invalid size fn invalid_size() { // This emoji string is too short to be a valid emoji ID - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’"; assert_eq!( TariAddress::from_emoji_string(emoji_string), Err(TariAddressError::InvalidSize) ); // This emoji string is too long to be a valid emoji ID - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐ŸŽ’๐ŸŽ’๐ŸŽ’๐ŸŽ’"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸŽ’๐ŸŽ’๐ŸŽ’๐ŸŽ’"; assert_eq!( TariAddress::from_emoji_string(emoji_string), Err(TariAddressError::InvalidSize) @@ -285,7 +285,7 @@ mod test { /// Test invalid emoji fn invalid_emoji() { // This emoji string contains an invalid emoji character - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐ŸŽ…"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸŽ…"; assert_eq!( TariAddress::from_emoji_string(emoji_string), Err(TariAddressError::InvalidEmoji) @@ -296,7 +296,7 @@ mod test { /// Test invalid checksum fn invalid_checksum() { // This emoji string contains an invalid checksum - let emoji_string = "๐ŸŒด๐Ÿฉ๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ’•๐Ÿ’ก๐Ÿœ๐Ÿ“‰๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐ŸŒ€๐Ÿ“๐Ÿ˜ฟ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ธ๐Ÿ…๐Ÿ”‹๐ŸŽ’๐ŸŽ’"; + let emoji_string = "๐ŸŒด๐Ÿฆ€๐Ÿ”Œ๐Ÿ“Œ๐Ÿš‘๐ŸŒฐ๐ŸŽ“๐ŸŒด๐ŸŠ๐ŸŒ๐Ÿ”’๐Ÿ’ก๐Ÿœ๐Ÿ“œ๐Ÿ‘›๐Ÿต๐Ÿ‘›๐Ÿฝ๐ŸŽ‚๐Ÿป๐Ÿฆ‹๐Ÿ“๐Ÿ‘ถ๐Ÿญ๐Ÿผ๐Ÿ€๐ŸŽช๐Ÿ’”๐Ÿ’ต๐Ÿฅ‘๐Ÿ”‹๐ŸŽ’๐ŸŽ’"; assert_eq!( TariAddress::from_emoji_string(emoji_string), Err(TariAddressError::InvalidNetworkOrChecksum)