startedContainer function

Future<AppContainer> startedContainer({
  1. required List<AnyFeature> features,
  2. ContainerOptions? options,
  3. Logger? logger,
})

Spins up an AppContainer, registers disposal via addTearDown, and awaits start(). Returns the ready-to-use container.

Replaces the common three-liner:

final container = AppContainer(features: [...]);
addTearDown(container.stop);
await container.start();

Implementation

Future<AppContainer> startedContainer({
  required List<AnyFeature> features,
  ContainerOptions? options,
  Logger? logger,
}) async {
  final container = AppContainer(
    features: features,
    options: options ?? silentOptions(),
    logger: logger,
  );
  addTearDown(container.stop);
  await container.start();
  return container;
}