Class JsonTextMessageValidator
java.lang.Object
org.citrusframework.validation.AbstractMessageValidator<JsonMessageValidationContext>
org.citrusframework.validation.json.JsonTextMessageValidator
- All Implemented Interfaces:
MessageValidator<JsonMessageValidationContext>
public class JsonTextMessageValidator
extends AbstractMessageValidator<JsonMessageValidationContext>
This message validator implementation is able to validate two JSON text objects. The order of JSON entries can differ
as specified in JSON protocol. Tester defines an expected control JSON text with optional ignored entries.
JSONArray as well as nested JSONObjects are supported, too.
Validator offers two different modes to operate. By default, strict mode is set and the validator will also check the exact amount of control object fields to match. No additional fields in received JSON data structure will be accepted. In soft mode validator allows additional fields in received JSON data structure so the control JSON object can be a partial subset.
- Author:
- Christoph Deppisch
-
Field Summary
Fields inherited from interface org.citrusframework.validation.MessageValidator
logger, RESOURCE_PATH, TYPE_RESOLVER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionelementValidatorProvider(JsonElementValidator.Provider elementValidatorProvider) protected Class<JsonMessageValidationContext>jsonSchemaValidation(JsonSchemaValidation jsonSchemaValidation) permissiveMode(int permissiveMode) voidsetElementValidatorProvider(JsonElementValidator.Provider elementValidatorProvider) voidsetJsonSchemaValidation(JsonSchemaValidation jsonSchemaValidation) voidsetPermissiveMode(int permissiveMode) voidsetStrict(boolean strict) strict(boolean strict) booleansupportsMessageType(String messageType, Message message) voidvalidateMessage(Message receivedMessage, Message controlMessage, TestContext context, JsonMessageValidationContext validationContext) Methods inherited from class org.citrusframework.validation.AbstractMessageValidator
findValidationContext, validateMessage
-
Constructor Details
-
JsonTextMessageValidator
public JsonTextMessageValidator()
-
-
Method Details
-
validateMessage
public void validateMessage(Message receivedMessage, Message controlMessage, TestContext context, JsonMessageValidationContext validationContext) - Overrides:
validateMessagein classAbstractMessageValidator<JsonMessageValidationContext>
-
getRequiredValidationContextType
- Specified by:
getRequiredValidationContextTypein classAbstractMessageValidator<JsonMessageValidationContext>
-
supportsMessageType
-
setStrict
public void setStrict(boolean strict) -
strict
-
setJsonSchemaValidation
-
jsonSchemaValidation
-
setElementValidatorProvider
-
elementValidatorProvider
public JsonTextMessageValidator elementValidatorProvider(JsonElementValidator.Provider elementValidatorProvider) -
setPermissiveMode
public void setPermissiveMode(int permissiveMode) -
permissiveMode
-