adhearsion / ruby_speech

A ruby library for TTS & ASR document preparation
MIT License
101 stars 41 forks source link

Tests don't pass on 1.8 and 1.9 at the same time #3

Closed benlangfeld closed 12 years ago

lpradovera commented 13 years ago

I have been running a few differential diagnosis ideas, but didn't come up with anything final. The method_missing implementation in SSML::Element was the first potential problem, but I replaced the called methods with static ones to no avail. I then tried replacing all tap instances in both SSML and Niceogiri with the less elegant Class.new, return. That did not change anything on neither version. Adding other levels of nesting just make the problem worse, nested A-B-C-D elements become recursively listed with the first removed, such as BCD-CD-ABCD, indicating some blocks are passed both implicitly and explicitly and thus run twice in 1.9 The last try could involve redoing the whole architecture in "old" style, using initialize and returns, but before doing that I would advise someone else to take a look.

taylor commented 13 years ago

Running tests on OS X Snow Leopard with RVM 1.9.3 installs of ruby. Gems are all installed with bundler. Ruby is then executed with bundle exec rspec --color spec.

Current committed work-around for Element#self.new (verifying ruby version and then running tap only for 1.8.7) makes all tests pass for 1.8 and 1.9.

Specifically

PASSING

FAILING

Still working on the root cause for at least the MRI 1.8/1.9

taylor commented 13 years ago

That should have said RVM 1.8.3

benlangfeld commented 12 years ago

Tests now passing on all platforms: http://ci.mojolingo.com/job/RubySpeech/