Sha256: 3ee2685c36c9a894986a9257059c11ae4ae4d3c1c7e800f8b469af99f3bdb4fe

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

describe ActivityNotification::ActsAsNotifiable do
  let(:dummy_model_class) { Dummy::DummyBase }

  describe "as public class methods" do
    describe ".acts_as_notifiable" do
      it "have not included Notifiable before calling" do
        expect(dummy_model_class.respond_to?(:available_as_notifiable?)).to be_falsey
      end

      it "includes Notifiable" do
        dummy_model_class.acts_as_notifiable :users
        expect(dummy_model_class.respond_to?(:available_as_notifiable?)).to be_truthy
        expect(dummy_model_class.available_as_notifiable?).to be_truthy
      end

      context "with no options" do
        it "returns hash of specified options" do
          expect(dummy_model_class.acts_as_notifiable :users).to eq({})
        end
      end

      #TODO test other options
    end

    describe ".available_notifiable_options" do
      it "returns list of available options in acts_as_notifiable" do
        expect(dummy_model_class.available_notifiable_options)
          .to eq([:targets, :group, :group_expiry_delay, :notifier, :parameters, :email_allowed, :notifiable_path, :printable_notifiable_name, :printable_name, :dependent_notifications])
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
activity_notification-1.1.0 spec/roles/acts_as_notifiable_spec.rb