getSuiteLabels function

List<AllureLabel> getSuiteLabels(
  1. List<String> suites
)

Builds suite labels from a hierarchy of suite names.

Implementation

List<AllureLabel> getSuiteLabels(List<String> suites) {
  if (suites.isEmpty) {
    return const <AllureLabel>[];
  }
  if (suites.length == 1) {
    return <AllureLabel>[AllureLabel(name: 'suite', value: suites.first)];
  }
  if (suites.length == 2) {
    return <AllureLabel>[
      AllureLabel(name: 'parentSuite', value: suites.first),
      AllureLabel(name: 'suite', value: suites.last),
    ];
  }
  return <AllureLabel>[
    AllureLabel(name: 'parentSuite', value: suites.first),
    AllureLabel(name: 'suite', value: suites[1]),
    AllureLabel(name: 'subSuite', value: suites.skip(2).join(' / ')),
  ];
}