mergePackageTestMetadata function

PackageTestMetadata mergePackageTestMetadata(
  1. PackageTestMetadata runtimeMetadata,
  2. PackageTestMetadata? declarationMetadata
)

Merges runtime metadata with metadata captured at declaration time.

Implementation

PackageTestMetadata mergePackageTestMetadata(
  PackageTestMetadata runtimeMetadata,
  PackageTestMetadata? declarationMetadata,
) {
  if (declarationMetadata == null) {
    return runtimeMetadata;
  }
  return PackageTestMetadata(
    name: runtimeMetadata.name,
    fullName: runtimeMetadata.fullName,
    testCaseName: declarationMetadata.testCaseName,
    titlePath: runtimeMetadata.titlePath,
    groupPath: runtimeMetadata.groupPath,
    packagePath: runtimeMetadata.packagePath,
    labels: <AllureLabel>[
      ...declarationMetadata.labels,
      ...runtimeMetadata.labels,
    ],
    links: <AllureLink>[
      ...declarationMetadata.links,
      ...runtimeMetadata.links,
    ],
    parameters: <AllureParameter>[
      ...declarationMetadata.parameters,
      ...runtimeMetadata.parameters,
    ],
    externalId: declarationMetadata.externalId ?? runtimeMetadata.externalId,
    nativeSelector:
        declarationMetadata.nativeSelector ?? runtimeMetadata.nativeSelector,
    rawTags: runtimeMetadata.rawTags,
    skipped: runtimeMetadata.skipped,
  );
}