metacontract/mc

StorageReader does not work when the schema includes a mapping

Closed this issue · 1 comments

  • By defining StorageReader as a library, it becomes possible to handle storage returns (StorageReader should only be used during testing, so this shouldn't be a problem).

  • In the test contract, register the dictionary of the deployed mc, and set it to make delegatecalls to the proxy and save the state in the test contract. This way, the StorageReader library can be used to read the state.

    • However, when using this method, developers must specify delegatecall every time they access mc, which reduces readability. Therefore, an appropriate wrapper contract needs to be prepared (TODO).
    • Moreover, when writing tests that handle multiple mcs, only one dictionary can be registered in the test contract (requiring clever solutions like integrating dictionaries).

We will close this issue as it has been resolved through state fuzzing tests.