66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| require "rubocops/rubocop-cask"
 | |
| 
 | |
| RSpec.describe RuboCop::Cop::Cask::Discontinued, :config do
 | |
|   it "reports no offenses when there is no `caveats` stanza" do
 | |
|     expect_no_offenses <<~CASK
 | |
|       cask "foo" do
 | |
|         url "https://example.com/download/foo-v1.2.0.dmg",
 | |
|             verified: "example.com/download/"
 | |
|       end
 | |
|     CASK
 | |
|   end
 | |
| 
 | |
|   it "reports no offenses when there is a `caveats` stanza without `discontinued`" do
 | |
|     expect_no_offenses <<~CASK
 | |
|       cask "foo" do
 | |
|         url "https://example.com/download/foo-v1.2.0.dmg",
 | |
|             verified: "example.com/download/"
 | |
| 
 | |
|         caveats do
 | |
|           files_in_usr_local
 | |
|         end
 | |
|       end
 | |
|     CASK
 | |
|   end
 | |
| 
 | |
|   it "reports an offense when there is a `caveats` stanza with `discontinued` and other caveats" do
 | |
|     expect_offense <<~CASK
 | |
|       cask "foo" do
 | |
|         url "https://example.com/download/foo-v1.2.0.dmg",
 | |
|             verified: "example.com/download/"
 | |
| 
 | |
|         caveats do
 | |
|           discontinued
 | |
|           ^^^^^^^^^^^^ Use `deprecate!` instead of `caveats { discontinued }`.
 | |
|           files_in_usr_local
 | |
|         end
 | |
|       end
 | |
|     CASK
 | |
|   end
 | |
| 
 | |
|   it "corrects `caveats { discontinued }` to `deprecate!`" do
 | |
|     expect_offense <<~CASK
 | |
|       cask "foo" do
 | |
|         url "https://example.com/download/foo-v1.2.0.dmg",
 | |
|             verified: "example.com/download/"
 | |
| 
 | |
|         caveats do
 | |
|         ^^^^^^^^^^ Use `deprecate!` instead of `caveats { discontinued }`.
 | |
|           discontinued
 | |
|         end
 | |
|       end
 | |
|     CASK
 | |
| 
 | |
|     expect_correction <<~CASK
 | |
|       cask "foo" do
 | |
|         url "https://example.com/download/foo-v1.2.0.dmg",
 | |
|             verified: "example.com/download/"
 | |
| 
 | |
|         deprecate! date: "#{Date.today}", because: :discontinued
 | |
|       end
 | |
|     CASK
 | |
|   end
 | |
| end
 | 
