Skip to content

Commit

Permalink
Add Kredis#redis_version
Browse files Browse the repository at this point in the history
  • Loading branch information
heka1024 committed Mar 8, 2024
1 parent 4fbb2f5 commit 628be4e
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 1 deletion.
3 changes: 2 additions & 1 deletion lib/kredis.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@
require "kredis/default_values"
require "kredis/types"
require "kredis/attributes"
require "kredis/info"

require "kredis/railtie" if defined?(Rails::Railtie)

module Kredis
include Connections, Namespace, TypeCasting, Types
include Connections, Namespace, TypeCasting, Types, Info
extend self

autoload :Migration, "kredis/migration"
Expand Down
14 changes: 14 additions & 0 deletions lib/kredis/info.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# frozen_string_literal: true

module Kredis::Info
def redis_version
redis_versions.first
end

def redis_versions
Array.wrap(Kredis.redis.info("server")).tap do |versions|
versions.map! { |v| v["redis_version"] }
versions.map! { |v| Gem::Version.new(v) }
end
end
end
10 changes: 10 additions & 0 deletions test/kredis/info_test.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# frozen_string_literal: true

require "test_helper"
require "yaml"

class InfoTest < ActiveSupport::TestCase
test "version" do
assert Kredis.redis_version >= Gem::Version.new("4.0.0")
end
end

0 comments on commit 628be4e

Please sign in to comment.