diff options
author | 2023-10-17 14:10:25 -0700 | |
---|---|---|
committer | 2023-10-17 14:10:25 -0700 | |
commit | 7458b969c5d9971e89d187b687e1924e78da427e (patch) | |
tree | ee3dbf95c728cf407bf49a27826b541e9264a8bd /test/regression | |
parent | d4a2c29131ec154f5e4db897d4deedab2002cbc4 (diff) | |
parent | e91436e5248d947b50f90b4a7402690be8a41f39 (diff) | |
download | bun-7458b969c5d9971e89d187b687e1924e78da427e.tar.gz bun-7458b969c5d9971e89d187b687e1924e78da427e.tar.zst bun-7458b969c5d9971e89d187b687e1924e78da427e.zip |
Merge branch 'main' into postinstall_3
Diffstat (limited to 'test/regression')
-rw-r--r-- | test/regression/fixtures/cert.key | 28 | ||||
-rw-r--r-- | test/regression/fixtures/cert.pem | 23 | ||||
-rw-r--r-- | test/regression/issue/04011.test.ts (renamed from test/regression/issue/4011.test.ts) | 0 | ||||
-rw-r--r-- | test/regression/issue/04893.test.ts | 23 | ||||
-rw-r--r-- | test/regression/issue/06443.test.ts | 39 | ||||
-rw-r--r-- | test/regression/issue/06467.test.ts | 7 |
6 files changed, 120 insertions, 0 deletions
diff --git a/test/regression/fixtures/cert.key b/test/regression/fixtures/cert.key new file mode 100644 index 000000000..bf41b7883 --- /dev/null +++ b/test/regression/fixtures/cert.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCIzOJskt6VkEJY +XKSJv/Gdil3XYkjk3NVc/+m+kzqnkTRbPtT9w+IGWgmJhuf9DJPLCwHFAEFarVwV +x16Q0PbU4ajXaLRHEYGhrH10oTMjQnJ24xVm26mxRXPQa5vaLpWJqNyIdNLIQLe+ +UXUOzSGGsFTRMAjvYrkzjBe4ZUnaZV+aFY/ug0jfzeA1dJjzKZs6+yTJRbsuWUEb +8MsDmT4v+kBZDKdaDn7AFDWRVqx/38BnqsRzkM0CxpnyT2kRzw5zQajIE13gdTJo +1EHvYSUkkxrY5m30Rl9BuBBZBjhMzOHq0fYVVooHO+sf4XHPgvFTTxJum85u7J1J +oEUjrLKtAgMBAAECggEACInVNhaiqu4infZGVMy0rXMV8VwSlapM7O2SLtFsr0nK +XUmaLK6dvGzBPKK9dxdiYCFzPlMKQTkhzsAvYFWSmm3tRmikG+11TFyCRhXLpc8/ +ark4vD9Io6ZkmKUmyKLwtXNjNGcqQtJ7RXc7Ga3nAkueN6JKZHqieZusXVeBGQ70 +YH1LKyVNBeJggbj+g9rqaksPyNJQ8EWiNTJkTRQPazZ0o1VX/fzDFyr/a5npFtHl +4BHfafv9o1Xyr70Kie8CYYRJNViOCN+ylFs7Gd3XRaAkSkgMT/7DzrHdEM2zrrHK +yNg2gyDVX9UeEJG2X5UtU0o9BVW7WBshz/2hqIUHoQKBgQC8zsRFvC7u/rGr5vRR +mhZZG+Wvg03/xBSuIgOrzm+Qie6mAzOdVmfSL/pNV9EFitXt1yd2ROo31AbS7Evy +Bm/QVKr2mBlmLgov3B7O/e6ABteooOL7769qV/v+yo8VdEg0biHmsfGIIXDe3Lwl +OT0XwF9r/SeZLbw1zfkSsUVG/QKBgQC5fANM3Dc9LEek+6PHv5+eC1cKkyioEjUl +/y1VUD00aABI1TUcdLF3BtFN2t/S6HW0hrP3KwbcUfqC25k+GDLh1nM6ZK/gI3Yn +IGtCHxtE3S6jKhE9QcK/H+PzGVKWge9SezeYRP0GHJYDrTVTA8Kt9HgoZPPeReJl ++Ss9c8ThcQKBgECX6HQHFnNzNSufXtSQB7dCoQizvjqTRZPxVRoxDOABIGExVTYt +umUhPtu5AGyJ+/hblEeU+iBRbGg6qRzK8PPwE3E7xey8MYYAI5YjL7YjISKysBUL +AhM6uJ6Jg/wOBSnSx8xZ8kzlS+0izUda1rjKeprCSArSp8IsjlrDxPStAoGAEcPr ++P+altRX5Fhpvmb/Hb8OTif8G+TqjEIdkG9H/W38oP0ywg/3M2RGxcMx7txu8aR5 +NjI7zPxZFxF7YvQkY3cLwEsGgVxEI8k6HLIoBXd90Qjlb82NnoqqZY1GWL4HMwo0 +L/Rjm6M/Rwje852Hluu0WoIYzXA6F/Q+jPs6nzECgYAxx4IbDiGXuenkwSF1SUyj +NwJXhx4HDh7U6EO/FiPZE5BHE3BoTrFu3o1lzverNk7G3m+j+m1IguEAalHlukYl +rip9iUISlKYqbYZdLBoLwHAfHhszdrjqn8/v6oqbB5yR3HXjPFUWJo0WJ2pqJp56 +ZshgmQQ/5Khoj6x0/dMPSg== +-----END PRIVATE KEY----- diff --git a/test/regression/fixtures/cert.pem b/test/regression/fixtures/cert.pem new file mode 100644 index 000000000..8ae1c1ea4 --- /dev/null +++ b/test/regression/fixtures/cert.pem @@ -0,0 +1,23 @@ +-----BEGIN CERTIFICATE----- +MIID5jCCAs6gAwIBAgIUN7coIsdMcLo9amZfkwogu0YkeLEwDQYJKoZIhvcNAQEL +BQAwfjELMAkGA1UEBhMCU0UxDjAMBgNVBAgMBVN0YXRlMREwDwYDVQQHDAhMb2Nh +dGlvbjEaMBgGA1UECgwRT3JnYW5pemF0aW9uIE5hbWUxHDAaBgNVBAsME09yZ2Fu +aXphdGlvbmFsIFVuaXQxEjAQBgNVBAMMCWxvY2FsaG9zdDAeFw0yMzA5MjExNDE2 +MjNaFw0yNDA5MjAxNDE2MjNaMH4xCzAJBgNVBAYTAlNFMQ4wDAYDVQQIDAVTdGF0 +ZTERMA8GA1UEBwwITG9jYXRpb24xGjAYBgNVBAoMEU9yZ2FuaXphdGlvbiBOYW1l +MRwwGgYDVQQLDBNPcmdhbml6YXRpb25hbCBVbml0MRIwEAYDVQQDDAlsb2NhbGhv +c3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCIzOJskt6VkEJYXKSJ +v/Gdil3XYkjk3NVc/+m+kzqnkTRbPtT9w+IGWgmJhuf9DJPLCwHFAEFarVwVx16Q +0PbU4ajXaLRHEYGhrH10oTMjQnJ24xVm26mxRXPQa5vaLpWJqNyIdNLIQLe+UXUO +zSGGsFTRMAjvYrkzjBe4ZUnaZV+aFY/ug0jfzeA1dJjzKZs6+yTJRbsuWUEb8MsD +mT4v+kBZDKdaDn7AFDWRVqx/38BnqsRzkM0CxpnyT2kRzw5zQajIE13gdTJo1EHv +YSUkkxrY5m30Rl9BuBBZBjhMzOHq0fYVVooHO+sf4XHPgvFTTxJum85u7J1JoEUj +rLKtAgMBAAGjXDBaMA4GA1UdDwEB/wQEAwIDiDATBgNVHSUEDDAKBggrBgEFBQcD +ATAUBgNVHREEDTALgglsb2NhbGhvc3QwHQYDVR0OBBYEFNzx4Rfs9m8XR5ML0WsI +sorKmB4PMA0GCSqGSIb3DQEBCwUAA4IBAQB87iQy8R0fiOky9WTcyzVeMaavS3MX +iTe1BRn1OCyDq+UiwwoNz7zdzZJFEmRtFBwPNFOe4HzLu6E+7yLFR552eYRHlqIi +/fiLb5JiZfPtokUHeqwELWBsoXtU8vKxViPiLZ09jkWOPZWo7b/xXd6QYykBfV91 +usUXLzyTD2orMagpqNksLDGS3p3ggHEJBZtRZA8R7kPEw98xZHznOQpr26iv8kYz +ZWdLFoFdwgFBSfxePKax5rfo+FbwdrcTX0MhbORyiu2XsBAghf8s2vKDkHg2UQE8 +haonxFYMFaASfaZ/5vWKYDTCJkJ67m/BtkpRafFEO+ad1i1S61OjfxH4 +-----END CERTIFICATE----- diff --git a/test/regression/issue/4011.test.ts b/test/regression/issue/04011.test.ts index a3db4270d..a3db4270d 100644 --- a/test/regression/issue/4011.test.ts +++ b/test/regression/issue/04011.test.ts diff --git a/test/regression/issue/04893.test.ts b/test/regression/issue/04893.test.ts new file mode 100644 index 000000000..43850693b --- /dev/null +++ b/test/regression/issue/04893.test.ts @@ -0,0 +1,23 @@ +import { bunEnv, bunExe } from "harness"; +import { mkdirSync, rmSync, writeFileSync, readFileSync, mkdtempSync } from "fs"; +import { tmpdir } from "os"; +import { join } from "path"; + +it("correctly handles CRLF multiline string in CRLF terminated files", async () => { + const testDir = mkdtempSync(join(tmpdir(), "issue4893-")); + + // Clean up from prior runs if necessary + rmSync(testDir, { recursive: true, force: true }); + + // Create a directory with our test CRLF terminated file + mkdirSync(testDir, { recursive: true }); + writeFileSync(join(testDir, "crlf.js"), '"a\\\r\nb"'); + + const { stdout, exitCode } = Bun.spawnSync({ + cmd: [bunExe(), "run", join(testDir, "crlf.js")], + env: bunEnv, + stderr: "inherit", + }); + + expect(exitCode).toBe(0); +}); diff --git a/test/regression/issue/06443.test.ts b/test/regression/issue/06443.test.ts new file mode 100644 index 000000000..19d8f200e --- /dev/null +++ b/test/regression/issue/06443.test.ts @@ -0,0 +1,39 @@ +import { describe, test, expect } from "bun:test"; +import { serve, file } from "bun"; + +describe("Bun.serve()", () => { + const tls = { + cert: file(new URL("../fixtures/cert.pem", import.meta.url)), + key: file(new URL("../fixtures/cert.key", import.meta.url)), + }; + + const servers = [ + { + port: 0, + url: /^http:\/\/localhost:\d+\/$/, + }, + { + tls, + port: 0, + url: /^https:\/\/localhost:\d+\/$/, + }, + ]; + + test.each(servers)("%j", async ({ url, ...options }) => { + const server = serve({ + hostname: "localhost", + ...options, + fetch(request) { + return new Response(request.url); + }, + }); + try { + const proto = options.tls ? "https" : "http"; + const target = `${proto}://localhost:${server.port}/`; + const response = await fetch(target); + expect(response.text()).resolves.toMatch(url); + } finally { + server.stop(true); + } + }); +}); diff --git a/test/regression/issue/06467.test.ts b/test/regression/issue/06467.test.ts new file mode 100644 index 000000000..9a9ad8a2d --- /dev/null +++ b/test/regression/issue/06467.test.ts @@ -0,0 +1,7 @@ +import { test, expect } from "bun:test"; + +test("write(value >= 0x80)", () => { + const buffer = Buffer.alloc(1); + buffer.write("\x80", "binary"); + expect(buffer[0]).toBe(0x80); +}); |