| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // adapted from github.com/golang/appengine/datastore | 5 // adapted from github.com/golang/appengine/datastore |
| 6 | 6 |
| 7 package datastore | 7 package datastore |
| 8 | 8 |
| 9 import ( | 9 import ( |
| 10 "testing" | 10 "testing" |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 }) | 43 }) |
| 44 | 44 |
| 45 Convey("Run", func() { | 45 Convey("Run", func() { |
| 46 So(rds.Run(nil, nil).Error(), ShouldContainSubstring, "q
uery is nil") | 46 So(rds.Run(nil, nil).Error(), ShouldContainSubstring, "q
uery is nil") |
| 47 fq, err := NewQuery("sup").Finalize() | 47 fq, err := NewQuery("sup").Finalize() |
| 48 So(err, ShouldBeNil) | 48 So(err, ShouldBeNil) |
| 49 | 49 |
| 50 So(rds.Run(fq, nil).Error(), ShouldContainSubstring, "ca
llback is nil") | 50 So(rds.Run(fq, nil).Error(), ShouldContainSubstring, "ca
llback is nil") |
| 51 hit := false | 51 hit := false |
| 52 So(func() { | 52 So(func() { |
| 53 » » » » So(rds.Run(fq, func(*Key, PropertyMap, CursorCB)
bool { | 53 » » » » So(rds.Run(fq, func(*Key, PropertyMap, CursorCB)
error { |
| 54 hit = true | 54 hit = true |
| 55 » » » » » return true | 55 » » » » » return nil |
| 56 }), ShouldBeNil) | 56 }), ShouldBeNil) |
| 57 }, ShouldPanic) | 57 }, ShouldPanic) |
| 58 So(hit, ShouldBeFalse) | 58 So(hit, ShouldBeFalse) |
| 59 }) | 59 }) |
| 60 | 60 |
| 61 Convey("GetMulti", func() { | 61 Convey("GetMulti", func() { |
| 62 So(rds.GetMulti(nil, nil, nil), ShouldBeNil) | 62 So(rds.GetMulti(nil, nil, nil), ShouldBeNil) |
| 63 So(rds.GetMulti([]*Key{mkKey("", "", "", "")}, nil, nil)
.Error(), ShouldContainSubstring, "is nil") | 63 So(rds.GetMulti([]*Key{mkKey("", "", "", "")}, nil, nil)
.Error(), ShouldContainSubstring, "is nil") |
| 64 | 64 |
| 65 // this is in the wrong aid/ns | 65 // this is in the wrong aid/ns |
| 66 keys := []*Key{MakeKey("wut", "wrong", "Kind", 1)} | 66 keys := []*Key{MakeKey("wut", "wrong", "Kind", 1)} |
| 67 » » » So(rds.GetMulti(keys, nil, func(pm PropertyMap, err erro
r) { | 67 » » » So(rds.GetMulti(keys, nil, func(pm PropertyMap, err erro
r) error { |
| 68 So(pm, ShouldBeNil) | 68 So(pm, ShouldBeNil) |
| 69 So(err, ShouldEqual, ErrInvalidKey) | 69 So(err, ShouldEqual, ErrInvalidKey) |
| 70 return nil |
| 70 }), ShouldBeNil) | 71 }), ShouldBeNil) |
| 71 | 72 |
| 72 keys[0] = mkKey("Kind", 1) | 73 keys[0] = mkKey("Kind", 1) |
| 73 hit := false | 74 hit := false |
| 74 So(func() { | 75 So(func() { |
| 75 » » » » So(rds.GetMulti(keys, nil, func(pm PropertyMap,
err error) { | 76 » » » » So(rds.GetMulti(keys, nil, func(pm PropertyMap,
err error) error { |
| 76 hit = true | 77 hit = true |
| 78 return nil |
| 77 }), ShouldBeNil) | 79 }), ShouldBeNil) |
| 78 }, ShouldPanic) | 80 }, ShouldPanic) |
| 79 So(hit, ShouldBeFalse) | 81 So(hit, ShouldBeFalse) |
| 80 }) | 82 }) |
| 81 | 83 |
| 82 Convey("PutMulti", func() { | 84 Convey("PutMulti", func() { |
| 83 keys := []*Key{} | 85 keys := []*Key{} |
| 84 vals := []PropertyMap{{}} | 86 vals := []PropertyMap{{}} |
| 85 So(rds.PutMulti(keys, vals, nil).Error(), | 87 So(rds.PutMulti(keys, vals, nil).Error(), |
| 86 ShouldContainSubstring, "mismatched keys/vals") | 88 ShouldContainSubstring, "mismatched keys/vals") |
| 87 So(rds.PutMulti(nil, nil, nil), ShouldBeNil) | 89 So(rds.PutMulti(nil, nil, nil), ShouldBeNil) |
| 88 | 90 |
| 89 keys = append(keys, mkKey("aid", "ns", "Wut", 0, "Kind",
0)) | 91 keys = append(keys, mkKey("aid", "ns", "Wut", 0, "Kind",
0)) |
| 90 So(rds.PutMulti(keys, vals, nil).Error(), ShouldContainS
ubstring, "callback is nil") | 92 So(rds.PutMulti(keys, vals, nil).Error(), ShouldContainS
ubstring, "callback is nil") |
| 91 | 93 |
| 92 » » » So(rds.PutMulti(keys, vals, func(k *Key, err error) { | 94 » » » So(rds.PutMulti(keys, vals, func(k *Key, err error) erro
r { |
| 93 So(k, ShouldBeNil) | 95 So(k, ShouldBeNil) |
| 94 So(err, ShouldEqual, ErrInvalidKey) | 96 So(err, ShouldEqual, ErrInvalidKey) |
| 97 return nil |
| 95 }), ShouldBeNil) | 98 }), ShouldBeNil) |
| 96 | 99 |
| 97 keys = []*Key{mkKey("s~aid", "ns", "Kind", 0)} | 100 keys = []*Key{mkKey("s~aid", "ns", "Kind", 0)} |
| 98 vals = []PropertyMap{nil} | 101 vals = []PropertyMap{nil} |
| 99 » » » So(rds.PutMulti(keys, vals, func(k *Key, err error) { | 102 » » » So(rds.PutMulti(keys, vals, func(k *Key, err error) erro
r { |
| 100 So(k, ShouldBeNil) | 103 So(k, ShouldBeNil) |
| 101 So(err.Error(), ShouldContainSubstring, "nil val
s entry") | 104 So(err.Error(), ShouldContainSubstring, "nil val
s entry") |
| 105 return nil |
| 102 }), ShouldBeNil) | 106 }), ShouldBeNil) |
| 103 | 107 |
| 104 vals = []PropertyMap{{}} | 108 vals = []PropertyMap{{}} |
| 105 hit := false | 109 hit := false |
| 106 So(func() { | 110 So(func() { |
| 107 » » » » So(rds.PutMulti(keys, vals, func(k *Key, err err
or) { | 111 » » » » So(rds.PutMulti(keys, vals, func(k *Key, err err
or) error { |
| 108 hit = true | 112 hit = true |
| 113 return nil |
| 109 }), ShouldBeNil) | 114 }), ShouldBeNil) |
| 110 }, ShouldPanic) | 115 }, ShouldPanic) |
| 111 So(hit, ShouldBeFalse) | 116 So(hit, ShouldBeFalse) |
| 112 }) | 117 }) |
| 113 | 118 |
| 114 Convey("DeleteMulti", func() { | 119 Convey("DeleteMulti", func() { |
| 115 So(rds.DeleteMulti(nil, nil), ShouldBeNil) | 120 So(rds.DeleteMulti(nil, nil), ShouldBeNil) |
| 116 So(rds.DeleteMulti([]*Key{mkKey("", "", "", "")}, nil).E
rror(), ShouldContainSubstring, "is nil") | 121 So(rds.DeleteMulti([]*Key{mkKey("", "", "", "")}, nil).E
rror(), ShouldContainSubstring, "is nil") |
| 117 » » » So(rds.DeleteMulti([]*Key{mkKey("", "", "", "")}, func(e
rr error) { | 122 » » » So(rds.DeleteMulti([]*Key{mkKey("", "", "", "")}, func(e
rr error) error { |
| 118 So(err, ShouldEqual, ErrInvalidKey) | 123 So(err, ShouldEqual, ErrInvalidKey) |
| 124 return nil |
| 119 }), ShouldBeNil) | 125 }), ShouldBeNil) |
| 120 | 126 |
| 121 hit := false | 127 hit := false |
| 122 So(func() { | 128 So(func() { |
| 123 » » » » So(rds.DeleteMulti([]*Key{mkKey("s~aid", "ns", "
Kind", 1)}, func(error) { | 129 » » » » So(rds.DeleteMulti([]*Key{mkKey("s~aid", "ns", "
Kind", 1)}, func(error) error { |
| 124 hit = true | 130 hit = true |
| 131 return nil |
| 125 }), ShouldBeNil) | 132 }), ShouldBeNil) |
| 126 }, ShouldPanic) | 133 }, ShouldPanic) |
| 127 So(hit, ShouldBeFalse) | 134 So(hit, ShouldBeFalse) |
| 128 }) | 135 }) |
| 129 | 136 |
| 130 }) | 137 }) |
| 131 } | 138 } |
| OLD | NEW |