Noah,
Does "make check" run with all the etaps passing?
Bob
On Jun 1, 2011, at 2:13 PM, Noah Slater wrote:
> Reinstalled Erlang and the weird SSL problems went away.
>
> Unit tests fail for me.
>
> -
>
> replicator_db
> error
> 3001ms
> Run with debugger
> • Exception raised: {}
>
> rev_stemming
> error
> 7ms
> Run with debugger
> • Exception raised: {}
>
> rewrite
> error
> 10ms
> Run with debugger
> • Exception raised: {}
>
> security_validation
> error
> 6ms
> Run with debugger
> • Exception raised: {}
>
> show_documents
> error
> 11ms
> Run with debugger
> • Exception raised: {}
>
> stats
> error
> 7ms
> Run with debugger
> • Exception raised: {}
>
> update_documents
> error
> 5ms
> Run with debugger
> • Exception raised: {}
>
> users_db
> error
> 4ms
> Run with debugger
> • Exception raised: {}
>
> -
>
> Tried to re-run these tests in with debug on, but Firefox locked up.
>
> The tests lock up on me all the time. And I don't mean, while they're running
> through, as expected. When they fail, or I try to restart one, basically, the
> whole thing just freezes. I never seem to be able to do much more, other than
> restart Firefox. I'm not sure why this happens, but I really wish it
> wouldn't. Makes testing harder than it could be.
>
> -
>
> After restarting Firefox all these tests pass.
>
> Very weird.
>
> Going to run the whole test suite again.
>
> —
>
> auth_cache fails
>
> assertion misses_after == misses_before +1 failed
>
> assertion hits_after == hits_before failed
>
> cookie_auth fails
>
> "error": "file_exists"
>
> The test suite then hung on replicator_db again.
>
> Killing Firefox and trying again.
>
> —
>
> auth_cache fails
>
> assertion misses_after == misses_before +1 failed
>
> assertion hits_after == hits_before failed
>
> The test suite then hung on replicator_db again.
>
> Killing Firefox and trying again, manually.
>
> Note I was not able to get debug output because the test suite hangs Firefox.
>
> I don't see anything happening in the CouchDB log either.
>
> So my best guess is that Firefox is just looping over something mindlessly.
>
> —
>
> Running auth_cache manually lots of times produces no errors.
>
> Running through all the tests manually from the start.
>
> cookie_auth fails again for the same reason.
>
> Ran with debug:
>
> Exception raised: {"message":"ddoc is
> null","fileName":"http://127.0.0.1:5985/_utils/script/test/cookie_auth.js","lineNumber":41,"stack":"()@http://127.0.0.1:5985/_utils/script/test/cookie_auth.js:41\u000arun_on_modified_server([object
> Array],(function () {try {var usersDb = new CouchDB(\"test_suite_users\",
> {'X-Couch-Full-Commit': \"false\"});usersDb.deleteDb();usersDb.createDb();var
> ddoc = usersDb.open(\"_design/_auth\");T(ddoc.validate_doc_update);var
> password = \"3.141592653589\";var jasonUserDoc =
> CouchDB.prepareUserDoc({name: \"Jason Davies\", roles: [\"dev\"]},
> password);T(usersDb.save(jasonUserDoc).ok);var checkDoc =
> usersDb.open(jasonUserDoc._id);T(checkDoc.name == \"Jason Davies\");var
> jchrisUserDoc = CouchDB.prepareUserDoc({name: \"[email protected]\"},
> \"funnybone\");T(usersDb.save(jchrisUserDoc).ok);var duplicateJchrisDoc =
> CouchDB.prepareUserDoc({name: \"[email protected]\"}, \"eh, Boo-Boo?\");try
> {usersDb.save(duplicateJchrisDoc);T(false && \"Can't create duplicate user
> names. Should have thrown an error.\");} catch (e) {T(e.error ==
> \"conflict\");T(usersDb.last_req.status == 409);}var underscoreUserDoc =
> CouchDB.prepareUserDoc({name: \"_why\"}, \"copperfield\");try
> {usersDb.save(underscoreUserDoc);T(false && \"Can't create underscore user
> names. Should have thrown an error.\");} catch (e) {T(e.error ==
> \"forbidden\");T(usersDb.last_req.status == 403);}var badIdDoc =
> CouchDB.prepareUserDoc({name: \"foo\"}, \"bar\");badIdDoc._id =
> \"org.apache.couchdb:w00x\";try {usersDb.save(badIdDoc);T(false && \"Can't
> create malformed docids. Should have thrown an error.\");} catch (e)
> {T(e.error == \"forbidden\");T(usersDb.last_req.status ==
> 403);}T(CouchDB.login(\"Jason Davies\",
> password).ok);T(CouchDB.session().userCtx.name == \"Jason Davies\");var xhr =
> CouchDB.request(\"POST\", \"/_session\", {headers: {'Content-Type':
> \"application/json\"}, body: JSON.stringify({name: \"Jason Davies\",
> password:
> password})});T(JSON.parse(xhr.responseText).ok);T(CouchDB.session().userCtx.name
> == \"Jason Davies\");jasonUserDoc.foo =
> 2;T(usersDb.save(jasonUserDoc).ok);T(CouchDB.session().userCtx.roles.indexOf(\"_admin\")
> == -1);try {usersDb.deleteDoc(jchrisUserDoc);T(false && \"Can't delete other
> users docs. Should have thrown an error.\");} catch (e) {T(e.error ==
> \"forbidden\");T(usersDb.last_req.status == 403);}T(!CouchDB.login(\"Jason
> Davies\", \"2.71828\").ok);T(!CouchDB.login(\"Robert Allen Zimmerman\",
> \"d00d\").ok);T(CouchDB.session().userCtx.name != \"Jason Davies\");xhr =
> CouchDB.request(\"POST\", \"/_session?next=/\", {headers: {'Content-Type':
> \"application/x-www-form-urlencoded\"}, body:
> \"name=Jason%20Davies&password=\" + encodeURIComponent(password)});if
> (xhr.status == 200) {T(/Welcome/.test(xhr.responseText));} else {T(xhr.status
> ==
> 302);T(xhr.getResponseHeader(\"Location\"));}T(CouchDB.login(\"[email protected]\",
> \"funnybone\").ok);T(CouchDB.session().userCtx.name ==
> \"[email protected]\");T(CouchDB.session().userCtx.roles.length ==
> 0);jasonUserDoc.foo = 3;try {usersDb.save(jasonUserDoc);T(false && \"Can't
> update someone else's user doc. Should have thrown an error.\");} catch (e)
> {T(e.error == \"forbidden\");T(usersDb.last_req.status ==
> 403);}jchrisUserDoc.roles = [\"foo\"];try
> {usersDb.save(jchrisUserDoc);T(false && \"Can't set roles unless you are
> admin. Should have thrown an error.\");} catch (e) {T(e.error ==
> \"forbidden\");T(usersDb.last_req.status ==
> 403);}T(CouchDB.logout().ok);T(CouchDB.session().userCtx.roles[0] ==
> \"_admin\");jchrisUserDoc.foo =
> [\"foo\"];T(usersDb.save(jchrisUserDoc).ok);jchrisUserDoc.roles =
> [\"_bar\"];try {usersDb.save(jchrisUserDoc);T(false && \"Can't add system
> roles to user's db. Should have thrown an error.\");} catch (e) {T(e.error ==
> \"forbidden\");T(usersDb.last_req.status ==
> 403);}T(CouchDB.login(\"[email protected]\",
> \"funnybone\").ok);T(CouchDB.session().userCtx.name ==
> \"[email protected]\");T(CouchDB.session().userCtx.roles.indexOf(\"_admin\")
> == -1);T(CouchDB.session().userCtx.roles.indexOf(\"foo\") !=
> -1);T(CouchDB.logout().ok);T(CouchDB.session().userCtx.roles[0] ==
> \"_admin\");T(CouchDB.session().userCtx.name ==
> null);run_on_modified_server([{section: \"admins\", key:
> \"[email protected]\", value: \"funnybone\"}], function ()
> {T(CouchDB.login(\"[email protected]\",
> \"funnybone\").ok);T(CouchDB.session().userCtx.name ==
> \"[email protected]\");T(CouchDB.session().userCtx.roles.indexOf(\"_admin\")
> != -1);T(CouchDB.session().userCtx.roles.indexOf(\"foo\") !=
> -1);jchrisUserDoc = usersDb.open(jchrisUserDoc._id);delete
> jchrisUserDoc.salt;delete
> jchrisUserDoc.password_sha;T(usersDb.save(jchrisUserDoc).ok);T(CouchDB.logout().ok);T(CouchDB.login(\"[email protected]\",
> \"funnybone\").ok);var s = CouchDB.session();T(s.userCtx.name ==
> \"[email protected]\");T(s.userCtx.roles.indexOf(\"_admin\") !=
> -1);T(s.info.authenticated == \"cookie\");T(s.info.authentication_db ==
> \"test_suite_users\");T(CouchDB.session().userCtx.roles.indexOf(\"foo\") !=
> -1);});} finally
> {T(CouchDB.logout().ok);}}))@http://127.0.0.1:5985/_utils/script/couch_test_runner.js?0.11.0:375\u000a(true)@http://127.0.0.1:5985/_utils/script/test/cookie_auth.js:253\u000arun(0)@http://127.0.0.1:5985/_utils/script/couch_test_runner.js?0.11.0:91\u000a"}
>
> Froze on replicate_db again.
>
> —
>
> Everything else looks okay though.
>
> Heh.
>
> Gonna give this -1 until we fix the unit tests.
>
> I wonder whether anyone else runs the unit tests at all, sometimes! ;)