// This file is part of Bizinikiwi. // Copyright (C) Parity Technologies (UK) Ltd. // SPDX-License-Identifier: Apache-2.0 // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. use pezframe_support::derive_impl; use pezframe_system::pezpallet_prelude::BlockNumberFor; use pezsp_core::sr25519; use pezsp_runtime::{ generic, traits::{BlakeTwo256, Verify}, }; #[pezframe_support::pallet] pub mod pallet { use super::*; use pezframe_support::pezpallet_prelude::*; #[pallet::pallet] pub struct Pallet(_); #[pallet::config] pub trait Config: pezframe_system::Config {} #[pallet::call] impl Pallet {} #[pallet::storage] #[pallet::unbounded] pub type AppendableDM = StorageDoubleMap<_, Identity, u32, Identity, BlockNumberFor, Vec>; #[pallet::genesis_config] pub struct GenesisConfig { pub t: Vec<(u32, BlockNumberFor, Vec)>, } impl Default for GenesisConfig { fn default() -> Self { Self { t: Default::default() } } } #[pallet::genesis_build] impl BuildGenesisConfig for GenesisConfig { fn build(&self) { for (k1, k2, v) in &self.t { >::insert(k1, k2, v); } } } } pub type BlockNumber = u32; pub type Signature = sr25519::Signature; pub type AccountId = ::Signer; pub type Header = generic::Header; pub type UncheckedExtrinsic = generic::UncheckedExtrinsic; pub type Block = generic::Block; pezframe_support::construct_runtime!( pub enum Test { System: pezframe_system, MyPallet: pallet, } ); #[derive_impl(pezframe_system::config_preludes::TestDefaultConfig)] impl pezframe_system::Config for Test { type BaseCallFilter = pezframe_support::traits::Everything; type Block = Block; type RuntimeOrigin = RuntimeOrigin; type RuntimeCall = RuntimeCall; type RuntimeEvent = RuntimeEvent; type PalletInfo = PalletInfo; type OnSetCode = (); } impl pallet::Config for Test {} #[test] fn init_genesis_config() { pallet::GenesisConfig::::default(); }