Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
7ee6d6c
Abstract timers and clock through Platform.Config
paddybyers Apr 12, 2026
4c90203
Add UTS mock infrastructure and test runner
paddybyers Apr 12, 2026
c0103dc
Implement UTS time tests (RSC16, RTC6a)
paddybyers Apr 12, 2026
2afad9e
Implement UTS auth tests (82 tests across 8 files)
paddybyers Apr 12, 2026
4c7ace7
Implement remaining REST UTS tests (300 tests across 28 files)
paddybyers Apr 12, 2026
6a8d1c6
Fix and extend REST UTS tests
paddybyers Apr 30, 2026
5861f65
Fix TypeScript compilation errors in UTS test suite
paddybyers Apr 30, 2026
e71a95f
Fix prettier formatting across UTS test files
paddybyers Apr 30, 2026
350abbc
Allow deviation tests to run via RUN_DEVIATIONS=1
paddybyers May 1, 2026
695f56b
WIP: Implement realtime client UTS tests (43 tests across 5 files)
paddybyers Apr 12, 2026
917e5a0
WIP: Implement realtime connection UTS tests (RTN13-15, RTN17, RTN23,…
paddybyers Apr 12, 2026
c336b30
WIP: fixes in progress
paddybyers Apr 29, 2026
b0c8912
Fix TypeScript compilation and prettier in realtime UTS tests
paddybyers May 1, 2026
fbaa74f
Complete ably-js UTS realtime + REST test coverage
paddybyers May 2, 2026
bc3e730
Remove real timers from UTS tests and skip remaining deviations
paddybyers May 2, 2026
c5839a0
Add UTS integration tests for REST and realtime
paddybyers May 2, 2026
fb0e1fa
Add operation timeouts to sandbox provisioning and teardown
paddybyers May 3, 2026
c0cc540
Increase integration test suite timeouts from 60s to 120s
paddybyers May 3, 2026
d8ba4b9
Fix RSL2b3 history time range test to use server timestamps
paddybyers May 3, 2026
d0d7be6
Restructure UTS tests to match spec repo unit/integration layout
paddybyers May 3, 2026
250ec8e
Add proxy integration test infrastructure and tests
paddybyers May 3, 2026
da40ab7
Add tier 1+2 proxy integration tests
paddybyers May 3, 2026
bf9e7e1
Add ably-js tests for missing UTS spec coverage
paddybyers May 3, 2026
7d3529c
Auto-launch Go test proxy from Node.js
paddybyers May 3, 2026
504684d
Add RSC15f test: expired fallback not resurrected by late in-flight s…
paddybyers May 3, 2026
d2e0a08
Add RTN15a test variant for TCP close without WebSocket close frame
paddybyers May 4, 2026
874fe6c
Download uts-proxy binary from GitHub releases instead of building fr…
paddybyers May 4, 2026
226d4eb
Remove deviations.md from repo
paddybyers May 4, 2026
9e513f1
Fix RSA4c3 tests: auth failure while CONNECTED should not set errorRe…
paddybyers May 5, 2026
58ba810
Fix RTN24 test: connectionId is not inside connectionDetails
paddybyers May 5, 2026
e4bf65d
Fix TM4 test: spec requires constructors, not toJSON
paddybyers May 5, 2026
a617737
Fix batch operation test mocks to match server response format (RSC24…
paddybyers May 5, 2026
fa1875d
Fix RSC15l mock, add proxy integration tests for REST fallback (RSC15…
paddybyers May 5, 2026
983161a
Add comprehensive REST proxy integration tests for HTTP error handling
paddybyers May 6, 2026
8fb6b7f
Add UTS test IDs to all tests and implement 50 missing test scenarios
paddybyers May 6, 2026
bce710e
Align unit test endpoints with UTS specs
paddybyers May 7, 2026
a8b3ddf
Run data-path integration tests with both JSON and msgpack (G1)
paddybyers May 8, 2026
25c9a75
Add RSL6a3 msgpack interoperability tests
paddybyers May 8, 2026
7430d0b
refactor(uts): improve type safety and function signatures
ttypic Jun 15, 2026
a502dba
chore(uts): prettier reformat
ttypic Jun 18, 2026
f157f2e
test(uts): add uts check workflow
ttypic Jun 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/bundle-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ jobs:
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
submodules: 'recursive'
persist-credentials: false
- name: Reconfigure git to use HTTP authentication
run: >
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ jobs:
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
submodules: 'recursive'
persist-credentials: false
- name: Reconfigure git to use HTTP authentication
run: >
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ jobs:
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
with:
submodules: 'recursive'
persist-credentials: false

- name: Use Node.js 20.x
Expand Down Expand Up @@ -46,6 +47,7 @@ jobs:
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3
with:
submodules: 'recursive'
persist-credentials: false

- name: Download typedoc artifact
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/publish-cdn.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ jobs:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
ref: ${{ github.event.inputs.version }}
submodules: 'recursive'
persist-credentials: false
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@67fbcbb121271f7775d2e7715933280b06314838 # v1
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/react.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ jobs:
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
submodules: 'recursive'
persist-credentials: false
- uses: actions/setup-node@f1f314fca9dfce2769ece7d933488f076716723e # v1
with:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/spec-coverage-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ jobs:
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
submodules: 'recursive'
persist-credentials: false
- name: Reconfigure git to use HTTP authentication
run: >
Expand Down
42 changes: 42 additions & 0 deletions .github/workflows/test-node-uts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Test NodeJS (UTS)
on:
workflow_dispatch:
pull_request:
push:
branches:
- main

permissions:
contents: read

jobs:
test-node:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# tsx (used to run the TypeScript UTS suite) requires Node >= 18, so 16.x is excluded.
node-version: [18.x, 20.x]
timeout-minutes: 15
steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2
with:
submodules: 'recursive'
persist-credentials: false
- name: Reconfigure git to use HTTP authentication
run: >
git config --global url."https://github.com/".insteadOf
ssh://git@github.com/
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@f1f314fca9dfce2769ece7d933488f076716723e # v1
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- name: Run UTS unit tests
run: npm run test:uts:unit
env:
CI: true
- name: Run UTS integration tests
run: npm run test:uts:integration
env:
CI: true
7 changes: 6 additions & 1 deletion .github/workflows/test-node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,12 @@ jobs:
uses: actions/setup-node@f1f314fca9dfce2769ece7d933488f076716723e # v1
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
# --ignore-scripts skips dependency install/postinstall scripts. The only deps with
# install scripts are esbuild and playwright, which require Node >= 18 and would fail
# the install on the Node 16 leg. None of them are used by the node test path
# (mocha + grunt/webpack/ts-loader), so skipping their scripts keeps Node 16 green.
# The project's own build runs explicitly via `npm run test:node` below.
- run: npm ci --ignore-scripts
- run: npm run test:node
env:
CI: true
Expand Down
Loading
Loading