@Test public void removeEmptySparkTask() { SparkTask grandpa = new SparkTask(); SparkWork grandpaWork = new SparkWork("grandpa"); grandpaWork.add(new MapWork()); grandpa.setWork(grandpaWork); SparkTask parent = new SparkTask(); SparkWork parentWork = new SparkWork("parent"); parentWork.add(new MapWork()); parent.setWork(parentWork); SparkTask child1 = new SparkTask(); SparkWork childWork1 = new SparkWork("child1"); childWork1.add(new MapWork()); child1.setWork(childWork1); grandpa.addDependentTask(parent); parent.addDependentTask(child1); Assert.assertEquals(grandpa.getChildTasks().size(), 1); Assert.assertEquals(child1.getParentTasks().size(), 1); if (isEmptySparkWork(parent.getWork())) { SparkUtilities.removeEmptySparkTask(parent); } Assert.assertEquals(grandpa.getChildTasks().size(), 0); Assert.assertEquals(child1.getParentTasks().size(), 0); }