application_service 0.2.3 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.rubocop.yml +26 -0
- data/.ruby-version +1 -1
- data/.travis.yml +9 -0
- data/Gemfile +4 -8
- data/VERSION +1 -1
- data/application_service.gemspec +25 -26
- data/lib/application_service.rb +17 -16
- data/spec/application_service_spec.rb +117 -40
- data/spec/spec_helper.rb +2 -2
- metadata +42 -16
- data/Gemfile.lock +0 -73
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d8f6fcf621468775e24be24281197c8e247de5ac87b2dcc57711880b368b6b00
|
4
|
+
data.tar.gz: 2916bad018667a7d9cb04b6c9e94a8f712434d7b9cb3bd8ab2b27420a3f5b59a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 246018e2846dae816ac311825c5d5a5e8867bf010fad635d3b852508c63a6ebf419893e0d2ab3cde248e2532bffccf7801268577de040d2f474bc2b9dd86694c
|
7
|
+
data.tar.gz: ce54981d596afff4f2e5d664083f7b530707640d1fba7ead3ee3c2161a0d3315562e61928fcf0c502fb39a4c57b214159acd223651684787f1203b08e0329f32
|
data/.rubocop.yml
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
AllCops:
|
2
|
+
DisabledByDefault: true
|
3
|
+
|
4
|
+
Security:
|
5
|
+
Enabled: true
|
6
|
+
|
7
|
+
Bundler/DuplicatedGem:
|
8
|
+
Enabled: true
|
9
|
+
Bundler/InsecureProtocolSource:
|
10
|
+
Enabled: true
|
11
|
+
Layout/IndentationStyle:
|
12
|
+
Enabled: true
|
13
|
+
Layout/SpaceInsideRangeLiteral:
|
14
|
+
Enabled: true
|
15
|
+
Lint:
|
16
|
+
Enabled: true
|
17
|
+
Lint/RaiseException:
|
18
|
+
Enabled: true
|
19
|
+
Naming/AsciiIdentifiers:
|
20
|
+
Enabled: true
|
21
|
+
Naming/ClassAndModuleCamelCase:
|
22
|
+
Enabled: true
|
23
|
+
Naming/ConstantName:
|
24
|
+
Enabled: true
|
25
|
+
Naming/FileName:
|
26
|
+
Enabled: true
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.7.3
|
data/.travis.yml
ADDED
data/Gemfile
CHANGED
@@ -1,13 +1,9 @@
|
|
1
1
|
source "http://rubygems.org"
|
2
|
-
# Add dependencies required to use your gem here.
|
3
|
-
# Example:
|
4
|
-
# gem "activesupport", ">= 2.3.5"
|
5
2
|
|
6
|
-
gem 'activesupport'
|
3
|
+
gem 'activesupport', '>= 5.0.0.1', '< 7.0'
|
7
4
|
|
8
|
-
# Add dependencies to develop your gem here.
|
9
|
-
# Include everything needed to run rake, tests, features, etc.
|
10
5
|
group :development do
|
11
|
-
gem
|
12
|
-
gem
|
6
|
+
gem 'rspec', '~> 3.5'
|
7
|
+
gem 'rubocop'
|
8
|
+
gem 'jeweler', '~> 2.2', '>= 2.2.1'
|
13
9
|
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.4.0
|
data/application_service.gemspec
CHANGED
@@ -2,18 +2,18 @@
|
|
2
2
|
# DO NOT EDIT THIS FILE DIRECTLY
|
3
3
|
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
4
|
# -*- encoding: utf-8 -*-
|
5
|
-
# stub: application_service 0.
|
5
|
+
# stub: application_service 0.4.0 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
|
-
s.name = "application_service"
|
9
|
-
s.version = "0.
|
8
|
+
s.name = "application_service".freeze
|
9
|
+
s.version = "0.4.0"
|
10
10
|
|
11
|
-
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
-
s.require_paths = ["lib"]
|
13
|
-
s.authors = ["Nathan Woodhull"]
|
14
|
-
s.date = "
|
15
|
-
s.description = "A service layer scaffold for rails apps extracted from Agra"
|
16
|
-
s.email = "woodhull@gmail.com"
|
11
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib".freeze]
|
13
|
+
s.authors = ["Nathan Woodhull".freeze]
|
14
|
+
s.date = "2021-05-20"
|
15
|
+
s.description = "A service layer scaffold for rails apps extracted from Agra".freeze
|
16
|
+
s.email = "woodhull@gmail.com".freeze
|
17
17
|
s.extra_rdoc_files = [
|
18
18
|
"LICENSE.txt",
|
19
19
|
"README.rdoc"
|
@@ -21,10 +21,11 @@ Gem::Specification.new do |s|
|
|
21
21
|
s.files = [
|
22
22
|
".document",
|
23
23
|
".rspec",
|
24
|
+
".rubocop.yml",
|
24
25
|
".ruby-gemset",
|
25
26
|
".ruby-version",
|
27
|
+
".travis.yml",
|
26
28
|
"Gemfile",
|
27
|
-
"Gemfile.lock",
|
28
29
|
"LICENSE.txt",
|
29
30
|
"README.rdoc",
|
30
31
|
"Rakefile",
|
@@ -34,27 +35,25 @@ Gem::Specification.new do |s|
|
|
34
35
|
"spec/application_service_spec.rb",
|
35
36
|
"spec/spec_helper.rb"
|
36
37
|
]
|
37
|
-
s.homepage = "http://github.com/woodhull/application_service"
|
38
|
-
s.licenses = ["MIT"]
|
39
|
-
s.rubygems_version = "
|
40
|
-
s.summary = "Service Layer Scaffold"
|
38
|
+
s.homepage = "http://github.com/woodhull/application_service".freeze
|
39
|
+
s.licenses = ["MIT".freeze]
|
40
|
+
s.rubygems_version = "3.1.6".freeze
|
41
|
+
s.summary = "Service Layer Scaffold".freeze
|
41
42
|
|
42
43
|
if s.respond_to? :specification_version then
|
43
44
|
s.specification_version = 4
|
45
|
+
end
|
44
46
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
s.add_dependency(%q<activesupport>, [">= 0"])
|
51
|
-
s.add_dependency(%q<rspec>, [">= 0"])
|
52
|
-
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
53
|
-
end
|
47
|
+
if s.respond_to? :add_runtime_dependency then
|
48
|
+
s.add_runtime_dependency(%q<activesupport>.freeze, [">= 5.0.0.1", "< 7.0"])
|
49
|
+
s.add_development_dependency(%q<rspec>.freeze, ["~> 3.5"])
|
50
|
+
s.add_development_dependency(%q<rubocop>.freeze, ["~> 1.15"])
|
51
|
+
s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.2", ">= 2.2.1"])
|
54
52
|
else
|
55
|
-
s.add_dependency(%q<activesupport
|
56
|
-
s.add_dependency(%q<rspec
|
57
|
-
s.add_dependency(%q<
|
53
|
+
s.add_dependency(%q<activesupport>.freeze, [">= 5.0.0.1", "< 7.0"])
|
54
|
+
s.add_dependency(%q<rspec>.freeze, ["~> 3.5"])
|
55
|
+
s.add_dependency(%q<rubocop>.freeze, ["~> 1.15"])
|
56
|
+
s.add_dependency(%q<jeweler>.freeze, ["~> 2.2", ">= 2.2.1"])
|
58
57
|
end
|
59
58
|
end
|
60
59
|
|
data/lib/application_service.rb
CHANGED
@@ -3,12 +3,11 @@ require 'active_support/all'
|
|
3
3
|
class ApplicationService
|
4
4
|
|
5
5
|
include ActiveSupport::Callbacks
|
6
|
-
define_callbacks :save, :create, :update, :destroy, terminator: ->(
|
6
|
+
define_callbacks :save, :create, :update, :destroy, {terminator: ->(_target, result) { result.call == false }, skip_after_callbacks_if_terminated: true}
|
7
7
|
|
8
8
|
def initialize
|
9
9
|
end
|
10
10
|
|
11
|
-
|
12
11
|
def self.before(callback, *args)
|
13
12
|
options = extract_callback_options(args)
|
14
13
|
|
@@ -23,6 +22,11 @@ class ApplicationService
|
|
23
22
|
def self.after(callback, *args)
|
24
23
|
options = extract_callback_options(args)
|
25
24
|
|
25
|
+
conditional = ActiveSupport::Callbacks::Conditionals::Value.new { |v|
|
26
|
+
v != false
|
27
|
+
}
|
28
|
+
options[:if] = Array(options[:if]) << conditional
|
29
|
+
|
26
30
|
args.each do |arg|
|
27
31
|
set_callback callback, :after, arg, options
|
28
32
|
if options.fetch(:skip_on_admin_save, false)
|
@@ -63,16 +67,16 @@ class ApplicationService
|
|
63
67
|
end
|
64
68
|
end
|
65
69
|
|
66
|
-
def update_attributes(obj, params)
|
70
|
+
def update_attributes(obj, params, with_admin_save: false)
|
67
71
|
@obj = obj
|
68
72
|
@obj.assign_attributes(params)
|
69
73
|
|
70
74
|
yield if block_given?
|
71
75
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
+
if with_admin_save
|
77
|
+
self.admin_save(obj)
|
78
|
+
else
|
79
|
+
self.save(obj)
|
76
80
|
end
|
77
81
|
end
|
78
82
|
|
@@ -100,6 +104,12 @@ class ApplicationService
|
|
100
104
|
@on_admin_save = false
|
101
105
|
end
|
102
106
|
|
107
|
+
def self.extract_callback_options(args)
|
108
|
+
options = args.last.is_a?(Hash) ? args.pop : {}
|
109
|
+
|
110
|
+
options
|
111
|
+
end
|
112
|
+
|
103
113
|
private
|
104
114
|
|
105
115
|
def create!(save_method=:save!)
|
@@ -125,13 +135,4 @@ class ApplicationService
|
|
125
135
|
@obj.send(save_method)
|
126
136
|
end
|
127
137
|
end
|
128
|
-
|
129
|
-
private
|
130
|
-
|
131
|
-
def self.extract_callback_options(args)
|
132
|
-
options = args.last.is_a?(Hash) ? args.pop : {}
|
133
|
-
|
134
|
-
options
|
135
|
-
end
|
136
|
-
|
137
138
|
end
|
@@ -9,35 +9,35 @@ describe ApplicationService do
|
|
9
9
|
it "should allow set and get" do
|
10
10
|
obj = double()
|
11
11
|
as = ApplicationService.new
|
12
|
-
as.current_object= obj
|
13
|
-
as.current_object.
|
12
|
+
as.current_object = obj
|
13
|
+
expect(as.current_object).to eq(obj)
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
17
|
describe "#save" do
|
18
18
|
it "should let you save an object" do
|
19
19
|
obj = double()
|
20
|
-
obj.
|
21
|
-
obj.
|
20
|
+
allow(obj).to receive(:new_record?).and_return(true)
|
21
|
+
expect(obj).to receive(:save)
|
22
22
|
subject.save(obj)
|
23
23
|
end
|
24
24
|
|
25
25
|
it "should trigger create" do
|
26
26
|
obj = double()
|
27
|
-
obj.
|
28
|
-
obj.
|
27
|
+
allow(obj).to receive(:new_record?).and_return(true)
|
28
|
+
allow(obj).to receive(:save)
|
29
29
|
|
30
|
-
subject.
|
30
|
+
expect(subject).to receive(:create)
|
31
31
|
subject.save(obj)
|
32
32
|
end
|
33
33
|
|
34
34
|
|
35
35
|
it "should trigger update" do
|
36
36
|
obj = double()
|
37
|
-
obj.
|
38
|
-
obj.
|
37
|
+
allow(obj).to receive(:new_record?).and_return(false)
|
38
|
+
allow(obj).to receive(:save)
|
39
39
|
|
40
|
-
subject.
|
40
|
+
expect(subject).to receive(:update)
|
41
41
|
subject.save(obj)
|
42
42
|
end
|
43
43
|
end
|
@@ -45,45 +45,53 @@ describe ApplicationService do
|
|
45
45
|
describe "#save!" do
|
46
46
|
it "should let you save an object" do
|
47
47
|
obj = double()
|
48
|
-
obj.
|
49
|
-
obj.
|
48
|
+
allow(obj).to receive(:new_record?).and_return(true)
|
49
|
+
expect(obj).to receive(:save!)
|
50
50
|
subject.save!(obj)
|
51
51
|
end
|
52
52
|
|
53
53
|
it "should trigger create" do
|
54
54
|
obj = double()
|
55
|
-
obj.
|
56
|
-
obj.
|
55
|
+
allow(obj).to receive(:new_record?).and_return(true)
|
56
|
+
allow(obj).to receive(:save!)
|
57
57
|
|
58
|
-
subject.
|
58
|
+
expect(subject).to receive(:create!)
|
59
59
|
subject.save!(obj)
|
60
60
|
end
|
61
61
|
|
62
62
|
|
63
63
|
it "should trigger update" do
|
64
64
|
obj = double()
|
65
|
-
obj.
|
66
|
-
obj.
|
65
|
+
allow(obj).to receive(:new_record?).and_return(false)
|
66
|
+
allow(obj).to receive(:save!)
|
67
67
|
|
68
|
-
subject.
|
68
|
+
expect(subject).to receive(:update!)
|
69
69
|
subject.save!(obj)
|
70
70
|
end
|
71
71
|
end
|
72
72
|
|
73
73
|
describe "#update_attributes" do
|
74
|
+
let(:obj) { double(new_record?: false) }
|
75
|
+
|
74
76
|
it "should trigger update" do
|
75
|
-
obj
|
76
|
-
obj
|
77
|
-
obj.should_receive(:save)
|
77
|
+
expect(obj).to receive(:assign_attributes).with( {:foo => 'bar'}).and_return(true)
|
78
|
+
expect(obj).to receive(:save)
|
78
79
|
|
79
80
|
subject.update_attributes(obj, {:foo => 'bar'})
|
80
81
|
end
|
82
|
+
|
83
|
+
it 'should trigger admin_save if argument is true' do
|
84
|
+
expect(obj).to receive(:assign_attributes).with( {:foo => 'bar'}).and_return(true)
|
85
|
+
expect(obj).to receive(:admin_save)
|
86
|
+
|
87
|
+
subject.update_attributes(obj, {:foo => 'bar'}, with_admin_save: true)
|
88
|
+
end
|
81
89
|
end
|
82
90
|
|
83
91
|
describe '#destroy' do
|
84
92
|
it "should trigger destroy" do
|
85
93
|
obj = double()
|
86
|
-
obj.
|
94
|
+
expect(obj).to receive(:destroy)
|
87
95
|
|
88
96
|
subject.destroy(obj)
|
89
97
|
end
|
@@ -159,7 +167,7 @@ describe ApplicationService do
|
|
159
167
|
expect(service).to receive(:before_save_callback).once
|
160
168
|
expect(service).to receive(:after_save_callback).once
|
161
169
|
|
162
|
-
expect { service.admin_save(object) }.to raise_error
|
170
|
+
expect { service.admin_save(object) }.to raise_error(StandardError)
|
163
171
|
|
164
172
|
expect(object).to receive(:save).and_return(true)
|
165
173
|
|
@@ -209,12 +217,12 @@ describe ApplicationService do
|
|
209
217
|
end
|
210
218
|
|
211
219
|
service = service_klass.new
|
212
|
-
service.
|
220
|
+
expect(service).to_not receive(:before_save_callback)
|
213
221
|
service.save(object)
|
214
222
|
|
215
223
|
invoke_callback = true
|
216
224
|
service = service_klass.new
|
217
|
-
service.
|
225
|
+
expect(service).to receive(:before_save_callback).and_return(true)
|
218
226
|
service.save(object)
|
219
227
|
end
|
220
228
|
|
@@ -226,14 +234,14 @@ describe ApplicationService do
|
|
226
234
|
end
|
227
235
|
|
228
236
|
service = service_klass.new
|
229
|
-
service.
|
230
|
-
service.
|
237
|
+
expect(service).not_to receive(:before_save_callback_1)
|
238
|
+
expect(service).not_to receive(:before_save_callback_2)
|
231
239
|
service.save(object)
|
232
240
|
|
233
241
|
invoke_callback = true
|
234
242
|
service = service_klass.new
|
235
|
-
service.
|
236
|
-
service.
|
243
|
+
expect(service).to receive(:before_save_callback_1).and_return(true)
|
244
|
+
expect(service).to receive(:before_save_callback_2).and_return(true)
|
237
245
|
service.save(object)
|
238
246
|
end
|
239
247
|
|
@@ -243,20 +251,58 @@ describe ApplicationService do
|
|
243
251
|
end
|
244
252
|
|
245
253
|
service = service_klass.new
|
246
|
-
service.
|
247
|
-
service.
|
254
|
+
expect(service).not_to receive(:before_save_callback2)
|
255
|
+
allow(service).to receive(:before_save_callback1).and_return(false)
|
248
256
|
service.save(object)
|
249
257
|
end
|
250
258
|
|
251
|
-
it "should
|
259
|
+
it "should invoke callback if callback successful" do
|
252
260
|
service_klass = Class.new(ApplicationService) do
|
253
|
-
before :save, :
|
261
|
+
before :save, :before_save_callback1, :before_save_callback2
|
254
262
|
end
|
255
263
|
|
256
264
|
service = service_klass.new
|
257
|
-
service.
|
265
|
+
expect(service).to receive(:before_save_callback2)
|
266
|
+
allow(service).to receive(:before_save_callback1).and_return(true)
|
258
267
|
service.save(object)
|
259
268
|
end
|
269
|
+
|
270
|
+
it "should invoke subsequent callbacks if a callback is skipped with options" do
|
271
|
+
service_klass = Class.new(ApplicationService) do
|
272
|
+
before :save, :before_save_callback, if: -> { false }
|
273
|
+
before :save, :before_save_callback_2
|
274
|
+
|
275
|
+
end
|
276
|
+
|
277
|
+
service = service_klass.new
|
278
|
+
expect(service).not_to receive(:before_save_callback)
|
279
|
+
expect(service).to receive(:before_save_callback_2)
|
280
|
+
|
281
|
+
expect(object).to receive(:save).and_return(true)
|
282
|
+
|
283
|
+
service.save(object)
|
284
|
+
end
|
285
|
+
|
286
|
+
it "should halt execution if callback fails" do
|
287
|
+
service_klass = Class.new(ApplicationService) do
|
288
|
+
before :save, :before_save_callback
|
289
|
+
end
|
290
|
+
|
291
|
+
service = service_klass.new
|
292
|
+
allow(service).to receive(:before_save_callback).and_return(false)
|
293
|
+
expect(object).not_to receive(:save)
|
294
|
+
expect(service.save(object)).to eq(false)
|
295
|
+
end
|
296
|
+
|
297
|
+
it "should invoke callback if conditional is true" do
|
298
|
+
service_klass = Class.new(ApplicationService) do
|
299
|
+
before :save, :before_save_callback, if: -> { true }
|
300
|
+
end
|
301
|
+
|
302
|
+
service = service_klass.new
|
303
|
+
expect(service).to receive(:before_save_callback).and_return(true)
|
304
|
+
expect(service.save(object)).to eq(true)
|
305
|
+
end
|
260
306
|
end
|
261
307
|
|
262
308
|
describe '#after' do
|
@@ -268,12 +314,12 @@ describe ApplicationService do
|
|
268
314
|
end
|
269
315
|
|
270
316
|
service = service_klass.new
|
271
|
-
service.
|
317
|
+
expect(service).not_to receive(:after_save_callback)
|
272
318
|
service.save(object)
|
273
319
|
|
274
320
|
invoke_callback = true
|
275
321
|
service = service_klass.new
|
276
|
-
service.
|
322
|
+
expect(service).to receive(:after_save_callback).and_return(true)
|
277
323
|
service.save(object)
|
278
324
|
end
|
279
325
|
|
@@ -285,16 +331,47 @@ describe ApplicationService do
|
|
285
331
|
end
|
286
332
|
|
287
333
|
service = service_klass.new
|
288
|
-
service.
|
289
|
-
service.
|
334
|
+
expect(service).not_to receive(:after_save_callback_1)
|
335
|
+
expect(service).not_to receive(:after_save_callback_2)
|
290
336
|
service.save(object)
|
291
337
|
|
292
338
|
invoke_callback = true
|
293
339
|
service = service_klass.new
|
294
|
-
service.
|
295
|
-
service.
|
340
|
+
expect(service).to receive(:after_save_callback_1).and_return(true)
|
341
|
+
expect(service).to receive(:after_save_callback_2).and_return(true)
|
296
342
|
service.save(object)
|
297
343
|
end
|
344
|
+
|
345
|
+
it "should invoke callback if conditional is true" do
|
346
|
+
service_klass = Class.new(ApplicationService) do
|
347
|
+
after :save, :after_save_callback, if: -> { true }
|
348
|
+
end
|
349
|
+
|
350
|
+
service = service_klass.new
|
351
|
+
expect(service).to receive(:after_save_callback).and_return(true)
|
352
|
+
expect(service.save(object)).to eq(true)
|
353
|
+
end
|
354
|
+
|
355
|
+
it 'should not invoke callback if conditional is false' do
|
356
|
+
service_klass = Class.new(ApplicationService) do
|
357
|
+
after :save, :after_save_callback, if: -> { false }
|
358
|
+
end
|
359
|
+
|
360
|
+
service = service_klass.new
|
361
|
+
expect(service).not_to receive(:after_save_callback)
|
362
|
+
expect(service.save(object)).to eq(true)
|
363
|
+
end
|
364
|
+
|
365
|
+
it 'should not invoke after save callbacks when save fails' do
|
366
|
+
service_klass = Class.new(ApplicationService) do
|
367
|
+
after :save, :after_save_callback
|
368
|
+
end
|
369
|
+
|
370
|
+
service = service_klass.new
|
371
|
+
expect(object).to receive(:save).and_return(false)
|
372
|
+
expect(service).not_to receive(:after_save_callback)
|
373
|
+
expect(service.save(object)).to eq(false)
|
374
|
+
end
|
298
375
|
end
|
299
376
|
end
|
300
377
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -5,8 +5,8 @@ require 'application_service'
|
|
5
5
|
|
6
6
|
# Requires supporting files with custom matchers and macros, etc,
|
7
7
|
# in ./support/ and its subdirectories.
|
8
|
-
Dir[
|
8
|
+
Dir[File.join(File.dirname(__FILE__), 'support', '**', '*.rb')].sort.each { |f| require f }
|
9
9
|
|
10
10
|
RSpec.configure do |config|
|
11
|
-
|
11
|
+
|
12
12
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: application_service
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nathan Woodhull
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -16,42 +16,68 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 5.0.0.1
|
20
|
+
- - "<"
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '7.0'
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
27
|
- - ">="
|
25
28
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
29
|
+
version: 5.0.0.1
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '7.0'
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: rspec
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
30
36
|
requirements:
|
31
|
-
- - "
|
37
|
+
- - "~>"
|
32
38
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
39
|
+
version: '3.5'
|
34
40
|
type: :development
|
35
41
|
prerelease: false
|
36
42
|
version_requirements: !ruby/object:Gem::Requirement
|
37
43
|
requirements:
|
38
|
-
- - "
|
44
|
+
- - "~>"
|
39
45
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
46
|
+
version: '3.5'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rubocop
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '1.15'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - "~>"
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '1.15'
|
41
61
|
- !ruby/object:Gem::Dependency
|
42
62
|
name: jeweler
|
43
63
|
requirement: !ruby/object:Gem::Requirement
|
44
64
|
requirements:
|
45
65
|
- - "~>"
|
46
66
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
67
|
+
version: '2.2'
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: 2.2.1
|
48
71
|
type: :development
|
49
72
|
prerelease: false
|
50
73
|
version_requirements: !ruby/object:Gem::Requirement
|
51
74
|
requirements:
|
52
75
|
- - "~>"
|
53
76
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
77
|
+
version: '2.2'
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: 2.2.1
|
55
81
|
description: A service layer scaffold for rails apps extracted from Agra
|
56
82
|
email: woodhull@gmail.com
|
57
83
|
executables: []
|
@@ -62,10 +88,11 @@ extra_rdoc_files:
|
|
62
88
|
files:
|
63
89
|
- ".document"
|
64
90
|
- ".rspec"
|
91
|
+
- ".rubocop.yml"
|
65
92
|
- ".ruby-gemset"
|
66
93
|
- ".ruby-version"
|
94
|
+
- ".travis.yml"
|
67
95
|
- Gemfile
|
68
|
-
- Gemfile.lock
|
69
96
|
- LICENSE.txt
|
70
97
|
- README.rdoc
|
71
98
|
- Rakefile
|
@@ -78,7 +105,7 @@ homepage: http://github.com/woodhull/application_service
|
|
78
105
|
licenses:
|
79
106
|
- MIT
|
80
107
|
metadata: {}
|
81
|
-
post_install_message:
|
108
|
+
post_install_message:
|
82
109
|
rdoc_options: []
|
83
110
|
require_paths:
|
84
111
|
- lib
|
@@ -93,9 +120,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
93
120
|
- !ruby/object:Gem::Version
|
94
121
|
version: '0'
|
95
122
|
requirements: []
|
96
|
-
|
97
|
-
|
98
|
-
signing_key:
|
123
|
+
rubygems_version: 3.1.6
|
124
|
+
signing_key:
|
99
125
|
specification_version: 4
|
100
126
|
summary: Service Layer Scaffold
|
101
127
|
test_files: []
|
data/Gemfile.lock
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: http://rubygems.org/
|
3
|
-
specs:
|
4
|
-
activesupport (4.2.5.1)
|
5
|
-
i18n (~> 0.7)
|
6
|
-
json (~> 1.7, >= 1.7.7)
|
7
|
-
minitest (~> 5.1)
|
8
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
9
|
-
tzinfo (~> 1.1)
|
10
|
-
addressable (2.3.6)
|
11
|
-
builder (3.2.2)
|
12
|
-
diff-lcs (1.2.4)
|
13
|
-
faraday (0.8.9)
|
14
|
-
multipart-post (~> 1.2.0)
|
15
|
-
git (1.2.7)
|
16
|
-
github_api (0.10.1)
|
17
|
-
addressable
|
18
|
-
faraday (~> 0.8.1)
|
19
|
-
hashie (>= 1.2)
|
20
|
-
multi_json (~> 1.4)
|
21
|
-
nokogiri (~> 1.5.2)
|
22
|
-
oauth2
|
23
|
-
hashie (3.2.0)
|
24
|
-
highline (1.6.21)
|
25
|
-
i18n (0.7.0)
|
26
|
-
jeweler (1.8.8)
|
27
|
-
builder
|
28
|
-
bundler (~> 1.0)
|
29
|
-
git (>= 1.2.5)
|
30
|
-
github_api (= 0.10.1)
|
31
|
-
highline (>= 1.6.15)
|
32
|
-
nokogiri (= 1.5.10)
|
33
|
-
rake
|
34
|
-
rdoc
|
35
|
-
json (1.8.1)
|
36
|
-
jwt (1.0.0)
|
37
|
-
minitest (5.8.4)
|
38
|
-
multi_json (1.11.2)
|
39
|
-
multi_xml (0.5.5)
|
40
|
-
multipart-post (1.2.0)
|
41
|
-
nokogiri (1.5.10)
|
42
|
-
oauth2 (1.0.0)
|
43
|
-
faraday (>= 0.8, < 0.10)
|
44
|
-
jwt (~> 1.0)
|
45
|
-
multi_json (~> 1.3)
|
46
|
-
multi_xml (~> 0.5)
|
47
|
-
rack (~> 1.2)
|
48
|
-
rack (1.5.2)
|
49
|
-
rake (10.3.2)
|
50
|
-
rdoc (4.1.1)
|
51
|
-
json (~> 1.4)
|
52
|
-
rspec (2.14.1)
|
53
|
-
rspec-core (~> 2.14.0)
|
54
|
-
rspec-expectations (~> 2.14.0)
|
55
|
-
rspec-mocks (~> 2.14.0)
|
56
|
-
rspec-core (2.14.4)
|
57
|
-
rspec-expectations (2.14.0)
|
58
|
-
diff-lcs (>= 1.1.3, < 2.0)
|
59
|
-
rspec-mocks (2.14.2)
|
60
|
-
thread_safe (0.3.5)
|
61
|
-
tzinfo (1.2.2)
|
62
|
-
thread_safe (~> 0.1)
|
63
|
-
|
64
|
-
PLATFORMS
|
65
|
-
ruby
|
66
|
-
|
67
|
-
DEPENDENCIES
|
68
|
-
activesupport
|
69
|
-
jeweler (~> 1.8.4)
|
70
|
-
rspec
|
71
|
-
|
72
|
-
BUNDLED WITH
|
73
|
-
1.11.2
|