@corellium/corellium-cli 1.0.3 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -17
- package/docs/OVERVIEW.md +1 -1
- package/jenkinsbuild/build.sh +1 -1
- package/package.json +3 -3
- package/src/TrialAccount.js +76 -0
- package/src/commands/Client.js +2 -2
- package/src/commands/agent/Agent.js +10 -19
- package/src/commands/agent/apps.js +2 -1
- package/src/commands/agent/file.js +2 -1
- package/src/commands/agent/index.js +1 -0
- package/src/commands/agent/ready.js +43 -0
- package/src/commands/extensions/delete.js +2 -1
- package/src/commands/extensions/list.js +2 -1
- package/src/commands/extensions/load.js +2 -1
- package/src/commands/extensions/validate.js +2 -1
- package/src/commands/firmware/list.js +2 -1
- package/src/commands/firmware/load.js +2 -1
- package/src/commands/images/create.js +2 -1
- package/src/commands/images/delete.js +2 -1
- package/src/commands/images/list.js +2 -1
- package/src/commands/instances/Instance.js +27 -0
- package/src/commands/instances/create.js +11 -4
- package/src/commands/instances/delete.js +20 -5
- package/src/commands/instances/index.js +2 -1
- package/src/commands/instances/list.js +11 -5
- package/src/commands/instances/start.js +2 -1
- package/src/commands/instances/stop.js +2 -1
- package/src/commands/instances/upgrade.js +90 -0
- package/src/commands/login.js +14 -2
- package/src/commands/logout.js +2 -1
- package/src/commands/projects/create.js +2 -1
- package/src/commands/projects/delete.js +2 -1
- package/src/commands/projects/list.js +2 -1
- package/src/commands/signup.js +14 -5
- package/src/commands/webplayer/WebPlayer.js +2 -1
- package/src/commands/webplayer/create.js +8 -1
- package/src/commands/webplayer/destroy.js +2 -1
- package/src/commands/webplayer/list.js +19 -17
- package/src/commands/webplayer/login.js +2 -1
- package/src/error.js +14 -1
- package/src/logging.js +1 -1
- package/src/profile.js +12 -9
- package/src/resumable.js +1314 -0
- package/src/table.js +7 -2
- package/src/upload.js +64 -2
- package/src/utils.js +11 -4
- package/test/test.js +89 -0
- package/example/WebPlayerSample.js +0 -263
- package/node_modules/@corellium/corellium-api/README.md +0 -1210
- package/node_modules/@corellium/corellium-api/node_modules/form-data/License +0 -19
- package/node_modules/@corellium/corellium-api/node_modules/form-data/README.md.bak +0 -356
- package/node_modules/@corellium/corellium-api/node_modules/form-data/Readme.md +0 -356
- package/node_modules/@corellium/corellium-api/node_modules/form-data/index.d.ts +0 -62
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/browser.js +0 -2
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/form_data.js +0 -498
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/populate.js +0 -10
- package/node_modules/@corellium/corellium-api/node_modules/form-data/package.json +0 -104
- package/node_modules/@corellium/corellium-api/node_modules/uuid/AUTHORS +0 -5
- package/node_modules/@corellium/corellium-api/node_modules/uuid/CHANGELOG.md +0 -119
- package/node_modules/@corellium/corellium-api/node_modules/uuid/LICENSE.md +0 -21
- package/node_modules/@corellium/corellium-api/node_modules/uuid/README.md +0 -276
- package/node_modules/@corellium/corellium-api/node_modules/uuid/bin/uuid +0 -65
- package/node_modules/@corellium/corellium-api/node_modules/uuid/index.js +0 -8
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/bytesToUuid.js +0 -26
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5-browser.js +0 -216
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5.js +0 -25
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng-browser.js +0 -34
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng.js +0 -8
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1-browser.js +0 -89
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1.js +0 -25
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/v35.js +0 -57
- package/node_modules/@corellium/corellium-api/node_modules/uuid/package.json +0 -103
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v1.js +0 -109
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v3.js +0 -4
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v4.js +0 -29
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v5.js +0 -3
- package/node_modules/@corellium/corellium-api/package.json +0 -106
- package/node_modules/@corellium/corellium-api/resumable.js +0 -1312
- package/node_modules/@corellium/corellium-api/src/agent.js +0 -962
- package/node_modules/@corellium/corellium-api/src/corellium.js +0 -444
- package/node_modules/@corellium/corellium-api/src/images.js +0 -131
- package/node_modules/@corellium/corellium-api/src/input.js +0 -178
- package/node_modules/@corellium/corellium-api/src/instance-updater.js +0 -56
- package/node_modules/@corellium/corellium-api/src/instance.js +0 -1031
- package/node_modules/@corellium/corellium-api/src/netmon.js +0 -308
- package/node_modules/@corellium/corellium-api/src/project.js +0 -393
- package/node_modules/@corellium/corellium-api/src/role.js +0 -65
- package/node_modules/@corellium/corellium-api/src/snapshot.js +0 -77
- package/node_modules/@corellium/corellium-api/src/team.js +0 -29
- package/node_modules/@corellium/corellium-api/src/user.js +0 -51
- package/node_modules/@corellium/corellium-api/src/util/fetch.js +0 -62
- package/node_modules/@corellium/corellium-api/src/util/sleep.js +0 -7
- package/node_modules/@corellium/corellium-api/test/integration-tests.js +0 -1292
- package/node_modules/@corellium/corellium-api/test/root-hook-set-flag-if-test-failed.js +0 -7
- package/node_modules/async-limiter/.eslintignore +0 -2
- package/node_modules/async-limiter/.nycrc +0 -10
- package/node_modules/async-limiter/.travis.yml +0 -9
- package/node_modules/async-limiter/LICENSE +0 -8
- package/node_modules/async-limiter/index.js +0 -67
- package/node_modules/async-limiter/package.json +0 -72
- package/node_modules/async-limiter/readme.md +0 -132
- package/node_modules/buffer-crc32/LICENSE +0 -19
- package/node_modules/buffer-crc32/README.md +0 -47
- package/node_modules/buffer-crc32/index.js +0 -111
- package/node_modules/buffer-crc32/package.json +0 -72
- package/node_modules/cross-fetch/LICENSE +0 -21
- package/node_modules/cross-fetch/README.md +0 -169
- package/node_modules/cross-fetch/dist/browser-polyfill.js +0 -532
- package/node_modules/cross-fetch/dist/browser-ponyfill.js +0 -554
- package/node_modules/cross-fetch/dist/cross-fetch.js +0 -2
- package/node_modules/cross-fetch/dist/cross-fetch.js.map +0 -1
- package/node_modules/cross-fetch/dist/node-polyfill.js +0 -11
- package/node_modules/cross-fetch/dist/node-ponyfill.js +0 -22
- package/node_modules/cross-fetch/dist/react-native-polyfill.js +0 -12
- package/node_modules/cross-fetch/dist/react-native-ponyfill.js +0 -6
- package/node_modules/cross-fetch/index.d.ts +0 -14
- package/node_modules/cross-fetch/package.json +0 -160
- package/node_modules/cross-fetch/polyfill/package.json +0 -8
- package/node_modules/duplexify/.travis.yml +0 -6
- package/node_modules/duplexify/LICENSE +0 -21
- package/node_modules/duplexify/README.md +0 -97
- package/node_modules/duplexify/example.js +0 -21
- package/node_modules/duplexify/index.js +0 -234
- package/node_modules/duplexify/package.json +0 -69
- package/node_modules/duplexify/test.js +0 -295
- package/node_modules/end-of-stream/LICENSE +0 -21
- package/node_modules/end-of-stream/README.md +0 -54
- package/node_modules/end-of-stream/index.js +0 -94
- package/node_modules/end-of-stream/package.json +0 -69
- package/node_modules/fast-stable-stringify/.npmignore +0 -4
- package/node_modules/fast-stable-stringify/.travis.yml +0 -10
- package/node_modules/fast-stable-stringify/LICENSE +0 -21
- package/node_modules/fast-stable-stringify/README.md +0 -81
- package/node_modules/fast-stable-stringify/cli/files-to-comparison-results.js +0 -67
- package/node_modules/fast-stable-stringify/cli/format-table.js +0 -70
- package/node_modules/fast-stable-stringify/cli/index.js +0 -19
- package/node_modules/fast-stable-stringify/fixtures/index.js +0 -5
- package/node_modules/fast-stable-stringify/fixtures/input-data-types.js +0 -191
- package/node_modules/fast-stable-stringify/fixtures/log-result.json +0 -22
- package/node_modules/fast-stable-stringify/fixtures/log.txt +0 -24
- package/node_modules/fast-stable-stringify/index.js +0 -73
- package/node_modules/fast-stable-stringify/karma.conf.js +0 -124
- package/node_modules/fast-stable-stringify/karma.conf.travis.js +0 -95
- package/node_modules/fast-stable-stringify/package.json +0 -77
- package/node_modules/fast-stable-stringify/results/escape-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape.md +0 -20
- package/node_modules/fast-stable-stringify/results/itar-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar.md +0 -20
- package/node_modules/fast-stable-stringify/results/iter/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 39.0.0 (Android 5.1.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 9.0.0 (iOS 9.2.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Safari 9.1.2 (Mac OS X 10.11.6).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter.md +0 -14
- package/node_modules/fast-stable-stringify/results/libs/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs.md +0 -15
- package/node_modules/fast-stable-stringify/test/escape-long.js +0 -147
- package/node_modules/fast-stable-stringify/test/escape-short.js +0 -147
- package/node_modules/fast-stable-stringify/test/index.js +0 -6
- package/node_modules/fast-stable-stringify/test/itar-long.js +0 -52
- package/node_modules/fast-stable-stringify/test/itar-short.js +0 -52
- package/node_modules/fast-stable-stringify/test/iter.js +0 -84
- package/node_modules/fast-stable-stringify/test/libs.js +0 -57
- package/node_modules/fast-stable-stringify/test/travis.js +0 -43
- package/node_modules/fast-stable-stringify/test/validate.js +0 -24
- package/node_modules/fast-stable-stringify/util/eachRecursive.js +0 -9
- package/node_modules/fast-stable-stringify/util/get-git-hash-sync.js +0 -21
- package/node_modules/fast-stable-stringify/util/get-lib-info.js +0 -22
- package/node_modules/fast-stable-stringify/util/object-path.js +0 -47
- package/node_modules/fast-stable-stringify/v8-profile/bench.js +0 -8
- package/node_modules/fast-stable-stringify/v8-profile/run.sh +0 -2
- package/node_modules/fast-stable-stringify/zuul-local.sh +0 -2
- package/node_modules/hkdf/.npmignore +0 -2
- package/node_modules/hkdf/README.md +0 -23
- package/node_modules/hkdf/hkdf.py +0 -171
- package/node_modules/hkdf/hkdf.pyc +0 -0
- package/node_modules/hkdf/index.js +0 -1
- package/node_modules/hkdf/lib/hkdf.js +0 -55
- package/node_modules/hkdf/package.json +0 -55
- package/node_modules/hkdf/scripts/run_all_tests.sh +0 -19
- package/node_modules/hkdf/test/all-test.js +0 -79
- package/node_modules/hkdf/test.py +0 -11
- package/node_modules/immediate/LICENSE.txt +0 -20
- package/node_modules/immediate/README.md +0 -93
- package/node_modules/immediate/dist/immediate.js +0 -75
- package/node_modules/immediate/dist/immediate.min.js +0 -1
- package/node_modules/immediate/lib/browser.js +0 -69
- package/node_modules/immediate/lib/index.js +0 -73
- package/node_modules/immediate/package.json +0 -86
- package/node_modules/isarray/.npmignore +0 -1
- package/node_modules/isarray/.travis.yml +0 -4
- package/node_modules/isarray/Makefile +0 -6
- package/node_modules/isarray/README.md +0 -60
- package/node_modules/isarray/component.json +0 -19
- package/node_modules/isarray/index.js +0 -5
- package/node_modules/isarray/package.json +0 -77
- package/node_modules/isarray/test.js +0 -20
- package/node_modules/jszip/.codeclimate.yml +0 -16
- package/node_modules/jszip/.editorconfig +0 -8
- package/node_modules/jszip/.github/workflows/pr.yaml +0 -41
- package/node_modules/jszip/.jshintignore +0 -1
- package/node_modules/jszip/.jshintrc +0 -21
- package/node_modules/jszip/.travis.yml +0 -17
- package/node_modules/jszip/CHANGES.md +0 -192
- package/node_modules/jszip/LICENSE.markdown +0 -651
- package/node_modules/jszip/README.markdown +0 -33
- package/node_modules/jszip/dist/jszip.js +0 -11583
- package/node_modules/jszip/dist/jszip.min.js +0 -13
- package/node_modules/jszip/index.d.ts +0 -335
- package/node_modules/jszip/lib/base64.js +0 -106
- package/node_modules/jszip/lib/compressedObject.js +0 -74
- package/node_modules/jszip/lib/compressions.js +0 -14
- package/node_modules/jszip/lib/crc32.js +0 -77
- package/node_modules/jszip/lib/defaults.js +0 -11
- package/node_modules/jszip/lib/external.js +0 -19
- package/node_modules/jszip/lib/flate.js +0 -85
- package/node_modules/jszip/lib/generate/ZipFileWorker.js +0 -540
- package/node_modules/jszip/lib/generate/index.js +0 -57
- package/node_modules/jszip/lib/index.js +0 -55
- package/node_modules/jszip/lib/license_header.js +0 -11
- package/node_modules/jszip/lib/load.js +0 -88
- package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +0 -74
- package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +0 -42
- package/node_modules/jszip/lib/nodejsUtils.js +0 -57
- package/node_modules/jszip/lib/object.js +0 -389
- package/node_modules/jszip/lib/readable-stream-browser.js +0 -9
- package/node_modules/jszip/lib/reader/ArrayReader.js +0 -57
- package/node_modules/jszip/lib/reader/DataReader.js +0 -116
- package/node_modules/jszip/lib/reader/NodeBufferReader.js +0 -19
- package/node_modules/jszip/lib/reader/StringReader.js +0 -38
- package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +0 -22
- package/node_modules/jszip/lib/reader/readerFor.js +0 -28
- package/node_modules/jszip/lib/signature.js +0 -7
- package/node_modules/jszip/lib/stream/ConvertWorker.js +0 -26
- package/node_modules/jszip/lib/stream/Crc32Probe.js +0 -24
- package/node_modules/jszip/lib/stream/DataLengthProbe.js +0 -29
- package/node_modules/jszip/lib/stream/DataWorker.js +0 -116
- package/node_modules/jszip/lib/stream/GenericWorker.js +0 -263
- package/node_modules/jszip/lib/stream/StreamHelper.js +0 -212
- package/node_modules/jszip/lib/support.js +0 -38
- package/node_modules/jszip/lib/utf8.js +0 -275
- package/node_modules/jszip/lib/utils.js +0 -501
- package/node_modules/jszip/lib/zipEntries.js +0 -262
- package/node_modules/jszip/lib/zipEntry.js +0 -294
- package/node_modules/jszip/lib/zipObject.js +0 -133
- package/node_modules/jszip/package.json +0 -99
- package/node_modules/jszip/tsconfig.json +0 -101
- package/node_modules/jszip/vendor/FileSaver.js +0 -247
- package/node_modules/lie/README.md +0 -62
- package/node_modules/lie/dist/lie.js +0 -350
- package/node_modules/lie/dist/lie.min.js +0 -1
- package/node_modules/lie/dist/lie.polyfill.js +0 -358
- package/node_modules/lie/dist/lie.polyfill.min.js +0 -1
- package/node_modules/lie/lib/browser.js +0 -273
- package/node_modules/lie/lib/index.js +0 -298
- package/node_modules/lie/license.md +0 -7
- package/node_modules/lie/lie.d.ts +0 -244
- package/node_modules/lie/package.json +0 -98
- package/node_modules/lie/polyfill.js +0 -4
- package/node_modules/p-finally/index.js +0 -15
- package/node_modules/p-finally/license +0 -21
- package/node_modules/p-finally/package.json +0 -77
- package/node_modules/p-finally/readme.md +0 -47
- package/node_modules/p-retry/index.js +0 -52
- package/node_modules/p-retry/license +0 -9
- package/node_modules/p-retry/package.json +0 -83
- package/node_modules/p-retry/readme.md +0 -109
- package/node_modules/p-timeout/index.d.ts +0 -72
- package/node_modules/p-timeout/index.js +0 -57
- package/node_modules/p-timeout/license +0 -9
- package/node_modules/p-timeout/package.json +0 -80
- package/node_modules/p-timeout/readme.md +0 -87
- package/node_modules/pako/CHANGELOG.md +0 -164
- package/node_modules/pako/LICENSE +0 -21
- package/node_modules/pako/README.md +0 -191
- package/node_modules/pako/dist/pako.js +0 -6818
- package/node_modules/pako/dist/pako.min.js +0 -1
- package/node_modules/pako/dist/pako_deflate.js +0 -3997
- package/node_modules/pako/dist/pako_deflate.min.js +0 -1
- package/node_modules/pako/dist/pako_inflate.js +0 -3300
- package/node_modules/pako/dist/pako_inflate.min.js +0 -1
- package/node_modules/pako/index.js +0 -14
- package/node_modules/pako/lib/deflate.js +0 -400
- package/node_modules/pako/lib/inflate.js +0 -423
- package/node_modules/pako/lib/utils/common.js +0 -105
- package/node_modules/pako/lib/utils/strings.js +0 -187
- package/node_modules/pako/lib/zlib/README +0 -59
- package/node_modules/pako/lib/zlib/adler32.js +0 -51
- package/node_modules/pako/lib/zlib/constants.js +0 -68
- package/node_modules/pako/lib/zlib/crc32.js +0 -59
- package/node_modules/pako/lib/zlib/deflate.js +0 -1874
- package/node_modules/pako/lib/zlib/gzheader.js +0 -58
- package/node_modules/pako/lib/zlib/inffast.js +0 -345
- package/node_modules/pako/lib/zlib/inflate.js +0 -1556
- package/node_modules/pako/lib/zlib/inftrees.js +0 -343
- package/node_modules/pako/lib/zlib/messages.js +0 -32
- package/node_modules/pako/lib/zlib/trees.js +0 -1222
- package/node_modules/pako/lib/zlib/zstream.js +0 -47
- package/node_modules/pako/package.json +0 -94
- package/node_modules/process-nextick-args/index.js +0 -45
- package/node_modules/process-nextick-args/license.md +0 -19
- package/node_modules/process-nextick-args/package.json +0 -53
- package/node_modules/process-nextick-args/readme.md +0 -18
- package/node_modules/readable-stream/.travis.yml +0 -34
- package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
- package/node_modules/readable-stream/GOVERNANCE.md +0 -136
- package/node_modules/readable-stream/LICENSE +0 -47
- package/node_modules/readable-stream/README.md +0 -58
- package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
- package/node_modules/readable-stream/duplex-browser.js +0 -1
- package/node_modules/readable-stream/duplex.js +0 -1
- package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
- package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
- package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
- package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
- package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
- package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
- package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
- package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
- package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
- package/node_modules/readable-stream/package.json +0 -86
- package/node_modules/readable-stream/passthrough.js +0 -1
- package/node_modules/readable-stream/readable-browser.js +0 -7
- package/node_modules/readable-stream/readable.js +0 -19
- package/node_modules/readable-stream/transform.js +0 -1
- package/node_modules/readable-stream/writable-browser.js +0 -1
- package/node_modules/readable-stream/writable.js +0 -8
- package/node_modules/retry/.npmignore +0 -3
- package/node_modules/retry/.travis.yml +0 -15
- package/node_modules/retry/License +0 -21
- package/node_modules/retry/Makefile +0 -18
- package/node_modules/retry/README.md +0 -227
- package/node_modules/retry/equation.gif +0 -0
- package/node_modules/retry/example/dns.js +0 -31
- package/node_modules/retry/example/stop.js +0 -40
- package/node_modules/retry/index.js +0 -1
- package/node_modules/retry/lib/retry.js +0 -100
- package/node_modules/retry/lib/retry_operation.js +0 -158
- package/node_modules/retry/package.json +0 -67
- package/node_modules/retry/test/common.js +0 -10
- package/node_modules/retry/test/integration/test-forever.js +0 -24
- package/node_modules/retry/test/integration/test-retry-operation.js +0 -258
- package/node_modules/retry/test/integration/test-retry-wrap.js +0 -101
- package/node_modules/retry/test/integration/test-timeouts.js +0 -69
- package/node_modules/setimmediate/LICENSE.txt +0 -20
- package/node_modules/setimmediate/package.json +0 -77
- package/node_modules/setimmediate/setImmediate.js +0 -186
- package/node_modules/split/.npmignore +0 -3
- package/node_modules/split/.travis.yml +0 -3
- package/node_modules/split/LICENCE +0 -22
- package/node_modules/split/examples/pretty.js +0 -26
- package/node_modules/split/index.js +0 -63
- package/node_modules/split/package.json +0 -65
- package/node_modules/split/readme.markdown +0 -72
- package/node_modules/split/test/options.asynct.js +0 -46
- package/node_modules/split/test/partitioned_unicode.js +0 -34
- package/node_modules/split/test/split.asynct.js +0 -137
- package/node_modules/split/test/try_catch.asynct.js +0 -51
- package/node_modules/stream-shift/.travis.yml +0 -6
- package/node_modules/stream-shift/LICENSE +0 -21
- package/node_modules/stream-shift/README.md +0 -25
- package/node_modules/stream-shift/index.js +0 -20
- package/node_modules/stream-shift/package.json +0 -56
- package/node_modules/stream-shift/test.js +0 -48
- package/node_modules/ultron/LICENSE +0 -22
- package/node_modules/ultron/README.md +0 -113
- package/node_modules/ultron/index.js +0 -136
- package/node_modules/ultron/package.json +0 -71
- package/node_modules/websocket-stream/LICENSE +0 -8
- package/node_modules/websocket-stream/collaborators.md +0 -11
- package/node_modules/websocket-stream/echo-server.js +0 -51
- package/node_modules/websocket-stream/index.d.ts +0 -27
- package/node_modules/websocket-stream/index.js +0 -6
- package/node_modules/websocket-stream/package.json +0 -82
- package/node_modules/websocket-stream/readme.md +0 -148
- package/node_modules/websocket-stream/server.js +0 -29
- package/node_modules/websocket-stream/stream.js +0 -189
- package/node_modules/websocket-stream/test-client.js +0 -74
- package/node_modules/websocket-stream/test-server.js +0 -56
- package/node_modules/websocket-stream/test.js +0 -338
- package/node_modules/websocket-stream/ts-tests.ts +0 -69
- package/node_modules/websocket-stream/ws-fallback.js +0 -12
- package/node_modules/ws/LICENSE +0 -21
- package/node_modules/ws/README.md +0 -341
- package/node_modules/ws/index.js +0 -15
- package/node_modules/ws/lib/.DS_Store +0 -0
- package/node_modules/ws/lib/BufferUtil.js +0 -71
- package/node_modules/ws/lib/Constants.js +0 -10
- package/node_modules/ws/lib/ErrorCodes.js +0 -28
- package/node_modules/ws/lib/EventTarget.js +0 -151
- package/node_modules/ws/lib/Extensions.js +0 -203
- package/node_modules/ws/lib/PerMessageDeflate.js +0 -507
- package/node_modules/ws/lib/Receiver.js +0 -553
- package/node_modules/ws/lib/Sender.js +0 -412
- package/node_modules/ws/lib/Validation.js +0 -17
- package/node_modules/ws/lib/WebSocket.js +0 -717
- package/node_modules/ws/lib/WebSocketServer.js +0 -326
- package/node_modules/ws/package.json +0 -83
- package/node_modules/xhr2/CONTRIBUTING.md +0 -33
- package/node_modules/xhr2/Cakefile +0 -131
- package/node_modules/xhr2/LICENSE.txt +0 -19
- package/node_modules/xhr2/README.md +0 -142
- package/node_modules/xhr2/lib/browser.js +0 -1
- package/node_modules/xhr2/lib/xhr2.js +0 -1244
- package/node_modules/xhr2/package.json +0 -103
- package/node_modules/xhr2/src/000-xml_http_request_event_target.coffee +0 -89
- package/node_modules/xhr2/src/001-xml_http_request.coffee +0 -781
- package/node_modules/xhr2/src/errors.coffee +0 -31
- package/node_modules/xhr2/src/progress_event.coffee +0 -39
- package/node_modules/xhr2/src/xml_http_request_upload.coffee +0 -95
- package/node_modules/xhr2/test/fixtures/hello.json +0 -1
- package/node_modules/xhr2/test/fixtures/hello.txt +0 -1
- package/node_modules/xhr2/test/fixtures/xhr2.png +0 -0
- package/node_modules/xhr2/test/html/browser_test.html +0 -30
- package/node_modules/xhr2/test/src/event_target_test.coffee +0 -85
- package/node_modules/xhr2/test/src/events_test.coffee +0 -204
- package/node_modules/xhr2/test/src/headers_test.coffee +0 -168
- package/node_modules/xhr2/test/src/helpers/browser_mocha_runner.coffee +0 -10
- package/node_modules/xhr2/test/src/helpers/browser_mocha_setup.coffee +0 -1
- package/node_modules/xhr2/test/src/helpers/setup.coffee +0 -38
- package/node_modules/xhr2/test/src/helpers/xhr_server.coffee +0 -156
- package/node_modules/xhr2/test/src/nodejs_set_test.coffee +0 -162
- package/node_modules/xhr2/test/src/redirect_test.coffee +0 -57
- package/node_modules/xhr2/test/src/response_type_test.coffee +0 -88
- package/node_modules/xhr2/test/src/responseurl_test.coffee +0 -18
- package/node_modules/xhr2/test/src/send_test.coffee +0 -89
- package/node_modules/xhr2/test/src/status_test.coffee +0 -47
- package/node_modules/xhr2/test/src/xhr_test.coffee +0 -102
- package/node_modules/xtend/.jshintrc +0 -30
- package/node_modules/xtend/LICENSE +0 -20
- package/node_modules/xtend/README.md +0 -32
- package/node_modules/xtend/immutable.js +0 -19
- package/node_modules/xtend/mutable.js +0 -17
- package/node_modules/xtend/package.json +0 -89
- package/node_modules/xtend/test.js +0 -103
- package/node_modules/yazl/LICENSE +0 -21
- package/node_modules/yazl/README.md +0 -389
- package/node_modules/yazl/index.js +0 -749
- package/node_modules/yazl/package.json +0 -69
- package/src/commands/CorelliumAPI.js +0 -76
- package/src/subscriberInvite.js +0 -140
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
if typeof window is 'undefined'
|
|
2
|
-
# node.js
|
|
3
|
-
global.XMLHttpRequest = require '../../../lib/xhr2'
|
|
4
|
-
global.ProgressEvent = XMLHttpRequest.ProgressEvent
|
|
5
|
-
global.NetworkError = XMLHttpRequest.NetworkError
|
|
6
|
-
global.SecurityError = XMLHttpRequest.SecurityError
|
|
7
|
-
global.InvalidStateError = XMLHttpRequest.InvalidStateError
|
|
8
|
-
|
|
9
|
-
global.chai = require 'chai'
|
|
10
|
-
global.assert = global.chai.assert
|
|
11
|
-
global.expect = global.chai.expect
|
|
12
|
-
global.sinon = require 'sinon'
|
|
13
|
-
global.sinonChai = require 'sinon-chai'
|
|
14
|
-
|
|
15
|
-
xhrServer = require './xhr_server'
|
|
16
|
-
require './xhr2.png.js'
|
|
17
|
-
|
|
18
|
-
https = require 'https'
|
|
19
|
-
agent = new https.Agent
|
|
20
|
-
agent.options.rejectUnauthorized = true
|
|
21
|
-
agent.options.ca = xhrServer.https.sslCertificate()
|
|
22
|
-
global.XMLHttpRequest.nodejsSet httpsAgent: agent
|
|
23
|
-
global.XMLHttpRequest.nodejsSet(
|
|
24
|
-
baseUrl: xhrServer.http.testUrl().replace('https://', 'http://'))
|
|
25
|
-
else
|
|
26
|
-
# browser
|
|
27
|
-
|
|
28
|
-
# HACK(pwnall): the test is first loaded on https so the developer can bypass
|
|
29
|
-
# the SSL interstitial; however, we need to run the test on http, because
|
|
30
|
-
# Chrome blocks https -> http XHRs
|
|
31
|
-
if window.location.href.indexOf('https://') is 0
|
|
32
|
-
window.location.href = window.location.href.replace('https://', 'http://').
|
|
33
|
-
replace(':8911', ':8912')
|
|
34
|
-
|
|
35
|
-
window.NetworkError = window.Error
|
|
36
|
-
window.SecurityError = window.Error
|
|
37
|
-
window.assert = window.chai.assert
|
|
38
|
-
window.expect = window.chai.expect
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
express = require 'express'
|
|
2
|
-
fs = require 'fs'
|
|
3
|
-
http = require 'http'
|
|
4
|
-
https = require 'https'
|
|
5
|
-
open = require 'open'
|
|
6
|
-
|
|
7
|
-
# express.js server for testing the Web application.
|
|
8
|
-
class XhrServer
|
|
9
|
-
# Starts up a HTTP server.
|
|
10
|
-
constructor: (@port, @useHttps) ->
|
|
11
|
-
@createApp()
|
|
12
|
-
|
|
13
|
-
# Opens the test URL in a browser.
|
|
14
|
-
openBrowser: (appName) ->
|
|
15
|
-
open @testUrl(), appName
|
|
16
|
-
|
|
17
|
-
# The URL that should be used to start the tests.
|
|
18
|
-
testUrl: ->
|
|
19
|
-
"https://localhost:#{@port}/test/html/browser_test.html"
|
|
20
|
-
|
|
21
|
-
# The self-signed certificate used by this server.
|
|
22
|
-
sslCertificate: ->
|
|
23
|
-
return null unless @useHttps
|
|
24
|
-
keyMaterial = fs.readFileSync 'test/ssl/cert.pem', 'utf8'
|
|
25
|
-
certIndex = keyMaterial.indexOf '-----BEGIN CERTIFICATE-----'
|
|
26
|
-
keyMaterial.substring certIndex
|
|
27
|
-
|
|
28
|
-
# The key for the self-signed certificate used by this server.
|
|
29
|
-
sslKey: ->
|
|
30
|
-
return null unless @useHttps
|
|
31
|
-
keyMaterial = fs.readFileSync 'test/ssl/cert.pem', 'utf8'
|
|
32
|
-
certIndex = keyMaterial.indexOf '-----BEGIN CERTIFICATE-----'
|
|
33
|
-
keyMaterial.substring 0, certIndex
|
|
34
|
-
|
|
35
|
-
# The server code.
|
|
36
|
-
createApp: ->
|
|
37
|
-
@app = express()
|
|
38
|
-
|
|
39
|
-
## Middleware.
|
|
40
|
-
|
|
41
|
-
# CORS headers on everything, in case that ever gets implemented.
|
|
42
|
-
@app.use (request, response, next) ->
|
|
43
|
-
response.header 'Access-Control-Allow-Origin', '*'
|
|
44
|
-
response.header 'Access-Control-Allow-Methods', 'DELETE,GET,POST,PUT'
|
|
45
|
-
response.header 'Access-Control-Allow-Headers',
|
|
46
|
-
'Content-Type, Authorization'
|
|
47
|
-
next()
|
|
48
|
-
|
|
49
|
-
@app.use express.static(fs.realpathSync(__dirname + '/../../../'),
|
|
50
|
-
{ dotfiles: 'allow' })
|
|
51
|
-
|
|
52
|
-
## Routes
|
|
53
|
-
|
|
54
|
-
@app.all '/_/method', (request, response) ->
|
|
55
|
-
body = request.method
|
|
56
|
-
response.header 'Content-Type', 'text/plain; charset=utf-8'
|
|
57
|
-
response.header 'Content-Length', body.length.toString()
|
|
58
|
-
response.end body
|
|
59
|
-
|
|
60
|
-
# Echoes the request body. Used to test send(data).
|
|
61
|
-
@app.post '/_/echo', (request, response) ->
|
|
62
|
-
if request.headers['content-type']
|
|
63
|
-
response.header 'Content-Type', request.headers['content-type']
|
|
64
|
-
if request.headers['content-length']
|
|
65
|
-
response.header 'Content-Length', request.headers['content-length']
|
|
66
|
-
|
|
67
|
-
request.on 'data', (chunk) -> response.write chunk
|
|
68
|
-
request.on 'end', -> response.end()
|
|
69
|
-
|
|
70
|
-
# Lists the request headers. Used to test setRequestHeader().
|
|
71
|
-
@app.all '/_/headers', (request, response) ->
|
|
72
|
-
body = JSON.stringify request.headers
|
|
73
|
-
response.header 'Content-Type', 'application/json'
|
|
74
|
-
response.header 'Content-Length', body.length.toString()
|
|
75
|
-
response.end body
|
|
76
|
-
|
|
77
|
-
# Sets the response headers in the request. Used to test getResponse*().
|
|
78
|
-
@app.post '/_/get_headers', (request, response) ->
|
|
79
|
-
jsonString = ''
|
|
80
|
-
request.on 'data', (chunk) -> jsonString += chunk
|
|
81
|
-
request.on 'end', ->
|
|
82
|
-
headers = JSON.parse jsonString
|
|
83
|
-
for name, value of headers
|
|
84
|
-
response.header name, value
|
|
85
|
-
response.header 'Content-Length', '0'
|
|
86
|
-
response.end ''
|
|
87
|
-
|
|
88
|
-
# Sets every response detail. Used for error testing.
|
|
89
|
-
@app.post '/_/response', (request, response) ->
|
|
90
|
-
jsonString = ''
|
|
91
|
-
request.on 'data', (chunk) -> jsonString += chunk
|
|
92
|
-
request.on 'end', ->
|
|
93
|
-
json = JSON.parse jsonString
|
|
94
|
-
response.writeHead json.code, json.status, json.headers
|
|
95
|
-
response.write json.body if json.body
|
|
96
|
-
response.end()
|
|
97
|
-
|
|
98
|
-
# Sends data in small chunks. Used for event testing.
|
|
99
|
-
@app.post '/_/drip', (request, response) ->
|
|
100
|
-
request.connection.setNoDelay()
|
|
101
|
-
jsonString = ''
|
|
102
|
-
request.on 'data', (chunk) -> jsonString += chunk
|
|
103
|
-
request.on 'end', ->
|
|
104
|
-
json = JSON.parse jsonString
|
|
105
|
-
sentDrips = 0
|
|
106
|
-
drip = new Array(json.size + 1).join '.'
|
|
107
|
-
response.header 'Content-Type', 'text/plain'
|
|
108
|
-
if json.length
|
|
109
|
-
response.header 'Content-Length', (json.drips * json.size).toString()
|
|
110
|
-
sendDrip = =>
|
|
111
|
-
response.write drip
|
|
112
|
-
sentDrips += 1
|
|
113
|
-
if sentDrips >= json.drips
|
|
114
|
-
response.end()
|
|
115
|
-
else
|
|
116
|
-
setTimeout sendDrip, json.ms
|
|
117
|
-
sendDrip()
|
|
118
|
-
|
|
119
|
-
# Returns a HTTP redirect. Used to test the redirection handling code.
|
|
120
|
-
@app.all '/_/redirect/:status/:next_page', (request, response) =>
|
|
121
|
-
response.statusCode = parseInt(request.params.status)
|
|
122
|
-
response.header 'Location',
|
|
123
|
-
"http://#{request.get('host')}/_/#{request.params.next_page}"
|
|
124
|
-
body = "<p>This is supposed to have a redirect link</p>"
|
|
125
|
-
response.header 'Content-Type', 'text/html'
|
|
126
|
-
response.header 'Content-Length', body.length.toString()
|
|
127
|
-
response.header 'X-Redirect-Header', 'should not show up'
|
|
128
|
-
response.end body
|
|
129
|
-
|
|
130
|
-
# Requested when the browser test suite completes.
|
|
131
|
-
@app.get '/diediedie', (request, response) =>
|
|
132
|
-
if 'failed' of request.query
|
|
133
|
-
failed = parseInt request.query['failed']
|
|
134
|
-
else
|
|
135
|
-
failed = 1
|
|
136
|
-
total = parseInt request.query['total'] || 0
|
|
137
|
-
passed = total - failed
|
|
138
|
-
exitCode = if failed == 0 then 0 else 1
|
|
139
|
-
console.log "#{passed} passed, #{failed} failed"
|
|
140
|
-
|
|
141
|
-
response.header 'Content-Type', 'image/png'
|
|
142
|
-
response.header 'Content-Length', '0'
|
|
143
|
-
response.end ''
|
|
144
|
-
unless 'NO_EXIT' of process.env
|
|
145
|
-
@server.close()
|
|
146
|
-
process.exit exitCode
|
|
147
|
-
|
|
148
|
-
if @useHttps
|
|
149
|
-
options = key: @sslKey(), cert: @sslCertificate()
|
|
150
|
-
@server = https.createServer options, @app
|
|
151
|
-
else
|
|
152
|
-
@server = http.createServer @app
|
|
153
|
-
@server.listen @port
|
|
154
|
-
|
|
155
|
-
module.exports.https = new XhrServer 8911, true
|
|
156
|
-
module.exports.http = new XhrServer 8912, false
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
describe '.nodejsSet', ->
|
|
3
|
-
beforeEach ->
|
|
4
|
-
@xhr = new XMLHttpRequest
|
|
5
|
-
@customXhr = new XMLHttpRequest
|
|
6
|
-
|
|
7
|
-
describe 'with a httpAgent option', ->
|
|
8
|
-
beforeEach ->
|
|
9
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
10
|
-
|
|
11
|
-
@customAgent = { custom: 'httpAgent' }
|
|
12
|
-
@customXhr.nodejsHttpAgent = @customAgent
|
|
13
|
-
|
|
14
|
-
@default = XMLHttpRequest::nodejsHttpAgent
|
|
15
|
-
@agent = { mocking: 'httpAgent' }
|
|
16
|
-
XMLHttpRequest.nodejsSet httpAgent: @agent
|
|
17
|
-
|
|
18
|
-
it 'sets the default nodejsHttpAgent', ->
|
|
19
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
20
|
-
expect(@xhr.nodejsHttpAgent).to.equal @agent
|
|
21
|
-
|
|
22
|
-
it 'does not interfere with custom nodejsHttpAgent settings', ->
|
|
23
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
24
|
-
expect(@customXhr.nodejsHttpAgent).to.equal @customAgent
|
|
25
|
-
|
|
26
|
-
afterEach ->
|
|
27
|
-
XMLHttpRequest.nodejsSet httpAgent: @default
|
|
28
|
-
|
|
29
|
-
describe 'with a httpsAgent option', ->
|
|
30
|
-
beforeEach ->
|
|
31
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
32
|
-
|
|
33
|
-
@customAgent = { custom: 'httpsAgent' }
|
|
34
|
-
@customXhr.nodejsHttpsAgent = @customAgent
|
|
35
|
-
|
|
36
|
-
@default = XMLHttpRequest::nodejsHttpsAgent
|
|
37
|
-
@agent = { mocking: 'httpsAgent' }
|
|
38
|
-
XMLHttpRequest.nodejsSet httpsAgent: @agent
|
|
39
|
-
|
|
40
|
-
it 'sets the default nodejsHttpsAgent', ->
|
|
41
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
42
|
-
expect(@xhr.nodejsHttpsAgent).to.equal @agent
|
|
43
|
-
|
|
44
|
-
it 'does not interfere with custom nodejsHttpsAgent settings', ->
|
|
45
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
46
|
-
expect(@customXhr.nodejsHttpsAgent).to.equal @customAgent
|
|
47
|
-
|
|
48
|
-
afterEach ->
|
|
49
|
-
XMLHttpRequest.nodejsSet httpsAgent: @default
|
|
50
|
-
|
|
51
|
-
describe 'with a baseUrl option', ->
|
|
52
|
-
beforeEach ->
|
|
53
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
54
|
-
|
|
55
|
-
@customBaseUrl = 'http://custom.url/base'
|
|
56
|
-
@customXhr.nodejsBaseUrl = @customBaseUrl
|
|
57
|
-
|
|
58
|
-
@default = XMLHttpRequest::nodejsBaseUrl
|
|
59
|
-
@baseUrl = 'http://localhost/base'
|
|
60
|
-
XMLHttpRequest.nodejsSet baseUrl: @baseUrl
|
|
61
|
-
|
|
62
|
-
it 'sets the default nodejsBaseUrl', ->
|
|
63
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
64
|
-
expect(@xhr.nodejsBaseUrl).to.equal @baseUrl
|
|
65
|
-
|
|
66
|
-
it 'does not interfere with custom nodejsBaseUrl settings', ->
|
|
67
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
68
|
-
expect(@customXhr.nodejsBaseUrl).to.equal @customBaseUrl
|
|
69
|
-
|
|
70
|
-
afterEach ->
|
|
71
|
-
XMLHttpRequest.nodejsSet baseUrl: @default
|
|
72
|
-
|
|
73
|
-
describe '#nodejsSet', ->
|
|
74
|
-
beforeEach ->
|
|
75
|
-
@xhr = new XMLHttpRequest
|
|
76
|
-
@customXhr = new XMLHttpRequest
|
|
77
|
-
|
|
78
|
-
describe 'with a httpAgent option', ->
|
|
79
|
-
beforeEach ->
|
|
80
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
81
|
-
|
|
82
|
-
@customAgent = { custom: 'httpAgent' }
|
|
83
|
-
@customXhr.nodejsSet httpAgent: @customAgent
|
|
84
|
-
|
|
85
|
-
it 'sets nodejsHttpAgent on the XHR instance', ->
|
|
86
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
87
|
-
expect(@customXhr.nodejsHttpAgent).to.equal @customAgent
|
|
88
|
-
|
|
89
|
-
it 'does not interfere with default nodejsHttpAgent settings', ->
|
|
90
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
91
|
-
expect(@xhr.nodejsHttpAgent).not.to.equal @customAgent
|
|
92
|
-
|
|
93
|
-
describe 'with a httpsAgent option', ->
|
|
94
|
-
beforeEach ->
|
|
95
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
96
|
-
|
|
97
|
-
@customAgent = { custom: 'httpsAgent' }
|
|
98
|
-
@customXhr.nodejsSet httpsAgent: @customAgent
|
|
99
|
-
|
|
100
|
-
it 'sets nodejsHttpsAgent on the XHR instance', ->
|
|
101
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
102
|
-
expect(@customXhr.nodejsHttpsAgent).to.equal @customAgent
|
|
103
|
-
|
|
104
|
-
it 'does not interfere with default nodejsHttpsAgent settings', ->
|
|
105
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
106
|
-
expect(@xhr.nodejsHttpsAgent).not.to.equal @customAgent
|
|
107
|
-
|
|
108
|
-
describe 'base URL parsing', ->
|
|
109
|
-
beforeEach ->
|
|
110
|
-
@xhr = new XMLHttpRequest
|
|
111
|
-
|
|
112
|
-
describe 'with null baseUrl', ->
|
|
113
|
-
beforeEach ->
|
|
114
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
115
|
-
@xhr.nodejsSet baseUrl: null
|
|
116
|
-
|
|
117
|
-
it 'parses an absolute URL', ->
|
|
118
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
119
|
-
parsedUrl = @xhr._parseUrl('http://www.domain.com/path')
|
|
120
|
-
expect(parsedUrl).to.be.ok
|
|
121
|
-
expect(parsedUrl).to.have.property 'href'
|
|
122
|
-
expect(parsedUrl.href).to.equal 'http://www.domain.com/path'
|
|
123
|
-
|
|
124
|
-
describe 'with a (protocol, domain, filePath) baseUrl', ->
|
|
125
|
-
beforeEach ->
|
|
126
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
127
|
-
@xhr.nodejsSet baseUrl: 'https://base.url/dir/file.html'
|
|
128
|
-
|
|
129
|
-
it 'parses an absolute URL', ->
|
|
130
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
131
|
-
parsedUrl = @xhr._parseUrl('http://www.domain.com/path')
|
|
132
|
-
expect(parsedUrl).to.be.ok
|
|
133
|
-
expect(parsedUrl).to.have.property 'href'
|
|
134
|
-
expect(parsedUrl.href).to.equal 'http://www.domain.com/path'
|
|
135
|
-
|
|
136
|
-
it 'parses a path-relative URL', ->
|
|
137
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
138
|
-
parsedUrl = @xhr._parseUrl('path/to.js')
|
|
139
|
-
expect(parsedUrl).to.be.ok
|
|
140
|
-
expect(parsedUrl).to.have.property 'href'
|
|
141
|
-
expect(parsedUrl.href).to.equal 'https://base.url/dir/path/to.js'
|
|
142
|
-
|
|
143
|
-
it 'parses a path-relative URL with ..', ->
|
|
144
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
145
|
-
parsedUrl = @xhr._parseUrl('../path/to.js')
|
|
146
|
-
expect(parsedUrl).to.be.ok
|
|
147
|
-
expect(parsedUrl).to.have.property 'href'
|
|
148
|
-
expect(parsedUrl.href).to.equal 'https://base.url/path/to.js'
|
|
149
|
-
|
|
150
|
-
it 'parses a host-relative URL', ->
|
|
151
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
152
|
-
parsedUrl = @xhr._parseUrl('/path/to.js')
|
|
153
|
-
expect(parsedUrl).to.be.ok
|
|
154
|
-
expect(parsedUrl).to.have.property 'href'
|
|
155
|
-
expect(parsedUrl.href).to.equal 'https://base.url/path/to.js'
|
|
156
|
-
|
|
157
|
-
it 'parses a protocol-relative URL', ->
|
|
158
|
-
return unless XMLHttpRequest.nodejsSet # Skip in browsers.
|
|
159
|
-
parsedUrl = @xhr._parseUrl('//domain.com/path/to.js')
|
|
160
|
-
expect(parsedUrl).to.be.ok
|
|
161
|
-
expect(parsedUrl).to.have.property 'href'
|
|
162
|
-
expect(parsedUrl.href).to.equal 'https://domain.com/path/to.js'
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
describe 'when redirected', ->
|
|
3
|
-
beforeEach ->
|
|
4
|
-
@xhr = new XMLHttpRequest
|
|
5
|
-
|
|
6
|
-
it 'issues a GET for the next location', (done) ->
|
|
7
|
-
@xhr.open 'POST', 'http://localhost:8912/_/redirect/302/method'
|
|
8
|
-
@xhr.onload = =>
|
|
9
|
-
expect(@xhr.responseText).to.match(/GET/i)
|
|
10
|
-
done()
|
|
11
|
-
@xhr.send 'This should be dropped during the redirect'
|
|
12
|
-
|
|
13
|
-
it 'does not return the redirect headers', (done) ->
|
|
14
|
-
@xhr.open 'GET', 'http://localhost:8912/_/redirect/302/method'
|
|
15
|
-
@xhr.onload = =>
|
|
16
|
-
expect(@xhr.getResponseHeader('Content-Type')).to.equal(
|
|
17
|
-
'text/plain; charset=utf-8')
|
|
18
|
-
expect(@xhr.getResponseHeader('X-Redirect-Header')).not.to.be.ok
|
|
19
|
-
done()
|
|
20
|
-
@xhr.send()
|
|
21
|
-
|
|
22
|
-
it 'persists custom request headers across redirects', (done) ->
|
|
23
|
-
@xhr.open 'GET', 'http://localhost:8912/_/redirect/302/headers'
|
|
24
|
-
@xhr.setRequestHeader 'X-Redirect-Test', 'should be preserved'
|
|
25
|
-
@xhr.onload = =>
|
|
26
|
-
expect(@xhr.responseText).to.match(/^\{.*\}$/)
|
|
27
|
-
headers = JSON.parse @xhr.responseText
|
|
28
|
-
expect(headers['connection']).to.equal 'keep-alive'
|
|
29
|
-
expect(headers).to.have.property 'host'
|
|
30
|
-
expect(headers['host']).to.equal 'localhost:8912'
|
|
31
|
-
expect(headers).to.have.property 'x-redirect-test'
|
|
32
|
-
expect(headers['x-redirect-test']).to.equal 'should be preserved'
|
|
33
|
-
done()
|
|
34
|
-
@xhr.send()
|
|
35
|
-
|
|
36
|
-
it 'drops content-related headers across redirects', (done) ->
|
|
37
|
-
@xhr.open 'POST', 'http://localhost:8912/_/redirect/302/headers'
|
|
38
|
-
@xhr.setRequestHeader 'X-Redirect-Test', 'should be preserved'
|
|
39
|
-
@xhr.onload = =>
|
|
40
|
-
expect(@xhr.responseText).to.match(/^\{.*\}$/)
|
|
41
|
-
headers = JSON.parse @xhr.responseText
|
|
42
|
-
expect(headers['connection']).to.equal 'keep-alive'
|
|
43
|
-
expect(headers).to.have.property 'host'
|
|
44
|
-
expect(headers['host']).to.equal 'localhost:8912'
|
|
45
|
-
expect(headers).to.have.property 'x-redirect-test'
|
|
46
|
-
expect(headers['x-redirect-test']).to.equal 'should be preserved'
|
|
47
|
-
expect(headers).not.to.have.property 'content-type'
|
|
48
|
-
expect(headers).not.to.have.property 'content-length'
|
|
49
|
-
done()
|
|
50
|
-
@xhr.send 'This should be dropped during the redirect'
|
|
51
|
-
|
|
52
|
-
it 'provides the final responseURL', (done) ->
|
|
53
|
-
@xhr.open 'GET', 'http://localhost:8912/_/redirect/302/method'
|
|
54
|
-
@xhr.onload = =>
|
|
55
|
-
expect(@xhr.responseURL).to.equal("http://localhost:8912/_/method")
|
|
56
|
-
done()
|
|
57
|
-
@xhr.send()
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
describe '#responseType', ->
|
|
3
|
-
beforeEach ->
|
|
4
|
-
@xhr = new XMLHttpRequest
|
|
5
|
-
@jsonUrl = 'http://localhost:8912/test/fixtures/hello.json'
|
|
6
|
-
@jsonString = '{"hello": "world", "answer": 42}\n'
|
|
7
|
-
@imageUrl = 'http://localhost:8912/test/fixtures/xhr2.png'
|
|
8
|
-
|
|
9
|
-
describe 'text', ->
|
|
10
|
-
it 'reads a JSON file into a String', (done) ->
|
|
11
|
-
@xhr.addEventListener 'load', =>
|
|
12
|
-
expect(@xhr.response).to.equal @jsonString
|
|
13
|
-
expect(@xhr.responseText).to.equal @jsonString
|
|
14
|
-
done()
|
|
15
|
-
@xhr.open 'GET', @jsonUrl
|
|
16
|
-
@xhr.responseType = 'text'
|
|
17
|
-
@xhr.send()
|
|
18
|
-
|
|
19
|
-
describe 'json', ->
|
|
20
|
-
it 'reads a JSON file into a parsed JSON object', (done) ->
|
|
21
|
-
_done = false
|
|
22
|
-
@xhr.addEventListener 'readystatechange', =>
|
|
23
|
-
return if _done or @xhr.readyState isnt XMLHttpRequest.DONE
|
|
24
|
-
_done = true
|
|
25
|
-
expect(@xhr.response).to.deep.equal hello: 'world', answer: 42
|
|
26
|
-
done()
|
|
27
|
-
@xhr.open 'GET', @jsonUrl
|
|
28
|
-
@xhr.responseType = 'json'
|
|
29
|
-
@xhr.send()
|
|
30
|
-
|
|
31
|
-
it 'produces null when reading a non-JSON file ', (done) ->
|
|
32
|
-
@xhr.addEventListener 'loadend', =>
|
|
33
|
-
expect(@xhr.response).to.equal null
|
|
34
|
-
done()
|
|
35
|
-
@xhr.open 'GET', 'http://localhost:8912/test/fixtures/hello.txt'
|
|
36
|
-
@xhr.responseType = 'json'
|
|
37
|
-
@xhr.send()
|
|
38
|
-
|
|
39
|
-
describe 'arraybuffer', ->
|
|
40
|
-
it 'reads a JSON file into an ArrayBuffer', (done) ->
|
|
41
|
-
@xhr.addEventListener 'loadend', =>
|
|
42
|
-
expect(@xhr.response).to.be.instanceOf ArrayBuffer
|
|
43
|
-
view = new Uint8Array @xhr.response
|
|
44
|
-
string = (String.fromCharCode(view[i]) for i in [0...view.length]).
|
|
45
|
-
join ''
|
|
46
|
-
expect(string).to.equal @jsonString
|
|
47
|
-
done()
|
|
48
|
-
@xhr.open 'GET', @jsonUrl
|
|
49
|
-
@xhr.responseType = 'arraybuffer'
|
|
50
|
-
@xhr.send()
|
|
51
|
-
|
|
52
|
-
it 'reads a binary file into an ArrayBuffer', (done) ->
|
|
53
|
-
@xhr.addEventListener 'loadend', =>
|
|
54
|
-
expect(@xhr.response).to.be.instanceOf ArrayBuffer
|
|
55
|
-
view = new Uint8Array @xhr.response
|
|
56
|
-
bytes = (view[i] for i in [0...view.length])
|
|
57
|
-
expect(bytes).to.deep.equal xhr2PngBytes
|
|
58
|
-
done()
|
|
59
|
-
@xhr.open 'GET', @imageUrl
|
|
60
|
-
@xhr.responseType = 'arraybuffer'
|
|
61
|
-
@xhr.send()
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
describe 'buffer', ->
|
|
65
|
-
it 'reads a JSON file into a node.js Buffer', (done) ->
|
|
66
|
-
return done() if typeof Buffer is 'undefined'
|
|
67
|
-
@xhr.addEventListener 'loadend', =>
|
|
68
|
-
buffer = @xhr.response
|
|
69
|
-
expect(buffer).to.be.instanceOf Buffer
|
|
70
|
-
stringChars = for i in [0...buffer.length]
|
|
71
|
-
String.fromCharCode buffer.readUInt8(i)
|
|
72
|
-
expect(stringChars.join('')).to.equal @jsonString
|
|
73
|
-
done()
|
|
74
|
-
@xhr.open 'GET', @jsonUrl
|
|
75
|
-
@xhr.responseType = 'buffer'
|
|
76
|
-
@xhr.send()
|
|
77
|
-
|
|
78
|
-
it 'reads a binary file into a node.js Buffer', (done) ->
|
|
79
|
-
return done() if typeof Buffer is 'undefined'
|
|
80
|
-
@xhr.addEventListener 'loadend', =>
|
|
81
|
-
buffer = @xhr.response
|
|
82
|
-
expect(buffer).to.be.instanceOf Buffer
|
|
83
|
-
bytes = (buffer.readUInt8(i) for i in [0...buffer.length])
|
|
84
|
-
expect(bytes).to.deep.equal xhr2PngBytes
|
|
85
|
-
done()
|
|
86
|
-
@xhr.open 'GET', @imageUrl
|
|
87
|
-
@xhr.responseType = 'buffer'
|
|
88
|
-
@xhr.send()
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
describe '#responseURL', ->
|
|
3
|
-
beforeEach ->
|
|
4
|
-
@xhr = new XMLHttpRequest
|
|
5
|
-
|
|
6
|
-
it 'provies the URL of the response', (done) ->
|
|
7
|
-
@xhr.open 'GET', 'http://localhost:8912/_/method'
|
|
8
|
-
@xhr.onload = =>
|
|
9
|
-
expect(@xhr.responseURL).to.equal("http://localhost:8912/_/method")
|
|
10
|
-
done()
|
|
11
|
-
@xhr.send()
|
|
12
|
-
|
|
13
|
-
it 'ignores the hash fragment', (done) ->
|
|
14
|
-
@xhr.open 'GET', 'http://localhost:8912/_/method#foo'
|
|
15
|
-
@xhr.onload = =>
|
|
16
|
-
expect(@xhr.responseURL).to.equal("http://localhost:8912/_/method")
|
|
17
|
-
done()
|
|
18
|
-
@xhr.send()
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
describe '#send', ->
|
|
3
|
-
beforeEach ->
|
|
4
|
-
@xhr = new XMLHttpRequest
|
|
5
|
-
@xhr.open 'POST', 'http://localhost:8912/_/echo'
|
|
6
|
-
|
|
7
|
-
@arrayBuffer = new ArrayBuffer xhr2PngBytes.length
|
|
8
|
-
@arrayBufferView = new Uint8Array @arrayBuffer
|
|
9
|
-
if typeof Buffer is 'undefined'
|
|
10
|
-
@buffer = null
|
|
11
|
-
else
|
|
12
|
-
@buffer = Buffer.alloc xhr2PngBytes.length
|
|
13
|
-
|
|
14
|
-
for i in [0...xhr2PngBytes.length]
|
|
15
|
-
@arrayBufferView[i] = xhr2PngBytes[i]
|
|
16
|
-
@buffer.writeUInt8 xhr2PngBytes[i], i if @buffer
|
|
17
|
-
|
|
18
|
-
it 'works with ASCII DOMStrings', (done) ->
|
|
19
|
-
@xhr.onload = =>
|
|
20
|
-
expect(@xhr.getResponseHeader('content-type')).to.
|
|
21
|
-
match(/^text\/plain(;\s?charset=UTF-8)?$/)
|
|
22
|
-
expect(@xhr.responseText).to.equal 'Hello world!'
|
|
23
|
-
done()
|
|
24
|
-
@xhr.send "Hello world!"
|
|
25
|
-
|
|
26
|
-
it 'works with UTF-8 DOMStrings', (done) ->
|
|
27
|
-
@xhr.onloadend = =>
|
|
28
|
-
expect(@xhr.getResponseHeader('content-type')).to.
|
|
29
|
-
match(/^text\/plain(;\s?charset=UTF-8)?$/)
|
|
30
|
-
expect(@xhr.responseText).to.equal '世界你好!'
|
|
31
|
-
done()
|
|
32
|
-
@xhr.send '世界你好!'
|
|
33
|
-
|
|
34
|
-
it 'works with ArrayBufferViews', (done) ->
|
|
35
|
-
@xhr.responseType = 'arraybuffer'
|
|
36
|
-
@xhr.onload = =>
|
|
37
|
-
expect(@xhr.getResponseHeader('content-type')).to.equal null
|
|
38
|
-
responseView = new Uint8Array @xhr.response
|
|
39
|
-
responseBytes = (responseView[i] for i in [0...responseView.length])
|
|
40
|
-
expect(responseBytes).to.deep.equal xhr2PngBytes
|
|
41
|
-
done()
|
|
42
|
-
@xhr.send @arrayBufferView
|
|
43
|
-
|
|
44
|
-
it 'works with ArrayBufferViews with set index and length', (done) ->
|
|
45
|
-
@xhr.responseType = 'arraybuffer'
|
|
46
|
-
@xhr.onload = =>
|
|
47
|
-
expect(@xhr.getResponseHeader('content-type')).to.equal null
|
|
48
|
-
responseView = new Uint8Array @xhr.response
|
|
49
|
-
responseBytes = (responseView[i] for i in [0...responseView.length])
|
|
50
|
-
expect(responseBytes).to.deep.equal xhr2PngBytes[10...52]
|
|
51
|
-
done()
|
|
52
|
-
arrayBufferView10 = new Uint8Array @arrayBuffer, 10, 42
|
|
53
|
-
@xhr.send arrayBufferView10
|
|
54
|
-
|
|
55
|
-
it 'works with ArrayBuffers', (done) ->
|
|
56
|
-
@xhr.responseType = 'arraybuffer'
|
|
57
|
-
@xhr.onload = =>
|
|
58
|
-
expect(@xhr.getResponseHeader('content-type')).to.equal null
|
|
59
|
-
responseView = new Uint8Array @xhr.response
|
|
60
|
-
responseBytes = (responseView[i] for i in [0...responseView.length])
|
|
61
|
-
expect(responseBytes).to.deep.equal xhr2PngBytes
|
|
62
|
-
done()
|
|
63
|
-
@xhr.send @arrayBuffer
|
|
64
|
-
|
|
65
|
-
it 'works with node.js Buffers', (done) ->
|
|
66
|
-
return done() unless @buffer
|
|
67
|
-
# NOTE: using the same exact code as above, which is tested in a browser
|
|
68
|
-
@xhr.responseType = 'arraybuffer'
|
|
69
|
-
@xhr.onload = =>
|
|
70
|
-
expect(@xhr.getResponseHeader('content-type')).to.equal null
|
|
71
|
-
responseView = new Uint8Array @xhr.response
|
|
72
|
-
responseBytes = (responseView[i] for i in [0...responseView.length])
|
|
73
|
-
expect(responseBytes).to.deep.equal xhr2PngBytes
|
|
74
|
-
done()
|
|
75
|
-
@xhr.send @buffer
|
|
76
|
-
|
|
77
|
-
it 'sets POST headers correctly when given null data', (done) ->
|
|
78
|
-
@xhr.open 'POST', 'http://localhost:8912/_/headers'
|
|
79
|
-
@xhr.responseType = 'text'
|
|
80
|
-
@xhr.onload = =>
|
|
81
|
-
expect(@xhr.responseText).to.match(/^\{.*\}$/)
|
|
82
|
-
headers = JSON.parse @xhr.responseText
|
|
83
|
-
expect(headers).to.have.property 'content-length'
|
|
84
|
-
expect(headers['content-length']).to.equal '0'
|
|
85
|
-
expect(headers).not.to.have.property 'content-type'
|
|
86
|
-
done()
|
|
87
|
-
@xhr.send()
|
|
88
|
-
|
|
89
|
-
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
describe 'XMLHttpRequest', ->
|
|
2
|
-
beforeEach ->
|
|
3
|
-
@xhr = new XMLHttpRequest
|
|
4
|
-
@okUrl = 'http://localhost:8912/test/fixtures/hello.txt'
|
|
5
|
-
|
|
6
|
-
@errorUrl = 'http://localhost:8912/_/response'
|
|
7
|
-
@errorJson = JSON.stringify
|
|
8
|
-
code: 401, status: 'Unauthorized',
|
|
9
|
-
body: JSON.stringify(error: 'Credential error'),
|
|
10
|
-
headers:
|
|
11
|
-
'Content-Type': 'application/json', 'Content-Length': '28'
|
|
12
|
-
|
|
13
|
-
describe '#status', ->
|
|
14
|
-
it 'is 200 for a normal request', (done) ->
|
|
15
|
-
@xhr.open 'GET', @okUrl
|
|
16
|
-
_done = false
|
|
17
|
-
@xhr.addEventListener 'readystatechange', =>
|
|
18
|
-
return if _done
|
|
19
|
-
if @xhr.readyState < XMLHttpRequest.HEADERS_RECEIVED
|
|
20
|
-
expect(@xhr.status).to.equal 0
|
|
21
|
-
expect(@xhr.statusText).to.equal ''
|
|
22
|
-
else
|
|
23
|
-
expect(@xhr.status).to.equal 200
|
|
24
|
-
expect(@xhr.statusText).to.be.ok
|
|
25
|
-
expect(@xhr.statusText).to.not.equal ''
|
|
26
|
-
if @xhr.readyState is XMLHttpRequest.DONE
|
|
27
|
-
_done = true
|
|
28
|
-
done()
|
|
29
|
-
@xhr.send()
|
|
30
|
-
|
|
31
|
-
it 'returns the server-reported status', (done) ->
|
|
32
|
-
@xhr.open 'POST', @errorUrl
|
|
33
|
-
_done = false
|
|
34
|
-
@xhr.addEventListener 'readystatechange', =>
|
|
35
|
-
return if _done
|
|
36
|
-
if @xhr.readyState < XMLHttpRequest.HEADERS_RECEIVED
|
|
37
|
-
expect(@xhr.status).to.equal 0
|
|
38
|
-
expect(@xhr.statusText).to.equal ''
|
|
39
|
-
else
|
|
40
|
-
expect(@xhr.status).to.equal 401
|
|
41
|
-
expect(@xhr.statusText).to.be.ok
|
|
42
|
-
expect(@xhr.statusText).to.not.equal ''
|
|
43
|
-
if @xhr.readyState is XMLHttpRequest.DONE
|
|
44
|
-
_done = true
|
|
45
|
-
done()
|
|
46
|
-
@xhr.send @errorJson
|
|
47
|
-
|