Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

EOSIO.CDT test porting/contract refactor #6329

Merged
merged 75 commits into from
Jan 3, 2019
Merged

EOSIO.CDT test porting/contract refactor #6329

merged 75 commits into from
Jan 3, 2019

Conversation

johndebord
Copy link
Contributor

@johndebord johndebord commented Nov 15, 2018

Rundown of Various Changes

  • All smart contracts have been refactored to be able to compile with eosio-cpp version 1.4.1.
    With that, the most up-to-date patterns have been implemented in their appropriate contracts.

  • All CMakeLists.txt files have been refactored to make eos loosely coupled with eosio.cdt.
    Meaning that while building eos, the build system will check if the eosio.cdt toolset has been installed. If it has been installed, then all contracts will build in accordance with the eosio.cdt toolset. Else, each contracts' respective .wasm and .abi files will be copied* into the build folder during the compilation process in order to successfully run the unit tests.

  • All unit tests in directory eos/unittests/ have been refactored to get all tests up to date and passing,
    as well as to act in accordance with the new contracts.hpp.in file, which houses the interface to all contracts' respective .wasm and .abi generated files.

  • All smoke tests in directory eos/tests/ have also been ported to get tests up to date and passing.

  • Obsolete and redundant contracts have been removed, and all eosio.* contracts have been moved to the eos/unittests/contracts/ directory.

  • The eos/contracts/ directory has been moved and renamed to eos/unittests/test-contracts/.

*Note that each contract now supplies its own pre-generated .wasm file in its respective directory.
But not all contracts supply their respective .abi file; namely all test_api* test contracts.

Consensus Changes
N/A

API Changes
N/A

Documentation Additions
Renaming and moving the eos/contracts/ directory to eos/unittests/test-contracts/ conflicts with the current tutorials in the eosio developer portal. This move is to reinforce that smart contract developers should not look to the eos/unittests/test-contracts/ directory for production quality contract examples, but should instead be referred to the eosio.contracts repository for well written/tested contracts.

@johndebord johndebord changed the title EOSIO.CDT unit test porting/contract refactor (DO NOT MERGE) EOSIO.CDT test porting/contract refactor Dec 19, 2018
@johndebord johndebord merged commit 7894fd5 into EOSIO:develop Jan 3, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants