commit 01fddc9bb9d9070b4d57d20c2f8eff21f2ec5cde
parent bad92a1d2263598aa6ac9c07f84fc34708e1bcd9
Author: Dan Stillman <dstillman@zotero.org>
Date: Tue, 8 Dec 2015 16:38:30 -0500
Tweak DataObject::save() tests
Diffstat:
1 file changed, 17 insertions(+), 25 deletions(-)
diff --git a/test/tests/dataObjectTest.js b/test/tests/dataObjectTest.js
@@ -232,31 +232,23 @@ describe("Zotero.DataObject", function() {
describe("#save()", function () {
it("should add new identifiers to cache", function* () {
- // Collection
- var objectsClass = Zotero.DataObjectUtilities.getObjectsClassForObjectType('collection');
- var obj = new Zotero.Collection;
- obj.name = "Test";
- var id = yield obj.saveTx();
- var { libraryID, key } = objectsClass.getLibraryAndKeyFromID(id);
- assert.typeOf(key, 'string');
- assert.equal(objectsClass.getIDFromLibraryAndKey(libraryID, key), id);
-
- // Search
- var objectsClass = Zotero.DataObjectUtilities.getObjectsClassForObjectType('search');
- var obj = new Zotero.Search;
- obj.name = "Test";
- var id = yield obj.saveTx();
- var { libraryID, key } = objectsClass.getLibraryAndKeyFromID(id);
- assert.typeOf(key, 'string');
- assert.equal(objectsClass.getIDFromLibraryAndKey(libraryID, key), id);
-
- // Item
- var objectsClass = Zotero.DataObjectUtilities.getObjectsClassForObjectType('item');
- var obj = new Zotero.Item('book');
- var id = yield obj.saveTx();
- var { libraryID, key } = objectsClass.getLibraryAndKeyFromID(id);
- assert.typeOf(key, 'string');
- assert.equal(objectsClass.getIDFromLibraryAndKey(libraryID, key), id);
+ for (let type of types) {
+ let objectsClass = Zotero.DataObjectUtilities.getObjectsClassForObjectType(type);
+ let obj = createUnsavedDataObject(type);
+ let id = yield obj.saveTx();
+ let { libraryID, key } = objectsClass.getLibraryAndKeyFromID(id);
+ assert.typeOf(key, 'string');
+ assert.equal(objectsClass.getIDFromLibraryAndKey(libraryID, key), id);
+ }
+ })
+
+ it("should reset changed state on objects", function* () {
+ for (let type of types) {
+ let objectsClass = Zotero.DataObjectUtilities.getObjectsClassForObjectType(type);
+ let obj = createUnsavedDataObject(type);
+ yield obj.saveTx();
+ assert.isFalse(obj.hasChanged());
+ }
})
})