jetfire
jetfire copied to clipboard
[AK] Added Autobahn Test Support
See image below. The setup is enough to run quick Autobahn tests, viewing the results directly in the simulator (checkmark or X for pass/fail).
Note that tests fail randomly because the current Jetfire GCD integration has a few serious bugs that cause messages to arrive out of order. I'll put the fix for that in another PR because it's not related to the tests themselves.
Future change should be to support tests on device (i.e. different URL) and generating the Autobahn results web page (not a big deal).
Usage note: this implementation requires that you run an Autobahn test server locally. Everything is default per the Autobahn install and usage guide.
just install and wstest -m fuzzing server
.
@daltoniam I pulled in your branch from #25 (queue-based). There is a problem. Sometimes the didReceiveString
callback is triggered with nil
as the string – ostensibly because of some new race condition the queue change.
Previously some tests would fail, but Autobahn's "info" endpoints always worked. Now they fail regularly. That's pretty bad because now we can't actually run the test suite itself :-(
Interesting and unfortunate. I just pushed some cleanup changes into the queue branch. I'll tested it against autobahn as well, see if I missed anything
I've also got a bunch of changes for that branch almost ready. Want to wait for those please?
Edit: Gah, they're pushed. Ok
Sorry :disappointed: