You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To test a complete transaction processing workflow, we need to initiate a celesta service in an external docker container. As a result, we are unable to execute self-contained E2E unit tests for the rollup. To address this limitation, we should create a MockDaService that stores transaction blobs in memory. This will allow us to perform tests without relying on the external service.
Proposed solution:
1. Extract the blob processing logic from demo-rollup. The logic should depend only on the DaService trait instead of a specific DA implementation. This abstract logic will reside in a separate crate (called rollup?), which will be responsible for "running" the rollup. Take a look at issue Move out custom rollup logic from demo-rollup and demo-prover #459 for more details.
2. Implementdemo-rollup using (1). The main function of the demo-rollup should take a runtime, rollup and specific da service (celestial for now) and seamlessly integrate them with very little custom logic involved.
3. Implement the DaService trait for MockDaService. We can start from the following code.
4. Test (1) with the MockDaService
5. Use (1) & (3) for E2E tests for our runtime (including queries and send_transaction endpoints)
The text was updated successfully, but these errors were encountered:
Background
To test a complete transaction processing workflow, we need to initiate a
celesta
service in an external docker container. As a result, we are unable to execute self-contained E2E unit tests for the rollup. To address this limitation, we should create aMockDaService
that stores transaction blobs in memory. This will allow us to perform tests without relying on the external service.Proposed solution:
demo-rollup
. The logic should depend only on theDaService
trait instead of a specific DA implementation. This abstract logic will reside in a separate crate (calledrollup
?), which will be responsible for "running" the rollup. Take a look at issue Move out custom rollup logic fromdemo-rollup
anddemo-prover
#459 for more details.demo-rollup
using (1). The main function of thedemo-rollup
should take aruntime
,rollup
andspecific da service (celestial for now)
and seamlessly integrate them with very little custom logic involved.DaService
trait forMockDaService
. We can start from the following code.MockDaService
send_transaction
endpoints)The text was updated successfully, but these errors were encountered: