github.com/etecs-ru/gnomock@v0.13.2/preset/redis/README.md (about)

     1  # Gnomock Redis
     2  
     3  Gnomock Redis is a [Gnomock](https://github.com/orlangure/gnomock) preset for running tests against a real Redis
     4  container, without mocks.
     5  
     6  ```go
     7  package redis_test
     8  
     9  import (
    10  	"fmt"
    11  	"testing"
    12  
    13  	redisclient "github.com/go-redis/redis/v7"
    14  	"github.com/orlangure/gnomock"
    15  	"github.com/orlangure/gnomock/preset/redis"
    16  )
    17  
    18  func ExamplePreset() {
    19  	vs := make(map[string]interface{})
    20  
    21  	vs["a"] = "foo"
    22  	vs["b"] = 42
    23  	vs["c"] = true
    24  
    25  	p := redis.Preset(redis.WithValues(vs))
    26  	container, _ := gnomock.Start(p)
    27  
    28  	defer func() { _ = gnomock.Stop(container) }()
    29  
    30  	addr := container.DefaultAddress()
    31  	client := redisclient.NewClient(&redisclient.Options{Addr: addr})
    32  
    33  	fmt.Println(client.Get("a").Result())
    34  
    35  	var number int
    36  
    37  	err := client.Get("b").Scan(&number)
    38  	fmt.Println(number, err)
    39  
    40  	var flag bool
    41  
    42  	err = client.Get("c").Scan(&flag)
    43  	fmt.Println(flag, err)
    44  
    45  	// Output:
    46  	// foo <nil>
    47  	// 42 <nil>
    48  	// true <nil>
    49  }
    50  ```