Sha256: e39b7cfdd62c13b9e3628cd49b90b305575e2f0eeebb3fd0d45e9fb7d690d4ce

Contents?: true

Size: 1.19 KB

Versions: 4

Compression:

Stored size: 1.19 KB

Contents

require 'rails_helper'

module Wordpress
  RSpec.describe Wordpress::Attachment, type: :model do
    let(:attachment) { create(:attachment) }
    let(:new_tag) { create(:tag, {name: "foo#{rand(100)}"}) }
    let(:new_category) { create(:category, name: "Foobar") }

    it "sets its meta class correctly" do
      expect(attachment).to be_kind_of Wordpress::Attachment
      expect(attachment.post_type).to eq "attachment"
    end

    describe "tags association" do

      it "can add a tag" do
        attachment.tags << new_tag
        expect(attachment.tags.count).to eq 1
        expect(attachment.relationships.count).to eq 1
        expect(attachment.tags.first.count).to eq 1
      end

      it "can add a named tag" do
        attachment.post_tags = "foo, bar"
        attachment.save
        expect(attachment.tags.count).to eq 2
      end

    end

    describe "categories" do
      it "can add a category" do
        attachment.categories << new_category
        attachment.reload
        expect(attachment.categories.count).to eq 1
        expect(attachment.categories.last).to eq new_category
        expect(attachment.categories.last).to be_kind_of Wordpress::Category
      end
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails_wordpress-0.2.1 spec/models/wordpress/attachment_spec.rb
rails_wordpress-0.2.0 spec/models/wordpress/attachment_spec.rb
rails_wordpress-0.1.2 spec/models/wordpress/attachment_spec.rb
rails_wordpress-0.1.1 spec/models/wordpress/attachment_spec.rb