Doncaster Rovers thought they had beaten League Two leaders Walsall, only for the Saddlers to find a stoppage-time equaliser.