Sha256: 88a30c80fb46de94c5880355c7d2f4361f5291edc5cf6f7ba4f0b5d05c9e870a
Contents?: true
Size: 1.46 KB
Versions: 2
Compression:
Stored size: 1.46 KB
Contents
# frozen_string_literal: true require 'cucumber/platform' require 'cucumber/gherkin/formatter/ansi_escapes' module Cucumber module Deprecate class AnsiString include Cucumber::Gherkin::Formatter::AnsiEscapes def self.failure_message(message) AnsiString.new.failure_message(message) end def failure_message(message) failed + message + reset end end class CliOption def self.deprecate(stream, option, message, remove_after_version) return if stream.nil? stream.puts( AnsiString.failure_message( "\nWARNING: #{option} is deprecated" \ " and will be removed after version #{remove_after_version}.\n#{message}.\n" ) ) end end module ForUsers def self.call(message, method, remove_after_version) $stderr.puts AnsiString.failure_message( "\nWARNING: ##{method} is deprecated" \ " and will be removed after version #{remove_after_version}. #{message}.\n" \ "(Called from #{caller(3..3).first})" ) end end module ForDevelopers def self.call(_message, _method, remove_after_version) raise "This method is due for removal after version #{remove_after_version}" if remove_after_version <= Cucumber::VERSION end end STRATEGY = $PROGRAM_NAME =~ /rspec$/ ? ForDevelopers : ForUsers end def self.deprecate(*args) Deprecate::STRATEGY.call(*args) end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
honeybadger-5.3.0 | vendor/bundle/ruby/3.2.0/gems/cucumber-9.0.2/lib/cucumber/deprecate.rb |
cucumber-9.0.2 | lib/cucumber/deprecate.rb |