func ExampleString() { c, err := dial() if err != nil { panic(err) } defer c.Close() c.Do("SET", "hello", "world") s, err := redis.String(c.Do("GET", "hello")) fmt.Printf("%#v\n", s) // Output: // "world" }
func TestConnect(t *testing.T) { c, err := redisurl.Connect() if err != nil { t.Errorf("Error returned") } pong, err := redis.String(c.Do("PING")) if err != nil { t.Errorf("Call to PING returned an error: %v", err) } if pong != "PONG" { t.Errorf("Wanted PONG, got %v\n", pong) } }
// This example implements ZPOP as described at // http://redis.io/topics/transactions using WATCH/MULTI/EXEC and scripting. func Example_zpop() { c, err := dial() if err != nil { fmt.Println(err) return } defer c.Close() // Add test data using a pipeline. for i, member := range []string{"red", "blue", "green"} { c.Send("ZADD", "zset", i, member) } if _, err := c.Do(""); err != nil { fmt.Println(err) return } // Pop using WATCH/MULTI/EXEC v, err := zpop(c, "zset") if err != nil { fmt.Println(err) return } fmt.Println(v) // Pop using a script. v, err = redis.String(zpopScript.Do(c, "zset")) if err != nil { fmt.Println(err) return } fmt.Println(v) // Output: // red // blue }
func fetchNote(db redis.Conn, id int64) Note { noteAsJSON, err := redis.String(db.Do("GET", noteKey(id))) check(err) return deserialize(noteAsJSON) }