thread_local!(static TIMESTAMP: std::cell::RefCell<u64> = const { std::cell::RefCell::new(0) });
/// Check the parachain assignment using the orchestrator chain client, and send a `CcSpawnMsg` to
/// Checks the assignment for the next block, so if there is a session change on block 15, this will
// Save callback for later, used when collator rotates from container chain back to orchestrator chain
// collate_on_tanssi will not be called in solochains because solochains use a different consensus
panic!("Called collate_on_tanssi on solochain collator. This is unsupported and the runtime shouldn't allow this, it is a bug")
let relay_slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration(
// This will allow any signed origin to deregister chains 2000 and 2001, and register 2002.
let (registrar_paras_key_2002, para_info_2002) = mocked_relay_keys::get_mocked_registrar_paras(2002.into());
additional_keys.extend([(para_head_key, para_head_data), (relay_slot_key, Slot::from(relay_slot).encode()), (registrar_paras_key_2002, para_info_2002)]);
/// a [`RelayChainInProcessInterface`] to access relay chain data necessary for parachain operation.
/// the builder gets access to this concrete instance and instantiates a [`RelayChainInProcessInterface`] with it.
/// a [`RelayChainInProcessInterface`] to access relay chain data necessary for parachain operation.
/// the builder gets access to this concrete instance and instantiates a [`RelayChainInProcessInterface`] with it.
/// Provides an implementation of the [`RelayChainInterface`] using a local in-process relay chain node.
/// Provides an implementation of the [`RelayChainInterface`] using a local in-process relay chain node.