| 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 serialize | 5 package serialize |
| 6 | 6 |
| 7 import ( | 7 import ( |
| 8 "bytes" | 8 "bytes" |
| 9 "fmt" | 9 "fmt" |
| 10 "io" | 10 "io" |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 249 buf.WriteByte(1) // actualCtx == 1 | 249 buf.WriteByte(1) // actualCtx == 1 |
| 250 cmpbin.WriteString(buf, "aid") | 250 cmpbin.WriteString(buf, "aid") |
| 251 cmpbin.WriteString(buf, "ns") | 251 cmpbin.WriteString(buf, "ns") |
| 252 _, err := ReadKey(buf, WithContext, "",
"") | 252 _, err := ReadKey(buf, WithContext, "",
"") |
| 253 So(err, ShouldEqual, io.EOF) | 253 So(err, ShouldEqual, io.EOF) |
| 254 }) | 254 }) |
| 255 Convey("huge key", func() { | 255 Convey("huge key", func() { |
| 256 buf.WriteByte(1) // actualCtx == 1 | 256 buf.WriteByte(1) // actualCtx == 1 |
| 257 cmpbin.WriteString(buf, "aid") | 257 cmpbin.WriteString(buf, "aid") |
| 258 cmpbin.WriteString(buf, "ns") | 258 cmpbin.WriteString(buf, "ns") |
| 259 » » » » » cmpbin.WriteUint(buf, 1000) | 259 » » » » » for i := 1; i < 60; i++ { |
| 260 » » » » » » buf.WriteByte(1) |
| 261 » » » » » » WriteKeyTok(buf, ds.KeyTok{Kind:
"sup", IntID: int64(i)}) |
| 262 » » » » » } |
| 263 » » » » » buf.WriteByte(0) |
| 260 _, err := ReadKey(buf, WithContext, "",
"") | 264 _, err := ReadKey(buf, WithContext, "",
"") |
| 261 So(err, ShouldErrLike, "huge key") | 265 So(err, ShouldErrLike, "huge key") |
| 262 }) | 266 }) |
| 263 Convey("insufficient tokens", func() { | 267 Convey("insufficient tokens", func() { |
| 264 buf.WriteByte(1) // actualCtx == 1 | 268 buf.WriteByte(1) // actualCtx == 1 |
| 265 cmpbin.WriteString(buf, "aid") | 269 cmpbin.WriteString(buf, "aid") |
| 266 cmpbin.WriteString(buf, "ns") | 270 cmpbin.WriteString(buf, "ns") |
| 267 cmpbin.WriteUint(buf, 2) | 271 cmpbin.WriteUint(buf, 2) |
| 268 _, err := ReadKey(buf, WithContext, "",
"") | 272 _, err := ReadKey(buf, WithContext, "",
"") |
| 269 So(err, ShouldEqual, io.EOF) | 273 So(err, ShouldEqual, io.EOF) |
| 270 }) | 274 }) |
| 271 Convey("partial token 1", func() { | 275 Convey("partial token 1", func() { |
| 272 buf.WriteByte(1) // actualCtx == 1 | 276 buf.WriteByte(1) // actualCtx == 1 |
| 273 cmpbin.WriteString(buf, "aid") | 277 cmpbin.WriteString(buf, "aid") |
| 274 cmpbin.WriteString(buf, "ns") | 278 cmpbin.WriteString(buf, "ns") |
| 275 » » » » » cmpbin.WriteUint(buf, 2) | 279 » » » » » buf.WriteByte(1) |
| 276 cmpbin.WriteString(buf, "hi") | 280 cmpbin.WriteString(buf, "hi") |
| 277 _, err := ReadKey(buf, WithContext, "",
"") | 281 _, err := ReadKey(buf, WithContext, "",
"") |
| 278 So(err, ShouldEqual, io.EOF) | 282 So(err, ShouldEqual, io.EOF) |
| 279 }) | 283 }) |
| 280 Convey("partial token 2", func() { | 284 Convey("partial token 2", func() { |
| 281 buf.WriteByte(1) // actualCtx == 1 | 285 buf.WriteByte(1) // actualCtx == 1 |
| 282 cmpbin.WriteString(buf, "aid") | 286 cmpbin.WriteString(buf, "aid") |
| 283 cmpbin.WriteString(buf, "ns") | 287 cmpbin.WriteString(buf, "ns") |
| 284 » » » » » cmpbin.WriteUint(buf, 2) | 288 » » » » » buf.WriteByte(1) |
| 285 cmpbin.WriteString(buf, "hi") | 289 cmpbin.WriteString(buf, "hi") |
| 286 buf.WriteByte(byte(ds.PTString)) | 290 buf.WriteByte(byte(ds.PTString)) |
| 287 _, err := ReadKey(buf, WithContext, "",
"") | 291 _, err := ReadKey(buf, WithContext, "",
"") |
| 288 So(err, ShouldEqual, io.EOF) | 292 So(err, ShouldEqual, io.EOF) |
| 289 }) | 293 }) |
| 290 Convey("bad token (invalid type)", func() { | 294 Convey("bad token (invalid type)", func() { |
| 291 buf.WriteByte(1) // actualCtx == 1 | 295 buf.WriteByte(1) // actualCtx == 1 |
| 292 cmpbin.WriteString(buf, "aid") | 296 cmpbin.WriteString(buf, "aid") |
| 293 cmpbin.WriteString(buf, "ns") | 297 cmpbin.WriteString(buf, "ns") |
| 294 » » » » » cmpbin.WriteUint(buf, 2) | 298 » » » » » buf.WriteByte(1) |
| 295 cmpbin.WriteString(buf, "hi") | 299 cmpbin.WriteString(buf, "hi") |
| 296 buf.WriteByte(byte(ds.PTBlobKey)) | 300 buf.WriteByte(byte(ds.PTBlobKey)) |
| 297 _, err := ReadKey(buf, WithContext, "",
"") | 301 _, err := ReadKey(buf, WithContext, "",
"") |
| 298 So(err, ShouldErrLike, "invalid type PTB
lobKey") | 302 So(err, ShouldErrLike, "invalid type PTB
lobKey") |
| 299 }) | 303 }) |
| 300 Convey("bad token (invalid IntID)", func() { | 304 Convey("bad token (invalid IntID)", func() { |
| 301 buf.WriteByte(1) // actualCtx == 1 | 305 buf.WriteByte(1) // actualCtx == 1 |
| 302 cmpbin.WriteString(buf, "aid") | 306 cmpbin.WriteString(buf, "aid") |
| 303 cmpbin.WriteString(buf, "ns") | 307 cmpbin.WriteString(buf, "ns") |
| 304 » » » » » cmpbin.WriteUint(buf, 2) | 308 » » » » » buf.WriteByte(1) |
| 305 cmpbin.WriteString(buf, "hi") | 309 cmpbin.WriteString(buf, "hi") |
| 306 buf.WriteByte(byte(ds.PTInt)) | 310 buf.WriteByte(byte(ds.PTInt)) |
| 307 cmpbin.WriteInt(buf, -2) | 311 cmpbin.WriteInt(buf, -2) |
| 308 _, err := ReadKey(buf, WithContext, "",
"") | 312 _, err := ReadKey(buf, WithContext, "",
"") |
| 309 So(err, ShouldErrLike, "zero/negative") | 313 So(err, ShouldErrLike, "zero/negative") |
| 310 }) | 314 }) |
| 311 }) | 315 }) |
| 312 }) | 316 }) |
| 313 | 317 |
| 314 Convey("ReadGeoPoint", func() { | 318 Convey("ReadGeoPoint", func() { |
| (...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 446 for i := 0; i < MaxIndexColumns+1; i++ { | 450 for i := 0; i < MaxIndexColumns+1; i++ { |
| 447 id.SortBy = append(id.SortBy, ds.IndexCo
lumn{Property: "Hi", Direction: ds.ASCENDING}) | 451 id.SortBy = append(id.SortBy, ds.IndexCo
lumn{Property: "Hi", Direction: ds.ASCENDING}) |
| 448 } | 452 } |
| 449 data := ToBytes(id) | 453 data := ToBytes(id) |
| 450 newID, err = ReadIndexDefinition(mkBuf(data)) | 454 newID, err = ReadIndexDefinition(mkBuf(data)) |
| 451 So(err, ShouldErrLike, "over 64 sort orders") | 455 So(err, ShouldErrLike, "over 64 sort orders") |
| 452 }) | 456 }) |
| 453 }) | 457 }) |
| 454 }) | 458 }) |
| 455 } | 459 } |
| OLD | NEW |