Sha256: 0749b09b16aa0d14e6fc958578da7985e9a8b328d837996dd1cad47df7bd7f58
Contents?: true
Size: 1017 Bytes
Versions: 4
Compression:
Stored size: 1017 Bytes
Contents
# frozen_string_literal: true require "assert" require "much-rails/records/not_destroyable" module MuchRails::Records::NotDestroyable class UnitTests < Assert::Context desc "MuchRails::Records::NotDestroyable" subject{ unit_class } let(:unit_class){ MuchRails::Records::NotDestroyable } should "include MuchRails::Mixin" do assert_that(subject).includes(MuchRails::Mixin) end end class ReceiverTests < UnitTests desc "receiver" subject{ receiver_class.new } let(:receiver_class) do Class.new do include MuchRails::Records::NotDestroyable end end should "disable destroying a record" do assert_that(subject.destruction_error_messages) .equals(["#{subject.class.name} records can't be deleted."]) assert_that(subject.destroy).is_false assert_that(->{ subject.destroy! }) .raises(MuchRails::Records::ValidateDestroy::DestructionInvalid) assert_that(subject.destroyable?).is_false end end end
Version data entries
4 entries across 4 versions & 1 rubygems