diff options
Diffstat (limited to 'cli/js')
-rw-r--r-- | cli/js/lib.deno.ns.d.ts | 9 | ||||
-rw-r--r-- | cli/js/net.ts | 5 | ||||
-rw-r--r-- | cli/js/tests/net_test.ts | 69 |
3 files changed, 5 insertions, 78 deletions
diff --git a/cli/js/lib.deno.ns.d.ts b/cli/js/lib.deno.ns.d.ts index b73ad4c20..db89ed97f 100644 --- a/cli/js/lib.deno.ns.d.ts +++ b/cli/js/lib.deno.ns.d.ts @@ -1899,11 +1899,12 @@ declare namespace Deno { readonly remoteAddr: Addr; /** The resource ID of the connection. */ readonly rid: number; - /** Shuts down (`shutdown(2)`) the reading side of the TCP connection. Most - * callers should just use `close()`. */ - closeRead(): void; /** Shuts down (`shutdown(2)`) the writing side of the TCP connection. Most - * callers should just use `close()`. */ + * callers should just use `close()`. + * + * **Unstable** because of lack of testing and because Deno.shutdown is also + * unstable. + * */ closeWrite(): void; } diff --git a/cli/js/net.ts b/cli/js/net.ts index 3ca1219e6..05503b232 100644 --- a/cli/js/net.ts +++ b/cli/js/net.ts @@ -48,10 +48,6 @@ export class ConnImpl implements Conn { close(this.rid); } - closeRead(): void { - netOps.shutdown(this.rid, netOps.ShutdownMode.Read); - } - closeWrite(): void { netOps.shutdown(this.rid, netOps.ShutdownMode.Write); } @@ -130,7 +126,6 @@ export interface Conn extends Reader, Writer, Closer { localAddr: Addr; remoteAddr: Addr; rid: number; - closeRead(): void; closeWrite(): void; } diff --git a/cli/js/tests/net_test.ts b/cli/js/tests/net_test.ts index ef3cd833d..fc1802792 100644 --- a/cli/js/tests/net_test.ts +++ b/cli/js/tests/net_test.ts @@ -374,75 +374,6 @@ unitTest( ignore: true, perms: { net: true }, }, - async function netCloseReadSuccess() { - const addr = { hostname: "127.0.0.1", port: 4500 }; - const listener = Deno.listen(addr); - const closeDeferred = createResolvable(); - const closeReadDeferred = createResolvable(); - listener.accept().then(async (conn) => { - await closeReadDeferred; - await conn.write(new Uint8Array([1, 2, 3])); - const buf = new Uint8Array(1024); - const readResult = await conn.read(buf); - assertEquals(3, readResult); - assertEquals(4, buf[0]); - assertEquals(5, buf[1]); - assertEquals(6, buf[2]); - conn.close(); - closeDeferred.resolve(); - }); - const conn = await Deno.connect(addr); - conn.closeRead(); // closing read - closeReadDeferred.resolve(); - const buf = new Uint8Array(1024); - const readResult = await conn.read(buf); - assertEquals(readResult, null); // with immediate EOF - // Ensure closeRead does not impact write - await conn.write(new Uint8Array([4, 5, 6])); - await closeDeferred; - listener.close(); - conn.close(); - } -); - -unitTest( - { - // FIXME(bartlomieju) - ignore: true, - perms: { net: true }, - }, - async function netDoubleCloseRead() { - const addr = { hostname: "127.0.0.1", port: 4500 }; - const listener = Deno.listen(addr); - const closeDeferred = createResolvable(); - listener.accept().then(async (conn) => { - await conn.write(new Uint8Array([1, 2, 3])); - await closeDeferred; - conn.close(); - }); - const conn = await Deno.connect(addr); - conn.closeRead(); // closing read - let err; - try { - // Duplicated close should throw error - conn.closeRead(); - } catch (e) { - err = e; - } - assert(!!err); - assert(err instanceof Deno.errors.NotConnected); - closeDeferred.resolve(); - listener.close(); - conn.close(); - } -); - -unitTest( - { - // FIXME(bartlomieju) - ignore: true, - perms: { net: true }, - }, async function netCloseWriteSuccess() { const addr = { hostname: "127.0.0.1", port: 4500 }; const listener = Deno.listen(addr); |