Skip to content

Commit 2e2a206

Browse files
committed
chore: add a test and remove unused variables
1 parent eb54f23 commit 2e2a206

File tree

4 files changed

+34
-3
lines changed

4 files changed

+34
-3
lines changed

__test__/seqpacket.spec.ts

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,37 @@ if (!kIsDarwin) {
599599
autoClose: false,
600600
})
601601
});
602+
603+
it('should emit "error" and "close" in sockets when we write after remote sockets closed', async () => {
604+
await createTestPair(async (args) => {
605+
const { client, server, socket } = args;
606+
const { p: pError, resolve: resolveError } = createDefer();
607+
const { p: pClose, resolve: resolveClose } = createDefer();
608+
const { p: pCb, resolve: resolveCb } = createDefer();
609+
610+
client.on('error', () => {
611+
resolveError();
612+
})
613+
614+
client.on('close', () => {
615+
resolveClose();
616+
})
617+
618+
socket.destroy();
619+
620+
// TODO should callback get called when sockets get closed?
621+
client.write(Buffer.alloc(10), 0, 10);
622+
// client.write(Buffer.alloc(10), 0, 10, () => {
623+
// resolveCb();
624+
// });
625+
626+
// await pCb;
627+
await pError;
628+
await pClose;
629+
630+
server.close();
631+
});
632+
});
602633
});
603634
} else {
604635
describe('seqpacket', () => {

js/seqpacket.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@ export class SeqpacketSocket extends EventEmitter {
222222
}
223223

224224
/**
225-
* Sends data on the socket.
225+
* Sends data on the socket. The `cb` is called when data is written to operating system.
226226
* @param buf
227227
* @param offset
228228
* @param length

src/seqpacket.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::os::raw::c_int;
44

55
use crate::socket::{self, get_loop, sockaddr_from_string, Emitter, HandleData, UvRefence};
66
use crate::util::{
7-
addr_to_string, buf_into_vec, check_emit, error, get_err, resolve_libc_err, resolve_uv_err,
7+
addr_to_string, buf_into_vec, error, get_err, resolve_libc_err, resolve_uv_err,
88
set_clo_exec, set_non_block, socket_addr_to_string, uv_err_msg,
99
};
1010
use libc::{sockaddr, sockaddr_un, EAGAIN, EINTR, EINVAL, ENOBUFS, EWOULDBLOCK};

src/socket.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::str::FromStr;
44

55
use crate::util::{error, get_err, resolve_libc_err, resolve_uv_err};
66
use libc::{c_void, sockaddr_storage, sockaddr_un};
7-
use napi::{Env, JsFunction, JsNumber, JsObject, JsString, JsUnknown, Ref, Result, bindgen_prelude::FromNapiValue, NapiValue};
7+
use napi::{Env, JsFunction, JsNumber, JsObject, JsString, JsUnknown, Ref, Result, bindgen_prelude::FromNapiValue};
88
use uv_sys::sys;
99

1010
pub(crate) fn get_loop(env: &Env) -> Result<*mut sys::uv_loop_t> {

0 commit comments

Comments
 (0)