Add specs for StatusPolicy (#9569)
This commit is contained in:
		
							parent
							
								
									2e1b5edfea
								
							
						
					
					
						commit
						102e4cfa32
					
				
					 1 changed files with 28 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -1,3 +1,5 @@
 | 
			
		|||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
require 'rails_helper'
 | 
			
		||||
require 'pundit/rspec'
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -106,4 +108,30 @@ RSpec.describe StatusPolicy, type: :model do
 | 
			
		|||
      expect(subject).to_not permit(nil, status)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  permissions :favourite? do
 | 
			
		||||
    it 'grants access when viewer is not blocked' do
 | 
			
		||||
      follow         = Fabricate(:follow)
 | 
			
		||||
      status.account = follow.target_account
 | 
			
		||||
 | 
			
		||||
      expect(subject).to permit(follow.account, status)
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    it 'denies when viewer is blocked' do
 | 
			
		||||
      block          = Fabricate(:block)
 | 
			
		||||
      status.account = block.target_account
 | 
			
		||||
 | 
			
		||||
      expect(subject).to_not permit(block.account, status)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  permissions :index?, :update? do
 | 
			
		||||
    it 'grants access if staff' do
 | 
			
		||||
      expect(subject).to permit(admin.account)
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    it 'denies access unless staff' do
 | 
			
		||||
      expect(subject).to_not permit(alice)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue