Skip to main content
Version: 16.0

Spectacular

@ngworker/spectacular

Spectacular Angular integration testing.

Spectacular offers test harnesses for Angular applications and libraries.

Compatibility

Required peer dependencies:

  • Angular >=16.0
  • RxJS >=6.5 <7.0 or >=7.4
  • TypeScript >=4.9

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 provideSpectacularFeatureTesting, bootstrap SpectacularAppComponent and navigate to the default feature route.
CreateFeatureHarnessOptionsOptions for createFeatureHarnessFeature harness options.
provideSpectacularFeatureTestingProvider factoryConfigure SpectacularFeatureLocation and SpectacularFeatureRouter
ProvideSpectacularFeatureTestingOptionsOptions for provideSpectacularFeatureTestingSpectacular feature testing options.
SpectacularFeatureHarnessInterfaceA harness for testing an Angular feature module.
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.
withInitialFeatureNavigationFeature providerEnables initial feature navigation.

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.