cowprotocol/ebbo

Restructure codebase

Opened this issue · 0 comments

We decided to restructure the code to make it easier to maintain and extend.

The general structure would be as follows:

  • Data collection via APIs which are encapsulated in classes, e.g., Web3API, OrderbookAPI
  • Data processing in tests; each test has its own class and depends on different APIs for fetching data
  • unit tests and end-to-end tests using mock instances for the data fetching

It might be possible to make those changes one by one, without breaking the code.

TODO:

  • implement prototype for iterating on the design
  • move all data fetching to API classes
  • convert all monitoring tests into new format
  • add unit tests and e2e tests