| 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 package memory | 5 package memory |
| 6 | 6 |
| 7 import ( | 7 import ( |
| 8 "fmt" | 8 "fmt" |
| 9 "testing" | 9 "testing" |
| 10 "time" | 10 "time" |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 }) | 93 }) |
| 94 | 94 |
| 95 Convey("Deleting entities from a nonexistant namespace w
orks", func() { | 95 Convey("Deleting entities from a nonexistant namespace w
orks", func() { |
| 96 aid := infoS.Get(c).FullyQualifiedAppID() | 96 aid := infoS.Get(c).FullyQualifiedAppID() |
| 97 keys := make([]*dsS.Key, 10) | 97 keys := make([]*dsS.Key, 10) |
| 98 for i := range keys { | 98 for i := range keys { |
| 99 keys[i] = ds.MakeKey(aid, "noexist", "Ki
nd", i+1) | 99 keys[i] = ds.MakeKey(aid, "noexist", "Ki
nd", i+1) |
| 100 } | 100 } |
| 101 So(ds.DeleteMulti(keys), ShouldBeNil) | 101 So(ds.DeleteMulti(keys), ShouldBeNil) |
| 102 count := 0 | 102 count := 0 |
| 103 » » » » So(ds.Raw().DeleteMulti(keys, func(err error) { | 103 » » » » So(ds.Raw().DeleteMulti(keys, func(err error) er
ror { |
| 104 count++ | 104 count++ |
| 105 So(err, ShouldBeNil) | 105 So(err, ShouldBeNil) |
| 106 return nil |
| 106 }), ShouldBeNil) | 107 }), ShouldBeNil) |
| 107 So(count, ShouldEqual, len(keys)) | 108 So(count, ShouldEqual, len(keys)) |
| 108 }) | 109 }) |
| 109 | 110 |
| 110 Convey("with multiple puts", func() { | 111 Convey("with multiple puts", func() { |
| 111 So(testGetMeta(c, k), ShouldEqual, 1) | 112 So(testGetMeta(c, k), ShouldEqual, 1) |
| 112 | 113 |
| 113 foos := make([]Foo, 10) | 114 foos := make([]Foo, 10) |
| 114 for i := range foos { | 115 for i := range foos { |
| 115 foos[i].Val = 10 | 116 foos[i].Val = 10 |
| 116 foos[i].Parent = k | 117 foos[i].Parent = k |
| 117 } | 118 } |
| 118 So(ds.PutMulti(foos), ShouldBeNil) | 119 So(ds.PutMulti(foos), ShouldBeNil) |
| 119 So(testGetMeta(c, k), ShouldEqual, 11) | 120 So(testGetMeta(c, k), ShouldEqual, 11) |
| 120 | 121 |
| 121 keys := make([]*dsS.Key, len(foos)) | 122 keys := make([]*dsS.Key, len(foos)) |
| 122 for i, f := range foos { | 123 for i, f := range foos { |
| 123 keys[i] = ds.KeyForObj(&f) | 124 keys[i] = ds.KeyForObj(&f) |
| 124 } | 125 } |
| 125 | 126 |
| 126 Convey("ensure that group versions persist acros
s deletes", func() { | 127 Convey("ensure that group versions persist acros
s deletes", func() { |
| 127 So(ds.DeleteMulti(append(keys, k)), Shou
ldBeNil) | 128 So(ds.DeleteMulti(append(keys, k)), Shou
ldBeNil) |
| 128 | 129 |
| 129 ds.Testable().CatchupIndexes() | 130 ds.Testable().CatchupIndexes() |
| 130 | 131 |
| 131 count := 0 | 132 count := 0 |
| 132 » » » » » So(ds.Run(dsS.NewQuery(""), func(_ *dsS.
Key, _ dsS.CursorCB) bool { | 133 » » » » » So(ds.Run(dsS.NewQuery(""), func(_ *dsS.
Key) { |
| 133 count++ | 134 count++ |
| 134 return true | |
| 135 }), ShouldBeNil) | 135 }), ShouldBeNil) |
| 136 So(count, ShouldEqual, 3) | 136 So(count, ShouldEqual, 3) |
| 137 | 137 |
| 138 So(testGetMeta(c, k), ShouldEqual, 22) | 138 So(testGetMeta(c, k), ShouldEqual, 22) |
| 139 | 139 |
| 140 So(ds.Put(&Foo{ID: 1}), ShouldBeNil) | 140 So(ds.Put(&Foo{ID: 1}), ShouldBeNil) |
| 141 So(testGetMeta(c, k), ShouldEqual, 23) | 141 So(testGetMeta(c, k), ShouldEqual, 23) |
| 142 }) | 142 }) |
| 143 | 143 |
| 144 Convey("can Get", func() { | 144 Convey("can Get", func() { |
| (...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 624 So(ds.Put(&Model{ID: 1, Value: []int64{20, 30}}), ShouldBeNil) | 624 So(ds.Put(&Model{ID: 1, Value: []int64{20, 30}}), ShouldBeNil) |
| 625 | 625 |
| 626 vals := []dsS.PropertyMap{} | 626 vals := []dsS.PropertyMap{} |
| 627 So(ds.GetAll(dsS.NewQuery("Model").Project("Value"), &vals), Sho
uldBeNil) | 627 So(ds.GetAll(dsS.NewQuery("Model").Project("Value"), &vals), Sho
uldBeNil) |
| 628 So(len(vals), ShouldEqual, 2) | 628 So(len(vals), ShouldEqual, 2) |
| 629 | 629 |
| 630 So(vals[0]["Value"][0].Value(), ShouldEqual, 20) | 630 So(vals[0]["Value"][0].Value(), ShouldEqual, 20) |
| 631 So(vals[1]["Value"][0].Value(), ShouldEqual, 30) | 631 So(vals[1]["Value"][0].Value(), ShouldEqual, 30) |
| 632 }) | 632 }) |
| 633 } | 633 } |
| OLD | NEW |