-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Add execute_with
to TestExternalities
#3793
Conversation
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.
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.
Looks also visually much more .appealing().as().chained().functions(). I assume this is what you meant by easier or have I missed a point here?
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.
All it does is adding the function TestExternalities, removing the re-export in primitives, and changing test for new API if I'm correct.
I like this, also I think this can allow us to move from TestExternalities duplicating code from Ext itself.
At the time I couldn't make the function with_externalities
or now set_and_run_with_externalities
working with Ext<InMemoryStuff..>
because of borrowing issues, but now maybe we can just wrap Ext<InMemoryStuff..>
and have this function on top or something to reuse most code. But let's try in following PR.
…tytech#3874) * Make tests work after the changes introduced in paritytech#3793 * Remove unneccessary import
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.
After having the discussion with @jimpo in my last pr about some function re-exporting, I came to this idea :) As written above, I think it makes tests more easily writable.
The diff is huge, but it is mostly just replacing function calls.