diff --git a/leopard.gemspec b/leopard.gemspec index 02b656e..cbd4b6d 100644 --- a/leopard.gemspec +++ b/leopard.gemspec @@ -38,7 +38,7 @@ Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength spec.add_dependency 'dry-configurable', '~> 1.3' spec.add_dependency 'dry-monads', '~> 1.9' spec.add_dependency 'nats-pure', '~> 2.5' - spec.add_dependency 'semantic_logger', '~> 4' + spec.add_dependency 'semantic_logger', '>= 4' # For more information and examples about making a new gem, check out our # guide at: https://bundler.io/guides/creating_gem.html diff --git a/test/lib/gemspec.rb b/test/lib/gemspec.rb new file mode 100644 index 0000000..f276f24 --- /dev/null +++ b/test/lib/gemspec.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +require 'helper' + +describe 'leopard gemspec' do + let(:specification) { Gem::Specification.load((Rubyists::Leopard.root / 'leopard.gemspec').to_s) } + let(:semantic_logger_requirement) do + specification.runtime_dependencies.find { |dependency| dependency.name == 'semantic_logger' }.requirement + end + + it 'supports semantic_logger 4.x and newer' do + refute semantic_logger_requirement.satisfied_by?(Gem::Version.new('3.9.9')) + assert semantic_logger_requirement.satisfied_by?(Gem::Version.new('4.0.0')) + assert semantic_logger_requirement.satisfied_by?(Gem::Version.new('5.0.0')) + assert semantic_logger_requirement.satisfied_by?(Gem::Version.new('6.0.0')) + end +end