scalus.testing.stream

Members list

Type members

Classlikes

The provider under test, plus the minimum needed to make its chain move.

The provider under test, plus the minimum needed to make its chain move.

Kept deliberately small: anything richer would be expressible only by some backends, and a conformance suite that only the emulator can run is not a conformance suite.

Attributes

Supertypes
class Object
trait Matchable
class Any
abstract class StreamProviderConformance extends AnyFunSuite

What a BlockchainStreamProvider must do, whatever it is backed by.

What a BlockchainStreamProvider must do, whatever it is backed by.

The point of the facade is that application code moves between an emulator, a REST-backed provider and a full indexer by changing construction and nothing else. That promise needs a test, not a paragraph: every implementation runs this suite, including implementations living outside this repository.

The suite reads the provider's own StreamCapabilities and holds it to what it declared — so it does not merely check that a provider works, it checks that its self-description is honest. A provider claiming it never signals rollbacks must not emit one; a provider claiming it cannot replay must refuse StartFrom.At; a provider claiming a query kind is indexed must accept it without allowUnindexedScan. That is what makes capabilities safe to act on.

Attributes

Supertypes
class AnyFunSuite
trait AnyFunSuiteLike
trait Documenting
trait Alerting
trait Notifying
trait Informing
trait TestRegistration
trait TestSuite
trait Suite
trait Serializable
trait Assertions
trait TripleEquals
trait TripleEqualsSupport
class Object
trait Matchable
class Any
Show all