G’day folks. I’ve been beating my head on this one problem for a
couple of hours, and have managed to figure out what’s causing it.
However, I don’t understand why it’s happening, nor do I know how to
solve or get around it.
One of my methods clones an arg, and it seems that doing so causes
state to leak out. I discovered this because changing this:
new_subtitle = subtitle.clone
new_subtitle = subtitle
causes the problem to disappear.
Before we get into the code snippets, are there any known caveats,
warnings, or problems with writing specs that cover the cloning or
duplication of objects?
Here’s the code, specs, and spec output:
As you can see, in the “should clone …” example, the expectation on
line 24 succeeds, but the same expectation on line 28 fails. After
that, the same expectation fails in the “should not leak state” example.
Any idea what’s going on? I’d appreciate any help at all. Thanks,