-
Notifications
You must be signed in to change notification settings - Fork 42
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
refactor(test): migrate unit tests to the new motsu layout #423
Conversation
…ontract-deployment
✅ Deploy Preview for contracts-stylus canceled.
|
contracts/src/token/erc721/mod.rs
Outdated
#[motsu::test] | ||
fn on_erc721_received( | ||
erc721: Contract<Erc721>, | ||
receiver: Contract<Erc721ReceiverMock>, | ||
) { | ||
let alice = Account::random(); | ||
let token_id = random_token_id(); | ||
erc721 | ||
.sender(alice) | ||
._safe_mint(receiver.address(), token_id, vec![0, 1, 2, 3].into()) | ||
.unwrap(); | ||
|
||
let received_token_id = receiver.sender(alice).received_token_id(); | ||
|
||
assert_eq!(received_token_id, token_id); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall the test case for Erc721Receiver
can look like this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR looks like it took quite a bit of time, kudos to you both!
let (token_ids, values) = | ||
contract.init(alice, |contract| init(contract, bob, 1)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tbh this looks less clear compared to doing the same manually:
let mut callable = contract.sender(alice);
let (token_ids, values) = init(&mut callable, bob, 1);
I think it's safe to merge this PR, as it doesn't rely on e2e tests, only on unit tests (which pass) |
This pr contains migration of unit test to the new layout of motsu unit tests, that will be introduced in OpenZeppelin/stylus-test-helpers#8 and OpenZeppelin/stylus-test-helpers#12
Resolves #470
PR Checklist