Skip to content

.rename() does not work when new value is undefined #593

@mgartner

Description

@mgartner

I have a case where I want to rename a field to override another field. If the value of the field being renamed is undefined, renaming does not work.

var Joi = require('joi');

var obj = { deleted: true }

var schema = Joi.object().rename('other', 'deleted', { override: true }).keys({ deleted: Joi.any().optional() });

Joi.validate(obj, schema, { stripUnknown: true }).value;
// => { deleted: true } instead of { }

Metadata

Metadata

Assignees

Labels

bugBug or defect

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions