mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 23:57:56 +00:00
Fix decl_storage map and linked_map for insert_ref (#3316)
* test * fix * bumpd version * Update srml/support/procedural/src/storage/impls.rs Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
This commit is contained in:
@@ -27,7 +27,7 @@ use srml_support::{
|
||||
use inherents::{
|
||||
ProvideInherent, InherentData, InherentIdentifier, RuntimeString, MakeFatalError
|
||||
};
|
||||
use srml_support::{StorageValue, StorageMap, StorageDoubleMap};
|
||||
use srml_support::{StorageValue, StorageMap, StorageDoubleMap, EnumerableStorageMap};
|
||||
use primitives::{H256, sr25519};
|
||||
|
||||
mod system;
|
||||
@@ -140,7 +140,7 @@ mod module2 {
|
||||
trait Store for Module<T: Trait<I>, I: Instance=DefaultInstance> as Module2 {
|
||||
pub Value config(value): T::Amount;
|
||||
pub Map config(map): map u64 => u64;
|
||||
pub LinkedMap config(linked_map): linked_map u64 => u64;
|
||||
pub LinkedMap config(linked_map): linked_map u64 => Vec<u8>;
|
||||
pub DoubleMap config(double_map): double_map u64, blake2_256(u64) => u64;
|
||||
}
|
||||
}
|
||||
@@ -288,13 +288,13 @@ fn new_test_ext() -> runtime_io::TestExternalities<Blake2Hasher> {
|
||||
module2: Some(module2::GenesisConfig {
|
||||
value: 4,
|
||||
map: vec![(0, 0)],
|
||||
linked_map: vec![(0, 0)],
|
||||
linked_map: vec![(0, vec![0])],
|
||||
double_map: vec![(0, 0, 0)],
|
||||
}),
|
||||
module2_Instance1: Some(module2::GenesisConfig {
|
||||
value: 4,
|
||||
map: vec![(0, 0)],
|
||||
linked_map: vec![(0, 0)],
|
||||
linked_map: vec![(0, vec![0])],
|
||||
double_map: vec![(0, 0, 0)],
|
||||
}),
|
||||
module2_Instance2: None,
|
||||
@@ -388,15 +388,23 @@ fn storage_with_instance_basic_operation() {
|
||||
|
||||
assert_eq!(LinkedMap::exists(0), true);
|
||||
assert_eq!(LinkedMap::exists(key), false);
|
||||
LinkedMap::insert(key, 1);
|
||||
assert_eq!(LinkedMap::get(key), 1);
|
||||
assert_eq!(LinkedMap::take(key), 1);
|
||||
assert_eq!(LinkedMap::get(key), 0);
|
||||
LinkedMap::mutate(key, |a| *a=2);
|
||||
assert_eq!(LinkedMap::get(key), 2);
|
||||
LinkedMap::insert(key, vec![1]);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 2);
|
||||
assert_eq!(LinkedMap::get(key), vec![1]);
|
||||
assert_eq!(LinkedMap::take(key), vec![1]);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 1);
|
||||
assert_eq!(LinkedMap::get(key), vec![]);
|
||||
LinkedMap::mutate(key, |a| *a=vec![2]);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 2);
|
||||
assert_eq!(LinkedMap::get(key), vec![2]);
|
||||
LinkedMap::remove(key);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 1);
|
||||
assert_eq!(LinkedMap::exists(key), false);
|
||||
assert_eq!(LinkedMap::get(key), 0);
|
||||
assert_eq!(LinkedMap::get(key), vec![]);
|
||||
assert_eq!(LinkedMap::exists(key), false);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 1);
|
||||
LinkedMap::insert_ref(key, &vec![1]);
|
||||
assert_eq!(LinkedMap::enumerate().count(), 2);
|
||||
|
||||
let key1 = 1;
|
||||
let key2 = 1;
|
||||
@@ -454,7 +462,7 @@ const EXPECTED_METADATA: StorageMetadata = StorageMetadata {
|
||||
ty: StorageEntryType::Map {
|
||||
hasher: StorageHasher::Blake2_256,
|
||||
key: DecodeDifferent::Encode("u64"),
|
||||
value: DecodeDifferent::Encode("u64"),
|
||||
value: DecodeDifferent::Encode("Vec<u8>"),
|
||||
is_linked: true,
|
||||
},
|
||||
default: DecodeDifferent::Encode(
|
||||
|
||||
Reference in New Issue
Block a user