Skip to content

Draft: [#802] Support YAML tests in Cleveland

Nikolay Yakimov requested to merge lierdakil/#802-yaml-scenarios into master

Description

This is a rough draft of #802. Still not 100% compliant with the proposal, but as a POC it works. All that remains is to refine this a lot and add tests.

Getting pretty close to MVP. Still needs some refinement, particularly in the error reporting department, and tests. Also still need to set up network tests depending on emulator tests. Also still need to figure out how to handle big maps. Finally, need to use a cleaner argument parser.

One possible contention point is YAML "interpreter" has to remember types of contracts it loads, which means it can't handle contracts that were originated "outside". This is arguably not an issue for a testing framework. (but we can try to get the contract's type from the network if running on network only; it'll get pretty awkward, though)

The primary reason for creating this MR is to kill some weeds (running weeder locally is a chore)

Related issue(s)

Resolves #802 (eventually)

Checklist for your Merge Request

Related changes (conditional)

  • Tests (see short guidelines)

    • If I added new functionality, I added tests covering it.
    • If I fixed a bug, I added a regression test to prevent the bug from silently reappearing again.
  • Documentation

    • I checked whether I should update the docs and did so if necessary:
    • I updated changelog files of all affected packages released to Hackage if my changes are externally visible.

Stylistic guide (mandatory)

Edited by Nikolay Yakimov

Merge request reports