class Pacto::MetaSchema
Attributes
engine[RW]
schema[RW]
Public Class Methods
new(engine = JSON::Validator)
click to toggle source
# File lib/pacto/meta_schema.rb, line 5 def initialize(engine = JSON::Validator) @schema = File.join(File.dirname(File.expand_path(__FILE__)), '../../resources/contract_schema.json') @base_schema = File.join(File.dirname(File.expand_path(__FILE__)), '../../resources/draft-03.json') JSON::Validator.validate!(@base_schema, @schema) @engine = engine end
Public Instance Methods
validate(definition)
click to toggle source
# File lib/pacto/meta_schema.rb, line 12 def validate(definition) errors = engine.fully_validate(schema, definition, :version => :draft3) unless errors.empty? fail InvalidContract, errors end end