Sha256: 27dc26bc536fa938b2398fae3712c6bae9c5708f53d09d32f4e61ce2260b6bb2

Contents?: true

Size: 1.08 KB

Versions: 6

Compression:

Stored size: 1.08 KB

Contents

require 'spec_helper'

describe TheModerator::ModerationModel do
  subject do
    page = Page.new(name: 'Name', content: 'Content')
    moderation = page.moderate(:name)
    page.save

    moderation
  end

  describe '#accept' do
    it 'accepts moderated data' do
      expect(subject.moderatable.name).to be_nil
      subject.accept

      expect(subject.moderatable.name).to eq('Name')
      expect(subject.destroyed?).to be true
    end
  end

  describe '#discard' do
    it 'discards moderated data' do
      expect(subject.moderatable.name).to be_nil
      subject.discard

      expect(subject.moderatable.name).to be_nil
      expect(subject.destroyed?).to be true
    end
  end

  describe '#preview' do
    it 'previews moderated data' do
      expect(subject.moderatable.name).to be_nil
      preview = subject.preview

      expect(preview.frozen?).to be true
      expect(preview.name).to eq('Name')
    end
  end

  describe '#include?' do
    it 'includes name' do
      expect(subject.include?(:name)).to be true
      expect(subject.include?(:content)).to be false
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
the_moderator-0.1.7 spec/the_moderator/moderation_model_spec.rb
the_moderator-0.1.6 spec/the_moderator/moderation_model_spec.rb
the_moderator-0.1.5 spec/the_moderator/moderation_model_spec.rb
the_moderator-0.1.4 spec/the_moderator/moderation_model_spec.rb
the_moderator-0.1.3 spec/the_moderator/moderation_model_spec.rb
the_moderator-0.1.2 spec/the_moderator/moderation_model_spec.rb