aboutsummaryrefslogtreecommitdiff
path: root/vnext/server/middleware/webfinger.spec.js
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2024-10-21 06:54:19 +0300
committerGravatar Vitaly Takmazov2024-10-21 06:54:19 +0300
commitc6acc5c09ee87d4a4e850733c096d2673b78e1f2 (patch)
tree40137224aeb3cebfed27488a954e3643920dc2ee /vnext/server/middleware/webfinger.spec.js
parent6f7c755dca704ccf880538b7884473c9c829c2b7 (diff)
vnext: WebFinger tests
Diffstat (limited to 'vnext/server/middleware/webfinger.spec.js')
-rw-r--r--vnext/server/middleware/webfinger.spec.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/vnext/server/middleware/webfinger.spec.js b/vnext/server/middleware/webfinger.spec.js
new file mode 100644
index 00000000..fde2e428
--- /dev/null
+++ b/vnext/server/middleware/webfinger.spec.js
@@ -0,0 +1,31 @@
+import request from 'supertest'
+import express from 'express'
+import { webfinger } from './webfinger'
+
+const app = express()
+app.get('/webfinger', webfinger)
+
+describe('WebFinger middleware', () => {
+ it('Existing user response should have a subject and links', async () => {
+ const resource = 'acct:ugnich@juick.com'
+ const response = await request(app)
+ .get(`/webfinger?resource=${resource}`)
+ expect(response.status).toStrictEqual(200)
+ expect(response.body.subject).toStrictEqual(resource)
+ expect(response.body.links.length).toStrictEqual(1)
+ expect(response.body.links[0].href).toStrictEqual('https://juick.com/u/ugnich')
+ })
+ it('Unknown user should return 404', async () => {
+ const resource = 'acct:durov@juick.com'
+ const response = await request(app)
+ .get(`/webfinger?resource=${resource}`)
+ expect(response.status).toStrictEqual(404)
+ })
+ it('Invalid input should return 400', async () => {
+ const resource = ';DROP TABLE users'
+ const response = await request(app)
+ .get(`/webfinger?resource=${resource}`)
+ expect(response.status).toStrictEqual(400)
+ })
+})
+