bootstrapRuntime method

Future<EnsembleConfig> bootstrapRuntime(
  1. EnsembleConfig config,
  2. EnsembleTestSetup setup, {
  3. TestApiProviderOverlay? apiOverlay,
})

Implementation

Future<EnsembleConfig> bootstrapRuntime(
  EnsembleConfig config,
  EnsembleTestSetup setup, {
  TestApiProviderOverlay? apiOverlay,
}) async {
  ensureTestPlugins();
  await ensureAppFontsLoaded();

  final env = Map<String, dynamic>.from(config.envOverrides ?? {});
  env['firebase_app_check'] = 'false';
  if (setup.envOverrides != null && setup.envOverrides!.isNotEmpty) {
    env.addAll(setup.envOverrides!);
  }
  config.updateEnvOverrides(env);
  Ensemble().setEnsembleConfig(config);
  if (externalMethods != null && externalMethods!.isNotEmpty) {
    Ensemble().setExternalMethods(externalMethods!);
  }

  await Ensemble().initManagers();
  await initializeRealApiProviders(config);

  if (apiOverlay != null) {
    installTestApiOverlay(config, apiOverlay);
  }
  await applyYamlTestStorageBootstrap(setup);

  YamlTestSession.markRuntimeBootstrapped();
  return config;
}