Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Format and Try Fix CI #201

Merged
merged 4 commits into from
Dec 26, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 11 additions & 5 deletions ci/script.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,27 @@ curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain=$1 -y
# Load cargo environment. Specifically, put cargo into PATH.
source ~/.cargo/env

rustc --version
# Make sure using the nightly toolchain
rustup default nightly

# Install wasm toolchain
rustup target add wasm32-unknown-unknown

rustup --version
cargo --version
rustc --version

case $2 in
"native")
sudo apt-get -y update
sudo apt-get install -y cmake pkg-config libssl-dev

cargo test --all --locked
# Unit test
cargo test --release --all --locked
;;

"wasm")
# Install prerequisites and build all wasm projects
./init.sh
./build.sh --locked
# Build test
cargo build
;;
esac
2 changes: 1 addition & 1 deletion srml/balances/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -464,7 +464,7 @@ fn balance_transfer_works() {
fn force_transfer_works() {
ExtBuilder::default().build().execute_with(|| {
let _ = Balances::deposit_creating(&1, 111);
assert_noop!(Balances::force_transfer(Some(2).into(), 1, 2, 69), "RequireRootOrigin",);
assert_noop!(Balances::force_transfer(Some(2).into(), 1, 2, 69), "RequireRootOrigin");
assert_ok!(Balances::force_transfer(RawOrigin::Root.into(), 1, 2, 69));
assert_eq!(Balances::total_balance(&1), 42);
assert_eq!(Balances::total_balance(&2), 69);
Expand Down
2 changes: 1 addition & 1 deletion srml/eth-relay/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use codec::{Decode, Encode};
use rstd::{result, vec::Vec};
use sr_primitives::RuntimeDebug;
use support::{decl_event, decl_module, decl_storage, dispatch::Result, ensure, traits::Get};
use system::{ensure_signed, ensure_root};
use system::{ensure_root, ensure_signed};

use ethash::{EthereumPatch, LightDAG};
use merkle_patricia_trie::{trie::Trie, MerklePatriciaTrie, Proof};
Expand Down
34 changes: 15 additions & 19 deletions srml/im-online/src/mock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@
use std::cell::RefCell;

use crate::{Module, Trait};
use sr_primitives::Perbill;
use sr_staking_primitives::{SessionIndex, offence::ReportOffence};
use sr_primitives::testing::{Header, UintAuthorityId, TestXt};
use sr_primitives::traits::{IdentityLookup, BlakeTwo256, ConvertInto};
use primitives::H256;
use support::{impl_outer_origin, impl_outer_dispatch, parameter_types};
use sr_primitives::testing::{Header, TestXt, UintAuthorityId};
use sr_primitives::traits::{BlakeTwo256, ConvertInto, IdentityLookup};
use sr_primitives::Perbill;
use sr_staking_primitives::{offence::ReportOffence, SessionIndex};
use support::{impl_outer_dispatch, impl_outer_origin, parameter_types};
use {runtime_io, system};

impl_outer_origin!{
impl_outer_origin! {
pub enum Origin for Runtime {}
}

Expand All @@ -45,25 +45,22 @@ thread_local! {

pub struct TestOnSessionEnding;
impl session::OnSessionEnding<u64> for TestOnSessionEnding {
fn on_session_ending(_ending_index: SessionIndex, _will_apply_at: SessionIndex)
-> Option<Vec<u64>>
{
fn on_session_ending(_ending_index: SessionIndex, _will_apply_at: SessionIndex) -> Option<Vec<u64>> {
VALIDATORS.with(|l| l.borrow_mut().take())
}
}

impl session::historical::OnSessionEnding<u64, u64> for TestOnSessionEnding {
fn on_session_ending(_ending_index: SessionIndex, _will_apply_at: SessionIndex)
-> Option<(Vec<u64>, Vec<(u64, u64)>)>
{
VALIDATORS.with(|l| l
.borrow_mut()
.take()
.map(|validators| {
fn on_session_ending(
_ending_index: SessionIndex,
_will_apply_at: SessionIndex,
) -> Option<(Vec<u64>, Vec<(u64, u64)>)> {
VALIDATORS.with(|l| {
l.borrow_mut().take().map(|validators| {
let full_identification = validators.iter().map(|v| (*v, *v)).collect();
(validators, full_identification)
})
)
})
}
}

Expand All @@ -90,7 +87,6 @@ pub fn new_test_ext() -> runtime_io::TestExternalities {
t.into()
}


#[derive(Clone, PartialEq, Eq, Debug)]
pub struct Runtime;

Expand Down Expand Up @@ -131,7 +127,7 @@ parameter_types! {
impl session::Trait for Runtime {
type ShouldEndSession = session::PeriodicSessions<Period, Offset>;
type OnSessionEnding = session::historical::NoteHistoricalRoot<Runtime, TestOnSessionEnding>;
type SessionHandler = (ImOnline, );
type SessionHandler = (ImOnline);
type ValidatorId = u64;
type ValidatorIdOf = ConvertInto;
type Keys = UintAuthorityId;
Expand Down
95 changes: 45 additions & 50 deletions srml/im-online/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,14 @@
use super::*;
use crate::mock::*;
use offchain::testing::TestOffchainExt;
use primitives::offchain::{OpaquePeerId, OffchainExt};
use support::{dispatch, assert_noop};
use primitives::offchain::{OffchainExt, OpaquePeerId};
use sr_primitives::testing::UintAuthorityId;
use support::{assert_noop, dispatch};

#[test]
fn test_unresponsiveness_slash_fraction() {
// A single case of unresponsiveness is not slashed.
assert_eq!(
UnresponsivenessOffence::<()>::slash_fraction(1, 50),
Perbill::zero(),
);
assert_eq!(UnresponsivenessOffence::<()>::slash_fraction(1, 50), Perbill::zero());

assert_eq!(
UnresponsivenessOffence::<()>::slash_fraction(3, 50),
Expand Down Expand Up @@ -64,17 +61,17 @@ fn should_report_offline_validators() {

// then
let offences = OFFENCES.with(|l| l.replace(vec![]));
assert_eq!(offences, vec![
(vec![], UnresponsivenessOffence {
session_index: 2,
validator_set_count: 3,
offenders: vec![
(1, 1),
(2, 2),
(3, 3),
],
})
]);
assert_eq!(
offences,
vec![(
vec![],
UnresponsivenessOffence {
session_index: 2,
validator_set_count: 3,
offenders: vec![(1, 1), (2, 2), (3, 3)],
}
)]
);

// should not report when heartbeat is sent
for (idx, v) in validators.into_iter().take(4).enumerate() {
Expand All @@ -84,25 +81,21 @@ fn should_report_offline_validators() {

// then
let offences = OFFENCES.with(|l| l.replace(vec![]));
assert_eq!(offences, vec![
(vec![], UnresponsivenessOffence {
session_index: 3,
validator_set_count: 6,
offenders: vec![
(5, 5),
(6, 6),
],
})
]);
assert_eq!(
offences,
vec![(
vec![],
UnresponsivenessOffence {
session_index: 3,
validator_set_count: 6,
offenders: vec![(5, 5), (6, 6)],
}
)]
);
});
}

fn heartbeat(
block_number: u64,
session_index: u32,
authority_index: u32,
id: UintAuthorityId,
) -> dispatch::Result {
fn heartbeat(block_number: u64, session_index: u32, authority_index: u32, id: UintAuthorityId) -> dispatch::Result {
#[allow(deprecated)]
use support::unsigned::ValidateUnsigned;

Expand All @@ -119,11 +112,7 @@ fn heartbeat(

#[allow(deprecated)] // Allow ValidateUnsigned
ImOnline::pre_dispatch(&crate::Call::heartbeat(heartbeat.clone(), signature.clone()))?;
ImOnline::heartbeat(
Origin::system(system::RawOrigin::None),
heartbeat,
signature
)
ImOnline::heartbeat(Origin::system(system::RawOrigin::None), heartbeat, signature)
}

#[test]
Expand Down Expand Up @@ -211,12 +200,15 @@ fn should_generate_heartbeats() {
e => panic!("Unexpected call: {:?}", e),
};

assert_eq!(heartbeat, Heartbeat {
block_number: 2,
network_state: runtime_io::offchain::network_state().unwrap(),
session_index: 2,
authority_index: 2,
});
assert_eq!(
heartbeat,
Heartbeat {
block_number: 2,
network_state: runtime_io::offchain::network_state().unwrap(),
session_index: 2,
authority_index: 2,
}
);
});
}

Expand Down Expand Up @@ -314,11 +306,14 @@ fn should_not_send_a_report_if_already_online() {
e => panic!("Unexpected call: {:?}", e),
};

assert_eq!(heartbeat, Heartbeat {
block_number: 4,
network_state: runtime_io::offchain::network_state().unwrap(),
session_index: 2,
authority_index: 0,
});
assert_eq!(
heartbeat,
Heartbeat {
block_number: 4,
network_state: runtime_io::offchain::network_state().unwrap(),
session_index: 2,
authority_index: 0,
}
);
});
}
2 changes: 1 addition & 1 deletion srml/staking/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3727,7 +3727,7 @@ fn xavier_q2() {
unbondings: vec![NormalLock {
amount: 2,
until: BondingDuration::get() + unbond_start_1,
},],
}],
}),
reasons: WithdrawReasons::all(),
}]
Expand Down