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: \"jch...@apache.org\"}, > \"funnybone\");T(usersDb.save(jchrisUserDoc).ok);var duplicateJchrisDoc = > CouchDB.prepareUserDoc({name: \"jch...@apache.org\"}, \"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(\"jch...@apache.org\", > \"funnybone\").ok);T(CouchDB.session().userCtx.name == > \"jch...@apache.org\");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(\"jch...@apache.org\", > \"funnybone\").ok);T(CouchDB.session().userCtx.name == > \"jch...@apache.org\");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: > \"jch...@apache.org\", value: \"funnybone\"}], function () > {T(CouchDB.login(\"jch...@apache.org\", > \"funnybone\").ok);T(CouchDB.session().userCtx.name == > \"jch...@apache.org\");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(\"jch...@apache.org\", > \"funnybone\").ok);var s = CouchDB.session();T(s.userCtx.name == > \"jch...@apache.org\");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! ;)