chickadeex 7.2.0 → 7.4.0

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: b765fbd021f64ea854d8aa710dd22cd65337e1fc42349f13dea11e61206c2f76
4
- data.tar.gz: dff4a1a92c878324882e8aba695c0a8d57100d8c276f0242df077221fdcb0f09
3
+ metadata.gz: d51040ae985e4fb4c8a74844cb752b3d866d770d51514aa9c10e6e1526359c8d
4
+ data.tar.gz: 81322d83fa1757cd2c2912349b437c152b54172937da5fb49cc62df9fc6d5f2b
5
5
  SHA512:
6
- metadata.gz: 46ddd4acbdc43085ebac8200f4d7fa75acef20eede41df27f07d6a7e6979df69c7b3502d9f352c7aaf1e299c5addd1762733fe2d20be13d2cb5b330614c1a4f8
7
- data.tar.gz: b4f8a31928aa1d5c765867a19a6c3a374ee910f336798af182c31ba594ba08cebc3ac215fa990fda962dff4d43e2caf7024b6e9d9350ff15ac301cbc4acc1aba
6
+ metadata.gz: a04e02682f6eb8ff7f26d86749f6155f8ebf3d3e6fd0bb9c768cfa04adb669944126201240c83597607f5018a470956b97bcd044fa338d589c7c0bba46e454df
7
+ data.tar.gz: 24cf37ed42b2ef97d11cdc720ac7cefe12140afa8c7d923011d107fbc4a3cca5b78c61d1c7b525195b760ed4b644ac6e1779caaedc920f8fe334ccee44c40ec3
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.6.6
1
+ ruby-3.1.3p185
data/Rakefile CHANGED
@@ -1 +1,10 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rake/testtask"
3
+
4
+ Rake::TestTask.new do |t|
5
+ t.libs << "spec"
6
+ t.test_files = FileList["spec/**/*_spec.rb"]
7
+ t.verbose = true
8
+ end
9
+
10
+ task :default => :test
data/chickadee.gemspec CHANGED
@@ -18,11 +18,11 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "iocx", "~> 6.5.1"
22
- spec.add_dependency "rack", "~> 2.2.3"
23
- spec.add_dependency "hanami-router", "~> 1.3.2"
21
+ spec.add_dependency "iocx", "~> 6.6.0"
22
+ spec.add_dependency "rack", "~> 2.2", ">= 2.2.6.3"
23
+ spec.add_dependency "hanami-router", "~> 2.0", ">= 2.0.2"
24
24
 
25
- spec.add_development_dependency "bundler", "~> 2.1.4"
26
- spec.add_development_dependency "rake"
27
- spec.add_development_dependency "minitest", "~> 5.14.1"
25
+ spec.add_development_dependency "bundler", "~> 2.4", ">= 2.4.7"
26
+ spec.add_development_dependency "rake", "~> 13.0", ">= 13.0.6"
27
+ spec.add_development_dependency "minitest", "~> 5.18"
28
28
  end
@@ -4,6 +4,7 @@ require "rack/request"
4
4
  require "rack/response"
5
5
  require "rack/builder"
6
6
 
7
+
7
8
  module Chickadee
8
9
  class Application
9
10
  def initialize(request: Rack::Request, response: Rack::Response, builder: Rack::Builder, container: Container)
@@ -15,17 +16,17 @@ module Chickadee
15
16
  @register_cache = []
16
17
  end
17
18
 
18
- def register(*args, &block)
19
- @register_cache << [args, block]
19
+ def register(*args, **kwargs, &block)
20
+ @register_cache << [args, kwargs, block]
20
21
  end
21
22
 
22
- def use(*args, &block)
23
- @use_cache << [args, block]
23
+ def use(*args, **kwargs, &block)
24
+ @use_cache << [args, kwargs, block]
24
25
  end
25
26
 
26
27
  def service(name)
27
28
  builder = @builder_class.new
28
- @use_cache.each { |use| builder.use(*use[0], &use[1]) }
29
+ @use_cache.each { |use| builder.use(*use[0], **use[1], &use[2]) }
29
30
  builder.run(service_app(name))
30
31
  builder
31
32
  end
@@ -37,7 +38,7 @@ module Chickadee
37
38
  request = @request_class.new(env)
38
39
  response = @response_class.new
39
40
  container = @container_class.new
40
- @register_cache.each{ |r| container.register(*r[0], &r[1]) }
41
+ @register_cache.each{ |r| container.register(*r[0], **r[1], &r[2]) }
41
42
  container.resolve(name).call(request, response)
42
43
  end
43
44
  end
@@ -1,3 +1,3 @@
1
1
  module Chickadee
2
- VERSION = "7.2.0"
2
+ VERSION = "7.4.0"
3
3
  end
@@ -2,6 +2,18 @@ require "minitest"
2
2
  require "minitest/autorun"
3
3
  require "chickadee/application"
4
4
 
5
+ class TestMiddleware
6
+ def initialize(app, strategies: {}, message: "hello")
7
+ @app = app
8
+ @strategies = strategies
9
+ @message = message
10
+ end
11
+
12
+ def call(env)
13
+ @app.call(env)
14
+ end
15
+ end
16
+
5
17
  describe Chickadee::Application do
6
18
  describe "service" do
7
19
  it "returns callable object" do
@@ -15,4 +27,18 @@ describe Chickadee::Application do
15
27
  _(res).must_be_instance_of(Rack::Response)
16
28
  end
17
29
  end
30
+
31
+ describe "use" do
32
+ it "correctly delegates middleware arguments using ruby 3 args and kwargs" do
33
+ env = {}
34
+ service = Proc.new{ |req, res| [req, res] }
35
+ application = Chickadee::Application.new
36
+ application.use(TestMiddleware, :strategies => {:a => "a"})
37
+ application.register(:my_service){ service }
38
+ obj = application.service(:my_service)
39
+ req, res = obj.call(env)
40
+ _(req).must_be_instance_of(Rack::Request)
41
+ _(res).must_be_instance_of(Rack::Response)
42
+ end
43
+ end
18
44
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chickadeex
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.2.0
4
+ version: 7.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Lott
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-13 00:00:00.000000000 Z
11
+ date: 2023-03-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: iocx
@@ -16,84 +16,108 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 6.5.1
19
+ version: 6.6.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 6.5.1
26
+ version: 6.6.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rack
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 2.2.3
33
+ version: '2.2'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 2.2.6.3
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
41
  - - "~>"
39
42
  - !ruby/object:Gem::Version
40
- version: 2.2.3
43
+ version: '2.2'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 2.2.6.3
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: hanami-router
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: 1.3.2
53
+ version: '2.0'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 2.0.2
48
57
  type: :runtime
49
58
  prerelease: false
50
59
  version_requirements: !ruby/object:Gem::Requirement
51
60
  requirements:
52
61
  - - "~>"
53
62
  - !ruby/object:Gem::Version
54
- version: 1.3.2
63
+ version: '2.0'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 2.0.2
55
67
  - !ruby/object:Gem::Dependency
56
68
  name: bundler
57
69
  requirement: !ruby/object:Gem::Requirement
58
70
  requirements:
59
71
  - - "~>"
60
72
  - !ruby/object:Gem::Version
61
- version: 2.1.4
73
+ version: '2.4'
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 2.4.7
62
77
  type: :development
63
78
  prerelease: false
64
79
  version_requirements: !ruby/object:Gem::Requirement
65
80
  requirements:
66
81
  - - "~>"
67
82
  - !ruby/object:Gem::Version
68
- version: 2.1.4
83
+ version: '2.4'
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: 2.4.7
69
87
  - !ruby/object:Gem::Dependency
70
88
  name: rake
71
89
  requirement: !ruby/object:Gem::Requirement
72
90
  requirements:
91
+ - - "~>"
92
+ - !ruby/object:Gem::Version
93
+ version: '13.0'
73
94
  - - ">="
74
95
  - !ruby/object:Gem::Version
75
- version: '0'
96
+ version: 13.0.6
76
97
  type: :development
77
98
  prerelease: false
78
99
  version_requirements: !ruby/object:Gem::Requirement
79
100
  requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '13.0'
80
104
  - - ">="
81
105
  - !ruby/object:Gem::Version
82
- version: '0'
106
+ version: 13.0.6
83
107
  - !ruby/object:Gem::Dependency
84
108
  name: minitest
85
109
  requirement: !ruby/object:Gem::Requirement
86
110
  requirements:
87
111
  - - "~>"
88
112
  - !ruby/object:Gem::Version
89
- version: 5.14.1
113
+ version: '5.18'
90
114
  type: :development
91
115
  prerelease: false
92
116
  version_requirements: !ruby/object:Gem::Requirement
93
117
  requirements:
94
118
  - - "~>"
95
119
  - !ruby/object:Gem::Version
96
- version: 5.14.1
120
+ version: '5.18'
97
121
  description: Minimal domain driven design library
98
122
  email:
99
123
  - erik.lott@evrium.com
@@ -121,7 +145,7 @@ homepage: ''
121
145
  licenses:
122
146
  - MIT
123
147
  metadata: {}
124
- post_install_message:
148
+ post_install_message:
125
149
  rdoc_options: []
126
150
  require_paths:
127
151
  - lib
@@ -136,8 +160,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
136
160
  - !ruby/object:Gem::Version
137
161
  version: '0'
138
162
  requirements: []
139
- rubygems_version: 3.0.3
140
- signing_key:
163
+ rubygems_version: 3.3.26
164
+ signing_key:
141
165
  specification_version: 4
142
166
  summary: Minimal domain driven design library
143
167
  test_files: