ItEr24S08CUAsignacionGrupoRecursosAPlanificacionItEr23S10: Improving cobertura.

This commit is contained in:
Óscar González Fernández 2009-09-01 11:30:02 +02:00
parent 88e1470d8c
commit fc432fedce
2 changed files with 8 additions and 8 deletions

View file

@ -40,15 +40,14 @@ public class ScriptDependenciesSorter implements IScriptsRegister {
private List<ScriptDependency> extract(Set<ScriptDependency> alreadyAdded,
ScriptDependency scriptDependency) {
List<ScriptDependency> result = new ArrayList<ScriptDependency>();
if (alreadyAdded.contains(scriptDependency)) {
return result;
}
for (ScriptDependency d : scriptDependency.getDependsOn()) {
if (!alreadyAdded.contains(d)) {
result.addAll(extract(alreadyAdded, d));
}
}
if (!alreadyAdded.contains(scriptDependency)) {
result.add(scriptDependency);
alreadyAdded.add(scriptDependency);
result.addAll(extract(alreadyAdded, d));
}
result.add(scriptDependency);
alreadyAdded.add(scriptDependency);
return result;
}

View file

@ -52,8 +52,9 @@ public class ScriptDependenciesSorterTest {
.asList(new ScriptDependency("B"))));
scriptDependenciesSorter.add(new ScriptDependency("C", Arrays
.asList(new ScriptDependency("B"))));
scriptDependenciesSorter.add(new ScriptDependency("D"));
assertThat(scriptDependenciesSorter.getScriptDependenciesOrderered(),
scriptsReturnedAre("B", "A", "C"));
scriptsReturnedAre("B", "A", "C", "D"));
}
private Matcher<List<ScriptDependency>> scriptsReturnedAre(String... urls) {