onScreen method

  1. @override
Future<void> onScreen({
  1. required AFScreenID startScreen,
  2. AFScreenID? endScreen,
  3. AFBaseTestID? queryResults,
  4. required dynamic body(
    1. AFScreenTestExecute
    ),
  5. bool verifyScreen = true,
  6. bool printResults = true,
})
override

Implementation

@override
Future<void> onScreen({
  required AFScreenID startScreen,
  AFScreenID? endScreen,
  AFBaseTestID? queryResults,
  required Function(AFScreenTestExecute) body,
  bool verifyScreen = true,
  bool printResults = true
}) async {
  if(verifyScreen) {
    AFibF.g.testOnlyVerifyActiveScreen(startScreen);
  }
  endScreen ??= startScreen;
  screenContext.startSection(startScreen, resetSection: true);
  if(printResults) {
    screenContext.printStartTest(startScreen);
  }
  _installQueryResults(queryResults);
  await screenContext.underScreen(startScreen, () async {
    AFibD.logTestAF?.d("Starting underScreen");

    final fut = body(screenContext);
    await fut;
  });

  screenContext.endSection();
  if(printResults) {
    screenContext.printFinishTest(startScreen);
  }
  AFibD.logTestAF?.d("Finished underscreen");

  await screenContext.pauseForRender();
  if(verifyScreen) {
    AFibF.g.testOnlyVerifyActiveScreen(endScreen);
  }
}