@Test
public void getDDMultipleModulesJoinDeps() {

    final Delivery delivery = DataModelFactory.createDelivery(
            SAMPLE_NAME,
            SAMPLE_VERSION,
            LocalDate.now().toString(),
            Arrays.asList("one", "two", "three"));
    final DbModule m1 = makeModule("one");
    final DbModule m2 = makeModule("two");
    final DbModule m3 = makeModule("three");
    final RepositoryHandler repoHandler = makeRepoHandler(m1, m2, m3);
    final DependencyHandler depHandler = mock(DependencyHandler.class);
    withDeps(depHandler, "one", "one_a");
    withDeps(depHandler, "two", "two_a", "two_b");
    withDeps(depHandler, "three", "three_a", "three_b", "three_c");
    final DataFetchingUtils sut = new DataFetchingUtils();
    // Act
    final Set<String> deliveryDependencies = sut.getDeliveryDependencies(repoHandler, depHandler, delivery);
    // Assert
    assertEquals(1 + 2 + 3, deliveryDependencies.size());
    assertTrue(deliveryDependencies.contains(makeGAVC("one_a")));
    assertTrue(deliveryDependencies.contains(makeGAVC("two_a")));
    assertTrue(deliveryDependencies.contains(makeGAVC("two_b")));
    assertTrue(deliveryDependencies.contains(makeGAVC("three_a")));
    assertTrue(deliveryDependencies.contains(makeGAVC("three_b")));
    assertTrue(deliveryDependencies.contains(makeGAVC("three_c")));
}