From 82f4ac250863999a21b760d4e2671dbcc66f7afe Mon Sep 17 00:00:00 2001 From: Paul Jeremiah Mugaya Date: Mon, 29 Jan 2024 03:27:14 +0300 Subject: [PATCH] ref --- Gemfile.lock | 6 +++--- lib/mtn_open_api.rb | 14 +++++++++----- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 4ce6e9b..0f695ca 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,9 +2,9 @@ PATH remote: . specs: mtn_open_api (0.0.1) - json - json-schema - yaml + json (~> 2.7.1) + json-schema (~> 4.1.1) + yaml (~> 0.3.0) GEM remote: https://rubygems.org/ diff --git a/lib/mtn_open_api.rb b/lib/mtn_open_api.rb index 73d9b9e..5f8cedb 100644 --- a/lib/mtn_open_api.rb +++ b/lib/mtn_open_api.rb @@ -25,28 +25,32 @@ def self.schemas { api: 'sandbox-provisioning-api', namespace: "SandboxProvisioningApi", - content: MtnOpenApi.load_schema("sandbox-provisioning-api") + content: load_schema("sandbox-provisioning-api") }, { api: "collection", namespace: 'Collection', - content: MtnOpenApi.load_schema("collection") + content: load_schema("collection") }, { api: "disbursement", namespace: "Disbursement", - content: MtnOpenApi.load_schema("disbursement") + content: load_schema("disbursement") }, { api: 'remittance', namespace: "Remittance", - content: MtnOpenApi.load_schema("remittance") + content: load_schema("remittance") } ] end def self.load_schema(filename) - gem_root = Gem::Specification.find_by_name(NAME).gem_dir + gem_root = begin + Gem::Specification.find_by_name(NAME).gem_dir + rescue Gem::LoadError, Gem::MissingSpecError + end + yaml_path = File.expand_path("schemas/#{filename}.yaml", gem_root) YAML.load(File.read(yaml_path)) end