British PM Boris Johnson survives no-confidence vote