| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- const { Joi } = require('../../../../app/src/infrastructure/Validation')
- const { ObjectId } = require('mongodb-legacy')
- const { expect } = require('chai')
- const { ValidationError } = require('joi')
- describe('Validation', function () {
- const validObjectId = '123456781234567812345678'
- const invalidObjectId = '12345678-1234-1234-12345678'
- it('accepts valid ObjectId strings', async function () {
- const schema = Joi.object({
- test: Joi.objectId(),
- })
- const value = await schema.validateAsync({
- test: validObjectId,
- })
- expect(value.test).to.be.instanceof(ObjectId)
- expect(value.test.toHexString()).to.equal(validObjectId)
- })
- it('rejects invalid ObjectId strings', async function () {
- const schema = Joi.object({
- test: Joi.objectId(),
- })
- const promise = schema.validateAsync({
- test: invalidObjectId,
- })
- expect(promise).to.be.rejectedWith(ValidationError)
- })
- it('accepts valid ObjectId objects', async function () {
- const schema = Joi.object({
- test: Joi.objectId(),
- })
- const value = await schema.validateAsync({
- test: new ObjectId(validObjectId),
- })
- expect(value.test).to.be.instanceof(ObjectId)
- expect(value.test.toHexString()).to.equal(validObjectId)
- })
- })
|