Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Important: If you're upgrading snforge to version 0.48.0 or later, please read the 0.48.0 Migration Guide.

spy_events

fn spy_events() -> EventSpy

Creates EventSpy instance which spies on events emitted after its creation.

struct EventSpy { ... }

An event spy structure.

struct Events { events: Array<(ContractAddress, Event)> }

A wrapper structure on an array of events to handle event filtering.

struct Event { keys: Array<felt252>, data: Array<felt252> }

Raw event format (as seen via the RPC-API), can be used for asserting the emitted events.

Implemented traits

EventSpyTrait

trait EventSpyTrait { fn get_events(ref self: EventSpy) -> Events; }

Gets all events since the creation of the given EventSpy.

EventSpyAssertionsTrait

trait EventSpyAssertionsTrait<T, impl TEvent: starknet::Event<T>, impl TDrop: Drop<T>> { fn assert_emitted(ref self: EventSpy, events: @Array<(ContractAddress, T)>); fn assert_not_emitted(ref self: EventSpy, events: @Array<(ContractAddress, T)>); }

Allows to assert the expected events emission (or lack thereof), in the scope of the EventSpy structure.

EventsFilterTrait

trait EventsFilterTrait { fn emitted_by(self: @Events, contract_address: ContractAddress) -> Events; }

Filters events emitted by a given ContractAddress.