Class: EasyJSONMatcher::SchemaLibrary
- Inherits:
-
Object
- Object
- EasyJSONMatcher::SchemaLibrary
- Defined in:
- lib/easy_json_matcher/schema_library.rb
Class Method Summary collapse
- ._find_and_clone_schema(name) ⇒ Object
- ._set_schema_key(schema, key) ⇒ Object
- .add_schema(name:, schema:) ⇒ Object
- .available_schemas ⇒ Object
- .get_schema(name:, opts: {}) ⇒ Object
- .schema_for(name) ⇒ Object
- .schemas ⇒ Object
Class Method Details
._find_and_clone_schema(name) ⇒ Object
29 30 31 32 33 |
# File 'lib/easy_json_matcher/schema_library.rb', line 29 def _find_and_clone_schema(name) s = SCHEMAS[name] return s.dup if s nil end |
._set_schema_key(schema, key) ⇒ Object
35 36 37 |
# File 'lib/easy_json_matcher/schema_library.rb', line 35 def _set_schema_key(schema, key) schema.key = key end |
.add_schema(name:, schema:) ⇒ Object
15 16 17 |
# File 'lib/easy_json_matcher/schema_library.rb', line 15 def add_schema(name:, schema:) schemas[name] = schema end |
.available_schemas ⇒ Object
7 8 9 |
# File 'lib/easy_json_matcher/schema_library.rb', line 7 def available_schemas schemas.keys end |
.get_schema(name:, opts: {}) ⇒ Object
23 24 25 26 27 |
# File 'lib/easy_json_matcher/schema_library.rb', line 23 def get_schema(name:, opts: {}) schema = _find_and_clone_schema(name) or raise MissingSchemaException.new("No schema with #{name} has been registered") _set_schema_key(schema, opts.delete(:key)) schema end |
.schema_for(name) ⇒ Object
11 12 13 |
# File 'lib/easy_json_matcher/schema_library.rb', line 11 def schema_for(name) schemas[name] end |
.schemas ⇒ Object
19 20 21 |
# File 'lib/easy_json_matcher/schema_library.rb', line 19 def schemas SCHEMAS end |