diff options
Diffstat (limited to 'share/www/spec/jquery_couch_js_instance_methods_3_spec.js')
-rw-r--r-- | share/www/spec/jquery_couch_js_instance_methods_3_spec.js | 540 |
1 files changed, 0 insertions, 540 deletions
diff --git a/share/www/spec/jquery_couch_js_instance_methods_3_spec.js b/share/www/spec/jquery_couch_js_instance_methods_3_spec.js deleted file mode 100644 index 5d27d817..00000000 --- a/share/www/spec/jquery_couch_js_instance_methods_3_spec.js +++ /dev/null @@ -1,540 +0,0 @@ -// Licensed under the Apache License, Version 2.0 (the "License"); you may not -// use this file except in compliance with the License. You may obtain a copy of -// the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -// License for the specific language governing permissions and limitations under -// the License. - -// Specs for jquery_couch.js lines 300-411 - -describe 'jQuery couchdb db' - before - stubAlert(); - end - - after - destubAlert(); - end - - before_each - db = $.couch.db('spec_db'); - db.create(); - end - - after_each - db.drop(); - end - - describe 'removeDoc' - before_each - doc = {"Name" : "Louanne Katraine", "Callsign" : "Kat", "_id" : "345"}; - saved_doc = {}; - db.saveDoc(doc, { - success: function(resp){ - saved_doc = resp; - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should result in a deleted document' - db.removeDoc({_id : "345", _rev : saved_doc.rev}, { - success: function(resp){ - db.openDoc("345", { - error: function(status, error, reason){ - status.should.eql 404 - error.should.eql "not_found" - reason.should.eql "deleted" - }, - success: function(resp){successCallback(resp)} - }); - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should return ok true, the ID and the revision of the deleted document' - db.removeDoc({_id : "345", _rev : saved_doc.rev}, { - success: function(resp){ - resp.ok.should.be_true - resp.id.should.eql "345" - resp.rev.should.be_a String - resp.rev.length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should record the revision in the deleted document' - db.removeDoc({_id : "345", _rev : saved_doc.rev}, { - success: function(resp){ - db.openDoc("345", { - rev: resp.rev, - success: function(resp2){ - resp2._rev.should.eql resp.rev - resp2._id.should.eql resp.id - resp2._deleted.should.be_true - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should alert with an error message prefix' - db.removeDoc({_id: "asdf"}); - alert_msg.should.match /The document could not be deleted/ - end - end - - describe 'bulkRemove' - before_each - doc = {"Name" : "Kara Thrace", "Callsign" : "Starbuck", "_id" : "123"}; - doc2 = {"Name" : "Karl C. Agathon", "Callsign" : "Helo", "_id" : "456"}; - doc3 = {"Name" : "Sharon Valerii", "Callsign" : "Boomer", "_id" : "789"}; - docs = [doc, doc2, doc3]; - - db.bulkSave({"docs": docs}, { - success: function(resp){ - for (var i = 0; i < docs.length; i++) { - docs[i]._rev = resp[i].rev; - } - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should remove all documents specified' - db.bulkRemove({"docs": docs}); - db.allDocs({ - success: function(resp) { - resp.total_rows.should.eql 0 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should not remove documents that should not have been deleted' - db.bulkRemove({"docs": [doc3]}); - db.allDocs({ - success: function(resp) { - resp.total_rows.should.eql 2 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should result in deleted documents' - db.bulkRemove({"docs": docs}, { - success: function(resp){ - db.openDoc("123", { - error: function(status, error, reason){ - status.should.eql 404 - error.should.eql "not_found" - reason.should.eql "deleted" - }, - success: function(resp){successCallback(resp)} - }); - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should return the ID and the revision of the deleted documents' - db.bulkRemove({"docs": docs}, { - success: function(resp){ - resp[0].id.should.eql "123" - resp[0].rev.should.be_a String - resp[0].rev.length.should.be_at_least 30 - resp[1].id.should.eql "456" - resp[1].rev.should.be_a String - resp[1].rev.length.should.be_at_least 30 - resp[2].id.should.eql "789" - resp[2].rev.should.be_a String - resp[2].rev.length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should record the revision in the deleted documents' - db.bulkRemove({"docs": docs}, { - success: function(resp){ - db.openDoc("123", { - rev: resp[0].rev, - success: function(resp2){ - resp2._rev.should.eql resp[0].rev - resp2._id.should.eql resp[0].id - resp2._deleted.should.be_true - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should alert with an error message prefix' - db.bulkRemove({docs: ["asdf"]}); - alert_msg.should.match /The documents could not be deleted/ - end - end - - describe 'copyDoc' - before_each - doc = {"Name" : "Sharon Agathon", "Callsign" : "Athena", "_id" : "123"}; - db.saveDoc(doc); - end - - it 'should result in another document with same data and new id' - db.copyDoc("123", { - success: function(resp){ - resp.id.should.eql "456" - resp.rev.length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }, { - headers: {"Destination":"456"} - }); - - db.openDoc("456", { - success: function(resp){ - resp.Name.should.eql "Sharon Agathon" - resp.Callsign.should.eql "Athena" - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should throw an error when trying to overwrite a document without providing a revision' - doc2 = {"Name" : "Louanne Katraine", "Callsign" : "Kat", "_id" : "456"}; - db.saveDoc(doc2); - - db.copyDoc("123", { - error: function(status, error, reason){ - status.should.eql 409 - error.should.eql "conflict" - reason.should.eql "Document update conflict." - }, - success: function(resp){successCallback(resp)} - }, { - headers: {"Destination":"456"} - }); - end - - it 'should overwrite a document with the correct revision' - doc2 = {"Name" : "Louanne Katraine", "Callsign" : "Kat", "_id" : "456"}; - var doc2_rev; - db.saveDoc(doc2, { - success: function(resp){ - doc2_rev = resp.rev; - } - }); - - db.copyDoc("123", { - success: function(resp){ - resp.id.should.eql "456" - resp.rev.length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }, { - headers: {"Destination":"456?rev=" + doc2_rev} - }); - - db.openDoc("456", { - success: function(resp){ - resp.Name.should.eql "Sharon Agathon" - resp.Callsign.should.eql "Athena" - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should alert with an error message prefix' - db.copyDoc("asdf", {}, {}); - alert_msg.should.match /The document could not be copied/ - end - end - - describe 'query' - before_each - db.saveDoc({"Name" : "Cally Tyrol", "job" : "deckhand", "_id" : "789"}); - db.saveDoc({"Name" : "Felix Gaeta", "job" : "officer", "_id" : "123"}); - db.saveDoc({"Name" : "Samuel T. Anders", "job" : "pilot", "_id" : "456"}); - map_function = "function(doc) { emit(doc._id, 1); }"; - reduce_function = "function(key, values, rereduce) { return sum(values); }"; - end - - it 'should apply the map function' - db.query(map_function, null, null, { - success: function(resp){ - resp.rows.should.have_length 3 - resp.rows[0].id.should.eql "123" - resp.rows[0].key.should.eql "123" - resp.rows[0].value.should.eql 1 - resp.rows[1].id.should.eql "456" - resp.rows[1].key.should.eql "456" - resp.rows[1].value.should.eql 1 - resp.rows[2].id.should.eql "789" - resp.rows[2].key.should.eql "789" - resp.rows[2].value.should.eql 1 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should apply the reduce function' - db.query(map_function, reduce_function, null, { - success: function(resp){ - resp.rows.should.have_length 1 - resp.rows[0].key.should.be_null - resp.rows[0].value.should_eql 3 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the options' - db.query(map_function, null, null, { - "startkey": "456", - success: function(resp){ - resp.rows.should.have_length 2 - resp.rows[0].id.should.eql "456" - resp.rows[0].key.should.eql "456" - resp.rows[0].value.should.eql 1 - resp.rows[1].id.should.eql "789" - resp.rows[1].key.should.eql "789" - resp.rows[1].value.should.eql 1 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the keys' - //shouldn't this better work? TODO: implement in jquery.couch.js - console.log("shouldn't this better work? TODO: implement in jquery.couch.js") - db.query(map_function, null, null, { - "keys": ["456", "123"], - success: function(resp){ - resp.rows.should.have_length 2 - resp.rows[0].id.should.eql "456" - resp.rows[0].key.should.eql "456" - resp.rows[0].value.should.eql 1 - resp.rows[1].id.should.eql "123" - resp.rows[1].key.should.eql "123" - resp.rows[1].value.should.eql 1 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the options and the keys' - //shouldn't this better work? TODO: implement in jquery.couch.js - console.log("shouldn't this better work? TODO: implement in jquery.couch.js") - db.query(map_function, null, null, { - "include_docs":"true", - "keys": ["456"], - success: function(resp){ - resp.rows.should.have_length 1 - resp.rows[0].id.should.eql "456" - resp.rows[0].key.should.eql "456" - resp.rows[0].value.should.eql 1 - resp.rows[0].doc["job"].should.eql "pilot" - resp.rows[0].doc["_rev"].length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should apply a query in erlang also' - // when this test fails, read this: http://wiki.apache.org/couchdb/EnableErlangViews - var erlang_map = 'fun({Doc}) -> ' + - 'ID = proplists:get_value(<<"_id">>, Doc, null), ' + - 'Emit(ID, 1) ' + - 'end.'; - db.query(erlang_map, null, "erlang", { - success: function(resp){ - resp.rows.should.have_length 3 - resp.rows[0].id.should.eql "123" - resp.rows[0].key.should.eql "123" - resp.rows[0].value.should.eql 1 - resp.rows[1].id.should.eql "456" - resp.rows[1].key.should.eql "456" - resp.rows[1].value.should.eql 1 - resp.rows[2].id.should.eql "789" - resp.rows[2].key.should.eql "789" - resp.rows[2].value.should.eql 1 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should alert with an error message prefix' - db.query("asdf"); - alert_msg.should.match /An error occurred querying the database/ - end - end - - describe 'view' - before_each - db.saveDoc({"Name" : "Cally Tyrol", "job" : "deckhand", "_id" : "789"}); - db.saveDoc({"Name" : "Felix Gaeta", "job" : "officer", "_id" : "123"}); - db.saveDoc({"Name" : "Samuel T. Anders", "job" : "pilot", "_id" : "456"}); - view = { - "views" : { - "people" : { - "map" : "function(doc) { emit(doc._id, doc.Name); }" - } - }, - "_id" : "_design/spec_db" - }; - db.saveDoc(view); - end - - it 'should apply the view' - db.view('spec_db/people', { - success: function(resp){ - resp.rows.should.have_length 3 - resp.rows[0].id.should.eql "123" - resp.rows[0].key.should.eql "123" - resp.rows[0].value.should.eql "Felix Gaeta" - resp.rows[1].id.should.eql "456" - resp.rows[1].key.should.eql "456" - resp.rows[1].value.should.eql "Samuel T. Anders" - resp.rows[2].id.should.eql "789" - resp.rows[2].key.should.eql "789" - resp.rows[2].value.should.eql "Cally Tyrol" - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the options' - db.view('spec_db/people', { - "skip":"2", - success: function(resp){ - resp.rows.should.have_length 1 - resp.rows[0].id.should.eql "789" - resp.rows[0].key.should.eql "789" - resp.rows[0].value.should.eql "Cally Tyrol" - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the keys' - db.view('spec_db/people', { - "keys":["456", "123"], - success: function(resp){ - resp.rows.should.have_length 2 - resp.rows[0].id.should.eql "456" - resp.rows[0].key.should.eql "456" - resp.rows[0].value.should.eql "Samuel T. Anders" - resp.rows[1].id.should.eql "123" - resp.rows[1].key.should.eql "123" - resp.rows[1].value.should.eql "Felix Gaeta" - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should pass through the options and the keys' - db.view('spec_db/people', { - "include_docs":"true", - "keys":["456"], - success: function(resp){ - resp.rows.should.have_length 1 - resp.rows[0].id.should.eql "456" - resp.rows[0].key.should.eql "456" - resp.rows[0].value.should.eql "Samuel T. Anders" - resp.rows[0].doc["job"].should.eql "pilot" - resp.rows[0].doc["_rev"].length.should.be_at_least 30 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should throw a 404 when the view doesnt exist' - db.view('spec_db/non_existing_view', { - error: function(status, error, reason){ - status.should.eql 404 - error.should.eql "not_found" - reason.should.eql "missing_named_view" - }, - success: function(resp){successCallback(resp)} - }); - end - - it 'should alert with an error message prefix' - db.view("asdf"); - alert_msg.should.match /An error occurred accessing the view/ - end - end - - describe 'setDbProperty' - it 'should return ok true' - db.setDbProperty("_revs_limit", 1500, { - success: function(resp){ - resp.ok.should.be_true - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should set a db property' - db.setDbProperty("_revs_limit", 1500); - db.getDbProperty("_revs_limit", { - success: function(resp){ - resp.should.eql 1500 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - db.setDbProperty("_revs_limit", 1200); - db.getDbProperty("_revs_limit", { - success: function(resp){ - resp.should.eql 1200 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should alert with an error message prefix' - db.setDbProperty("asdf"); - alert_msg.should.match /The property could not be updated/ - end - end - - describe 'getDbProperty' - it 'should get a db property' - db.setDbProperty("_revs_limit", 1200); - db.getDbProperty("_revs_limit", { - success: function(resp){ - resp.should.eql 1200 - }, - error: function(status, error, reason){errorCallback(status, error, reason)} - }); - end - - it 'should throw a 404 when the property doesnt exist' - db.getDbProperty("_doesnt_exist", { - error: function(status, error, reason){ - status.should.eql 404 - error.should.eql "not_found" - reason.should.eql "missing" - }, - success: function(resp){successCallback(resp)} - }); - end - - it 'should alert with an error message prefix' - db.getDbProperty("asdf"); - alert_msg.should.match /The property could not be retrieved/ - end - end -end
\ No newline at end of file |