summaryrefslogtreecommitdiff
path: root/spec/support/shared_examples/models/atomic_internal_id_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/support/shared_examples/models/atomic_internal_id_spec.rb')
-rw-r--r--spec/support/shared_examples/models/atomic_internal_id_spec.rb29
1 files changed, 6 insertions, 23 deletions
diff --git a/spec/support/shared_examples/models/atomic_internal_id_spec.rb b/spec/support/shared_examples/models/atomic_internal_id_spec.rb
index 7ab1041d17c..6a6e13418a9 100644
--- a/spec/support/shared_examples/models/atomic_internal_id_spec.rb
+++ b/spec/support/shared_examples/models/atomic_internal_id_spec.rb
@@ -1,6 +1,6 @@
require 'spec_helper'
-shared_examples_for 'AtomicInternalId' do |validate_presence: true|
+shared_examples_for 'AtomicInternalId' do
describe '.has_internal_id' do
describe 'Module inclusion' do
subject { described_class }
@@ -9,31 +9,14 @@ shared_examples_for 'AtomicInternalId' do |validate_presence: true|
end
describe 'Validation' do
- before do
- allow_any_instance_of(described_class).to receive(:"ensure_#{scope}_#{internal_id_attribute}!")
-
- instance.valid?
- end
-
- context 'when presence validation is required' do
- before do
- skip unless validate_presence
- end
+ subject { instance }
- it 'validates presence' do
- expect(instance.errors[internal_id_attribute]).to include("can't be blank")
- end
+ before do
+ allow(InternalId).to receive(:generate_next).and_return(nil)
end
- context 'when presence validation is not required' do
- before do
- skip if validate_presence
- end
-
- it 'does not validate presence' do
- expect(instance.errors[internal_id_attribute]).to be_empty
- end
- end
+ it { is_expected.to validate_presence_of(internal_id_attribute) }
+ it { is_expected.to validate_numericality_of(internal_id_attribute) }
end
describe 'Creating an instance' do