testing/cep library
Test support for the v2 core ↔ CEP contract.
Ships with the SDK rather than living in each plugin repo because the
guarantees it fakes are core's, not a plugin's. A plugin suite that drives
its plugin through FakeCEPHost is testing against the same
PresentationController the real core settles through, so a scenario that
passes here cannot pass for the wrong reason.
import 'package:digia_engage/testing/cep.dart';
Classes
- CampaignPresentation
- A claim ticket for one delivered trigger, owned exclusively by the plugin that delivered it.
- CEPTriggerPayload
- The translation contract between a CEP plugin and Digia's rendering engine.
- ClickedSignal
- A qualifying interaction with the experience.
- DigiaCEPHost
-
Core's door, handed to each plugin in
DigiaCEPPlugin.attach. The plugin's only way into the Digia engine. - DigiaCEPPlugin
-
Implemented by each CEP plugin package —
digia_engage_clevertap,digia_webengage_plugin,digia_moengage_plugin. - DisplayedSignal
- The experience became visible. Fires at most once, before any other signal, and never on a presentation that ends up dropped.
- FakeCEPHost
- A scriptable DigiaCEPHost for plugin tests.
- PendingPayloadBuffer
- Holds a plugin's CEP triggers while core is not READY.
- PresentationController
- The write face of a presentation: the half only the hosting core holds.
- PresentationDismissed
- The experience displayed, and has now left the screen.
- PresentationDropped
- The experience never displayed.
- PresentationOutcome
- The exactly-once terminal result of a presentation.
- PresentationSignal
- A mid-flight signal scoped to one presentation, delivered only to the plugin that owns it.
Enums
- DismissReason
- How a presentation that did display ended.
- DropReason
- Why a presentation ended without ever displaying.
- PresentationState
- The lifecycle phase of a presentation.