Commit graph

180 commits

Author SHA1 Message Date
Dan Stillman
558ad20ce6 Scaffold: Improve cookie handling
- Use cookies from browser pane when running detectWeb or doWeb
- Use cookies from document when running or updating tests

This should fix various cases where translators can't be properly
developed or tested in Scaffold (e.g., [1]).

[1] https://github.com/zotero/translators/pull/2296#issuecomment-739116620
2020-12-06 03:09:13 -05:00
Dan Stillman
ab3a5ddbd8 Scaffold: Include mimeType: text/html for attachments in test output
The connector includes this, so the new CI translator test runner in
zotero/translators was showing erroneous mismatches.
2020-07-16 17:40:48 -04:00
Adomas Venčkauskas
8e4ac40174 Decrease translator test timeout 2020-07-07 13:14:20 +03:00
Adomas Venčkauskas
19880e4ded Translator tester updates for running in CI 2020-07-07 12:21:10 +03:00
Dan Stillman
a086507167 Obey Cmd/Ctrl-W in Scaffold, Style Editor, and Run JavaScript windows 2020-05-17 04:08:43 -04:00
Dan Stillman
2e50d37ebb Translator tester: reduce defer delay from 20s to 5s
This seems like it would be sufficient for most tests that need to wait
for a page to load and is much less annoying in Scaffold. We could
adjust for automated runs if those end up using a browser again.
2020-05-15 19:21:40 -04:00
Dan Stillman
4068dffc0f Scaffold: Use loadDocuments() for tests and honor defer: true
Previously, while updating a test used loadDocuments() (for a real
browser load) and honored `defer: true`, running a test did not.

This updates Zotero_TranslatorTester to use loadDocuments() when run in
Zotero. In other environments (translation-server, connector), it will
continue to use processDocuments(), which is based on XHR.

Fixes zotero/scaffold#96
2020-05-15 19:21:40 -04:00
Dan Stillman
6f965251ed Add FilePicker module to replace nsIFilePicker
`nsIFilePicker::show()` is removed in Firefox 60 in favor of `open()`,
which takes a callback (and apparently has been preferred for a long
time).

There's no point switching to that, so this module is a version of
nsIFilePicker with an async `show()` that returns a promise and some
XPCOM-isms replaced (e.g., string paths instead of nsIFile).
2019-08-27 00:47:39 -04:00
Dan Stillman
7d7afc2b46 Add Style Editor to Developer menu 2019-08-05 05:05:57 -04:00
Dan Stillman
9b82373f70 Add ability for Scaffold to provide alternative translators
Zotero.Translate::setTranslatorProviderMethods(methods) can be used to
provide custom 'get' and 'getAllForType' methods that override the
default Zotero.Translators methods.
2019-07-24 04:31:11 -04:00
Adomas Venčkauskas
dd8ceb93aa Add data generator customization fields and add collection generation 2019-05-14 16:46:34 +03:00
Dan Stillman
a6fb0b35c3 Update processDocuments() signature for allow passing headers
Also:

- Actually use the cookie sandbox passed to processDocuments()

For zotero/translation-server#16, we want to include Accept-Language
(and maybe other headers) from the client request in upstream requests,
which requires passing it to both non-translate processDocuments().
translation-server's non-translate processDocuments() is defined in that
repo, but it's called by the cross-repo translate processDocuments() in
utilities_translate.js, so the signature needs to be changed in both
repos.

We also apparently weren't using the cookieSandbox in client
processDocuments() calls, though I think that only would've affected
translator testing.
2018-12-04 01:42:56 -07:00
Adomas Venčkauskas
b1e3195b5a Adds translatorTester nodejs compatibility code that doesn't break Scaffold 2018-11-13 13:25:01 +02:00
Dan Stillman
b80c405da4 Revert "Changes for translator tester compatibility with translation server"
This reverts commit e526a8fa89.

This is a repeat of a0ca67d879. The reverted changes break Scaffold.
This will need to be fixed in a way that allows Scaffold to continue to
work.
2018-11-12 00:40:30 -05:00
Adomas Venčkauskas
e526a8fa89 Changes for translator tester compatibility with translation server 2018-10-31 11:32:33 +02:00
Adomas Venčkauskas
8d61e30a93 Update translatorTester for use in translation server 2018-10-26 16:30:08 +03:00
Dan Stillman
a0ca67d879 Revert part of 5b3b1f0f1 to fix Scaffold breakage
I didn't look into the details, but `this` isn't defined when this file
is loaded within Scaffold, so this line caused an error and the
translator tester was broken.
2018-10-21 05:37:03 -04:00
Adomas Venčkauskas
5b3b1f0f1b Update translatorTester for translation server support 2018-10-19 13:47:44 +03:00
Dan Stillman
05843bb093 Fix base fields in connectorTypeSchemaData.js 2018-05-10 02:26:44 -04:00
Dan Stillman
7d14da3a8c Fix translator test mismatches due to 5.0 tag format 2017-10-05 17:18:43 -04:00
Dan Stillman
9209edd081 Use object for translate() in translator tests 2017-10-05 17:18:42 -04:00
Dan Stillman
23cf6bd007 Use new HTTP.processDocuments() in translatorTester 2017-10-05 17:18:42 -04:00
Dan Stillman
d5261841be Allow substrings when filtering translator tests 2017-10-05 17:18:42 -04:00
Dan Stillman
819be60796 Switch to XMLHttpRequest for processDocuments()
processDocuments() now uses an XHR 'document' request, wrapped to
provide a 'location' property, and uses promises for a simpler call
signature (though the old one will continue to work, for existing
translators). 'done' and 'exception' can now be handled via promises,
and in the translator sandbox an optional noCompleteOnError argument
instructs it not to automatically cancel the translation process with an
error (e.g., for supplementary materials).

Since we do need a hidden browser in some situations (e.g., for saving
snapshots), the old hidden-browser-based processDocuments() is still
available as Zotero.HTTP.loadDocuments().

This hopefully also fixes various problems with document property access
in translation-server.
2017-10-05 17:18:42 -04:00
Frank Bennett
b0c0cd6e0c Expose styleEngine in csledit.js, for Abbreviation Filter 2017-08-24 23:26:03 +09:00
Dan Stillman
b60fdacd3f Fix whitespace and description in build_typeSchemaData.html 2017-05-08 18:51:50 -04:00
Adomas Venčkauskas
e1f09d4655 Remove unneeded connector files, update connectorTypeSchemaData.js
Addresses zotero/zotero-connectors#121
2017-05-08 14:38:03 +03:00
Dan Stillman
f4eb8ed3bb Pass chunk size to data generator
TODO: Add text fields for controlling number of items and chunk size

(Chunk size should be small for testing UI interactions and performance
but large for generating lots of data.)
2017-03-21 05:06:37 -04:00
Dan Stillman
d9b5fd78c9 Fix error from empty strings in data generator 2017-03-21 04:58:38 -04:00
Dan Stillman
b732a82d55 Script to generate random item data
For building up a big library and testing UI interaction during writes

To use, load chrome://zotero/content/tools/data_generator.html in
Firefox (for now).

Could be improved a bit to add other kinds of data (collections,
child items, relations)
2017-03-09 04:02:09 -05:00
Dan Stillman
a57ea28d42 Fix csledit
Closes #1149

(There's an additional change in #1149, but as far as I can tell it's
not necessary for csledit.xul.)
2017-02-03 00:53:43 -05:00
Dan Stillman
23f84d796f Fix CSL Preview pane
CSL Editor is being fixed in #1149
2017-01-15 02:46:03 -05:00
Tom Najdek
269e2f8bff Replace legacy syntax for each...in with for...of 2016-12-21 08:04:09 -05:00
Adomas Venčkauskas
3ca5526f29 Fix translator tester on xul extension 2016-09-23 17:37:47 +03:00
Adomas Venčkauskas
e83bbbad4e Fix getTranslatorCode bugs
- /connector/getTranslatorCode used to respond with empty content
- CodeGetter froze connectors by issuing hundreds of simultanious XHR
  requests
2016-09-20 15:55:58 +03:00
Adomas Venčkauskas
38df733a37 Fixes overriden Zotero object in connector sandboxes
Occurs when not using `with` statement, which is highly discouraged and
unsupported in strict mode.
2016-09-20 15:53:55 +03:00
Dan Stillman
5bcce8ba82 Merge branch '4.0' 2016-09-06 18:57:05 -04:00
Dan Stillman
3ef9b93573 Fix errors with deferred translator tests
In translation-server, the test timeout is overridden to 30 seconds, which was
also the deferred test delay, so there was a race condition that could cause
deferred tests to fail. This sets the deferred delay to 20 seconds.
2016-09-06 01:37:17 -04:00
Dan Stillman
43bd1b7082 Collect incremental results for a run within Zotero_TranslatorTesters
This requires provo and translation-server updates.
2016-09-04 01:37:28 -04:00
Dan Stillman
7f5e57f606 Fix error in translator tester when only one translator is whitelisted 2016-09-02 02:43:25 -04:00
Dan Stillman
06472a9d3c Add array for debugging specific translators 2016-08-31 02:53:35 -04:00
Dan Stillman
1266c9f1e6 Automatically close rogue dialog boxes
A few sites (e.g., Gallica) were causing alerts to pop up in Standalone during
testing, which breaks testing, so accept them automatically. (Hopefully these
don't happen during manual translation...?)
2016-08-31 02:50:02 -04:00
Dan Stillman
6ad195521b Save test results after every translator
Goes with 0813241150
2016-08-31 02:10:23 -04:00
Dan Stillman
a343a7af6e Merge branch '4.0' 2016-06-06 16:42:39 -04:00
Dan Stillman
849d206f87 Fix error running tests in translation-server 2016-05-27 04:37:48 -04:00
Dan Stillman
216900094b Merge branch '4.0' 2016-05-07 13:27:56 -04:00
Dan Stillman
c7c271f2c4 Fix CSL editor in Firefox 46 2016-05-07 13:17:57 -04:00
Philipp Zumstein
aef8453924 Fix some for each ... in cases (#978) 2016-05-03 17:51:12 -04:00
Dan Stillman
3071b8093b Merge branch '4.0' 2016-01-20 01:23:02 -05:00
Dan Stillman
7d404e8d4a Closes #896, Legacy array/generator comprehension is removed in Firefox 46
Possible there are some bugs here (and it also may fix a couple existing bugs).
2016-01-12 01:58:38 -05:00