embed contracts required for native contract unit testing in to libtester #680
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For native contract unit testing, libtester potentially needs to
setcode
a few bios contracts at run time on the chain driving unit tests. Previously, when libtester needed these contracts it would load them from the absolute path of which mandel was built. But after amake dev-install
of mandel it's possible the build directory has been removed. And for the mandel-dev.deb package the build directory never even existed on the target.For these few bios contracts bundle them inside of libtester so that there is no need to read them from disk. This allows libtester to access them after being installed from mandel-dev.deb, for example. I was attempting to minimize code changes in this PR; I think maybe some items should be rearranged further as commented on.
Resolves #642. Work on #639.
Picks up eosnetworkfoundation/mandel-fc#46 where I moved incbin.h in to fc (and updated to latest version) (also we're seeing more fc changes picked up in this PR because a few things are stacked up...)