Skip to content

Commit 86e2659

Browse files
authored
chore(NODE-5822): sync CSOT spec tests and setup prose stubs (#3962)
1 parent 8504d91 commit 86e2659

File tree

58 files changed

+61754
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+61754
-0
lines changed

Diff for: test/integration/client-side-operations-timeout/.gitkeep

Whitespace-only changes.

Diff for: test/integration/client-side-operations-timeout/client_side_operations_timeout.prose.test.ts

+508
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { join } from 'path';
2+
3+
import { loadSpecTests } from '../../spec';
4+
import { runUnifiedSuite } from '../../tools/unified-spec-runner/runner';
5+
6+
// TODO(NODE-5823): Implement unified runner operations and options support for CSOT
7+
describe.skip('CSOT spec tests', function () {
8+
runUnifiedSuite(loadSpecTests(join('client-side-operations-timeout')));
9+
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/* eslint-disable @typescript-eslint/no-empty-function */
2+
/**
3+
* The following tests are described in CSOTs spec prose tests as "unit" tests
4+
* The tests enumerated in this section could not be expressed in either spec or prose format.
5+
* Drivers SHOULD implement these if it is possible to do so using the driver's existing test infrastructure.
6+
*/
7+
8+
// TODO(NODE-5824): Implement CSOT prose tests
9+
describe.skip('CSOT spec unit tests', () => {
10+
context('Operations should ignore waitQueueTimeoutMS if timeoutMS is also set.', () => {});
11+
12+
context(
13+
'If timeoutMS is set for an operation, the remaining timeoutMS value should apply to connection checkout after a server has been selected.',
14+
() => {}
15+
);
16+
17+
context(
18+
'If timeoutMS is not set for an operation, waitQueueTimeoutMS should apply to connection checkout after a server has been selected.',
19+
() => {}
20+
);
21+
22+
context(
23+
'If a new connection is required to execute an operation, min(remaining computedServerSelectionTimeout, connectTimeoutMS) should apply to socket establishment.',
24+
() => {}
25+
);
26+
27+
context(
28+
'For drivers that have control over OCSP behavior, min(remaining computedServerSelectionTimeout, 5 seconds) should apply to HTTP requests against OCSP responders.',
29+
() => {}
30+
);
31+
32+
context(
33+
'If timeoutMS is unset, operations fail after two non-consecutive socket timeouts.',
34+
() => {}
35+
);
36+
37+
context(
38+
'The remaining timeoutMS value should apply to HTTP requests against KMS servers for CSFLE.',
39+
() => {}
40+
);
41+
42+
context(
43+
'The remaining timeoutMS value should apply to commands sent to mongocryptd as part of automatic encryption.',
44+
() => {}
45+
);
46+
47+
context(
48+
'When doing minPoolSize maintenance, connectTimeoutMS is used as the timeout for socket establishment.',
49+
() => {}
50+
);
51+
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/* eslint-disable @typescript-eslint/no-empty-function */
2+
/* Anything javascript specific relating to timeouts */
3+
4+
describe.skip('CSOT driver tests', () => {});

0 commit comments

Comments
 (0)