Skip to main content
Version: 13.0

Spectacular

@ngworker/spectacular

Spectacular Angular integration testing.

Spectacular offers test harnesses for Angular applications and libraries.

Compatibility

Required peer dependencies:

  • Angular >=13.0
  • RxJS >=6.5 <7.0 or >=7.4
  • TypeScript >=4.4

Published with partial Ivy compilation.

Application testing

Spectacular's application testing API configures the Angular testing module and bootstraps a component while ensuring that all application-level hooks are run.

The application test harness is used to test configuration Angular modules, bootstrap listeners, and application initializers.

Public API

Export nameKindDescription
createApplicationHarnessFactory for SpectacularApplicationHarnessBootstrap a Spectacular application with the specified metadata. Useful to test configuration Angular modules, bootstrap listeners, and application initializers.
CreateApplicationHarnessOptionsOptions for createApplicationHarnessApplication harness options.
SpectacularApplicationHarnessInterfaceA harness for testing application-level software artifacts.

Feature testing

Spectacular's feature testing API configures the Angular testing module and sets up a test harness for a routed Angular feature module. It contains a few companion services that wrap Angular's built-in navigation services, but adjusted to the Angular feature module under test.

The feature test harness is used to test routed feature modules and shell modules.

Public API

Export nameKindDescription
createFeatureHarnessFactory for SpectacularFeatureHarnessConfigure SpectacularFeatureTestingModule, bootstrap SpectacularAppComponent and navigate to the default feature route.
CreateFeatureHarnessOptionsOptions for createFeatureHarnessFeature harness options.
provideSpectacularFeatureTestProvider factoryConfigure SpectacularFeatureLocation and SpectacularFeatureRouter
ProvideSpectacularFeatureTestOptionsOptions for provideSpectacularFeatureTestSpectacular feature test options.
SpectacularFeatureHarnessInterfaceA harness for testing an Angular feature module.
SpectacularFeatureTestingModuleAngular testing configuration moduleConfigure the RouterTestingModule and provide Spectactular services for testing feature modules.
SpectacularFeatureTestingModuleOptionsOptions for SpectacularFeatureTestingModuleFeature testing options for SpectacularFeatureTestingModule.withFeature.
SpectacularFeatureLocationServiceA subset of Angular's Location service adjusted to the Angular feature module under test.
SpectacularFeatureRouterServiceA subset of Angular's Router service adjusted to the Angular feature module under test.

Internal API

Export nameKindDescription
SpectacularFeatureTestingRootModuleInternal Angular testing configuration moduleInternal use only. Used by SpectacularFeatureTestingModule.withFeature.

Pipe testing

Spectacular's pipe testing API configures the Angular testing module and sets up a host component for the Angular pipe under test.

Public API

Export nameKindDescription
createPipeHarnessSpectacularPipeHarness factorySet up a host component for the Angular pipe under test.
CreatePipeHarnessOptionsOptions for createPipeHarnessAngular pipe harness options.
SpectacularPipeHarnessInterfaceA harness for testing an Angular pipe.

Shared

Test utilities used by Spectacular's other APIs.

Public API

Export nameKindDescription
SpectacularAppComponentBootstrapped componentThe root component which is bootstrapped for a Spectacular test.
spectacularAppTagStringThe tag name of SpectacularAppComponents DOM element.