Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
a693a0b
Add `engine` crate
cmichi Feb 25, 2021
e3ea5e4
Add `env_types` crate
cmichi Feb 25, 2021
eff3ada
Adapt `env`, `lang` and `storage`
cmichi Feb 25, 2021
da08ba7
Adapt examples
cmichi Feb 25, 2021
def45c2
Adapt CI
cmichi Mar 2, 2021
3956a2c
Symlink license and readme
cmichi Mar 2, 2021
a0012e9
Throw `TypedEncoded` out of `engine`
cmichi Mar 3, 2021
606c69b
Improve Erc20
cmichi Mar 3, 2021
6850b4b
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Mar 3, 2021
9c5f2ba
Bump versions to rc3
cmichi Mar 3, 2021
cc8143d
Fix clippy error: Manual implementation of `Option::map` (#717)
Mar 5, 2021
edab873
Implement comments
cmichi Mar 5, 2021
340185d
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Mar 16, 2021
cb54a77
Fix yml
cmichi Mar 16, 2021
0e0c044
Improve structure
cmichi Mar 16, 2021
be2b598
Add tests
cmichi Mar 18, 2021
02be20c
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Mar 19, 2021
46adef3
Fix function signature
cmichi Mar 22, 2021
1caada4
Get rid of `engine`s singleton
cmichi Apr 1, 2021
8a2831a
Revert instantiate stuff
cmichi Apr 13, 2021
c8117a9
Implement review comments
cmichi Apr 12, 2021
da71eea
Make `Storage` non-generic
cmichi Apr 13, 2021
b8ba878
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Apr 13, 2021
b81e4c2
Improve API for emmitted events
cmichi Apr 13, 2021
bff4609
Migrate to `panic_any`
cmichi Apr 15, 2021
655b425
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Apr 15, 2021
63da646
Clean up import
cmichi Apr 15, 2021
813301e
Import `panic_any`
cmichi Apr 15, 2021
c651d53
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi Apr 28, 2021
8391f8c
Implement comments
cmichi Apr 28, 2021
863628d
Fix param
cmichi Apr 28, 2021
b5c3688
Use type
cmichi Apr 29, 2021
eafe7ac
Store balances in chain storage
cmichi Apr 29, 2021
8f64f38
Fix tests
cmichi Apr 29, 2021
68734c8
Use individual storage per contract
cmichi Apr 29, 2021
35dd9e6
Implement comments
cmichi May 4, 2021
8fec9ae
Merge branch 'master' into cmichi-implement-new-offchain-engine-mvp
cmichi May 10, 2021
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
2 changes: 1 addition & 1 deletion crates/engine/src/ext.rs
Original file line number Diff line number Diff line change
Expand Up @@ -242,7 +242,7 @@ impl Engine {
// This enables testing for the proper result and makes sure this
// method returns `Never`.
let res = (all, beneficiary.to_vec());
panic!("{:?}", scale::Encode::encode(&res));
std::panic::panic_any(scale::Encode::encode(&res));
}

/// Returns the address of the caller.
Expand Down
20 changes: 7 additions & 13 deletions crates/env/src/engine/experimental_off_chain/test_api.rs
Original file line number Diff line number Diff line change
Expand Up @@ -356,19 +356,13 @@ pub fn assert_contract_termination<T, F>(
let value_any = ::std::panic::catch_unwind(should_terminate)
.expect_err("contract did not terminate");
let encoded_input = value_any
.downcast_ref::<String>()
.downcast_ref::<Vec<u8>>()
.expect("panic object can not be cast");
let deserialized_vec = encoded_input
.replace("[", "")
.replace("]", "")
.split(", ")
.map(|s| u8::from_str(s).expect("u8 cannot be extracted from str"))
.collect::<Vec<u8>>();
let res: (T::Balance, Vec<u8>) = scale::Decode::decode(&mut &deserialized_vec[..])
.expect("input can not be decoded");
assert_eq!(res.0, expected_value_transferred_to_beneficiary);

let beneficiary = <T::AccountId as scale::Decode>::decode(&mut &res.1[..])
.expect("input can not be decoded");
let (value_transferred, encoded_beneficiary): (T::Balance, Vec<u8>) =
scale::Decode::decode(&mut &encoded_input[..]).expect("input can not be decoded");
let beneficiary =
<T::AccountId as scale::Decode>::decode(&mut &encoded_beneficiary[..])
.expect("input can not be decoded");
assert_eq!(value_transferred, expected_value_transferred_to_beneficiary);
assert_eq!(beneficiary, expected_beneficiary);
}