You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

manager_redis_test.go 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. // Copyright 2022 The Gitea Authors. All rights reserved.
  2. // SPDX-License-Identifier: MIT
  3. package nosql
  4. import (
  5. "net/url"
  6. "testing"
  7. )
  8. func TestRedisUsernameOpt(t *testing.T) {
  9. uri, _ := url.Parse("redis://redis:password@myredis/0")
  10. opts := getRedisOptions(uri)
  11. if opts.Username != "redis" {
  12. t.Fail()
  13. }
  14. }
  15. func TestRedisPasswordOpt(t *testing.T) {
  16. uri, _ := url.Parse("redis://redis:password@myredis/0")
  17. opts := getRedisOptions(uri)
  18. if opts.Password != "password" {
  19. t.Fail()
  20. }
  21. }
  22. func TestSkipVerifyOpt(t *testing.T) {
  23. uri, _ := url.Parse("rediss://myredis/0?skipverify=true")
  24. tlsConfig := getRedisTLSOptions(uri)
  25. if !tlsConfig.InsecureSkipVerify {
  26. t.Fail()
  27. }
  28. }
  29. func TestInsecureSkipVerifyOpt(t *testing.T) {
  30. uri, _ := url.Parse("rediss://myredis/0?insecureskipverify=true")
  31. tlsConfig := getRedisTLSOptions(uri)
  32. if !tlsConfig.InsecureSkipVerify {
  33. t.Fail()
  34. }
  35. }
  36. func TestRedisSentinelUsernameOpt(t *testing.T) {
  37. uri, _ := url.Parse("redis+sentinel://redis:password@myredis/0?sentinelusername=suser&sentinelpassword=spass")
  38. opts := getRedisOptions(uri).Failover()
  39. if opts.SentinelUsername != "suser" {
  40. t.Fail()
  41. }
  42. }
  43. func TestRedisSentinelPasswordOpt(t *testing.T) {
  44. uri, _ := url.Parse("redis+sentinel://redis:password@myredis/0?sentinelusername=suser&sentinelpassword=spass")
  45. opts := getRedisOptions(uri).Failover()
  46. if opts.SentinelPassword != "spass" {
  47. t.Fail()
  48. }
  49. }
  50. func TestRedisDatabaseIndexTcp(t *testing.T) {
  51. uri, _ := url.Parse("redis://redis:password@myredis/12")
  52. opts := getRedisOptions(uri)
  53. if opts.DB != 12 {
  54. t.Fail()
  55. }
  56. }
  57. func TestRedisDatabaseIndexUnix(t *testing.T) {
  58. uri, _ := url.Parse("redis+socket:///var/run/redis.sock?database=12")
  59. opts := getRedisOptions(uri)
  60. if opts.DB != 12 {
  61. t.Fail()
  62. }
  63. }