redis_test.go 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. package cache
  2. import (
  3. "fmt"
  4. "github.com/go-redis/redis/v8"
  5. "reflect"
  6. "testing"
  7. )
  8. func TestRedisSet(t *testing.T) {
  9. //rc := New("redis")
  10. rc := RedisCacheInit(&redis.Options{
  11. Addr: "192.168.1.168:6379",
  12. Password: "", // no password set
  13. DB: 0, // use default DB
  14. })
  15. err := rc.Set("123", "ddd", 0)
  16. if err != nil {
  17. fmt.Println(err.Error())
  18. t.Fatalf("写入失败")
  19. }
  20. }
  21. func TestRedisGet(t *testing.T) {
  22. rc := RedisCacheInit(&redis.Options{
  23. Addr: "192.168.1.168:6379",
  24. Password: "", // no password set
  25. DB: 0, // use default DB
  26. })
  27. err := rc.Set("123", "451156", 300)
  28. if err != nil {
  29. t.Fatalf("写入失败")
  30. }
  31. res := ""
  32. err = rc.Get("123", &res)
  33. if err != nil {
  34. t.Fatalf("读取失败")
  35. }
  36. fmt.Println("res", res)
  37. }
  38. func TestRedisGetJson(t *testing.T) {
  39. rc := RedisCacheInit(&redis.Options{
  40. Addr: "192.168.1.168:6379",
  41. Password: "", // no password set
  42. DB: 0, // use default DB
  43. })
  44. type r struct {
  45. Aa string `json:"a"`
  46. B string `json:"c"`
  47. }
  48. old := &r{
  49. Aa: "ab", B: "cdc",
  50. }
  51. err := rc.Set("1233", old, 300)
  52. if err != nil {
  53. t.Fatalf("写入失败")
  54. }
  55. res := &r{}
  56. err2 := rc.Get("1233", res)
  57. if err2 != nil {
  58. t.Fatalf("读取失败")
  59. }
  60. if !reflect.DeepEqual(res, old) {
  61. t.Fatalf("读取错误")
  62. }
  63. fmt.Println(res, res.Aa)
  64. }
  65. func BenchmarkRSet(b *testing.B) {
  66. rc := RedisCacheInit(&redis.Options{
  67. Addr: "192.168.1.168:6379",
  68. Password: "", // no password set
  69. DB: 0, // use default DB
  70. })
  71. b.ResetTimer()
  72. for i := 0; i < b.N; i++ {
  73. rc.Set("123", "{dsv}", 1000)
  74. }
  75. }
  76. func BenchmarkRGet(b *testing.B) {
  77. rc := RedisCacheInit(&redis.Options{
  78. Addr: "192.168.1.168:6379",
  79. Password: "", // no password set
  80. DB: 0, // use default DB
  81. })
  82. b.ResetTimer()
  83. v := ""
  84. for i := 0; i < b.N; i++ {
  85. rc.Get("123", &v)
  86. }
  87. }