{"repo":"alexfertel/bulloak","free":true,"listed":false,"github":"https://github.com/alexfertel/bulloak","clone":"git clone https://github.com/alexfertel/bulloak.git","description":"Generate tests based on the Branching Tree Technique.","language":"Rust","stars":351,"topics":["cli","solidity","testing","tree"],"license":"Apache-2.0","category":"blockchain-web3","readme_excerpt":"bulloak A Solidity test generator based on the Branching Tree Technique. - Installation - VSCode - Usage - bulloak scaffold - bulloak check - Rules - Compiler Errors - Trees - Terminology - Spec - Output - Examples - Contributing - Publishing - Supported By - License [!WARNING] Note that bulloak is still 0. . , so breaking changes may occur at any time. If you must depend on bulloak , we recommend pinning to a specific version, i.e., =0.y.z . Installation VSCode The following VSCode extensions are not essential but they are recommended for a better user experience: - Solidity Inspector - syntax highlighting for .tree files - Ascii Tree Generator: convenient way to generate ASCII trees Usage bulloak implements two commands: - bulloak scaffold - bulloak check Scaffold Solidity Files Say you have a foo.tree file with the following contents: You can use bulloak scaffold to generate a Solidity contract containing modifiers and tests that match the spec described in foo.tree . The following will be printed to stdout : You can use the -w option to write the generated contracts to the file system. Say we have a bunch of .tree files in the current working directory. If we run the following: bulloak will create a .t.sol file per .tree file and write the generated contents to it. If a .t.sol file's title matches a .tree in the same directory, then bulloak will skip writing to that file. However, you may override this behavior with the -f flag. This will force bulloak to overwrite the co","default_branch":null,"files":null,"tree":[],"storefront":"/r/alexfertel","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/alexfertel/bulloak/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}