aboutsummaryrefslogtreecommitdiff
path: root/nginx/t/js_fetch_objects.t
diff options
context:
space:
mode:
authorDmitry Volyntsev <xeioex@nginx.com>2023-02-06 09:36:13 -0800
committerDmitry Volyntsev <xeioex@nginx.com>2023-02-06 09:36:13 -0800
commitf13ba1648c3671c6996b4c2087cafcce9aee3bbd (patch)
treea06f728400d9311be04fd314de1db9e337b6aa44 /nginx/t/js_fetch_objects.t
parent893c94e1a9ed0fc241722c831964ebb8bcb67ca3 (diff)
downloadnjs-f13ba1648c3671c6996b4c2087cafcce9aee3bbd.tar.gz
njs-f13ba1648c3671c6996b4c2087cafcce9aee3bbd.zip
Tests: fixed js tests for Fetch API for nginx-1.22 and below.
The fix is to move a test with multiple headers returned by $http_a variable under an nginx version check.
Diffstat (limited to 'nginx/t/js_fetch_objects.t')
-rw-r--r--nginx/t/js_fetch_objects.t30
1 files changed, 25 insertions, 5 deletions
diff --git a/nginx/t/js_fetch_objects.t b/nginx/t/js_fetch_objects.t
index 9f23599c..bac74a06 100644
--- a/nginx/t/js_fetch_objects.t
+++ b/nginx/t/js_fetch_objects.t
@@ -61,6 +61,10 @@ http {
js_content test.fetch;
}
+ location /fetch_multi_header {
+ js_content test.fetch_multi_header;
+ }
+
location /method {
return 200 $request_method;
}
@@ -450,13 +454,20 @@ $t->write_file('test.js', <<EOF);
var body = await r.text();
return `\${r.url}: \${r.status} \${body}`;
}, 'http://127.0.0.1:$p0/body: 201 foo'],
- ['request body', async () => {
+ ];
+
+ run(r, tests);
+ }
+
+ async function fetch_multi_header(r) {
+ const tests = [
+ ['request multi header', async () => {
var h = new Headers({a: 'X'});
h.append('a', 'Z');
var req = new Request("http://127.0.0.1:$p0/header",
{headers: h});
- var r = await ngx.fetch(req);
- var body = await r.text();
+ var r = await ngx.fetch(req);
+ var body = await r.text();
return `\${r.url}: \${r.status} \${body}`;
}, 'http://127.0.0.1:$p0/header: 200 X, Z'],
];
@@ -464,10 +475,11 @@ $t->write_file('test.js', <<EOF);
run(r, tests);
}
- export default {njs: test_njs, body, headers, request, response, fetch};
+ export default {njs: test_njs, body, headers, request, response, fetch,
+ fetch_multi_header};
EOF
-$t->try_run('no njs')->plan(4);
+$t->try_run('no njs')->plan(5);
###############################################################################
@@ -478,6 +490,14 @@ like(http_get('/request'), qr/200 OK/s, 'request tests');
like(http_get('/response'), qr/200 OK/s, 'response tests');
like(http_get('/fetch'), qr/200 OK/s, 'fetch tests');
+TODO: {
+local $TODO = 'not yet' unless $t->has_version('1.23.0');
+
+like(http_get('/fetch_multi_header'), qr/200 OK/s,
+ 'fetch multi header tests');
+
+}
+
###############################################################################
sub has_version {