private List<Requirement> removeRequirementsWithoutTestsFrom(List<Requirement> requirements) { List<Requirement> prunedRequirements = Lists.newArrayList(); for(Requirement requirement : requirements) { if (testsExistFor(requirement)) { List<Requirement> prunedChildren = removeRequirementsWithoutTestsFrom(requirement.getChildren()); prunedRequirements.add(requirement.withChildren(prunedChildren)); } } return ImmutableList.copyOf(prunedRequirements); }
private List<Requirement> removeRequirementsWithoutTestsFrom(List<Requirement> requirements) { List<Requirement> prunedRequirements = Lists.newArrayList(); for(Requirement requirement : requirements) { if (testsExistFor(requirement)) { List<Requirement> prunedChildren = removeRequirementsWithoutTestsFrom(requirement.getChildren()); prunedRequirements.add(requirement.withChildren(prunedChildren)); } } return ImmutableList.copyOf(prunedRequirements); }
private Set<Requirement> removeRequirementsWithoutTestsFrom(Collection<Requirement> requirements) { Set<Requirement> prunedRequirements = new HashSet<>(); for (Requirement requirement : requirements) { if (testsExistFor(requirement)) { Set<Requirement> prunedChildren = removeRequirementsWithoutTestsFrom(requirement.getChildren()); prunedRequirements.add(requirement.withChildren(new ArrayList<>(prunedChildren))); } } return prunedRequirements; }
public RequirementsOutcomes getReleasedRequirementsFor(Release release) { Set<Requirement> matchingRequirements = new HashSet<>(); Set<TestOutcome> matchingTestOutcomes = new HashSet<>(); // Add all test outcomes with a matching release List<RequirementOutcome> requirementOutcomes = releaseManager.enrichRequirementsOutcomesWithReleaseTags(getRequirementOutcomes()); for (RequirementOutcome outcome : requirementOutcomes) { Collection<String> releaseVersions = outcome.getReleaseVersions(); if (releaseVersions.contains(release.getName())) { List<TestOutcome> outcomesForRelease = outcomesForRelease(outcome.getTestOutcomes().getOutcomes(), release.getName()); if (!outcomesForRelease.isEmpty()) { matchingTestOutcomes.addAll(outcomesForRelease); matchingRequirements.add(outcome.getRequirement()); } } } matchingRequirements = removeRequirementsWithoutTestsFrom(matchingRequirements); return new RequirementsOutcomes(new ArrayList<>(matchingRequirements), TestOutcomes.of(matchingTestOutcomes), issueTracking, environmentVariables, requirementsTagProviders, reportNameProvider, overview).withoutUnrelatedRequirements(); }
public RequirementsOutcomes getReleasedRequirementsFor(Release release) { List<Requirement> matchingRequirements = Lists.newArrayList(); List<TestOutcome> matchingTestOutcomes = Lists.newArrayList(); // Add all test outcomes with a matching release List<RequirementOutcome> requirementOutcomes = releaseManager.enrichRequirementsOutcomesWithReleaseTags(getRequirementOutcomes()); for(RequirementOutcome outcome : requirementOutcomes) { Collection<String> releaseVersions = outcome.getReleaseVersions(); if (releaseVersions.contains(release.getName())) { List<TestOutcome> outcomesForRelease = outcomesForRelease(outcome.getTestOutcomes().getOutcomes(), release.getName()); if (!outcomesForRelease.isEmpty()) { matchingTestOutcomes.addAll(outcomesForRelease); matchingRequirements.add(outcome.getRequirement()); } } } matchingRequirements = removeRequirementsWithoutTestsFrom(matchingRequirements); return new RequirementsOutcomes(Lists.newArrayList(matchingRequirements), TestOutcomes.of(matchingTestOutcomes), issueTracking, environmentVariables, requirementsTagProviders); }
public RequirementsOutcomes getReleasedRequirementsFor(Release release) { List<Requirement> matchingRequirements = Lists.newArrayList(); List<TestOutcome> matchingTestOutcomes = Lists.newArrayList(); // Add all test outcomes with a matching release List<RequirementOutcome> requirementOutcomes = releaseManager.enrichRequirementsOutcomesWithReleaseTags(getRequirementOutcomes()); for(RequirementOutcome outcome : requirementOutcomes) { Collection<String> releaseVersions = outcome.getReleaseVersions(); if (releaseVersions.contains(release.getName())) { List<TestOutcome> outcomesForRelease = outcomesForRelease(outcome.getTestOutcomes().getOutcomes(), release.getName()); if (!outcomesForRelease.isEmpty()) { matchingTestOutcomes.addAll(outcomesForRelease); matchingRequirements.add(outcome.getRequirement()); } } } matchingRequirements = removeRequirementsWithoutTestsFrom(matchingRequirements); return new RequirementsOutcomes(Lists.newArrayList(matchingRequirements), TestOutcomes.of(matchingTestOutcomes), issueTracking, environmentVariables, requirementsTagProviders); }