deadsea - 11:30 am on Jan 27, 2013 (gmt 0)
Redirecting to the url with the correct name in it is called "url canonicalization". Doing so has been good SEO practice for over 10 years.
Letting googlebot access and index the same page on different urls IS a problem. It can cause Googlebot to do do much crawling, and in some cases lead to indexing problems due to duplicate content.
There is an alternative to redirecting. Nowadays you can use the canonical meta tag. Put:
<link rel="canonical" href="http://www.example.com/12345-test" />
Into the page to let Googlebot know which is the official one. Serves the same purpose as the redirects, but might be easier to implement.
Changing the url when the name of the restaurant changes can cause that specific page to lose some rankings for a while, but it should come back. I have worked for sites that do this and doesn't end up being a big problem.