ico-arrow-big-left

Mythril & LASER-ethereum - Unit-Testing

Key Information

Register
Submit
The challenge is finished.
Show Deadlines

Challenge Overview

Mythril is a security analysis tool for Ethereum smart contracts, written in Python. It uses the LASER-ethereum symbolic virtual machine to detect various types of issues. It can be used to analyze source, or as a nmap-style black-box blockchain scanner (an “ethermap”, if you will).

In this challenge we want you to implement unit tests for Mythril and LASER-ethereum. You will find a few existing tests in Mythril repo, but we need more of them. The target test coverage is above 80% (the more the better); be sure to setup a way to generate unit test coverage report, and implement the testing in similar way for both repositories. Follow the best practices for Python and unit-testing, and add the section on unit-testing into READMEs of both repos.

This challenge will be judged by subjective scorecard. In their scoring reviewers are expected to take into account whether: (1) the minimal test coverage has been achieved; (2) the quality of test setup and code; (3) the final test coverage.

Final Submission Guidelines

Submit Git patches for Mythril and LASER-ethereum repositoires, based on the latest commits in their master branches (12f90a3feb003c3a96b64b526e5e093194539bdd and 161c8b55528d9343f58e6438e82a038ba82e8702, at the moment of writing).

Reliability Rating and Bonus

For challenges that have a reliability bonus, the bonus depends on the reliability rating at the moment of registration for that project. A participant with no previous projects is considered to have no reliability rating, and therefore gets no bonus. Reliability bonus does not apply to Digital Run winnings. Since reliability rating is based on the past 15 projects, it can only have 15 discrete values.
Read more.

ELIGIBLE EVENTS:

2018 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board
?

Approval:

User Sign-Off
?

CHALLENGE LINKS:

Review Scorecard

?