I'm writing a pallet, which depends on pallet-rmrk-core
, based on pallet-template
.
In lib.rs
I wrote:
#[pallet::config]
pub trait Config: frame_system::Config + pallet_rmrk_core::Config {
type Event: From<Event<Self>> + IsType<<Self as frame_system::Config>::Event>;
}
Now the mock.rs
from pallet-template errors:
impl pallet_cases::Config for Test {
^^^^^^^^^^^^^^^^^^^^
type Event = Event;
}
the trait bound `mock::Test: pallet_rmrk_core::Config` is not satisfied
the trait `pallet_rmrk_core::Config` is not implemented for `mock::Test`rustcE0277
lib.rs(33, 46): required by a bound in `pallet::Config`
My full mock.rs looks like this:
use crate as pallet_cases;
use frame_support::traits::{ConstU16, ConstU64};
use frame_system as system;
use sp_core::H256;
use sp_runtime::{
testing::Header,
traits::{BlakeTwo256, IdentityLookup},
};
type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic<Test>;
type Block = frame_system::mocking::MockBlock<Test>;
// Configure a mock runtime to test the pallet.
frame_support::construct_runtime!(
pub enum Test where
Block = Block,
NodeBlock = Block,
UncheckedExtrinsic = UncheckedExtrinsic,
{
System: frame_system,
PalletCases: pallet_cases,
}
);
impl system::Config for Test {
type BaseCallFilter = frame_support::traits::Everything;
type BlockWeights = ();
type BlockLength = ();
type DbWeight = ();
type Origin = Origin;
type Call = Call;
type Index = u64;
type BlockNumber = u64;
type Hash = H256;
type Hashing = BlakeTwo256;
type AccountId = u64;
type Lookup = IdentityLookup<Self::AccountId>;
type Header = Header;
type Event = Event;
type BlockHashCount = ConstU64<250>;
type Version = ();
type PalletInfo = PalletInfo;
type AccountData = ();
type OnNewAccount = ();
type OnKilledAccount = ();
type SystemWeightInfo = ();
type SS58Prefix = ConstU16<42>;
type OnSetCode = ();
type MaxConsumers = frame_support::traits::ConstU32<16>;
}
impl pallet_cases::Config for Test {
type Event = Event;
}
// Build genesis storage according to the mock runtime.
pub fn new_test_ext() -> sp_io::TestExternalities {
system::GenesisConfig::default()
.build_storage::<Test>()
.unwrap()
.into()
}
I already tried to add pallet_rmrk_core to the runtime and did a impl pallet_rmrk_core::Config for Test
but it ended in just much more errors.
What do I miss?
Regards