import mime from 'mime'; import request from 'supertest'; import { test } from 'vitest'; import { HEADERS, HTTP_STATUS } from '@verdaccio/core'; import { media } from '../src'; import { getApp } from './helper'; test('media is json', async () => { const app = getApp([]); app.get('/json', media(mime.getType('json')), (req, res) => { res.status(200).json(); }); return request(app) .get('/json') .set(HEADERS.CONTENT_TYPE, 'application/json') .expect('Content-Type', /json/) .expect(200); }); test('media is not json', async () => { const app = getApp([]); app.get('/json', media(mime.getType('json')), (req, res) => { res.status(HTTP_STATUS.OK).json({}); }); return request(app) .get('/json') .set(HEADERS.CONTENT_TYPE, 'text/html; charset=utf-8') .expect('Content-Type', /html/) .expect(HTTP_STATUS.UNSUPPORTED_MEDIA); });