validations-skipper 0.1.0 → 0.1.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9aa7a804e48493ed99bbfe87e237f4c971447ee2b6930940002f8fbb772ec52b
4
- data.tar.gz: 3b56a61ab479a7e3dbe953544a7dd3fc4380d62aaddb4fda06b8ee4481241b82
3
+ metadata.gz: 244ce5215d144be6b90279445dc7e35f30f5f62169329e11e9d28e28bd83b519
4
+ data.tar.gz: bcd3f5ce9d8ac2a459e5b007e05f141bd813baf0d00a5418b0015b1b9e07a9a2
5
5
  SHA512:
6
- metadata.gz: 8306bf7544300da02feaa8f5c1acbfe53603665571fe37c17d3722a5b3846343f56ef8c9efd82438357fe54f0375e72ea49e0b691fb90c088417c97b03483801
7
- data.tar.gz: 477cc31e62db5f9f813e16d6d044ba6f47d0dcaa27145c7ddc02147d7e7bad345742193dde6cffd9d1f8966fc7112af66d8f0b92206f09afa779e2133bd981a1
6
+ metadata.gz: 3ec4e145886ee718b0f843bd4dea2b196be551580f2197225c419a057da748c53251370a7c192c78b9cddf2093a877abc976423423fb5b26fbed2d2d86c46393
7
+ data.tar.gz: 06a9c006bae4bd537d75686ba17f718c7da7a0650f403732a8e53a2fb3207b033810a26532a8bb02aac1a22a776097bae65ec1e28d339bc58f752ea25efde7e6
@@ -4,7 +4,8 @@ module ValidationsSkipable
4
4
  attr_accessor :skip_validations
5
5
 
6
6
  def initialize(*)
7
- @original_methods = self.class.instance_methods.map do |instance_method|
7
+ instance_methods = self.class.instance_methods + self.class.private_instance_methods
8
+ @original_methods = instance_methods.map do |instance_method|
8
9
  [instance_method, method(instance_method)]
9
10
  end.to_h
10
11
  super
@@ -78,4 +78,38 @@ class TestValidationsSkipper < Minitest::Test
78
78
 
79
79
  assert_equal(@object.valid?, false)
80
80
  end
81
+
82
+ class ClassWithPrivateValidation
83
+ include ActiveModel::Validations
84
+ include ValidationsSkipable
85
+
86
+ validate :private_validation_method
87
+
88
+ private
89
+
90
+ def private_validation_method
91
+ errors.add(:column, 'An error message')
92
+ end
93
+ end
94
+
95
+ def test_skipping_private_validation
96
+ @object = ClassWithPrivateValidation.new
97
+ @object.skip_validations = [:private_validation_method]
98
+
99
+ assert_equal(@object.valid?, true)
100
+ end
101
+
102
+ def test_not_skipping_private_validation
103
+ @object = ClassWithPrivateValidation.new
104
+
105
+ assert_equal(@object.valid?, false)
106
+ end
107
+
108
+ def test_toggleing_skipping_validation
109
+ @object = ClassWithPrivateValidation.new
110
+ @object.skip_validations = [:private_validation_method]
111
+ @object.skip_validations = []
112
+
113
+ assert_equal(@object.valid?, false)
114
+ end
81
115
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: validations-skipper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Victor Cordeiro Costa
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-12 00:00:00.000000000 Z
11
+ date: 2022-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '4.2'
47
+ version: '5.2'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '4.2'
54
+ version: '5.2'
55
55
  description: |-
56
56
  validations-skipper is a gem that enables objects
57
57
  to skip specified validations with ease.
@@ -68,7 +68,7 @@ homepage: https://github.com/Victorcorcos/validations-skipper
68
68
  licenses:
69
69
  - MIT
70
70
  metadata: {}
71
- post_install_message:
71
+ post_install_message:
72
72
  rdoc_options: []
73
73
  require_paths:
74
74
  - lib
@@ -83,9 +83,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
83
83
  - !ruby/object:Gem::Version
84
84
  version: '0'
85
85
  requirements: []
86
- rubyforge_project:
87
- rubygems_version: 2.7.9
88
- signing_key:
86
+ rubygems_version: 3.0.9
87
+ signing_key:
89
88
  specification_version: 4
90
89
  summary: validations-skipper is a gem that enables objects to skip specified validations
91
90
  with ease. It can be applied to ActiveRecord::Base classes.