Files
pezkuwi-subxt/cumulus/polkadot-parachain/tests/purge_chain_works.rs
T
Bastian Köcher 429e9eae09 Companion for Polkadot#7451 (#2807)
* Companion for Polkadot#7451

https://github.com/paritytech/polkadot/pull/7451

* Update Substrate & Polkadot

* FMT

* Fix integration tests

* Bring back `polkadot-native` feature for now

* 🤦
2023-07-04 15:39:05 +00:00

54 lines
1.9 KiB
Rust

// Copyright 2020-2021 Parity Technologies (UK) Ltd.
// This file is part of Substrate.
// Substrate is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// Substrate is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
// You should have received a copy of the GNU General Public License
// along with Substrate. If not, see <http://www.gnu.org/licenses/>.
use assert_cmd::cargo::cargo_bin;
use nix::sys::signal::SIGINT;
use std::process::Command;
use tempfile::tempdir;
mod common;
#[tokio::test]
#[cfg(unix)]
#[ignore]
async fn purge_chain_works() {
// Check that both databases are deleted
let base_dir = tempdir().expect("could not create a temp dir");
let base_dir_path = format!("{}/polkadot", base_dir.path().display());
let args = &["--", "-d", &base_dir_path, "--chain=rococo-local"];
common::run_node_for_a_while(base_dir.path(), args, SIGINT).await;
assert!(base_dir.path().join("chains/local_testnet/db/full").exists());
assert!(base_dir.path().join("polkadot/chains/rococo_local_testnet/db/full").exists());
let status = Command::new(cargo_bin("polkadot-parachain"))
.args(["purge-chain", "-d"])
.arg(base_dir.path())
.arg("-y")
.status()
.unwrap();
assert!(status.success());
// Make sure that the `parachain_local_testnet` chain folder exists, but the `db` is deleted.
assert!(base_dir.path().join("chains/local_testnet").exists());
assert!(!base_dir.path().join("chains/local_testnet/db/full").exists());
assert!(base_dir.path().join("polkadot/chains/rococo_local_testnet").exists());
assert!(!base_dir.path().join("polkadot/chains/rococo_local_testnet/db/full").exists());
}