Open JesKingDev opened 1 year ago
Context
To Reproduce What are you trying to achieve or the steps to reproduce ? Please include any relevant Joi schemas.
When the Joi schema uses the any.when(condition,options) API, an invalid mock is returned. Example Schema
any.when(condition,options)
priceCents: Joi.number().when('.fundType', { is : FUND_TYPES.FIXED, then: Joi.number() .min(1) .max(100000) .required(), otherwise: Joi.forbidden().default(100) }),
The conditional is not respected; when running tests against a schema containing the above snippet, the following fails on validation:
const instance = felicity.entityFor(schema); const mock = entity.generateMock(); const result = instance.validate(mock);
Expected behavior The generated mock should be valid for the Joi schema passed to the Felicity API.
Observed behavior The generated mock fails validation.
Example Mock A - condition is satisfied, but the value is NaN
NaN
Example Mock B - condition is not satisfied, but the value is populated.
Context
To Reproduce What are you trying to achieve or the steps to reproduce ? Please include any relevant Joi schemas.
When the Joi schema uses the
any.when(condition,options)
API, an invalid mock is returned. Example SchemaThe conditional is not respected; when running tests against a schema containing the above snippet, the following fails on validation:
Expected behavior The generated mock should be valid for the Joi schema passed to the Felicity API.
Observed behavior The generated mock fails validation.
Example Mock A - condition is satisfied, but the value is
NaN
Example Mock B - condition is not satisfied, but the value is populated.