From 278f03e6b90e9d48d50011cc96c27f7aa2536e4a Mon Sep 17 00:00:00 2001 From: thiolliere Date: Mon, 5 Jul 2021 13:55:54 +0200 Subject: [PATCH] fix storage info for decl_storage --- .../procedural/src/storage/storage_info.rs | 4 -- frame/support/test/tests/decl_storage.rs | 41 +++++++++++++++++++ 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/frame/support/procedural/src/storage/storage_info.rs b/frame/support/procedural/src/storage/storage_info.rs index 947f4c2bb9f64..c7707f6cb724b 100644 --- a/frame/support/procedural/src/storage/storage_info.rs +++ b/frame/support/procedural/src/storage/storage_info.rs @@ -22,10 +22,6 @@ use quote::quote; use super::DeclStorageDefExt; pub fn impl_storage_info(def: &DeclStorageDefExt) -> TokenStream { - if !def.generate_storage_info { - return Default::default() - } - let scrate = &def.hidden_crate; let mut res_append_storage = TokenStream::new(); diff --git a/frame/support/test/tests/decl_storage.rs b/frame/support/test/tests/decl_storage.rs index ef7b577ab6b8d..178685edd8fbd 100644 --- a/frame/support/test/tests/decl_storage.rs +++ b/frame/support/test/tests/decl_storage.rs @@ -651,6 +651,47 @@ mod test2 { } impl Config for TraitImpl {} + + #[test] + fn storage_info() { + use frame_support::{ + StorageHasher, + traits::{StorageInfoTrait, StorageInfo}, + pallet_prelude::*, + }; + let prefix = |pallet_name, storage_name| { + let mut res = [0u8; 32]; + res[0..16].copy_from_slice(&Twox128::hash(pallet_name)); + res[16..32].copy_from_slice(&Twox128::hash(storage_name)); + res + }; + pretty_assertions::assert_eq!( + >::storage_info(), + vec![ + StorageInfo { + prefix: prefix(b"TestStorage", b"SingleDef"), + max_values: Some(1), + max_size: None, + }, + StorageInfo { + prefix: prefix(b"TestStorage", b"PairDef"), + max_values: Some(1), + max_size: None, + }, + StorageInfo { + prefix: prefix(b"TestStorage", b"Single"), + max_values: Some(1), + max_size: None, + }, + StorageInfo { + prefix: prefix(b"TestStorage", b"Pair"), + max_values: Some(1), + max_size: None, + }, + ], + ); + } + } #[cfg(test)]