jasmine / jasmine-gem

Jasmine ruby gem
681 stars 275 forks source link

jasmine:ci hangs after running examples #289

Closed Floppy closed 7 years ago

Floppy commented 7 years ago

This is similar to other issues reported before here, but I've got a simple replication example that might help.

When running rake jasmine:ci (on my machine, a colleague's, and on travis), after the examples are run, the test process does not stop. It must be killed with Ctrl-C after which the test stats are printed.

I've replicated this on a completely fresh, vanilla jasmine setup at https://github.com/Floppy/jasmine-test. That's an empty folder with just the gem and the init and examples run, and exactly the same result.

I'm on OSX Sierra with PhantomJS 2.1.1, but as I say the effect is also the same on Travis, which is a linux environment.

Floppy commented 7 years ago

cc @quadrophobiac & cf theodi/bothan#261

slackersoft commented 7 years ago

Hmmmm. I'm not seeing a full-on hang, though there is up to 5 seconds of delay after the last . (dot) gets printed before the summary gets output. From what I could tell, this was all waiting for the phantomjs process to finish exiting and not something Jasmine can do anything about.

Floppy commented 7 years ago

Thanks @slackersoft; I'm figured it might be something within phantomjs not properly exiting, but I'm not sure how to chase it down. I'm going to try on a few other systems.

Floppy commented 7 years ago

I'm confused as hell now, I'm just seeing the same 5-second delay on exit as you are, but it is exiting. I may have tied myself in knots here, the test case might not actually replicate my original issue.

Floppy commented 7 years ago

yeah, this passes on Travis as well. I'll post back with the original cause of my problem but I should be able to work it out from here.

Floppy commented 7 years ago

OK, I traced it down to the source files and including polymer project's webcomponents.js, version 0.7.22. I'm not sure why it caused the hang, but we don't need to include it to get tests passing, so I've pulled it out of the source files for jasmine.

Sorry for the misdirection, but thankyou very much for the sanity check and pulling me out of a deep rabbit hole heading in the wrong direction :)