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 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 So(rds.GetMulti(nil, nil, nil), ShouldBeNil) | 61 So(rds.GetMulti(nil, nil, nil), ShouldBeNil) |
62 So(rds.GetMulti([]Key{mkKey("", "", "", "")}, nil, nil).
Error(), ShouldContainSubstring, "is nil") | 62 So(rds.GetMulti([]Key{mkKey("", "", "", "")}, nil, nil).
Error(), ShouldContainSubstring, "is nil") |
63 | 63 |
64 // this is in the wrong aid/ns | 64 // this is in the wrong aid/ns |
65 keys := []Key{mkKey("wut", "wrong", "Kind", 1)} | 65 keys := []Key{mkKey("wut", "wrong", "Kind", 1)} |
66 So(rds.GetMulti(keys, nil, func(pm PropertyMap, err erro
r) { | 66 So(rds.GetMulti(keys, nil, func(pm PropertyMap, err erro
r) { |
67 So(pm, ShouldBeNil) | 67 So(pm, ShouldBeNil) |
68 So(err, ShouldEqual, ErrInvalidKey) | 68 So(err, ShouldEqual, ErrInvalidKey) |
69 }), ShouldBeNil) | 69 }), ShouldBeNil) |
70 | 70 |
71 » » » keys[0] = mkKey("aid", "ns", "Kind", 1) | 71 » » » keys[0] = mkKey("s~aid", "ns", "Kind", 1) |
72 hit := false | 72 hit := false |
73 So(func() { | 73 So(func() { |
74 rds.GetMulti(keys, nil, func(pm PropertyMap, err
error) { | 74 rds.GetMulti(keys, nil, func(pm PropertyMap, err
error) { |
75 hit = true | 75 hit = true |
76 }) | 76 }) |
77 }, ShouldPanic) | 77 }, ShouldPanic) |
78 So(hit, ShouldBeFalse) | 78 So(hit, ShouldBeFalse) |
79 }) | 79 }) |
80 | 80 |
81 Convey("PutMulti", func() { | 81 Convey("PutMulti", func() { |
82 keys := []Key{} | 82 keys := []Key{} |
83 vals := []PropertyMap{{}} | 83 vals := []PropertyMap{{}} |
84 So(rds.PutMulti(keys, vals, nil).Error(), | 84 So(rds.PutMulti(keys, vals, nil).Error(), |
85 ShouldContainSubstring, "mismatched keys/vals") | 85 ShouldContainSubstring, "mismatched keys/vals") |
86 So(rds.PutMulti(nil, nil, nil), ShouldBeNil) | 86 So(rds.PutMulti(nil, nil, nil), ShouldBeNil) |
87 | 87 |
88 badParent := mkKey("aid", "ns", "Wut", 0) | 88 badParent := mkKey("aid", "ns", "Wut", 0) |
89 keys = append(keys, mkKey("aid", "ns", "Kind", 0, badPar
ent)) | 89 keys = append(keys, mkKey("aid", "ns", "Kind", 0, badPar
ent)) |
90 So(rds.PutMulti(keys, vals, nil).Error(), ShouldContainS
ubstring, "callback is nil") | 90 So(rds.PutMulti(keys, vals, nil).Error(), ShouldContainS
ubstring, "callback is nil") |
91 | 91 |
92 So(rds.PutMulti(keys, vals, func(k Key, err error) { | 92 So(rds.PutMulti(keys, vals, func(k Key, err error) { |
93 So(k, ShouldBeNil) | 93 So(k, ShouldBeNil) |
94 So(err, ShouldEqual, ErrInvalidKey) | 94 So(err, ShouldEqual, ErrInvalidKey) |
95 }), ShouldBeNil) | 95 }), ShouldBeNil) |
96 | 96 |
97 » » » keys = []Key{mkKey("aid", "ns", "Kind", 0)} | 97 » » » keys = []Key{mkKey("s~aid", "ns", "Kind", 0)} |
98 vals = []PropertyMap{nil} | 98 vals = []PropertyMap{nil} |
99 So(rds.PutMulti(keys, vals, func(k Key, err error) { | 99 So(rds.PutMulti(keys, vals, func(k Key, err error) { |
100 So(k, ShouldBeNil) | 100 So(k, ShouldBeNil) |
101 So(err.Error(), ShouldContainSubstring, "nil val
s entry") | 101 So(err.Error(), ShouldContainSubstring, "nil val
s entry") |
102 }), ShouldBeNil) | 102 }), ShouldBeNil) |
103 | 103 |
104 vals = []PropertyMap{{}} | 104 vals = []PropertyMap{{}} |
105 hit := false | 105 hit := false |
106 So(func() { | 106 So(func() { |
107 rds.PutMulti(keys, vals, func(k Key, err error)
{ | 107 rds.PutMulti(keys, vals, func(k Key, err error)
{ |
108 hit = true | 108 hit = true |
109 }) | 109 }) |
110 }, ShouldPanic) | 110 }, ShouldPanic) |
111 So(hit, ShouldBeFalse) | 111 So(hit, ShouldBeFalse) |
112 }) | 112 }) |
113 | 113 |
114 Convey("DeleteMulti", func() { | 114 Convey("DeleteMulti", func() { |
115 So(rds.DeleteMulti(nil, nil), ShouldBeNil) | 115 So(rds.DeleteMulti(nil, nil), ShouldBeNil) |
116 So(rds.DeleteMulti([]Key{mkKey("", "", "", "")}, nil).Er
ror(), ShouldContainSubstring, "is nil") | 116 So(rds.DeleteMulti([]Key{mkKey("", "", "", "")}, nil).Er
ror(), ShouldContainSubstring, "is nil") |
117 So(rds.DeleteMulti([]Key{mkKey("", "", "", "")}, func(er
r error) { | 117 So(rds.DeleteMulti([]Key{mkKey("", "", "", "")}, func(er
r error) { |
118 So(err, ShouldEqual, ErrInvalidKey) | 118 So(err, ShouldEqual, ErrInvalidKey) |
119 }), ShouldBeNil) | 119 }), ShouldBeNil) |
120 | 120 |
121 hit := false | 121 hit := false |
122 So(func() { | 122 So(func() { |
123 » » » » rds.DeleteMulti([]Key{mkKey("aid", "ns", "Kind",
1)}, func(error) { | 123 » » » » rds.DeleteMulti([]Key{mkKey("s~aid", "ns", "Kind
", 1)}, func(error) { |
124 hit = true | 124 hit = true |
125 }) | 125 }) |
126 }, ShouldPanic) | 126 }, ShouldPanic) |
127 So(hit, ShouldBeFalse) | 127 So(hit, ShouldBeFalse) |
128 }) | 128 }) |
129 | 129 |
130 }) | 130 }) |
131 } | 131 } |
OLD | NEW |