Add execute_with to TestExternalities (#3793)

This function executes the given closure in a context where the test
externalities are set. This makes the srml tests easier to write, as the
test externalities need to be created anyway.
This commit is contained in:
Bastian Köcher
2019-10-10 15:01:30 +02:00
committed by GitHub
parent 34c7338211
commit 4dbc9265ee
44 changed files with 2369 additions and 2645 deletions
@@ -759,7 +759,6 @@ mod test3 {
#[allow(dead_code)]
mod test_append_and_len {
use runtime_io::TestExternalities;
use sr_primitives::set_and_run_with_externalities;
use codec::{Encode, Decode};
pub trait Trait {
@@ -801,7 +800,7 @@ mod test_append_and_len {
#[test]
fn default_for_option() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
assert_eq!(OptionVec::get(), None);
assert_eq!(JustVec::get(), vec![]);
});
@@ -809,7 +808,7 @@ mod test_append_and_len {
#[test]
fn append_works() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
let _ = MapVec::append(1, [1, 2, 3].iter());
let _ = MapVec::append(1, [4, 5].iter());
assert_eq!(MapVec::get(1), vec![1, 2, 3, 4, 5]);
@@ -822,7 +821,7 @@ mod test_append_and_len {
#[test]
fn append_works_for_default() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
assert_eq!(JustVecWithDefault::get(), vec![6, 9]);
let _ = JustVecWithDefault::append([1].iter());
assert_eq!(JustVecWithDefault::get(), vec![6, 9, 1]);
@@ -839,7 +838,7 @@ mod test_append_and_len {
#[test]
fn append_or_put_works() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
let _ = MapVec::append_or_insert(1, &[1, 2, 3][..]);
let _ = MapVec::append_or_insert(1, &[4, 5][..]);
assert_eq!(MapVec::get(1), vec![1, 2, 3, 4, 5]);
@@ -856,7 +855,7 @@ mod test_append_and_len {
#[test]
fn len_works() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
JustVec::put(&vec![1, 2, 3, 4]);
OptionVec::put(&vec![1, 2, 3, 4, 5]);
MapVec::insert(1, &vec![1, 2, 3, 4, 5, 6]);
@@ -871,7 +870,7 @@ mod test_append_and_len {
#[test]
fn len_works_for_default() {
set_and_run_with_externalities(&mut TestExternalities::default(), || {
TestExternalities::default().execute_with(|| {
// vec
assert_eq!(JustVec::get(), vec![]);
assert_eq!(JustVec::decode_len(), Ok(0));