ctx, done, err := aetest.NewContext()
if err != nil {
t.Fatal(err)
}
defer done()
g := goon.FromContext(ctx)
newUser := model.User{}
_, err = g.Put(newUser)
if err != nil {
t.Fatal(err)
}
みたいなコードを実行した後、テスト対象のコードでnewUserを参照しようとすると、データが登録されておらず半日ハマった。
Google App Engine Datastore - Testing Queries fails
ここに書いてあるとおり100msまたせたらちゃんとデータが登録できてテストも通った。要は、
ctx, done, err := aetest.NewContext()
if err != nil {
t.Fatal(err)
}
defer done()
g := goon.FromContext(ctx)
newUser := model.User{}
_, err = g.Put(newUser)
if err != nil {
t.Fatal(err)
}
time.Sleep(100 * time.Millisecond)
なんて原始的な・・・・(英語読めないので流し読み)