mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 04:07:57 +00:00
53cbda1de6
* test-runtime: GenesisBuilder runtime API impl + tests This PR provides implementation of `GenesisBuilder` API for `substrate-test-runtime`, can be considered as reference imiplementation for other runtimes. The `GenesisBuilder` implementation is gated by `gensis-config` feature. Tested scenarios: - default `GenesisConfig` to JSON blob, - deserialization of `GenesisConfig` from custom JSON, and storing its keys into the Storage (genesis storage creation). - creation of genesis storage using partial JSON definition, - checking if invalid/renamed JSON files causes the runtime to panic, * missing file added * client: GenesisBuilder helper added * feature renamed: genesis-config -> genesis-builder * Update Cargo.toml * Update Cargo.toml * Update Cargo.toml * Update Cargo.toml * redundant function removed * genesis builder helper: introduced RuntimeGenesisBuild * test-runtime: get rid of unused T * redundant bound removed * helper: use GenesisBuild again * tests adjusted for on_genesis * test-runtime: support for BuildGenesisConfig * helper: BuildGenesisConfig support * Update client/genesis-builder/src/lib.rs Co-authored-by: Davide Galassi <davxy@datawok.net> * Update test-utils/runtime/src/test_json/readme.md Co-authored-by: Davide Galassi <davxy@datawok.net> * Update test-utils/runtime/src/test_json/readme.md Co-authored-by: Davide Galassi <davxy@datawok.net> * Update test-utils/runtime/src/genesismap.rs Co-authored-by: Davide Galassi <davxy@datawok.net> * jsons are now human-friendly * fix * improvements * jsons fixed * helper: no_defaults added * test-runtime: no_defaults added * test-runtime: patching fn removed * helper: patching fn removed * helper: moved to frame_support * test-runtime: fixes * Cargo.lock updated * fmt + naming * test-runtime: WasmExecutor used * helper / test-runtime: struct removed * test-runtime: merge fixes * Cargo.lock + test-utils/runtime/Cargo.toml updated * doc fixed * client/rpc: test fixed (new rt api) * client/rpc-spec-v2: test fix * doc fix * test-runtime: disable-genesis-builder feature * fix * fix * ".git/.scripts/commands/fmt/fmt.sh" * test-runtime: rerun added to build script --------- Co-authored-by: Davide Galassi <davxy@datawok.net> Co-authored-by: parity-processbot <>
58 lines
1.9 KiB
Rust
58 lines
1.9 KiB
Rust
// This file is part of Substrate.
|
|
|
|
// 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.
|
|
|
|
const BUILD_NO_GENESIS_BUILDER_SUPPORT_ENV: &str = "BUILD_NO_GENESIS_BUILDER_SUPPORT";
|
|
|
|
fn main() {
|
|
#[cfg(feature = "std")]
|
|
{
|
|
substrate_wasm_builder::WasmBuilder::new()
|
|
.with_current_project()
|
|
.export_heap_base()
|
|
// Note that we set the stack-size to 1MB explicitly even though it is set
|
|
// to this value by default. This is because some of our tests
|
|
// (`restoration_of_globals`) depend on the stack-size.
|
|
.append_to_rust_flags("-Clink-arg=-zstack-size=1048576")
|
|
.import_memory()
|
|
.build();
|
|
}
|
|
|
|
#[cfg(feature = "std")]
|
|
if std::env::var(BUILD_NO_GENESIS_BUILDER_SUPPORT_ENV).is_ok() {
|
|
substrate_wasm_builder::WasmBuilder::new()
|
|
.with_current_project()
|
|
.export_heap_base()
|
|
.append_to_rust_flags("-Clink-arg=-zstack-size=1048576")
|
|
.set_file_name("wasm_binary_no_genesis_builder")
|
|
.import_memory()
|
|
.enable_feature("disable-genesis-builder")
|
|
.build();
|
|
}
|
|
println!("cargo:rerun-if-env-changed={}", BUILD_NO_GENESIS_BUILDER_SUPPORT_ENV);
|
|
|
|
#[cfg(feature = "std")]
|
|
{
|
|
substrate_wasm_builder::WasmBuilder::new()
|
|
.with_current_project()
|
|
.export_heap_base()
|
|
.import_memory()
|
|
.set_file_name("wasm_binary_logging_disabled.rs")
|
|
.enable_feature("disable-logging")
|
|
.build();
|
|
}
|
|
}
|