fine_print 4.0.1 → 5.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/fine_print/contract.rb +29 -8
- data/app/models/fine_print/signature.rb +1 -1
- data/lib/fine_print.rb +3 -8
- data/lib/fine_print/action_controller/base.rb +3 -3
- data/lib/fine_print/engine.rb +0 -1
- data/lib/fine_print/version.rb +1 -1
- data/spec/dummy/config/application.rb +10 -4
- data/spec/dummy/config/environments/production.rb +1 -1
- data/spec/dummy/db/development.sqlite3 +0 -0
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/dummy/log/development.log +96 -0
- data/spec/dummy/log/test.log +6880 -1538
- data/spec/dummy/tmp/development_secret.txt +1 -0
- data/spec/factories/fine_print/contract.rb +5 -5
- data/spec/factories/fine_print/signature.rb +2 -2
- data/spec/lib/fine_print/action_controller/base_spec.rb +3 -3
- data/spec/lib/fine_print_spec.rb +8 -15
- data/spec/models/contract_spec.rb +1 -1
- data/spec/models/signature_spec.rb +1 -1
- metadata +61 -70
@@ -0,0 +1 @@
|
|
1
|
+
8f50fc44121351f7729dacebe9300545123edb157f229b78988e2ccd91c35d0e2184c7a8942e7ce5816b9e1b8c3bb07ba10102147d810db516f5d96c0b00ea42
|
@@ -1,20 +1,20 @@
|
|
1
1
|
FactoryBot.define do
|
2
2
|
factory :fine_print_contract, class: FinePrint::Contract do
|
3
|
-
name
|
4
|
-
title
|
3
|
+
name { Faker::Lorem.words.join('_') }
|
4
|
+
title { Faker::Lorem.words.join(' ').capitalize }
|
5
5
|
content { Faker::Lorem.paragraphs.join("\n") }
|
6
6
|
|
7
7
|
trait :published do
|
8
8
|
transient do
|
9
|
-
user_factory :user
|
10
|
-
signatures_count 0
|
9
|
+
user_factory { :user }
|
10
|
+
signatures_count { 0 }
|
11
11
|
end
|
12
12
|
|
13
13
|
after(:build) do |contract, evaluator|
|
14
14
|
contract.version = (contract.same_name.published
|
15
15
|
.first.try(:version) || 0) + 1
|
16
16
|
|
17
|
-
evaluator.signatures_count.times do
|
17
|
+
evaluator.signatures_count.times do
|
18
18
|
contract.signatures << FactoryBot.build(
|
19
19
|
:fine_print_signature,
|
20
20
|
user_factory: evaluator.user_factory
|
@@ -3,11 +3,11 @@ FactoryBot.define do
|
|
3
3
|
association :contract, factory: [:fine_print_contract, :published]
|
4
4
|
|
5
5
|
trait :implicit do
|
6
|
-
is_implicit FinePrint::SIGNATURE_IS_IMPLICIT
|
6
|
+
is_implicit { FinePrint::SIGNATURE_IS_IMPLICIT }
|
7
7
|
end
|
8
8
|
|
9
9
|
transient do
|
10
|
-
user_factory :user
|
10
|
+
user_factory { :user }
|
11
11
|
end
|
12
12
|
|
13
13
|
after(:build) do |signature, evaluator|
|
@@ -2,9 +2,9 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
module FinePrint
|
4
4
|
module ActionController
|
5
|
-
describe Base, type: :lib do
|
6
|
-
let!(:controller)
|
7
|
-
let!(:dummy_controller)
|
5
|
+
RSpec.describe Base, type: :lib do
|
6
|
+
let!(:controller) { ::ActionController::Base.new }
|
7
|
+
let!(:dummy_controller) { DummyModelsController.new }
|
8
8
|
|
9
9
|
it 'must add fine_print_sign to ActionController instances' do
|
10
10
|
expect(controller).to respond_to(:fine_print_require)
|
data/spec/lib/fine_print_spec.rb
CHANGED
@@ -1,17 +1,13 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe FinePrint, type: :lib do
|
3
|
+
RSpec.describe FinePrint, type: :lib do
|
4
4
|
before :each do
|
5
|
-
@alpha_1 = FactoryBot.create(:fine_print_contract, :published,
|
6
|
-
|
7
|
-
@beta_1 = FactoryBot.create(:fine_print_contract, :published,
|
8
|
-
name: 'beta')
|
5
|
+
@alpha_1 = FactoryBot.create(:fine_print_contract, :published, name: 'alpha')
|
6
|
+
@beta_1 = FactoryBot.create(:fine_print_contract, :published, name: 'beta')
|
9
7
|
|
10
8
|
@user = DummyUser.create
|
11
|
-
@alpha_1_sig = FactoryBot.create(:fine_print_signature, contract: @alpha_1,
|
12
|
-
|
13
|
-
@beta_1_sig = FactoryBot.create(:fine_print_signature, contract: @beta_1,
|
14
|
-
user: @user)
|
9
|
+
@alpha_1_sig = FactoryBot.create(:fine_print_signature, contract: @alpha_1, user: @user)
|
10
|
+
@beta_1_sig = FactoryBot.create(:fine_print_signature, contract: @beta_1, user: @user)
|
15
11
|
|
16
12
|
@alpha_2 = @alpha_1.new_version
|
17
13
|
@alpha_2.update_attribute(:content, 'foo')
|
@@ -28,13 +24,11 @@ describe FinePrint, type: :lib do
|
|
28
24
|
end
|
29
25
|
|
30
26
|
it 'gets signed contracts' do
|
31
|
-
expect(FinePrint.signed_contracts_for(@user)).to
|
32
|
-
eq [@beta_1]
|
33
|
-
)
|
27
|
+
expect(FinePrint.signed_contracts_for(@user)).to eq [@beta_1]
|
34
28
|
end
|
35
29
|
|
36
30
|
it 'gets unsigned contracts' do
|
37
|
-
names = [@alpha_2, @beta_1].
|
31
|
+
names = [@alpha_2, @beta_1].map(&:name)
|
38
32
|
expect(FinePrint.unsigned_contracts_for(@user, name: names)).to eq [@alpha_2]
|
39
33
|
end
|
40
34
|
|
@@ -57,8 +51,7 @@ describe FinePrint, type: :lib do
|
|
57
51
|
end
|
58
52
|
|
59
53
|
it 'can record implicit signatures' do
|
60
|
-
signature = FinePrint.sign_contract(@user, @alpha_2,
|
61
|
-
FinePrint::SIGNATURE_IS_IMPLICIT)
|
54
|
+
signature = FinePrint.sign_contract(@user, @alpha_2, FinePrint::SIGNATURE_IS_IMPLICIT)
|
62
55
|
|
63
56
|
expect(signature.is_implicit?).to eq true
|
64
57
|
expect(signature.is_explicit?).to eq false
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
module FinePrint
|
4
|
-
describe Signature, type: :model do
|
4
|
+
RSpec.describe Signature, type: :model do
|
5
5
|
it "can't be associated with unpublished contracts" do
|
6
6
|
contract = FactoryBot.create(:fine_print_contract)
|
7
7
|
expect(contract.is_published?).to eq false
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fine_print
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 5.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- JP Slavinsky
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2019-05-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
20
|
+
version: '0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: '
|
27
|
+
version: '0'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: jquery-rails
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -41,20 +41,6 @@ dependencies:
|
|
41
41
|
version: '0'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
43
|
name: action_interceptor
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
-
requirements:
|
46
|
-
- - ">="
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: '1.0'
|
49
|
-
type: :runtime
|
50
|
-
prerelease: false
|
51
|
-
version_requirements: !ruby/object:Gem::Requirement
|
52
|
-
requirements:
|
53
|
-
- - ">="
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: '1.0'
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: baby_squeel
|
58
44
|
requirement: !ruby/object:Gem::Requirement
|
59
45
|
requirements:
|
60
46
|
- - ">="
|
@@ -255,9 +241,11 @@ files:
|
|
255
241
|
- spec/dummy/config/routes.rb
|
256
242
|
- spec/dummy/config/spring.rb
|
257
243
|
- spec/dummy/config/storage.yml
|
244
|
+
- spec/dummy/db/development.sqlite3
|
258
245
|
- spec/dummy/db/migrate/1000_create_dummy_users.rb
|
259
246
|
- spec/dummy/db/schema.rb
|
260
247
|
- spec/dummy/db/test.sqlite3
|
248
|
+
- spec/dummy/log/development.log
|
261
249
|
- spec/dummy/log/test.log
|
262
250
|
- spec/dummy/package.json
|
263
251
|
- spec/dummy/public/404.html
|
@@ -266,6 +254,7 @@ files:
|
|
266
254
|
- spec/dummy/public/apple-touch-icon-precomposed.png
|
267
255
|
- spec/dummy/public/apple-touch-icon.png
|
268
256
|
- spec/dummy/public/favicon.ico
|
257
|
+
- spec/dummy/tmp/development_secret.txt
|
269
258
|
- spec/factories/fine_print/contract.rb
|
270
259
|
- spec/factories/fine_print/signature.rb
|
271
260
|
- spec/factories/user.rb
|
@@ -294,79 +283,81 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
294
283
|
- !ruby/object:Gem::Version
|
295
284
|
version: '0'
|
296
285
|
requirements: []
|
297
|
-
|
298
|
-
rubygems_version: 2.7.3
|
286
|
+
rubygems_version: 3.0.1
|
299
287
|
signing_key:
|
300
288
|
specification_version: 4
|
301
289
|
summary: Manages site agreements with versioning.
|
302
290
|
test_files:
|
291
|
+
- spec/models/signature_spec.rb
|
292
|
+
- spec/models/contract_spec.rb
|
303
293
|
- spec/spec_helper.rb
|
304
|
-
- spec/
|
294
|
+
- spec/controllers/signatures_controller_spec.rb
|
295
|
+
- spec/controllers/contracts_controller_spec.rb
|
296
|
+
- spec/controllers/home_controller_spec.rb
|
297
|
+
- spec/factories/user.rb
|
298
|
+
- spec/factories/fine_print/signature.rb
|
299
|
+
- spec/factories/fine_print/contract.rb
|
305
300
|
- spec/dummy/app/models/dummy_user.rb
|
306
301
|
- spec/dummy/app/models/application_record.rb
|
307
|
-
- spec/dummy/app/jobs/application_job.rb
|
308
|
-
- spec/dummy/app/controllers/application_controller.rb
|
309
|
-
- spec/dummy/app/controllers/dummy_models_controller.rb
|
310
|
-
- spec/dummy/app/views/layouts/application.html.erb
|
311
|
-
- spec/dummy/app/views/layouts/mailer.html.erb
|
312
|
-
- spec/dummy/app/views/layouts/mailer.text.erb
|
313
|
-
- spec/dummy/app/assets/config/manifest.js
|
314
|
-
- spec/dummy/app/assets/javascripts/cable.js
|
315
302
|
- spec/dummy/app/assets/javascripts/application.js
|
303
|
+
- spec/dummy/app/assets/javascripts/cable.js
|
316
304
|
- spec/dummy/app/assets/stylesheets/application.css
|
317
|
-
- spec/dummy/app/
|
318
|
-
- spec/dummy/app/
|
305
|
+
- spec/dummy/app/assets/config/manifest.js
|
306
|
+
- spec/dummy/app/views/layouts/mailer.text.erb
|
307
|
+
- spec/dummy/app/views/layouts/mailer.html.erb
|
308
|
+
- spec/dummy/app/views/layouts/application.html.erb
|
319
309
|
- spec/dummy/app/channels/application_cable/channel.rb
|
310
|
+
- spec/dummy/app/channels/application_cable/connection.rb
|
311
|
+
- spec/dummy/app/controllers/application_controller.rb
|
312
|
+
- spec/dummy/app/controllers/dummy_models_controller.rb
|
313
|
+
- spec/dummy/app/jobs/application_job.rb
|
314
|
+
- spec/dummy/app/mailers/application_mailer.rb
|
315
|
+
- spec/dummy/app/helpers/application_helper.rb
|
316
|
+
- spec/dummy/tmp/development_secret.txt
|
317
|
+
- spec/dummy/db/migrate/1000_create_dummy_users.rb
|
318
|
+
- spec/dummy/db/development.sqlite3
|
319
|
+
- spec/dummy/db/test.sqlite3
|
320
|
+
- spec/dummy/db/schema.rb
|
321
|
+
- spec/dummy/log/test.log
|
322
|
+
- spec/dummy/log/development.log
|
323
|
+
- spec/dummy/public/favicon.ico
|
324
|
+
- spec/dummy/public/422.html
|
325
|
+
- spec/dummy/public/apple-touch-icon-precomposed.png
|
326
|
+
- spec/dummy/public/404.html
|
327
|
+
- spec/dummy/public/apple-touch-icon.png
|
328
|
+
- spec/dummy/public/500.html
|
329
|
+
- spec/dummy/config.ru
|
330
|
+
- spec/dummy/package.json
|
320
331
|
- spec/dummy/bin/update
|
332
|
+
- spec/dummy/bin/rails
|
333
|
+
- spec/dummy/bin/yarn
|
321
334
|
- spec/dummy/bin/rake
|
322
335
|
- spec/dummy/bin/setup
|
323
336
|
- spec/dummy/bin/bundle
|
324
|
-
- spec/dummy/bin/yarn
|
325
|
-
- spec/dummy/bin/rails
|
326
|
-
- spec/dummy/config/routes.rb
|
327
|
-
- spec/dummy/config/locales/en.yml
|
328
|
-
- spec/dummy/config/cable.yml
|
329
|
-
- spec/dummy/config/environments/production.rb
|
330
|
-
- spec/dummy/config/environments/development.rb
|
331
|
-
- spec/dummy/config/environments/test.rb
|
332
|
-
- spec/dummy/config/spring.rb
|
333
|
-
- spec/dummy/config/environment.rb
|
334
|
-
- spec/dummy/config/storage.yml
|
335
337
|
- spec/dummy/config/application.rb
|
336
|
-
- spec/dummy/config/puma.rb
|
337
|
-
- spec/dummy/config/database.yml
|
338
|
-
- spec/dummy/config/boot.rb
|
339
|
-
- spec/dummy/config/initializers/application_controller_renderer.rb
|
340
|
-
- spec/dummy/config/initializers/backtrace_silencers.rb
|
341
|
-
- spec/dummy/config/initializers/mime_types.rb
|
342
338
|
- spec/dummy/config/initializers/filter_parameter_logging.rb
|
343
|
-
- spec/dummy/config/initializers/
|
339
|
+
- spec/dummy/config/initializers/fine_print.rb
|
344
340
|
- spec/dummy/config/initializers/assets.rb
|
341
|
+
- spec/dummy/config/initializers/application_controller_renderer.rb
|
345
342
|
- spec/dummy/config/initializers/cookies_serializer.rb
|
346
343
|
- spec/dummy/config/initializers/content_security_policy.rb
|
347
344
|
- spec/dummy/config/initializers/inflections.rb
|
348
|
-
- spec/dummy/config/initializers/
|
349
|
-
- spec/dummy/config.
|
345
|
+
- spec/dummy/config/initializers/backtrace_silencers.rb
|
346
|
+
- spec/dummy/config/initializers/wrap_parameters.rb
|
347
|
+
- spec/dummy/config/initializers/mime_types.rb
|
348
|
+
- spec/dummy/config/cable.yml
|
349
|
+
- spec/dummy/config/spring.rb
|
350
|
+
- spec/dummy/config/locales/en.yml
|
351
|
+
- spec/dummy/config/routes.rb
|
352
|
+
- spec/dummy/config/database.yml
|
353
|
+
- spec/dummy/config/storage.yml
|
354
|
+
- spec/dummy/config/environment.rb
|
355
|
+
- spec/dummy/config/puma.rb
|
356
|
+
- spec/dummy/config/boot.rb
|
357
|
+
- spec/dummy/config/environments/production.rb
|
358
|
+
- spec/dummy/config/environments/test.rb
|
359
|
+
- spec/dummy/config/environments/development.rb
|
350
360
|
- spec/dummy/Rakefile
|
351
|
-
- spec/dummy/public/favicon.ico
|
352
|
-
- spec/dummy/public/422.html
|
353
|
-
- spec/dummy/public/apple-touch-icon.png
|
354
|
-
- spec/dummy/public/500.html
|
355
|
-
- spec/dummy/public/404.html
|
356
|
-
- spec/dummy/public/apple-touch-icon-precomposed.png
|
357
|
-
- spec/dummy/package.json
|
358
|
-
- spec/dummy/db/schema.rb
|
359
|
-
- spec/dummy/db/test.sqlite3
|
360
|
-
- spec/dummy/db/migrate/1000_create_dummy_users.rb
|
361
|
-
- spec/dummy/log/test.log
|
362
|
-
- spec/models/signature_spec.rb
|
363
|
-
- spec/models/contract_spec.rb
|
364
361
|
- spec/support/controller.rb
|
365
|
-
- spec/factories/fine_print/signature.rb
|
366
|
-
- spec/factories/fine_print/contract.rb
|
367
|
-
- spec/factories/user.rb
|
368
362
|
- spec/lib/fine_print_spec.rb
|
369
363
|
- spec/lib/fine_print/action_controller/base_spec.rb
|
370
|
-
- spec/controllers/signatures_controller_spec.rb
|
371
|
-
- spec/controllers/contracts_controller_spec.rb
|
372
|
-
- spec/controllers/home_controller_spec.rb
|