Commit graph

256 commits

Author SHA1 Message Date
Renée Kooi
59bf530961
Fix end to end test failures on CI (#2341)
Co-authored-by: Artur Paikin <artur@arturpaikin.com>
2020-06-29 15:05:28 +02:00
Artur Paikin
68f36b1ac2
Refactor FileProgress component (#2303)
* refactor FileProgress component; pass hideCancelButton, hidePauseResumeButton and hideRetryButton

* move icons to where they are rendered, rename UppyIcon to uppy-u-icon

* cleanup: rename DashboardItem, remove xmlns

* update docs to specify the option also hides action button on each individual file
2020-06-06 04:10:01 +02:00
Renée Kooi
11c1febf8b
test: remove path parameter 2020-05-25 15:18:22 +02:00
Renée Kooi
8fd3f591d0
test: make endtoend tests runnable with local IEDriverServer 2020-04-27 15:38:35 +02:00
Renée Kooi
72425316e2
test: fix create-react-app test 2020-04-01 17:02:22 +02:00
Renée Kooi
be66c47deb
Actually check types (#1918)
* types: stronger typings

* Remove remaining `declare module` things for uppy.use

* Format types standard-style-like

* Add `target` properties to plugin typings

* Add type for `replaceTargetContent` option

* xhr-upload: allow lowercase method

* opt in to stricter typechecks

* use the strictly typed version in all typings tests

* endtoend: use strict types in typescript test

* Add some comments to the typings file so IDEs will warn about untyped use()

* informer: remove obsolete option from typings

* react: generate prop types based on actual options types

* react: update types

* react: fix import in typings test

* companion-client: add `pluginId` property to ProviderOptions type

Co-Authored-By: Ifedapo .A. Olarewaju <ifedapoolarewaju@gmail.com>

* core: remove some `any` types

* *: add locale string types

* *: generate locale typings

* core: fix LocaleStrings<> type

* dashboard: add locale string type tests

* tus: inherit options typings from tus-js-client

* transloadit: add missing options types

* ci: do the required build steps before testing typings

* Support TokenStorage in types, add `title?: string` options

* form: update typings

* types: put TokenStorage type in dependents

* Document Uppy.StrictTypes

* if we pin at least we should use the latest

* Allow document.querySelector

I think it's a eslint-plugin-compat bug that it's marking querySelector
as not available in Android Chrome 78.

Co-authored-by: Ifedapo .A. Olarewaju <ifedapoolarewaju@gmail.com>
2020-02-12 16:22:09 +01:00
Renée Kooi
a1eeaa386b
Update babel-eslint and jest
Fixes the `no-unused-vars` issue.

Disables the preflight check in CRA, it has its own isolated module tree
so it was useless anyway.
2019-10-11 16:11:52 +02:00
Renée Kooi
733de659da
Upgrade standard to v14 (#1860)
* Update eslint dependencies.

* standard --fix

* build: disable handler name lint rule

* status-bar: manually fix lint errors

* webcam: manually fix lint errors

* url: manually fix lint errors

* react-native: manually fix lint errors

* dashboard: manually fix lint errors

* informer: manually fix linting errors

* progress-bar: manually fix lint errors

* provider-views: manually fix lint errors

* redux-dev-tools: manually fix lint errors

* build: disable buggy no-unused-vars rule

* examples: manually fix lint errors

* ` quotes for code things, ' for text things
2019-10-09 14:53:02 +02:00
Ifedapo .A. Olarewaju
f967403100 test: e2e for fastRetry in providers (#1766) 2019-09-30 16:12:45 +02:00
Renée Kooi
bb8b66d918
Use more cancellation-friendly strategy for limit: N uploads (#1736)
* xhr-upload: redo limit option using different strategy

* xhr-upload: fix marking requests as done

* Move duplicate createEventTracker definitions to @uppy/utils

* tus: new cancellation for local uploads

* tus: fix cancelling queued uploads

* tus: fix wrong name

* aws-s3-multipart: smol refactor

* aws-s3-multipart: new cancellation style

* aws-s3: new cancellation

* utils: port limitPromises test to RateLimitedQueue

* timing fix?

* tus: new cancellation on websocket

* xhr-upload: implement cancellation for remote uploads

* aws-s3-multipart: port to new cancellation

* utils: remove limitPromises

* xhr-upload: remove pause/resume code

* xhr-upload: clean up event listeners

* xhr-upload: extract progress timer to separate class

* Move ProgressTimeout class to utils

* utils: update typings

* Fix lint

* tus: make pause/resume respect the rate limiting queue

* tus: try to explain some of the tricky things at play in the Tus#upload method

* aws-s3-multipart: add missing { abort: true }

* aws-s3-multipart: make pause/resume respect the rate limiting queue

* eslintrc.json - fixed eslint warnings for jsdoc

* Revert "eslintrc.json - fixed eslint warnings for jsdoc"

This reverts commit 50b24773ce.

* eslintrc.json - allow indentation in jsdoc comments

* xhr-upload: fix promise return value

* tus: fix promise return value

* tus: add missing `return () => {}`

* utils: typing export type fixes

* tus: add more jsdoc

* companion-client: add missing SocketOptions type

* utils: fix more export typings

* core,companion-client,tus: more typings tweaking

* companion-client: test fix 😩

* companion-client: add type for Socket#open

* tus: fix emit() call

* add local cancellation fuzz....ish? test
2019-09-25 15:21:17 +02:00
Renée Kooi
c62ec3665d Update eslint to v6 (#1777)
* Update eslint

* Do eslint --fix

* Do not access Object.prototype method 'hasOwnProperty' from target object

* utils: add hasProperty

* eslint --fix

* Disable quote-props for locale files

* add back quotes in locale files

* revert locale files to state on master

* Update react-scripts
2019-08-13 21:45:30 +03:00
Ifedapo Olarewaju
e991169249 test: working provider e2e test for local env 2019-07-22 13:02:50 +01:00
Ifedapo Olarewaju
3582c9c650 e2e: reintroduce e2e test for providers locally 2019-07-21 10:29:28 +01:00
Renée Kooi
54c347dfb7
ci: use a fancy matrix (#1709)
* ci: try a fancy matrix

* ci: separate lint build

* build: update some dependencies for node 12 compat

* ci: do typing checks as part of LINT run

* ci: conditionally run ACCEPTANCE and WEBSITE jobs

* ci: is sauce checking domain names or what?

* ci: only build the website when we actually deploy it

* Revert "ci: is sauce checking domain names or what?"

This reverts commit a29fc7ecf9.

* ci: i might have misinterpreted this config?

* ci: rename acceptance → endtoend for consistency

* test: may need to update element reference after click?

* ci: try to only use sauce connect for endtoend runs

* ci: fix sauce_connect property name

* ci: comment the travis config a bit [skip ci]
2019-07-09 11:22:49 +02:00
Renée Kooi
0a40f2c444
Update webdriverio to v5 (#1675)
* build: update webdriverio to v5

* build: update wdio services config syntax

* e2e test updates for wdio 5

* Sync pinned versions between repo root and companion

* build: enable all e2e tests for this PR run

* waitForExist

* test: await browser.url() calls

* test: awaitify url-plugin test

* test: use sauceConnect

* test: upload files to sauce before using them

* fall back to fakechoosefile a lot?

* fall back to fakechoosefile more

* Disable file selection on saucelabs

* test: need to await this thing

* test: make more-sure that the input is visible

* test: use currently low load transloadit region so i dont have to wait

* test: update but disable xhr-limit

* test: change the order

* test: newer firefoxes

* test: change the order back

* kinda sucks that they only have super old browsers on linux

* ci: disable url-plugin and transloadit e2e tests again

* test: use local tus-node-server for integration tests

* test: use envify to check env variables and select appropriate URL

* test: use companion.test:1080 for tus uploads on Travis

* test: fix env vars in typescript and CRA tests

* test: use getBoundingClientRect, may work better in android

* test: try getSize AND getBoundingClientRect

* test: do not check image width in android

* test: allow retrying tests that are prone to flakiness

* test: be more verbose during e2e tests

* test: force <input> visibility in more tests

* test: warn if using test:endtoend not on CI
2019-07-05 13:45:43 +02:00
Renée Kooi
315c7b2309
Do eslint --fix 2019-07-01 11:08:19 +02:00
Renée Kooi
4ec41b544a
update react-scripts 2019-05-27 15:52:22 +02:00
Renée Kooi
916907b5fb
Upgrade build dependencies (#1549)
Upgrade build dependencies
2019-05-20 16:29:48 +02:00
Renée Kooi
73b9583814
Update iOS version, fixing integration tests (#1548)
* Update iOS version

Seems 10.0 is no longer available, and Sauce threw an Appium version
error so i've removed that bit.

* is it the screenshots that are slow?

* drop os version

* test: fix spelling in supportsChooseFile

* trying with appiumVersion and iPhone 8
2019-05-20 16:28:00 +02:00
Renée Kooi
3b1d5b933f
Update eslint-plugin-compat and eslint-plugin-jest 2019-05-20 11:29:10 +02:00
Renée Kooi
f97b3931bb
Upgrade eslint. 2019-05-20 11:28:44 +02:00
Artur Paikin
97c41cd971 remove appiumVersion 2019-05-17 18:19:43 +03:00
Artur Paikin
cdee4787be disable failing iOS test for now
//cc @goto-bus-stop
2019-05-17 17:51:02 +03:00
Kevin van Zonneveld
29c04a11f0 Add uppy state that gave us progress @ 1020% 2019-04-26 11:05:43 +02:00
Artur Paikin
d321be016f use newer OSes for tests 2019-04-19 09:47:18 +03:00
Ifedapo Olarewaju
adeb2fecfa update docs, tests, and examples with companionUrl rename 2019-04-15 14:56:37 +01:00
Renée Kooi
5709647728
typescript: fix uppy package use with allowSyntheticImports: false
Synthetic default imports allow you to `import X from 'x'` if `'x'` is a
CommonJS module. Our `uppy` package relied on that (probably forgot to
update it in a previous patch). If users had set
`allowSyntheticDefaultImports: false`, they would not be able to use the
`uppy` package.

We should at some point go through the typings again and set everything
to the tightest options, because that'll work with the widest array of
users, but for now let's just unbreak this particular case.

Fixes #1395
2019-04-01 11:47:52 +02:00
Artur Paikin
130b79076c try build with newer Chrome 2019-03-29 22:11:25 +03:00
Kevin van Zonneveld
5f4f1cf17e
Refactor npm scripts, clean up unused ones (#1392)
Co-Authored-By: Artur Paikin <artur@arturpaikin.com>
2019-03-29 14:55:23 +01:00
Artur Paikin
086370178b what if chrome 50 is the reason for tests failing 2019-03-28 15:19:48 +03:00
Artur Paikin
31f82ab785 disable url-plugin again for now 2019-02-15 21:26:55 +03:00
Artur Paikin
56794135b8 try enabling/fixing url-plugin test on travis 2019-02-01 16:41:19 +03:00
Artur Paikin
2704e31579 temp disable url and transloadit tests 2019-01-31 19:17:41 +03:00
Renée Kooi
8466f66356
Add polyfills 2018-12-20 14:52:57 +01:00
Renée Kooi
7eed66d6f9
Set tsify target to ES3 2018-12-20 14:52:57 +01:00
Renée Kooi
0949f462cd
can we log that 2018-12-20 14:52:57 +01:00
Renée Kooi
7fd5af46df
Move programmatic click to test.js 2018-12-20 14:52:57 +01:00
Renée Kooi
5699e5962b
Add typescript integration test. 2018-12-20 14:52:57 +01:00
Artur Paikin
895103e402 add core styles to create-react-app tests 2018-11-22 14:23:32 +03:00
Artur Paikin
5b25f2341c build like this? 2018-11-20 17:23:12 +03:00
Renée Kooi
6694350493
fix skip 🤦‍♀️ 2018-11-15 15:58:03 +01:00
Renée Kooi
8e2aa30091
Skip consistently failing thumbnail test on IE for now 2018-11-15 15:44:51 +01:00
Renée Kooi
052b5641f4
Drop Chrome 69 test because it crashes 2018-11-05 14:56:43 +01:00
Renée Kooi
abd3b07359
Fix integration test mocha config. 2018-11-05 11:11:22 +01:00
Ifedapo Olarewaju
24807c2e41 test: fix url-plugin test 2018-10-26 01:21:08 +01:00
Ifedapo Olarewaju
f632e1453b test: disable url-plugin tests 2018-10-15 15:44:47 +01:00
Ifedapo Olarewaju
69a06376f0 test: use "waitForExist" 2018-10-15 08:22:26 +01:00
Ifedapo Olarewaju
2e7281e48f test: change upload complete selector for url-plugin 2018-10-15 07:56:59 +01:00
Ifedapo Olarewaju
c42e1078ed test: disable autoproceed for url-plugin test 2018-10-15 07:35:36 +01:00
Ifedapo Olarewaju
44a8070377 test: integration test for url plugin 2018-10-14 20:20:16 +01:00