Skip to content

Commit a2fb7fe

Browse files
committed
quic: Fix linting
1 parent b5dfd00 commit a2fb7fe

File tree

6 files changed

+115
-13
lines changed

6 files changed

+115
-13
lines changed

src/dataqueue/queue.cc

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1423,14 +1423,17 @@ bool DataQueueFeeder::HasInstance(Environment* env, Local<Value> object) {
14231423
return GetConstructorTemplate(env)->HasInstance(object);
14241424
}
14251425

1426-
Local<FunctionTemplate> DataQueueFeeder::GetConstructorTemplate(Environment* env) {
1426+
Local<FunctionTemplate> DataQueueFeeder::GetConstructorTemplate(
1427+
Environment* env
1428+
) {
14271429
Local<FunctionTemplate> tmpl = env->data_queue_feeder_constructor_template();
14281430
if (tmpl.IsEmpty()) {
14291431
Isolate* isolate = env->isolate();
1430-
tmpl = NewFunctionTemplate(isolate, DataQueueFeeder::New); // second argument was nullptr
1432+
tmpl = NewFunctionTemplate(isolate, DataQueueFeeder::New);
14311433
tmpl->InstanceTemplate()->SetInternalFieldCount(
14321434
BaseObject::kInternalFieldCount);
1433-
tmpl->SetClassName(FIXED_ONE_BYTE_STRING(env->isolate(), "DataQueueFeeder"));
1435+
tmpl->SetClassName(FIXED_ONE_BYTE_STRING(env->isolate(),
1436+
"DataQueueFeeder"));
14341437
tmpl->Inherit(AsyncWrap::GetConstructorTemplate(env));
14351438
env->set_data_queue_feeder_constructor_template(tmpl);
14361439
SetProtoMethod(isolate, tmpl, "error", Error);
@@ -1468,7 +1471,11 @@ void DataQueueFeeder::RegisterExternalReferences(
14681471

14691472
} // namespace node
14701473

1471-
NODE_BINDING_CONTEXT_AWARE_INTERNAL(dataqueuefeeder,
1472-
node::DataQueueFeeder::CreatePerContextProperties)
1473-
NODE_BINDING_PER_ISOLATE_INIT(dataqueuefeeder, node::DataQueueFeeder::CreatePerIsolateProperties)
1474-
NODE_BINDING_EXTERNAL_REFERENCE(dataqueuefeeder, node::DataQueueFeeder::RegisterExternalReferences)
1474+
NODE_BINDING_CONTEXT_AWARE_INTERNAL(
1475+
dataqueuefeeder,
1476+
node::DataQueueFeeder::CreatePerContextProperties
1477+
)
1478+
NODE_BINDING_PER_ISOLATE_INIT(dataqueuefeeder,
1479+
node::DataQueueFeeder::CreatePerIsolateProperties)
1480+
NODE_BINDING_EXTERNAL_REFERENCE(dataqueuefeeder,
1481+
node::DataQueueFeeder::RegisterExternalReferences)

src/env_properties.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@
394394
V(contextify_wrapper_template, v8::ObjectTemplate) \
395395
V(cpu_usage_template, v8::DictionaryTemplate) \
396396
V(crypto_key_object_handle_constructor, v8::FunctionTemplate) \
397-
V(data_queue_feeder_constructor_template, v8::FunctionTemplate) \
397+
V(data_queue_feeder_constructor_template, v8::FunctionTemplate) \
398398
V(env_proxy_template, v8::ObjectTemplate) \
399399
V(env_proxy_ctor_template, v8::FunctionTemplate) \
400400
V(ephemeral_key_template, v8::DictionaryTemplate) \

src/node_binding.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@
4747
V(constants) \
4848
V(contextify) \
4949
V(credentials) \
50-
V(dataqueuefeeder) \
50+
V(dataqueuefeeder) \
5151
V(encoding_binding) \
5252
V(errors) \
5353
V(fs) \

test/common/quic/test-helpers.mjs

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import assert from "node:assert";
1+
import assert from 'node:assert';
22
// start demo data
33
// taken from @fails-components/webtransport tests
44
// by the original author
55
function createBytesChunk(length) {
6-
assert(length % 4 === 0);
6+
assert.strictEqual(length % 4, 0);
77
const workArray = new Array(length / 2);
88
for (let i = 0; i < length / 4; i++) {
99
workArray[2 * i + 1] = length % 0xffff;
@@ -48,8 +48,18 @@ export function uint8concat(arrays) {
4848
}
4949

5050
export function equalUint8Arrays(arr1, arr2) {
51-
assert.ok(arr1.byteLength === arr2.byteLength, "Array content differs in length " + arr1.byteLength + " vs. " + arr2.byteLength);
51+
assert.ok(arr1.byteLength === arr2.byteLength,
52+
'Array content differs in length ' +
53+
arr1.byteLength +
54+
' vs. ' +
55+
arr2.byteLength);
5256
for (let i = 0; i < arr1.byteLength; i++) {
53-
assert.ok(arr1[i] === arr2[i], "Array content differs at " + i + " arr1: " + arr1[i] + " arr2: " + arr2[i]);
57+
assert.ok(arr1[i] === arr2[i],
58+
'Array content differs at ' +
59+
i +
60+
' arr1: ' +
61+
arr1[i] +
62+
' arr2: ' +
63+
arr2[i]);
5464
}
5565
}

test/parallel/test-dataqueuefeeder.mjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
// Flags: --expose-internals --no-warnings
2+
import {} from '../common/index.mjs';
23
import {
34
rejects,
45
} from 'node:assert';
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
// Flags: --experimental-quic --no-warnings
2+
3+
import { hasQuic, skip, mustCall } from '../common/index.mjs';
4+
import { ok, strictEqual, deepStrictEqual } from 'node:assert';
5+
import { readKey } from '../common/fixtures.mjs';
6+
import { KNOWN_BYTES_LONG, uint8concat } from '../common/quic/test-helpers.mjs';
7+
import { TransformStream } from 'node:stream/web';
8+
9+
if (!hasQuic) {
10+
skip('QUIC is not enabled');
11+
}
12+
13+
// Import after the hasQuic check
14+
const { listen, connect } = await import('node:quic');
15+
const { createPrivateKey } = await import('node:crypto');
16+
17+
const keys = createPrivateKey(readKey('agent1-key.pem'));
18+
const certs = readKey('agent1-cert.pem');
19+
20+
const finished = Promise.withResolvers();
21+
22+
const serverEndpoint = await listen(async (serverSession) => {
23+
serverSession.onstream = mustCall(async (stream) => {
24+
strictEqual(stream.direction, 'bidi', 'Expects an bidirectional stream');
25+
stream.closed.catch(() => {
26+
// ignore
27+
});
28+
const serverTransformStream = new TransformStream();
29+
stream.setOutbound(serverTransformStream.readable);
30+
await stream.readable.pipeTo(serverTransformStream.writable);
31+
32+
}, 1);
33+
34+
await finished.promise;
35+
serverSession.closed.catch((err) => {
36+
// ignore the error
37+
});
38+
serverSession.close();
39+
}, { keys, certs });
40+
41+
// The server must have an address to connect to after listen resolves.
42+
ok(serverEndpoint.address !== undefined);
43+
44+
const clientSession = await connect(serverEndpoint.address);
45+
await clientSession.opened;
46+
47+
48+
const transformStream = new TransformStream();
49+
const sendStream = await clientSession.createBidirectionalStream({ body: transformStream.readable });
50+
sendStream.closed.catch(() => {
51+
// ignore
52+
});
53+
strictEqual(sendStream.direction, 'bidi');
54+
const writeToStream = async () => {
55+
const clientWritable = transformStream.writable;
56+
const writer = clientWritable.getWriter();
57+
for (const chunk of KNOWN_BYTES_LONG) {
58+
await writer.ready;
59+
await writer.write(chunk);
60+
}
61+
await writer.ready;
62+
await writer.close();
63+
};
64+
const readFromStream = async () => {
65+
const reader = sendStream.readable.getReader();
66+
const readChunks = [];
67+
while (true) {
68+
const { done, value } = await reader.read();
69+
if (value) {
70+
ok(value instanceof Uint8Array, 'Expects value to be a Uint8Array');
71+
readChunks.push(value);
72+
}
73+
if (done) break;
74+
}
75+
// Now compare what we got
76+
deepStrictEqual(uint8concat(KNOWN_BYTES_LONG), uint8concat(readChunks));
77+
};
78+
79+
await Promise.all([writeToStream(), readFromStream()]);
80+
clientSession.closed.catch((err) => {
81+
// ignore the error
82+
});
83+
clientSession.close();
84+
finished.resolve();

0 commit comments

Comments
 (0)