Example #1
0
		})
	})

	Describe("#Decr", func() {
		It("calls DECR on the redis connection", func() {
			var decrCalled bool
			fakeConnection.RespondToDo(func(command string, args ...interface{}) (interface{}, error) {
				decrCalled = true
				Expect(command).To(Equal("DECR"))
				Expect(args[0]).To(HaveLen(1))
				Expect(args[0].([]interface{})[0]).To(Equal("my key"))

				return int64(42), nil
			})

			val, err := commander.Decr("my key")
			Expect(err).To(BeNil())
			Expect(decrCalled).To(BeTrue())
			Expect(val).To(Equal(42))
		})

		It("returns the redis error", func() {
			fakeConnection.RespondToDo(func(command string, args ...interface{}) (interface{}, error) {
				return nil, errors.New("decr error")
			})

			_, err := commander.Decr("my key")
			Expect(err.Error()).To(Equal("decr error"))
		})
	})