zotero/test/tests
Dan Stillman 4b60c6ca27 Type/field handling overhaul
This changes the way item types, item fields, creator types, and CSL
mappings are defined and handled, in preparation for updated types and
fields.

Instead of being predefined in SQL files or code, type/field info is
read from a bundled JSON file shared with other parts of the Zotero
ecosystem [1], referred to as the "global schema". Updates to the
bundled schema file are automatically applied to the database at first
run, allowing changes to be made consistently across apps.

When syncing, invalid JSON properties are now rejected instead of being
ignored and processed later, which will allow for schema changes to be
made without causing problems in existing clients. We considered many
alternative approaches, but this approach is by far the simplest,
safest, and most transparent to the user.

For now, there are no actual changes to types and fields, since we'll
first need to do a sync cut-off for earlier versions that don't reject
invalid properties.

For third-party code, the main change is that type and field IDs should
no longer be hard-coded, since they may not be consistent in new
installs. For example, code should use `Zotero.ItemTypes.getID('note')`
instead of hard-coding `1`.

[1] https://github.com/zotero/zotero-schema
2019-09-16 02:27:22 -04:00
..
data Type/field handling overhaul 2019-09-16 02:27:22 -04:00
advancedSearchTest.js Add utility functions for building drop-down library lists 2017-12-08 00:42:03 -05:00
attachmentsTest.js Add "Convert Linked Files to Stored Files…" menu option 2019-08-19 05:00:32 -04:00
bibliographyTest.js Add "Manage Styles…" link to Create Bib and Doc Prefs windows 2016-09-06 19:15:01 -04:00
cachedTypesTest.js Add toCanonical and toLabel for Zotero.CharacterSets 2015-06-11 17:17:28 -05:00
citeTest.js Be more lenient about Extra field values than citeproc-js 2018-03-01 17:05:24 -05:00
collectionsTest.js Show saved searches under "Collection" search condition 2016-10-06 01:17:06 -04:00
collectionTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
collectionTreeViewTest.js Add Retracted Items virtual collection 2019-06-10 02:38:42 -04:00
concurrentCallerTest.js Maybe reduce spurious errors in ConcurrentCaller test 2016-07-19 18:53:48 -04:00
creatorsTest.js Fix translation error when firstName is null for fieldMode 1 2017-02-27 23:34:16 -05:00
dataDirectoryTest.js Remove some code that's unnecessary now that we're Fx52+ everywhere 2017-06-23 05:03:11 -04:00
dataObjectsTest.js Temporarily disable test for non-integer getAsync() 2017-06-05 03:00:15 -04:00
dataObjectTest.js Restrict relation predicates to letters and colons for now 2017-09-22 01:01:52 -04:00
dataObjectUtilitiesTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
dateTest.js Add Zotero.File.getResource for local resources 2018-07-11 14:08:45 +03:00
dbTest.js Fx60: Update DB query onRow() behavior 2019-08-27 06:00:35 -04:00
duplicatesTest.js Fix instances of browser windows being left open after tests 2016-06-11 05:10:06 -04:00
feedItemsTest.js Update some Sinon reset() calls 2017-06-01 15:39:42 -04:00
feedItemTest.js Clone feed items if translation returns no items. Closes #1377 2017-11-30 11:39:34 +02:00
feedReaderTest.js Fix date parsing from Atom feeds 2017-10-31 02:21:21 -04:00
feedsTest.js Don't run feeds update until after schema update promise 2017-06-19 01:25:03 -04:00
feedTest.js Fix some property access issues 2017-10-27 03:25:08 -04:00
fileInterfaceTest.js Update tests after citeproc-js upgrade to match output 2017-04-15 04:35:16 -04:00
fileTest.js Accept a Blob as input in Zotero.File.putContentsAsync() 2018-09-06 16:44:11 -04:00
fulltextTest.js Update PDF tools version and fix fulltext test 2018-02-14 04:00:02 -05:00
groupsTest.js Update toolbar icons on group editability change 2016-03-25 16:49:26 -04:00
groupTest.js Tweak test syntax that breaks with current version of chai-as-promised 2017-06-01 11:36:18 -04:00
httpTest.js Follow meta redirects and use the final URL when processing documents (#1568) 2018-10-03 22:24:39 -04:00
importExportTest.js Add skipped test for importing related items from Zotero RDF 2019-01-14 02:36:59 -05:00
integrationTest.js Unsuppress accidental test suppression from fe01e17 2019-07-04 15:46:24 +03:00
itemFieldsTest.js Fix Zotero.ItemFields.getBaseIDFromTypeAndField() 2015-05-27 05:01:48 -04:00
itemPaneTest.js Increase save time for Accessed test for Travis 2018-01-05 06:04:53 -05:00
itemsTest.js Fix tag type handling when merging items 2019-05-29 05:43:33 -04:00
itemTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
itemTreeViewTest.js Add Retracted Items virtual collection 2019-06-10 02:38:42 -04:00
librariesTest.js Make test more independent of db state 2018-08-03 11:53:54 +02:00
libraryTest.js Delete group files when deleting group 2018-07-15 23:09:34 -04:00
libraryTreeViewTest.js Fix potential error in libraryTreeView::#_removeRow() test 2016-07-19 20:31:52 -04:00
lookupTest.js Fix Add Item by Identifier test failure due to capitalization change 2018-06-27 16:28:38 +02:00
noteeditorTest.js Maybe fix noteeditor test failures for real 2017-04-01 14:29:45 -04:00
notifierTest.js Fix "Can't queue event outside of a transaction" 2018-02-08 02:07:44 -05:00
openurlTest.js Use best first creator for OpenURL author, not just first position 2016-07-11 06:30:55 -04:00
preferences_advancedTest.js Disable debug output logging test for now 2017-07-25 03:29:41 -04:00
preferences_searchTest.js Use the bundled PDF tools 2018-01-17 13:33:18 +02:00
preferences_syncTest.js Update some Sinon reset() calls 2017-06-01 15:39:42 -04:00
profileTest.js Point other profiles to new data dir after migration (+ code reorg) 2016-11-27 00:17:56 -05:00
protocolHandlerTest.js Close window after protocol handler tests 2019-08-03 02:48:01 -04:00
proxyTest.js Improves proxy support (#1129) 2016-12-12 14:29:59 +02:00
quickCopyTest.js Remove lots of old Zotero for Firefox code 2018-08-17 03:17:08 -04:00
recognizePDFTest.js Fix linked-file rename pref when retrieving metadata 2019-03-27 06:43:07 -04:00
relatedboxTest.js Rework libraryTreeView event handling 2017-03-24 05:23:56 -04:00
relationsTest.js Update relations using local user key when first setting sync user 2017-03-01 23:38:45 -05:00
retractionsTest.js Fix retraction test 2019-07-04 07:58:56 -04:00
schemaTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
searchTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
server_connectorTest.js Additional protections for HTTP endpoints 2019-07-15 07:30:12 -04:00
serverTest.js Add new init(options) signature for server endpoints 2016-12-05 02:55:32 -05:00
storageLocalTest.js API-based "Restore to Online Library" 2017-12-08 00:42:03 -05:00
storageRequestTest.js Avoid a warning from a storageRequest test from the item not existing 2017-05-23 02:12:00 -04:00
styleTest.js Fix test for AMA subtitle capitalization 2019-08-01 17:32:56 -04:00
supportTest.js Deasyncify Zotero.Tags.getID()/getAsync(), and add Zotero.Tags.create() 2016-04-21 11:07:16 -04:00
syncAPIClientTest.js Fix Backoff and Retry-After header parsing 2018-06-12 15:17:46 -04:00
syncedSettingsTest.js Fixes feed sync bugs after conflicts. (#1074) 2016-08-16 03:03:42 -04:00
syncEngineTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
syncEventListenersTest.js Fix auto-syncing of unchecked groups after object change 2017-07-21 19:39:37 -04:00
syncFullTextEngineTest.js Update full-text sync tests after 2ecfff6681 2017-10-20 05:23:13 -04:00
syncLocalTest.js Add FilePicker module to replace nsIFilePicker 2019-08-27 00:47:39 -04:00
syncRunnerTest.js Fix possible skipped group download when another group is archived 2017-10-26 19:05:46 -04:00
tagsboxTest.js Deasyncify Zotero.Tags.getID()/getAsync(), and add Zotero.Tags.create() 2016-04-21 11:07:16 -04:00
tagSelectorTest.js Tag selector performance overhaul 2019-03-28 06:28:34 -04:00
tagsTest.js When clearing automatic tags, don't delete manual tags with same name 2019-03-05 07:55:00 -05:00
translateTest.js Fx60: Remove instances of nsILocalFile 2019-08-27 00:47:39 -04:00
translatorsTest.js Implements #1021 on Z4fx extension 2016-09-27 17:43:56 +03:00
uriTest.js Add Zotero.URI.getURIItemLibraryKeyFromDB() 2017-05-19 12:11:21 -04:00
utilities_internalTest.js Type/field handling overhaul 2019-09-16 02:27:22 -04:00
utilitiesTest.js Fx60: Fix snapshot filenames 2019-08-27 00:47:39 -04:00
webdavTest.js Fix WebDAV tests after 276bb99fc9 2018-08-09 18:20:02 -04:00
zfsTest.js Stop uploading files on quota error until next manual sync or restart 2019-06-22 05:29:47 -04:00
zoteroIntlTest.js Move localeCompare tests to Zotero.Intl tests 2018-08-01 15:41:54 +02:00
zoteroPaneTest.js Add Retracted Items virtual collection 2019-06-10 02:38:42 -04:00
zoteroTest.js Merge branch 'electron' 2018-08-16 19:16:46 -04:00