3.1 KiB
sidebar_position | hide_table_of_contents |
---|---|
4 | true |
Testing
import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
make test
will run the node-based tests. By default it runs tests on files in
every supported format. To test a specific file type, set FMTS
to the format
you want to test. Feature-specific tests are available with make test_misc
$ make test_misc # run core tests
$ make test # run full tests
To enable all errors, set the environment variable WTF=1
:
$ make test # run full tests
$ WTF=1 make test # enable all error messages
flow
and eslint
checks are available:
$ make lint # eslint checks
$ make tslint # check TS definitions
The core in-browser tests are available at tests/index.html
within this repo.
Start a local server and navigate to that directory to run the tests.
make ctestserv
will start a server on port 8000.
make ctest
will generate the browser fixtures. To add more files, edit the
tests/fixtures.lst
file and add the paths.
make test-bun
will run the full Bun test suite and make test-bun_misc
will run the smaller feature-specific tests.
make test-deno
will run the full Deno test suite and make test-deno_misc
will run the smaller feature-specific tests.
make dist
will build xlsx.extendscript.js
.
The script estk.jsx
at the root of the project is configured to run in
ExtendScript Toolkit. It will read sheetjs.xlsx
and attempt to write test
files in a number of file formats.
ExtendScript Toolkit 3.5 is available as a standalone download for Windows.
Tested Environments
(click to show)
Browsers
- IE 6/7/8/9/10/11 (IE 6-9 require shims)
- Chrome 26+ (including Android 6.0+)
- Safari 8+ (Desktop) and Safari 10+ (iOS)
- Edge 13-18 and 79+
- FF Latest
The automated browser tests seek to test the latest patch version of each major
release of Chromium ending in 0
(starting from Chrome 30).
Edge originally was an independent browser, becoming a Chromium fork in version
79. Since the new releases should be nearly identical to the Chrome counterpart,
the Edge tests are run on major releases ending in 5
(starting from Edge 85).
Server Runtimes
- NodeJS
0.8
,0.10
,0.12
, and every major version starting from4
- io.js 1/2/3
- Deno latest
The test suite also includes tests for various time zones. To change
the timezone locally, set the TZ
environment variable:
$ env TZ="Asia/Kolkata" WTF=1 make test_misc
Test Files
Test files are housed in another repo.
Running make init
will refresh the test_files
submodule and get the files.
The "OS-Specific Setup"
includes notes for installing the required dependencies.