@Test
    public void testFindReachableMassesAndInputsOnIgnoringUnwantedTypes() {
        mass1 = new Mass(0, 0); // center
        mass2 = new Mass(2, 0); // distance = 2
        graph.addMasses(mass1, mass2);
        Range range = new Range(1, 2);

        for (Mass.Type type : Mass.Type.values()) {
            mass2.setType(type);

            if (type == INPUT || type == NETWORK) {
                assertEquals(1, graph.findReachableMassesAndInputs(mass1, range, excludeCrossings).size());
                assertSame(mass2, graph.findReachableMassesAndInputs(mass1, range, excludeCrossings).get(0));
            } else {
                assertTrue(graph.findReachableMassesAndInputs(mass1, range, excludeCrossings).isEmpty());
            }
        }
    }