Improve the buffer corruption test

* Avoid always shrinking to a buffer truncation, which is a different
  code path from corruption.

* Add a counter example

* Keep original buffer untouched so analysis can be performed
  post-test if necessary.