ree_lib 1.0.74 → 1.0.75

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db0e9f5e3c64d69ff4f6d4d4550ab6563bfe0bc9529333e21a1251503ad562b2
4
- data.tar.gz: 02abcd3afb9f8155666b98abdb5a9f833b3affca8038c19b2322ab60be82e2db
3
+ metadata.gz: ce1a7a42b2936e86f44691bec23557e4e04f72e154202ab2a414257fd1fe304a
4
+ data.tar.gz: aea223cb572a0057a0c2e456c2940a050d6fa344f37297e205215cc2e38f1220
5
5
  SHA512:
6
- metadata.gz: 07f42d6c784721984a1729cd38412c946fd8924982d98eff0158a91c4ce9f5c80ef94561e0ea9801a0e1df3baa177ef6bf7ae0db5c177c1f2960f118a339d797
7
- data.tar.gz: 25c0ae598cdbfee90f4ea991705fd73328188f64f33bd2895635bff5d98dc527c2a209b40fa286208d327f0f50cd6e03e36b192b3b8ea2076166d685b9c227ac
6
+ metadata.gz: b8d8f51cd4fbe458d815568a8d10bb85577f4a62cf13663282fedfc45741917a4855eb0611b011e078c1b9c38256a5a10c9b28641ed65b4e1eedf0b442a47af1
7
+ data.tar.gz: 41195673e8f6c05f6b367af2ed170f71b06626dcbc88e9742f29b2161902cd5b7395b81deee946900b3e339381e2202c70d6e9c592a680e7b4f829f195cb7e5c
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- ree_lib (1.0.73)
4
+ ree_lib (1.0.75)
5
5
  binding_of_caller (~> 1.0.0)
6
6
  i18n (~> 1.12.0)
7
7
  loofah (~> 2.18.0)
@@ -37,10 +37,10 @@ GEM
37
37
  loofah (2.18.0)
38
38
  crass (~> 1.0.2)
39
39
  nokogiri (>= 1.5.9)
40
+ mini_portile2 (2.8.1)
40
41
  msgpack (1.6.0)
41
- nokogiri (1.15.4-x86_64-darwin)
42
- racc (~> 1.4)
43
- nokogiri (1.15.4-x86_64-linux)
42
+ nokogiri (1.13.10)
43
+ mini_portile2 (~> 2.8.0)
44
44
  racc (~> 1.4)
45
45
  oj (3.13.23)
46
46
  pg (1.4.6)
@@ -51,7 +51,7 @@ GEM
51
51
  rack (>= 1.3)
52
52
  rainbow (3.1.1)
53
53
  rake (13.0.6)
54
- ree (1.0.31)
54
+ ree (1.0.32)
55
55
  commander (~> 4.6.0)
56
56
  rexml (3.2.5)
57
57
  roda (3.58.0)
@@ -2,6 +2,8 @@
2
2
  require_relative "value"
3
3
 
4
4
  class ReeEnum::BaseEnumMapper < ReeMapper::AbstractType
5
+ attr_reader :enum
6
+
5
7
  def initialize(enum)
6
8
  @enum = enum
7
9
  end
@@ -49,14 +49,12 @@ module ReeEnum
49
49
  def register_as_swagger_type
50
50
  swagger_type_registrator = ReeSwagger::RegisterType.new
51
51
 
52
- definition = swagger_definition
53
-
54
52
  [:casters, :serializers].each do |kind|
55
53
  swagger_type_registrator.call(
56
54
  kind,
57
55
  type_for_mapper.class,
58
- ->(*) {
59
- definition
56
+ ->(type, _build_schema) {
57
+ type.enum.swagger_definition
60
58
  }
61
59
  )
62
60
  end
@@ -75,6 +73,8 @@ module ReeEnum
75
73
  end
76
74
 
77
75
  def swagger_definition
76
+ return @swagger_definition if defined? @swagger_definition
77
+
78
78
  value_type = get_values.value_type
79
79
 
80
80
  type = if value_type == String
@@ -85,7 +85,7 @@ module ReeEnum
85
85
  raise NotImplementedError, "value_type #{value_type} is not supported"
86
86
  end
87
87
 
88
- {
88
+ @swagger_definition = {
89
89
  type: type,
90
90
  enum: get_values.each.map(&:value)
91
91
  }
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
  package_require('ree_enum/dsl')
3
+ package_require('ree_swagger/functions/get_serializer_definition')
3
4
 
4
5
  RSpec.describe ReeEnum::DSL do
5
6
  before do
@@ -225,5 +226,12 @@ RSpec.describe ReeEnum::DSL do
225
226
  expect(TestReeEnum::Reflexives.myself).to eq(:self)
226
227
 
227
228
  expect(TestReeEnum::ContentTypes.method_defined?(:"video/mp4")).to be_falsey
229
+
230
+ swagger_definition_fetcher = ReeSwagger::GetSerializerDefinition.new
231
+ expect(
232
+ swagger_definition_fetcher.call(TestReeEnum::Reflexives.type_for_mapper, -> {})
233
+ ).not_to eq(
234
+ swagger_definition_fetcher.call(TestReeEnum::ContentTypes.type_for_mapper, -> {})
235
+ )
228
236
  }
229
237
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ReeLib
4
- VERSION = "1.0.74"
4
+ VERSION = "1.0.75"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ree_lib
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.74
4
+ version: 1.0.75
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruslan Gatiyatov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-08-30 00:00:00.000000000 Z
11
+ date: 2023-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ree