Sha256: c798ef07ec8b14b7dd7d42983370eafd5721740bd788ce019188fc8baacb74cf

Contents?: true

Size: 890 Bytes

Versions: 1

Compression:

Stored size: 890 Bytes

Contents

# frozen_string_literal: true

require 'rails_helper'

RSpec.describe Rating::Extension, ':rating' do
  let!(:user_1)  { create :user }
  let!(:article) { create :article }

  before { user_1.rate article, 1 }

  it 'returns rating record' do
    expect(article.rating).to eq Rating::Rating.last
  end

  context 'when destroy author' do
    let!(:user_2) { create :user }

    before { user_2.rate article, 2 }

    it 'does not destroy resource rating' do
      expect(Rating::Rating.where(resource: article).count).to eq 1

      user_1.destroy!

      expect(Rating::Rating.where(resource: article).count).to eq 1
    end
  end

  context 'when destroy resource' do
    it 'destroys resource rating too' do
      expect(Rating::Rating.where(resource: article).count).to eq 1

      article.destroy!

      expect(Rating::Rating.where(resource: article).count).to eq 0
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rating-0.1.0 spec/models/extension/rating_spec.rb