summaryrefslogtreecommitdiffstats
path: root/vendor/unicode-ident/tests/static_size.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:02:58 +0000
commit698f8c2f01ea549d77d7dc3338a12e04c11057b9 (patch)
tree173a775858bd501c378080a10dca74132f05bc50 /vendor/unicode-ident/tests/static_size.rs
parentInitial commit. (diff)
downloadrustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.tar.xz
rustc-698f8c2f01ea549d77d7dc3338a12e04c11057b9.zip
Adding upstream version 1.64.0+dfsg1.upstream/1.64.0+dfsg1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/unicode-ident/tests/static_size.rs')
-rw-r--r--vendor/unicode-ident/tests/static_size.rs96
1 files changed, 96 insertions, 0 deletions
diff --git a/vendor/unicode-ident/tests/static_size.rs b/vendor/unicode-ident/tests/static_size.rs
new file mode 100644
index 000000000..f0e04d4db
--- /dev/null
+++ b/vendor/unicode-ident/tests/static_size.rs
@@ -0,0 +1,96 @@
+#![allow(clippy::unreadable_literal)]
+
+use std::mem::size_of_val;
+
+#[test]
+fn test_size() {
+ #[allow(dead_code)]
+ #[path = "../src/tables.rs"]
+ mod tables;
+
+ let size = size_of_val(&tables::ASCII_START)
+ + size_of_val(&tables::ASCII_CONTINUE)
+ + size_of_val(&tables::TRIE_START)
+ + size_of_val(&tables::TRIE_CONTINUE)
+ + size_of_val(&tables::LEAF);
+ assert_eq!(9752, size);
+}
+
+#[test]
+fn test_xid_size() {
+ #[deny(dead_code)]
+ #[allow(clippy::redundant_static_lifetimes)]
+ #[path = "../generate/src/ucd.rs"]
+ mod ucd;
+
+ let size = size_of_val(ucd::XID_START) + size_of_val(ucd::XID_CONTINUE);
+ assert_eq!(11344, size);
+
+ let _ = ucd::BY_NAME;
+}
+
+#[cfg(target_pointer_width = "64")]
+#[test]
+fn test_trieset_size() {
+ #[deny(dead_code)]
+ #[allow(clippy::redundant_static_lifetimes)]
+ #[path = "trie/trie.rs"]
+ mod trie;
+
+ let ucd_trie::TrieSet {
+ tree1_level1,
+ tree2_level1,
+ tree2_level2,
+ tree3_level1,
+ tree3_level2,
+ tree3_level3,
+ } = *trie::XID_START;
+
+ let start_size = size_of_val(trie::XID_START)
+ + size_of_val(tree1_level1)
+ + size_of_val(tree2_level1)
+ + size_of_val(tree2_level2)
+ + size_of_val(tree3_level1)
+ + size_of_val(tree3_level2)
+ + size_of_val(tree3_level3);
+
+ let ucd_trie::TrieSet {
+ tree1_level1,
+ tree2_level1,
+ tree2_level2,
+ tree3_level1,
+ tree3_level2,
+ tree3_level3,
+ } = *trie::XID_CONTINUE;
+
+ let continue_size = size_of_val(trie::XID_CONTINUE)
+ + size_of_val(tree1_level1)
+ + size_of_val(tree2_level1)
+ + size_of_val(tree2_level2)
+ + size_of_val(tree3_level1)
+ + size_of_val(tree3_level2)
+ + size_of_val(tree3_level3);
+
+ assert_eq!(9952, start_size + continue_size);
+
+ let _ = trie::BY_NAME;
+}
+
+#[test]
+fn test_fst_size() {
+ let xid_start_fst = include_bytes!("fst/xid_start.fst");
+ let xid_continue_fst = include_bytes!("fst/xid_continue.fst");
+ let size = xid_start_fst.len() + xid_continue_fst.len();
+ assert_eq!(132897, size);
+}
+
+#[test]
+fn test_roaring_size() {
+ #[path = "roaring/mod.rs"]
+ mod roaring;
+
+ let xid_start_bitmap = roaring::xid_start_bitmap();
+ let xid_continue_bitmap = roaring::xid_continue_bitmap();
+ let size = xid_start_bitmap.serialized_size() + xid_continue_bitmap.serialized_size();
+ assert_eq!(66104, size);
+}