Skip to content

Commit

Permalink
Replaced old Query/Scan API with the newer in tests
Browse files Browse the repository at this point in the history
  • Loading branch information
khaf committed Jun 11, 2015
1 parent fe247ea commit ee0dc4e
Show file tree
Hide file tree
Showing 4 changed files with 70 additions and 94 deletions.
34 changes: 19 additions & 15 deletions client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -560,10 +560,11 @@ var _ = Describe("Aerospike", func() {
Expect(err).ToNot(HaveOccurred())

// make sure the
for r := range recordset.Records {
if bytes.Equal(key.Digest(), r.Key.Digest()) {
Expect(r.Key.Value()).To(Equal(key.Value()))
Expect(r.Bins).To(Equal(rec.Bins))
for r := range recordset.Results() {
Expect(r.Err).ToNot(HaveOccurred())
if bytes.Equal(key.Digest(), r.Record.Key.Digest()) {
Expect(r.Record.Key.Value()).To(Equal(key.Value()))
Expect(r.Record.Bins).To(Equal(rec.Bins))
}
}
})
Expand Down Expand Up @@ -814,10 +815,11 @@ var _ = Describe("Aerospike", func() {
Expect(err).ToNot(HaveOccurred())

// make sure the
for r := range recordset.Records {
if bytes.Equal(key.Digest(), r.Key.Digest()) {
Expect(r.Key.Value()).To(Equal(key.Value()))
Expect(r.Bins).To(Equal(rec.Bins))
for r := range recordset.Results() {
Expect(r.Err).ToNot(HaveOccurred())
if bytes.Equal(key.Digest(), r.Record.Key.Digest()) {
Expect(r.Record.Key.Value()).To(Equal(key.Value()))
Expect(r.Record.Bins).To(Equal(rec.Bins))
}
}
})
Expand All @@ -840,9 +842,10 @@ var _ = Describe("Aerospike", func() {
Expect(err).ToNot(HaveOccurred())

// make sure the key is not saved
for r := range recordset.Records {
if bytes.Equal(key.Digest(), r.Key.Digest()) {
Expect(r.Key.Value()).To(BeNil())
for r := range recordset.Results() {
Expect(r.Err).ToNot(HaveOccurred())
if bytes.Equal(key.Digest(), r.Record.Key.Digest()) {
Expect(r.Record.Key.Value()).To(BeNil())
}
}

Expand All @@ -858,10 +861,11 @@ var _ = Describe("Aerospike", func() {
Expect(err).ToNot(HaveOccurred())

// make sure the
for r := range recordset.Records {
if bytes.Equal(key.Digest(), r.Key.Digest()) {
Expect(r.Key.Value()).To(Equal(key.Value()))
Expect(r.Bins).To(Equal(rec.Bins))
for r := range recordset.Results() {
Expect(r.Err).ToNot(HaveOccurred())
if bytes.Equal(key.Digest(), r.Record.Key.Digest()) {
Expect(r.Record.Key.Value()).To(Equal(key.Value()))
Expect(r.Record.Bins).To(Equal(rec.Bins))
}
}
})
Expand Down
79 changes: 29 additions & 50 deletions query_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -66,30 +66,23 @@ var _ = Describe("Query operations", func() {
// read all records from the channel and make sure all of them are returned
var checkResults = func(recordset *Recordset, cancelCnt int) {
counter := 0
L:
for {
select {
case rec, chanOpen := <-recordset.Records:
if rec == nil && !chanOpen {
break L
}
key, exists := keys[string(rec.Key.Digest())]

Expect(exists).To(Equal(true))
Expect(key.Value().GetObject()).To(Equal(rec.Key.Value().GetObject()))
Expect(rec.Bins[bin1.Name]).To(Equal(bin1.Value.GetObject()))
Expect(rec.Bins[bin2.Name]).To(Equal(bin2.Value.GetObject()))

delete(keys, string(rec.Key.Digest()))

counter++
// cancel scan abruptly
if cancelCnt != 0 && counter == cancelCnt {
recordset.Close()
}

case err := <-recordset.Errors:
panic(err)
for res := range recordset.Results() {
Expect(res.Err).ToNot(HaveOccurred())
rec := res.Record

key, exists := keys[string(rec.Key.Digest())]

Expect(exists).To(Equal(true))
Expect(key.Value().GetObject()).To(Equal(rec.Key.Value().GetObject()))
Expect(rec.Bins[bin1.Name]).To(Equal(bin1.Value.GetObject()))
Expect(rec.Bins[bin2.Name]).To(Equal(bin2.Value.GetObject()))

delete(keys, string(rec.Key.Digest()))

counter++
// cancel scan abruptly
if cancelCnt != 0 && counter == cancelCnt {
recordset.Close()
}
}

Expand Down Expand Up @@ -144,20 +137,13 @@ var _ = Describe("Query operations", func() {
Expect(err).ToNot(HaveOccurred())

cnt := 0
L:
for {
select {
case rec, chanOpen := <-recordset.Records:
if !chanOpen {
break L
}
cnt++
_, exists := keys[string(rec.Key.Digest())]
Expect(exists).To(Equal(true))
Expect(rec.Bins[bin3.Name]).To(BeNumerically("<=", math.MaxInt16/2))
case err := <-recordset.Errors:
panic(err)
}
for res := range recordset.Results() {
Expect(res.Err).ToNot(HaveOccurred())
rec := res.Record
cnt++
_, exists := keys[string(rec.Key.Digest())]
Expect(exists).To(Equal(true))
Expect(rec.Bins[bin3.Name]).To(BeNumerically("<=", math.MaxInt16/2))
}

Expect(cnt).To(BeNumerically(">", 0))
Expand Down Expand Up @@ -206,18 +192,11 @@ var _ = Describe("Query operations", func() {

recs := []interface{}{}
// consume recordset and check errors
L:
for {
select {
case rec, chanOpen := <-recordset.Records:
if !chanOpen {
break L
}
Expect(rec).ToNot(BeNil())
recs = append(recs, rec.Bins[bin3.Name])
case err := <-recordset.Errors:
panic(err)
}
for res := range recordset.Results() {
Expect(res.Err).ToNot(HaveOccurred())
rec := res.Record
Expect(rec).ToNot(BeNil())
recs = append(recs, rec.Bins[bin3.Name])
}

// there should be at least one result
Expand Down
41 changes: 16 additions & 25 deletions scan_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,31 +49,22 @@ var _ = Describe("Scan operations", func() {
// if cancelCnt is set, it will cancel the scan after specified record count
var checkResults = func(recordset *Recordset, cancelCnt int) {
counter := 0
L:
for {
select {
case rec := <-recordset.Records:
if rec == nil {
break L
}
key, exists := keys[string(rec.Key.Digest())]

Expect(exists).To(Equal(true))
Expect(key.Value().GetObject()).To(Equal(rec.Key.Value().GetObject()))
Expect(rec.Bins[bin1.Name]).To(Equal(bin1.Value.GetObject()))
Expect(rec.Bins[bin2.Name]).To(Equal(bin2.Value.GetObject()))

delete(keys, string(rec.Key.Digest()))

counter++
// cancel scan abruptly
if cancelCnt != 0 && counter == cancelCnt {
recordset.Close()
}

case err := <-recordset.Errors:
// Expect(error) returns humongous error message
panic(err)
for res := range recordset.Results() {
Expect(res.Err).ToNot(HaveOccurred())
rec := res.Record
key, exists := keys[string(rec.Key.Digest())]

Expect(exists).To(Equal(true))
Expect(key.Value().GetObject()).To(Equal(rec.Key.Value().GetObject()))
Expect(rec.Bins[bin1.Name]).To(Equal(bin1.Value.GetObject()))
Expect(rec.Bins[bin2.Name]).To(Equal(bin2.Value.GetObject()))

delete(keys, string(rec.Key.Digest()))

counter++
// cancel scan abruptly
if cancelCnt != 0 && counter == cancelCnt {
recordset.Close()
}
}

Expand Down
10 changes: 6 additions & 4 deletions udf_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -157,8 +157,9 @@ var _ = Describe("UDF/Query tests", func() {
recordset, err := client.ScanAll(nil, ns, set)
Expect(err).ToNot(HaveOccurred())

for fullRec := range recordset.Records {
Expect(fullRec.Bins[bin2.Name]).To(Equal(bin1.Value.GetObject().(int) / (i * 2)))
for fullRec := range recordset.Results() {
Expect(fullRec.Err).ToNot(HaveOccurred())
Expect(fullRec.Record.Bins[bin2.Name]).To(Equal(bin1.Value.GetObject().(int) / (i * 2)))
}
}
})
Expand Down Expand Up @@ -192,10 +193,11 @@ var _ = Describe("UDF/Query tests", func() {
Expect(err).ToNot(HaveOccurred())

i := 0
for fullRec := range recordset.Records {
for fullRec := range recordset.Results() {
Expect(fullRec.Err).ToNot(HaveOccurred())
i++
// only one record should be returned
Expect(fullRec.Bins[bin1.Name]).To(Equal(math.MaxInt16 + 1))
Expect(fullRec.Record.Bins[bin1.Name]).To(Equal(math.MaxInt16 + 1))
}
Expect(i).To(Equal(1))
})
Expand Down

0 comments on commit ee0dc4e

Please sign in to comment.