Quick/Nimble — pull request #40 by rbeeger (2014-09-28 16:05:04+00:00)
Title: Got rid of Optional boxes in failure messages.

This is a fix for issue https://github.com/Quick/Nimble/issues/39 .

There are three parts to it:
1. Unbox optionals where possible and use the unboxed values (FailureMessage.swift, RaisesException.swift)
2. Use stringify in matchers to unbox the expected values
3. Brutally strip the Optional box on the string representation of values that cannot be unboxed because there is no way to know whether they are Optionals or not.

Number 3 is a hack that will stop working if Apple ever changes the string representation of Optionals, But I think it's usable as long as no better solution comes around.

There's still one test that doesn't work even after this: BeEmptyTest.testBeEmptyNegative

I had also to change two tests slightly because the new stringify methods output Doubles with four decimal positions.

This is tested with iOS and XCode 6.0.1. Don't know how it behaves on Yosemite and XCode 6.1.