formatLink function

AllureLink formatLink(
  1. Map<String, String> urlTemplates,
  2. Map<String, String> nameTemplates,
  3. AllureLink link
)

Formats an Allure link with URL and name templates.

Implementation

AllureLink formatLink(
  Map<String, String> urlTemplates,
  Map<String, String> nameTemplates,
  AllureLink link,
) {
  if (_isAbsoluteUrl(link.url) || link.type == null) {
    return link;
  }

  final url = urlTemplates[link.type!];
  final formattedUrl =
      url == null ? link.url : applyLinkTemplate(url, link.url);
  final formattedName = link.name ??
      (nameTemplates[link.type!] == null
          ? null
          : applyLinkTemplate(nameTemplates[link.type!]!, link.url));

  return AllureLink(url: formattedUrl, name: formattedName, type: link.type);
}