mirror of
https://github.com/redis/go-redis.git
synced 2025-07-26 19:21:03 +03:00
Add: Support for COMMAND LIST command (#2491)
* feat: add support and tests for Command list command Co-authored-by: Anuragkillswitch <70265851+Anuragkillswitch@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
30a6f7107e
commit
049d4f9691
@ -6277,6 +6277,57 @@ var _ = Describe("Commands", func() {
|
||||
Expect(err).To(Equal(redis.Nil))
|
||||
})
|
||||
|
||||
It("should return all command names", func() {
|
||||
cmdList := client.CommandList(ctx, nil)
|
||||
Expect(cmdList.Err()).NotTo(HaveOccurred())
|
||||
cmdNames := cmdList.Val()
|
||||
|
||||
Expect(cmdNames).NotTo(BeEmpty())
|
||||
|
||||
// Assert that some expected commands are present in the list
|
||||
Expect(cmdNames).To(ContainElement("get"))
|
||||
Expect(cmdNames).To(ContainElement("set"))
|
||||
Expect(cmdNames).To(ContainElement("hset"))
|
||||
})
|
||||
|
||||
It("should filter commands by module", func() {
|
||||
filter := &redis.FilterBy{
|
||||
Module: "JSON",
|
||||
}
|
||||
cmdList := client.CommandList(ctx, filter)
|
||||
Expect(cmdList.Err()).NotTo(HaveOccurred())
|
||||
Expect(cmdList.Val()).To(HaveLen(0))
|
||||
})
|
||||
|
||||
It("should filter commands by ACL category", func() {
|
||||
|
||||
filter := &redis.FilterBy{
|
||||
ACLCat: "admin",
|
||||
}
|
||||
|
||||
cmdList := client.CommandList(ctx, filter)
|
||||
Expect(cmdList.Err()).NotTo(HaveOccurred())
|
||||
cmdNames := cmdList.Val()
|
||||
|
||||
// Assert that the returned list only contains commands from the admin ACL category
|
||||
Expect(len(cmdNames)).To(BeNumerically(">", 10))
|
||||
})
|
||||
|
||||
It("should filter commands by pattern", func() {
|
||||
filter := &redis.FilterBy{
|
||||
Pattern: "*GET*",
|
||||
}
|
||||
cmdList := client.CommandList(ctx, filter)
|
||||
Expect(cmdList.Err()).NotTo(HaveOccurred())
|
||||
cmdNames := cmdList.Val()
|
||||
|
||||
// Assert that the returned list only contains commands that match the given pattern
|
||||
Expect(cmdNames).To(ContainElement("get"))
|
||||
Expect(cmdNames).To(ContainElement("getbit"))
|
||||
Expect(cmdNames).To(ContainElement("getrange"))
|
||||
Expect(cmdNames).NotTo(ContainElement("set"))
|
||||
})
|
||||
|
||||
It("Dump and restores all libraries", func() {
|
||||
err := client.FunctionLoad(ctx, lib1Code).Err()
|
||||
Expect(err).NotTo(HaveOccurred())
|
||||
|
Reference in New Issue
Block a user