summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/go-redis/redis/example_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/go-redis/redis/example_test.go')
-rw-r--r--vendor/github.com/go-redis/redis/example_test.go414
1 files changed, 0 insertions, 414 deletions
diff --git a/vendor/github.com/go-redis/redis/example_test.go b/vendor/github.com/go-redis/redis/example_test.go
deleted file mode 100644
index 4d18ddb94..000000000
--- a/vendor/github.com/go-redis/redis/example_test.go
+++ /dev/null
@@ -1,414 +0,0 @@
-package redis_test
-
-import (
- "fmt"
- "strconv"
- "sync"
- "time"
-
- "github.com/go-redis/redis"
-)
-
-var client *redis.Client
-
-func init() {
- client = redis.NewClient(&redis.Options{
- Addr: ":6379",
- DialTimeout: 10 * time.Second,
- ReadTimeout: 30 * time.Second,
- WriteTimeout: 30 * time.Second,
- PoolSize: 10,
- PoolTimeout: 30 * time.Second,
- })
- client.FlushDB()
-}
-
-func ExampleNewClient() {
- client := redis.NewClient(&redis.Options{
- Addr: "localhost:6379",
- Password: "", // no password set
- DB: 0, // use default DB
- })
-
- pong, err := client.Ping().Result()
- fmt.Println(pong, err)
- // Output: PONG <nil>
-}
-
-func ExampleParseURL() {
- opt, err := redis.ParseURL("redis://:qwerty@localhost:6379/1")
- if err != nil {
- panic(err)
- }
- fmt.Println("addr is", opt.Addr)
- fmt.Println("db is", opt.DB)
- fmt.Println("password is", opt.Password)
-
- // Create client as usually.
- _ = redis.NewClient(opt)
-
- // Output: addr is localhost:6379
- // db is 1
- // password is qwerty
-}
-
-func ExampleNewFailoverClient() {
- // See http://redis.io/topics/sentinel for instructions how to
- // setup Redis Sentinel.
- client := redis.NewFailoverClient(&redis.FailoverOptions{
- MasterName: "master",
- SentinelAddrs: []string{":26379"},
- })
- client.Ping()
-}
-
-func ExampleNewClusterClient() {
- // See http://redis.io/topics/cluster-tutorial for instructions
- // how to setup Redis Cluster.
- client := redis.NewClusterClient(&redis.ClusterOptions{
- Addrs: []string{":7000", ":7001", ":7002", ":7003", ":7004", ":7005"},
- })
- client.Ping()
-}
-
-func ExampleNewRing() {
- client := redis.NewRing(&redis.RingOptions{
- Addrs: map[string]string{
- "shard1": ":7000",
- "shard2": ":7001",
- "shard3": ":7002",
- },
- })
- client.Ping()
-}
-
-func ExampleClient() {
- err := client.Set("key", "value", 0).Err()
- if err != nil {
- panic(err)
- }
-
- val, err := client.Get("key").Result()
- if err != nil {
- panic(err)
- }
- fmt.Println("key", val)
-
- val2, err := client.Get("key2").Result()
- if err == redis.Nil {
- fmt.Println("key2 does not exist")
- } else if err != nil {
- panic(err)
- } else {
- fmt.Println("key2", val2)
- }
- // Output: key value
- // key2 does not exist
-}
-
-func ExampleClient_Set() {
- // Last argument is expiration. Zero means the key has no
- // expiration time.
- err := client.Set("key", "value", 0).Err()
- if err != nil {
- panic(err)
- }
-
- // key2 will expire in an hour.
- err = client.Set("key2", "value", time.Hour).Err()
- if err != nil {
- panic(err)
- }
-}
-
-func ExampleClient_Incr() {
- result, err := client.Incr("counter").Result()
- if err != nil {
- panic(err)
- }
-
- fmt.Println(result)
- // Output: 1
-}
-
-func ExampleClient_BLPop() {
- if err := client.RPush("queue", "message").Err(); err != nil {
- panic(err)
- }
-
- // use `client.BLPop(0, "queue")` for infinite waiting time
- result, err := client.BLPop(1*time.Second, "queue").Result()
- if err != nil {
- panic(err)
- }
-
- fmt.Println(result[0], result[1])
- // Output: queue message
-}
-
-func ExampleClient_Scan() {
- client.FlushDB()
- for i := 0; i < 33; i++ {
- err := client.Set(fmt.Sprintf("key%d", i), "value", 0).Err()
- if err != nil {
- panic(err)
- }
- }
-
- var cursor uint64
- var n int
- for {
- var keys []string
- var err error
- keys, cursor, err = client.Scan(cursor, "", 10).Result()
- if err != nil {
- panic(err)
- }
- n += len(keys)
- if cursor == 0 {
- break
- }
- }
-
- fmt.Printf("found %d keys\n", n)
- // Output: found 33 keys
-}
-
-func ExampleClient_Pipelined() {
- var incr *redis.IntCmd
- _, err := client.Pipelined(func(pipe redis.Pipeliner) error {
- incr = pipe.Incr("pipelined_counter")
- pipe.Expire("pipelined_counter", time.Hour)
- return nil
- })
- fmt.Println(incr.Val(), err)
- // Output: 1 <nil>
-}
-
-func ExampleClient_Pipeline() {
- pipe := client.Pipeline()
-
- incr := pipe.Incr("pipeline_counter")
- pipe.Expire("pipeline_counter", time.Hour)
-
- // Execute
- //
- // INCR pipeline_counter
- // EXPIRE pipeline_counts 3600
- //
- // using one client-server roundtrip.
- _, err := pipe.Exec()
- fmt.Println(incr.Val(), err)
- // Output: 1 <nil>
-}
-
-func ExampleClient_TxPipelined() {
- var incr *redis.IntCmd
- _, err := client.TxPipelined(func(pipe redis.Pipeliner) error {
- incr = pipe.Incr("tx_pipelined_counter")
- pipe.Expire("tx_pipelined_counter", time.Hour)
- return nil
- })
- fmt.Println(incr.Val(), err)
- // Output: 1 <nil>
-}
-
-func ExampleClient_TxPipeline() {
- pipe := client.TxPipeline()
-
- incr := pipe.Incr("tx_pipeline_counter")
- pipe.Expire("tx_pipeline_counter", time.Hour)
-
- // Execute
- //
- // MULTI
- // INCR pipeline_counter
- // EXPIRE pipeline_counts 3600
- // EXEC
- //
- // using one client-server roundtrip.
- _, err := pipe.Exec()
- fmt.Println(incr.Val(), err)
- // Output: 1 <nil>
-}
-
-func ExampleClient_Watch() {
- var incr func(string) error
-
- // Transactionally increments key using GET and SET commands.
- incr = func(key string) error {
- err := client.Watch(func(tx *redis.Tx) error {
- n, err := tx.Get(key).Int64()
- if err != nil && err != redis.Nil {
- return err
- }
-
- _, err = tx.Pipelined(func(pipe redis.Pipeliner) error {
- pipe.Set(key, strconv.FormatInt(n+1, 10), 0)
- return nil
- })
- return err
- }, key)
- if err == redis.TxFailedErr {
- return incr(key)
- }
- return err
- }
-
- var wg sync.WaitGroup
- for i := 0; i < 100; i++ {
- wg.Add(1)
- go func() {
- defer wg.Done()
-
- err := incr("counter3")
- if err != nil {
- panic(err)
- }
- }()
- }
- wg.Wait()
-
- n, err := client.Get("counter3").Int64()
- fmt.Println(n, err)
- // Output: 100 <nil>
-}
-
-func ExamplePubSub() {
- pubsub := client.Subscribe("mychannel1")
- defer pubsub.Close()
-
- // Wait for subscription to be created before publishing message.
- subscr, err := pubsub.ReceiveTimeout(time.Second)
- if err != nil {
- panic(err)
- }
- fmt.Println(subscr)
-
- err = client.Publish("mychannel1", "hello").Err()
- if err != nil {
- panic(err)
- }
-
- msg, err := pubsub.ReceiveMessage()
- if err != nil {
- panic(err)
- }
-
- fmt.Println(msg.Channel, msg.Payload)
- // Output: subscribe: mychannel1
- // mychannel1 hello
-}
-
-func ExamplePubSub_Receive() {
- pubsub := client.Subscribe("mychannel2")
- defer pubsub.Close()
-
- for i := 0; i < 2; i++ {
- // ReceiveTimeout is a low level API. Use ReceiveMessage instead.
- msgi, err := pubsub.ReceiveTimeout(time.Second)
- if err != nil {
- break
- }
-
- switch msg := msgi.(type) {
- case *redis.Subscription:
- fmt.Println("subscribed to", msg.Channel)
-
- _, err := client.Publish("mychannel2", "hello").Result()
- if err != nil {
- panic(err)
- }
- case *redis.Message:
- fmt.Println("received", msg.Payload, "from", msg.Channel)
- default:
- panic("unreached")
- }
- }
-
- // sent message to 1 client
- // received hello from mychannel2
-}
-
-func ExampleScript() {
- IncrByXX := redis.NewScript(`
- if redis.call("GET", KEYS[1]) ~= false then
- return redis.call("INCRBY", KEYS[1], ARGV[1])
- end
- return false
- `)
-
- n, err := IncrByXX.Run(client, []string{"xx_counter"}, 2).Result()
- fmt.Println(n, err)
-
- err = client.Set("xx_counter", "40", 0).Err()
- if err != nil {
- panic(err)
- }
-
- n, err = IncrByXX.Run(client, []string{"xx_counter"}, 2).Result()
- fmt.Println(n, err)
-
- // Output: <nil> redis: nil
- // 42 <nil>
-}
-
-func Example_customCommand() {
- Get := func(client *redis.Client, key string) *redis.StringCmd {
- cmd := redis.NewStringCmd("get", key)
- client.Process(cmd)
- return cmd
- }
-
- v, err := Get(client, "key_does_not_exist").Result()
- fmt.Printf("%q %s", v, err)
- // Output: "" redis: nil
-}
-
-func ExampleScanIterator() {
- iter := client.Scan(0, "", 0).Iterator()
- for iter.Next() {
- fmt.Println(iter.Val())
- }
- if err := iter.Err(); err != nil {
- panic(err)
- }
-}
-
-func ExampleScanCmd_Iterator() {
- iter := client.Scan(0, "", 0).Iterator()
- for iter.Next() {
- fmt.Println(iter.Val())
- }
- if err := iter.Err(); err != nil {
- panic(err)
- }
-}
-
-func ExampleNewUniversalClient_simple() {
- client := redis.NewUniversalClient(&redis.UniversalOptions{
- Addrs: []string{":6379"},
- })
- defer client.Close()
-
- client.Ping()
-}
-
-func ExampleNewUniversalClient_failover() {
- client := redis.NewUniversalClient(&redis.UniversalOptions{
- MasterName: "master",
- Addrs: []string{":26379"},
- })
- defer client.Close()
-
- client.Ping()
-}
-
-func ExampleNewUniversalClient_cluster() {
- client := redis.NewUniversalClient(&redis.UniversalOptions{
- Addrs: []string{":7000", ":7001", ":7002", ":7003", ":7004", ":7005"},
- })
- defer client.Close()
-
- client.Ping()
-}