| Index: service/datastore/pls_test.go
|
| diff --git a/service/datastore/pls_test.go b/service/datastore/pls_test.go
|
| index 322107e8521bf212169cbd88a78a6aa8fec797de..92ebffcf0b4521a9b5bc4f3912a24e840aa59157 100644
|
| --- a/service/datastore/pls_test.go
|
| +++ b/service/datastore/pls_test.go
|
| @@ -1886,6 +1886,29 @@ func TestMeta(t *testing.T) {
|
| So(v, ShouldEqual, int64(10))
|
| })
|
|
|
| + Convey("Derived metadata fields", func() {
|
| + type DerivedString string
|
| + type DerivedInt int16
|
| + type DerivedStruct struct {
|
| + ID DerivedString `gae:"$id"`
|
| + Foo DerivedInt `gae:"$foo"`
|
| + }
|
| + o := &DerivedStruct{"hello", 10}
|
| + mgs := getMGS(o)
|
| + v, err := mgs.GetMeta("id")
|
| + So(err, ShouldBeNil)
|
| + So(v, ShouldEqual, "hello")
|
| +
|
| + v, err = mgs.GetMeta("foo")
|
| + So(err, ShouldBeNil)
|
| + So(v, ShouldEqual, int64(10))
|
| +
|
| + So(mgs.SetMeta("id", "nerds"), ShouldBeNil)
|
| + So(mgs.SetMeta("foo", 20), ShouldBeNil)
|
| + So(o.ID, ShouldEqual, DerivedString("nerds"))
|
| + So(o.Foo, ShouldEqual, DerivedInt(20))
|
| + })
|
| +
|
| Convey("Bad default meta type", func() {
|
| type BadDefault struct {
|
| Val time.Time `gae:"$meta,tomorrow"`
|
|
|