Module: ZendeskAppsSupport::Validations::CustomObjectsV2

Extended by:
Constants, ValidationHelpers
Defined in:
lib/zendesk_apps_support/validations/custom_objects_v2/constants.rb,
lib/zendesk_apps_support/validations/custom_objects_v2/limits_validator.rb,
lib/zendesk_apps_support/validations/custom_objects_v2/schema_validator.rb,
lib/zendesk_apps_support/validations/custom_objects_v2/custom_objects_v2.rb,
lib/zendesk_apps_support/validations/custom_objects_v2/validation_helpers.rb

Defined Under Namespace

Modules: Constants, ValidationHelpers Classes: LimitsValidator, SchemaValidator

Constant Summary

Constants included from Constants

Constants::ACTIONS, Constants::ALL, Constants::ANY, Constants::CF_OPTIONS, Constants::CONDITIONS, Constants::CONDITION_KEYS, Constants::DROPDOWN, Constants::KEY, Constants::MAX_ACTIONS_PER_TRIGGER, Constants::MAX_CONDITIONS_IN_RELATIONSHIP_FILTER_PER_OBJECT, Constants::MAX_CONDITIONS_PER_TRIGGER, Constants::MAX_DROPDOWN_FIELDS_PER_OBJECT, Constants::MAX_DROPDOWN_OPTIONS_PER_FIELD, Constants::MAX_FIELDS_PER_OBJECT, Constants::MAX_MULTISELECT_FIELDS_PER_OBJECT, Constants::MAX_MULTISELECT_OPTIONS_PER_FIELD, Constants::MAX_OBJECTS, Constants::MAX_PAYLOAD_SIZE_BYTES, Constants::MAX_TRIGGERS_PER_OBJECT, Constants::MULTISELECT, Constants::OBJECT_KEY, Constants::REFERENCE_VALIDATION_CONFIG, Constants::RELATIONSHIP_FILTER, Constants::SCHEMA_KEYS, Constants::SELECTION_FIELD_LIMITS, Constants::SELECTION_FIELD_OPTIONS_LIMITS, Constants::TITLE, Constants::TYPE, Constants::UNDEFINED_VALUE

Class Method Summary collapse

Class Method Details

.call(requirements) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/zendesk_apps_support/validations/custom_objects_v2/custom_objects_v2.rb', line 15

def call(requirements)
  structural_errors = validate_overall_requirements_structure(requirements)
  return structural_errors if structural_errors.any?

  payload_size_errors = validate_payload_size(requirements)
  return payload_size_errors if payload_size_errors.any?

  limits_and_schema_errors = [
    validate_limits(requirements),
    validate_schema(requirements)
  ].flatten

  return limits_and_schema_errors if limits_and_schema_errors.any?

  validate_object_references(requirements)
end