def METHOD_NAME(
    self,
    sage_with_bond_charge,
    distance_,
    w1,
    w2,
):
    sage_with_bond_charge["VirtualSites"].parameters[0].distance = Quantity(
        distance_,
        unit.angstrom,
    )
    out = sage_with_bond_charge.create_interchange(
        MoleculeWithConformer.from_mapped_smiles(
            "[H:3][C:2]([H:4])([H:5])[Cl:1]",
        ).to_topology(),
    )
    positions = get_positions_with_virtual_sites(out)
    p1 = out.positions[0]
    p2 = out.positions[1]
    assert numpy.allclose(
        positions[-1].m_as(unit.angstrom),
        (w1 * p1 + w2 * p2).m_as(unit.angstrom),
    )