@Test
    public void testFindReachableMassesAndInputsOnCrossingSprings() {
        Range range = new Range(0, 10);
        mass1 = new Mass(-100, 1);
        mass2 = new Mass(100, 1);
        mass3 = new Mass(0, 0);
        mass4 = new Mass(0, 2);
        graph.addMasses(mass1, mass2, mass3, mass4);

        List<Mass> reachableMasses = graph.findReachableMassesAndInputs(mass3, range, excludeCrossings);
        assertEquals(1, reachableMasses.size());
        assertSame(mass4, reachableMasses.get(0));

        graph.addSpring(mass1, mass2);
        assertEquals(0, graph.findReachableMassesAndInputs(mass3, range, excludeCrossings).size());
        excludeCrossings = false;
        assertEquals(1, graph.findReachableMassesAndInputs(mass3, range, excludeCrossings).size());
        assertSame(mass4, reachableMasses.get(0));
    }