| OLD | NEW |
| 1 // Copyright 2015 The LUCI Authors. All rights reserved. | 1 // Copyright 2015 The LUCI Authors. All rights reserved. |
| 2 // Use of this source code is governed under the Apache License, Version 2.0 | 2 // Use of this source code is governed under the Apache License, Version 2.0 |
| 3 // that can be found in the LICENSE file. | 3 // that can be found in the LICENSE file. |
| 4 | 4 |
| 5 package dm | 5 package dm |
| 6 | 6 |
| 7 import ( | 7 import ( |
| 8 "testing" | 8 "testing" |
| 9 | 9 |
| 10 "github.com/luci/gae/service/datastore" | 10 "github.com/luci/gae/service/datastore" |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 So(aid.SetDMEncoded("somethingfatsrnt"), ShouldE
rrLike, "unable to parse") | 46 So(aid.SetDMEncoded("somethingfatsrnt"), ShouldE
rrLike, "unable to parse") |
| 47 So(aid.SetDMEncoded("something|cat"), ShouldErrL
ike, `strconv.ParseUint: parsing "cat"`) | 47 So(aid.SetDMEncoded("something|cat"), ShouldErrL
ike, `strconv.ParseUint: parsing "cat"`) |
| 48 So(aid.SetDMEncoded(""), ShouldErrLike, "unable
to parse") | 48 So(aid.SetDMEncoded(""), ShouldErrLike, "unable
to parse") |
| 49 So(aid.SetDMEncoded("somethingffffffff"), Should
ErrLike, "unable to parse Attempt") | 49 So(aid.SetDMEncoded("somethingffffffff"), Should
ErrLike, "unable to parse Attempt") |
| 50 So(aid.FromProperty(datastore.MkPropertyNI(100))
, ShouldErrLike, "wrong type") | 50 So(aid.FromProperty(datastore.MkPropertyNI(100))
, ShouldErrLike, "wrong type") |
| 51 }) | 51 }) |
| 52 | 52 |
| 53 }) | 53 }) |
| 54 }) | 54 }) |
| 55 } | 55 } |
| 56 | |
| 57 func TestExecutionID(t *testing.T) { | |
| 58 t.Parallel() | |
| 59 | |
| 60 Convey("Test Execution_ID DM encoding", t, func() { | |
| 61 Convey("render", func() { | |
| 62 eid := NewExecutionID("", 0, 0) | |
| 63 So(eid.DMEncoded(), ShouldEqual, "|ffffffff|ffffffff") | |
| 64 | |
| 65 eid.Quest = "moo" | |
| 66 So(eid.DMEncoded(), ShouldEqual, "moo|ffffffff|ffffffff"
) | |
| 67 | |
| 68 eid.Id = 10 | |
| 69 So(eid.DMEncoded(), ShouldEqual, "moo|ffffffff|fffffff5"
) | |
| 70 | |
| 71 eid.Attempt = 1 | |
| 72 So(eid.DMEncoded(), ShouldEqual, "moo|fffffffe|fffffff5"
) | |
| 73 | |
| 74 p, err := eid.ToProperty() | |
| 75 So(err, ShouldBeNil) | |
| 76 So(p, ShouldResemble, datastore.MkPropertyNI("moo|ffffff
fe|fffffff5")) | |
| 77 }) | |
| 78 | |
| 79 Convey("parse", func() { | |
| 80 Convey("good", func() { | |
| 81 eid := &Execution_ID{} | |
| 82 So(eid.SetDMEncoded("something|fffffffe|fffffff5
"), ShouldBeNil) | |
| 83 So(eid, ShouldResemble, NewExecutionID("somethin
g", 1, 10)) | |
| 84 | |
| 85 So(eid.FromProperty(datastore.MkPropertyNI("wat|
ffffffff|fffffffa")), ShouldBeNil) | |
| 86 So(eid, ShouldResemble, NewExecutionID("wat", 0,
5)) | |
| 87 }) | |
| 88 | |
| 89 Convey("err", func() { | |
| 90 eid := &Execution_ID{} | |
| 91 So(eid.SetDMEncoded("somethingfatsrnt"), ShouldE
rrLike, "unable to parse") | |
| 92 So(eid.SetDMEncoded("something|cat|ffffffff|bob"
), ShouldErrLike, `strconv.ParseUint: parsing "cat"`) | |
| 93 So(eid.SetDMEncoded("something|cat|ffffffff"), S
houldErrLike, `strconv.ParseUint: parsing "cat"`) | |
| 94 So(eid.SetDMEncoded("something|ffffffff|cat"), S
houldErrLike, `strconv.ParseUint: parsing "cat"`) | |
| 95 So(eid.SetDMEncoded(""), ShouldErrLike, "unable
to parse") | |
| 96 So(eid.SetDMEncoded("somethingffffffff"), Should
ErrLike, "unable to parse") | |
| 97 So(eid.FromProperty(datastore.MkPropertyNI(100))
, ShouldErrLike, "wrong type") | |
| 98 }) | |
| 99 | |
| 100 }) | |
| 101 }) | |
| 102 } | |
| OLD | NEW |