github.com/gogo/protobuf@v1.3.2/test/typedecl/typedeclpb_test.go (about) 1 // Code generated by protoc-gen-gogo. DO NOT EDIT. 2 // source: typedecl.proto 3 4 package typedecl 5 6 import ( 7 fmt "fmt" 8 _ "github.com/gogo/protobuf/gogoproto" 9 github_com_gogo_protobuf_jsonpb "github.com/gogo/protobuf/jsonpb" 10 github_com_gogo_protobuf_proto "github.com/gogo/protobuf/proto" 11 proto "github.com/gogo/protobuf/proto" 12 math "math" 13 math_rand "math/rand" 14 testing "testing" 15 time "time" 16 ) 17 18 // Reference imports to suppress errors if they are not otherwise used. 19 var _ = proto.Marshal 20 var _ = fmt.Errorf 21 var _ = math.Inf 22 23 func TestDroppedProto(t *testing.T) { 24 seed := time.Now().UnixNano() 25 popr := math_rand.New(math_rand.NewSource(seed)) 26 p := NewPopulatedDropped(popr, false) 27 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 28 if err != nil { 29 t.Fatalf("seed = %d, err = %v", seed, err) 30 } 31 msg := &Dropped{} 32 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 33 t.Fatalf("seed = %d, err = %v", seed, err) 34 } 35 littlefuzz := make([]byte, len(dAtA)) 36 copy(littlefuzz, dAtA) 37 for i := range dAtA { 38 dAtA[i] = byte(popr.Intn(256)) 39 } 40 if err := p.VerboseEqual(msg); err != nil { 41 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 42 } 43 if !p.Equal(msg) { 44 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 45 } 46 if len(littlefuzz) > 0 { 47 fuzzamount := 100 48 for i := 0; i < fuzzamount; i++ { 49 littlefuzz[popr.Intn(len(littlefuzz))] = byte(popr.Intn(256)) 50 littlefuzz = append(littlefuzz, byte(popr.Intn(256))) 51 } 52 // shouldn't panic 53 _ = github_com_gogo_protobuf_proto.Unmarshal(littlefuzz, msg) 54 } 55 } 56 57 func TestDroppedMarshalTo(t *testing.T) { 58 seed := time.Now().UnixNano() 59 popr := math_rand.New(math_rand.NewSource(seed)) 60 p := NewPopulatedDropped(popr, false) 61 size := p.Size() 62 dAtA := make([]byte, size) 63 for i := range dAtA { 64 dAtA[i] = byte(popr.Intn(256)) 65 } 66 _, err := p.MarshalTo(dAtA) 67 if err != nil { 68 t.Fatalf("seed = %d, err = %v", seed, err) 69 } 70 msg := &Dropped{} 71 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 72 t.Fatalf("seed = %d, err = %v", seed, err) 73 } 74 for i := range dAtA { 75 dAtA[i] = byte(popr.Intn(256)) 76 } 77 if err := p.VerboseEqual(msg); err != nil { 78 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 79 } 80 if !p.Equal(msg) { 81 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 82 } 83 } 84 85 func BenchmarkDroppedProtoMarshal(b *testing.B) { 86 popr := math_rand.New(math_rand.NewSource(616)) 87 total := 0 88 pops := make([]*Dropped, 10000) 89 for i := 0; i < 10000; i++ { 90 pops[i] = NewPopulatedDropped(popr, false) 91 } 92 b.ResetTimer() 93 for i := 0; i < b.N; i++ { 94 dAtA, err := github_com_gogo_protobuf_proto.Marshal(pops[i%10000]) 95 if err != nil { 96 panic(err) 97 } 98 total += len(dAtA) 99 } 100 b.SetBytes(int64(total / b.N)) 101 } 102 103 func BenchmarkDroppedProtoUnmarshal(b *testing.B) { 104 popr := math_rand.New(math_rand.NewSource(616)) 105 total := 0 106 datas := make([][]byte, 10000) 107 for i := 0; i < 10000; i++ { 108 dAtA, err := github_com_gogo_protobuf_proto.Marshal(NewPopulatedDropped(popr, false)) 109 if err != nil { 110 panic(err) 111 } 112 datas[i] = dAtA 113 } 114 msg := &Dropped{} 115 b.ResetTimer() 116 for i := 0; i < b.N; i++ { 117 total += len(datas[i%10000]) 118 if err := github_com_gogo_protobuf_proto.Unmarshal(datas[i%10000], msg); err != nil { 119 panic(err) 120 } 121 } 122 b.SetBytes(int64(total / b.N)) 123 } 124 125 func TestDroppedWithoutGettersProto(t *testing.T) { 126 seed := time.Now().UnixNano() 127 popr := math_rand.New(math_rand.NewSource(seed)) 128 p := NewPopulatedDroppedWithoutGetters(popr, false) 129 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 130 if err != nil { 131 t.Fatalf("seed = %d, err = %v", seed, err) 132 } 133 msg := &DroppedWithoutGetters{} 134 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 135 t.Fatalf("seed = %d, err = %v", seed, err) 136 } 137 littlefuzz := make([]byte, len(dAtA)) 138 copy(littlefuzz, dAtA) 139 for i := range dAtA { 140 dAtA[i] = byte(popr.Intn(256)) 141 } 142 if err := p.VerboseEqual(msg); err != nil { 143 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 144 } 145 if !p.Equal(msg) { 146 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 147 } 148 if len(littlefuzz) > 0 { 149 fuzzamount := 100 150 for i := 0; i < fuzzamount; i++ { 151 littlefuzz[popr.Intn(len(littlefuzz))] = byte(popr.Intn(256)) 152 littlefuzz = append(littlefuzz, byte(popr.Intn(256))) 153 } 154 // shouldn't panic 155 _ = github_com_gogo_protobuf_proto.Unmarshal(littlefuzz, msg) 156 } 157 } 158 159 func TestDroppedWithoutGettersMarshalTo(t *testing.T) { 160 seed := time.Now().UnixNano() 161 popr := math_rand.New(math_rand.NewSource(seed)) 162 p := NewPopulatedDroppedWithoutGetters(popr, false) 163 size := p.Size() 164 dAtA := make([]byte, size) 165 for i := range dAtA { 166 dAtA[i] = byte(popr.Intn(256)) 167 } 168 _, err := p.MarshalTo(dAtA) 169 if err != nil { 170 t.Fatalf("seed = %d, err = %v", seed, err) 171 } 172 msg := &DroppedWithoutGetters{} 173 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 174 t.Fatalf("seed = %d, err = %v", seed, err) 175 } 176 for i := range dAtA { 177 dAtA[i] = byte(popr.Intn(256)) 178 } 179 if err := p.VerboseEqual(msg); err != nil { 180 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 181 } 182 if !p.Equal(msg) { 183 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 184 } 185 } 186 187 func BenchmarkDroppedWithoutGettersProtoMarshal(b *testing.B) { 188 popr := math_rand.New(math_rand.NewSource(616)) 189 total := 0 190 pops := make([]*DroppedWithoutGetters, 10000) 191 for i := 0; i < 10000; i++ { 192 pops[i] = NewPopulatedDroppedWithoutGetters(popr, false) 193 } 194 b.ResetTimer() 195 for i := 0; i < b.N; i++ { 196 dAtA, err := github_com_gogo_protobuf_proto.Marshal(pops[i%10000]) 197 if err != nil { 198 panic(err) 199 } 200 total += len(dAtA) 201 } 202 b.SetBytes(int64(total / b.N)) 203 } 204 205 func BenchmarkDroppedWithoutGettersProtoUnmarshal(b *testing.B) { 206 popr := math_rand.New(math_rand.NewSource(616)) 207 total := 0 208 datas := make([][]byte, 10000) 209 for i := 0; i < 10000; i++ { 210 dAtA, err := github_com_gogo_protobuf_proto.Marshal(NewPopulatedDroppedWithoutGetters(popr, false)) 211 if err != nil { 212 panic(err) 213 } 214 datas[i] = dAtA 215 } 216 msg := &DroppedWithoutGetters{} 217 b.ResetTimer() 218 for i := 0; i < b.N; i++ { 219 total += len(datas[i%10000]) 220 if err := github_com_gogo_protobuf_proto.Unmarshal(datas[i%10000], msg); err != nil { 221 panic(err) 222 } 223 } 224 b.SetBytes(int64(total / b.N)) 225 } 226 227 func TestKeptProto(t *testing.T) { 228 seed := time.Now().UnixNano() 229 popr := math_rand.New(math_rand.NewSource(seed)) 230 p := NewPopulatedKept(popr, false) 231 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 232 if err != nil { 233 t.Fatalf("seed = %d, err = %v", seed, err) 234 } 235 msg := &Kept{} 236 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 237 t.Fatalf("seed = %d, err = %v", seed, err) 238 } 239 littlefuzz := make([]byte, len(dAtA)) 240 copy(littlefuzz, dAtA) 241 for i := range dAtA { 242 dAtA[i] = byte(popr.Intn(256)) 243 } 244 if err := p.VerboseEqual(msg); err != nil { 245 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 246 } 247 if !p.Equal(msg) { 248 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 249 } 250 if len(littlefuzz) > 0 { 251 fuzzamount := 100 252 for i := 0; i < fuzzamount; i++ { 253 littlefuzz[popr.Intn(len(littlefuzz))] = byte(popr.Intn(256)) 254 littlefuzz = append(littlefuzz, byte(popr.Intn(256))) 255 } 256 // shouldn't panic 257 _ = github_com_gogo_protobuf_proto.Unmarshal(littlefuzz, msg) 258 } 259 } 260 261 func TestKeptMarshalTo(t *testing.T) { 262 seed := time.Now().UnixNano() 263 popr := math_rand.New(math_rand.NewSource(seed)) 264 p := NewPopulatedKept(popr, false) 265 size := p.Size() 266 dAtA := make([]byte, size) 267 for i := range dAtA { 268 dAtA[i] = byte(popr.Intn(256)) 269 } 270 _, err := p.MarshalTo(dAtA) 271 if err != nil { 272 t.Fatalf("seed = %d, err = %v", seed, err) 273 } 274 msg := &Kept{} 275 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 276 t.Fatalf("seed = %d, err = %v", seed, err) 277 } 278 for i := range dAtA { 279 dAtA[i] = byte(popr.Intn(256)) 280 } 281 if err := p.VerboseEqual(msg); err != nil { 282 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 283 } 284 if !p.Equal(msg) { 285 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 286 } 287 } 288 289 func BenchmarkKeptProtoMarshal(b *testing.B) { 290 popr := math_rand.New(math_rand.NewSource(616)) 291 total := 0 292 pops := make([]*Kept, 10000) 293 for i := 0; i < 10000; i++ { 294 pops[i] = NewPopulatedKept(popr, false) 295 } 296 b.ResetTimer() 297 for i := 0; i < b.N; i++ { 298 dAtA, err := github_com_gogo_protobuf_proto.Marshal(pops[i%10000]) 299 if err != nil { 300 panic(err) 301 } 302 total += len(dAtA) 303 } 304 b.SetBytes(int64(total / b.N)) 305 } 306 307 func BenchmarkKeptProtoUnmarshal(b *testing.B) { 308 popr := math_rand.New(math_rand.NewSource(616)) 309 total := 0 310 datas := make([][]byte, 10000) 311 for i := 0; i < 10000; i++ { 312 dAtA, err := github_com_gogo_protobuf_proto.Marshal(NewPopulatedKept(popr, false)) 313 if err != nil { 314 panic(err) 315 } 316 datas[i] = dAtA 317 } 318 msg := &Kept{} 319 b.ResetTimer() 320 for i := 0; i < b.N; i++ { 321 total += len(datas[i%10000]) 322 if err := github_com_gogo_protobuf_proto.Unmarshal(datas[i%10000], msg); err != nil { 323 panic(err) 324 } 325 } 326 b.SetBytes(int64(total / b.N)) 327 } 328 329 func TestDroppedJSON(t *testing.T) { 330 seed := time.Now().UnixNano() 331 popr := math_rand.New(math_rand.NewSource(seed)) 332 p := NewPopulatedDropped(popr, true) 333 marshaler := github_com_gogo_protobuf_jsonpb.Marshaler{} 334 jsondata, err := marshaler.MarshalToString(p) 335 if err != nil { 336 t.Fatalf("seed = %d, err = %v", seed, err) 337 } 338 msg := &Dropped{} 339 err = github_com_gogo_protobuf_jsonpb.UnmarshalString(jsondata, msg) 340 if err != nil { 341 t.Fatalf("seed = %d, err = %v", seed, err) 342 } 343 if err := p.VerboseEqual(msg); err != nil { 344 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 345 } 346 if !p.Equal(msg) { 347 t.Fatalf("seed = %d, %#v !Json Equal %#v", seed, msg, p) 348 } 349 } 350 func TestDroppedWithoutGettersJSON(t *testing.T) { 351 seed := time.Now().UnixNano() 352 popr := math_rand.New(math_rand.NewSource(seed)) 353 p := NewPopulatedDroppedWithoutGetters(popr, true) 354 marshaler := github_com_gogo_protobuf_jsonpb.Marshaler{} 355 jsondata, err := marshaler.MarshalToString(p) 356 if err != nil { 357 t.Fatalf("seed = %d, err = %v", seed, err) 358 } 359 msg := &DroppedWithoutGetters{} 360 err = github_com_gogo_protobuf_jsonpb.UnmarshalString(jsondata, msg) 361 if err != nil { 362 t.Fatalf("seed = %d, err = %v", seed, err) 363 } 364 if err := p.VerboseEqual(msg); err != nil { 365 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 366 } 367 if !p.Equal(msg) { 368 t.Fatalf("seed = %d, %#v !Json Equal %#v", seed, msg, p) 369 } 370 } 371 func TestKeptJSON(t *testing.T) { 372 seed := time.Now().UnixNano() 373 popr := math_rand.New(math_rand.NewSource(seed)) 374 p := NewPopulatedKept(popr, true) 375 marshaler := github_com_gogo_protobuf_jsonpb.Marshaler{} 376 jsondata, err := marshaler.MarshalToString(p) 377 if err != nil { 378 t.Fatalf("seed = %d, err = %v", seed, err) 379 } 380 msg := &Kept{} 381 err = github_com_gogo_protobuf_jsonpb.UnmarshalString(jsondata, msg) 382 if err != nil { 383 t.Fatalf("seed = %d, err = %v", seed, err) 384 } 385 if err := p.VerboseEqual(msg); err != nil { 386 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 387 } 388 if !p.Equal(msg) { 389 t.Fatalf("seed = %d, %#v !Json Equal %#v", seed, msg, p) 390 } 391 } 392 func TestDroppedProtoText(t *testing.T) { 393 seed := time.Now().UnixNano() 394 popr := math_rand.New(math_rand.NewSource(seed)) 395 p := NewPopulatedDropped(popr, true) 396 dAtA := github_com_gogo_protobuf_proto.MarshalTextString(p) 397 msg := &Dropped{} 398 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 399 t.Fatalf("seed = %d, err = %v", seed, err) 400 } 401 if err := p.VerboseEqual(msg); err != nil { 402 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 403 } 404 if !p.Equal(msg) { 405 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 406 } 407 } 408 409 func TestDroppedProtoCompactText(t *testing.T) { 410 seed := time.Now().UnixNano() 411 popr := math_rand.New(math_rand.NewSource(seed)) 412 p := NewPopulatedDropped(popr, true) 413 dAtA := github_com_gogo_protobuf_proto.CompactTextString(p) 414 msg := &Dropped{} 415 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 416 t.Fatalf("seed = %d, err = %v", seed, err) 417 } 418 if err := p.VerboseEqual(msg); err != nil { 419 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 420 } 421 if !p.Equal(msg) { 422 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 423 } 424 } 425 426 func TestDroppedWithoutGettersProtoText(t *testing.T) { 427 seed := time.Now().UnixNano() 428 popr := math_rand.New(math_rand.NewSource(seed)) 429 p := NewPopulatedDroppedWithoutGetters(popr, true) 430 dAtA := github_com_gogo_protobuf_proto.MarshalTextString(p) 431 msg := &DroppedWithoutGetters{} 432 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 433 t.Fatalf("seed = %d, err = %v", seed, err) 434 } 435 if err := p.VerboseEqual(msg); err != nil { 436 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 437 } 438 if !p.Equal(msg) { 439 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 440 } 441 } 442 443 func TestDroppedWithoutGettersProtoCompactText(t *testing.T) { 444 seed := time.Now().UnixNano() 445 popr := math_rand.New(math_rand.NewSource(seed)) 446 p := NewPopulatedDroppedWithoutGetters(popr, true) 447 dAtA := github_com_gogo_protobuf_proto.CompactTextString(p) 448 msg := &DroppedWithoutGetters{} 449 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 450 t.Fatalf("seed = %d, err = %v", seed, err) 451 } 452 if err := p.VerboseEqual(msg); err != nil { 453 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 454 } 455 if !p.Equal(msg) { 456 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 457 } 458 } 459 460 func TestKeptProtoText(t *testing.T) { 461 seed := time.Now().UnixNano() 462 popr := math_rand.New(math_rand.NewSource(seed)) 463 p := NewPopulatedKept(popr, true) 464 dAtA := github_com_gogo_protobuf_proto.MarshalTextString(p) 465 msg := &Kept{} 466 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 467 t.Fatalf("seed = %d, err = %v", seed, err) 468 } 469 if err := p.VerboseEqual(msg); err != nil { 470 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 471 } 472 if !p.Equal(msg) { 473 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 474 } 475 } 476 477 func TestKeptProtoCompactText(t *testing.T) { 478 seed := time.Now().UnixNano() 479 popr := math_rand.New(math_rand.NewSource(seed)) 480 p := NewPopulatedKept(popr, true) 481 dAtA := github_com_gogo_protobuf_proto.CompactTextString(p) 482 msg := &Kept{} 483 if err := github_com_gogo_protobuf_proto.UnmarshalText(dAtA, msg); err != nil { 484 t.Fatalf("seed = %d, err = %v", seed, err) 485 } 486 if err := p.VerboseEqual(msg); err != nil { 487 t.Fatalf("seed = %d, %#v !VerboseProto %#v, since %v", seed, msg, p, err) 488 } 489 if !p.Equal(msg) { 490 t.Fatalf("seed = %d, %#v !Proto %#v", seed, msg, p) 491 } 492 } 493 494 func TestDroppedVerboseEqual(t *testing.T) { 495 popr := math_rand.New(math_rand.NewSource(time.Now().UnixNano())) 496 p := NewPopulatedDropped(popr, false) 497 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 498 if err != nil { 499 panic(err) 500 } 501 msg := &Dropped{} 502 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 503 panic(err) 504 } 505 if err := p.VerboseEqual(msg); err != nil { 506 t.Fatalf("%#v !VerboseEqual %#v, since %v", msg, p, err) 507 } 508 } 509 func TestDroppedWithoutGettersVerboseEqual(t *testing.T) { 510 popr := math_rand.New(math_rand.NewSource(time.Now().UnixNano())) 511 p := NewPopulatedDroppedWithoutGetters(popr, false) 512 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 513 if err != nil { 514 panic(err) 515 } 516 msg := &DroppedWithoutGetters{} 517 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 518 panic(err) 519 } 520 if err := p.VerboseEqual(msg); err != nil { 521 t.Fatalf("%#v !VerboseEqual %#v, since %v", msg, p, err) 522 } 523 } 524 func TestKeptVerboseEqual(t *testing.T) { 525 popr := math_rand.New(math_rand.NewSource(time.Now().UnixNano())) 526 p := NewPopulatedKept(popr, false) 527 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 528 if err != nil { 529 panic(err) 530 } 531 msg := &Kept{} 532 if err := github_com_gogo_protobuf_proto.Unmarshal(dAtA, msg); err != nil { 533 panic(err) 534 } 535 if err := p.VerboseEqual(msg); err != nil { 536 t.Fatalf("%#v !VerboseEqual %#v, since %v", msg, p, err) 537 } 538 } 539 func TestDroppedSize(t *testing.T) { 540 seed := time.Now().UnixNano() 541 popr := math_rand.New(math_rand.NewSource(seed)) 542 p := NewPopulatedDropped(popr, true) 543 size2 := github_com_gogo_protobuf_proto.Size(p) 544 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 545 if err != nil { 546 t.Fatalf("seed = %d, err = %v", seed, err) 547 } 548 size := p.Size() 549 if len(dAtA) != size { 550 t.Errorf("seed = %d, size %v != marshalled size %v", seed, size, len(dAtA)) 551 } 552 if size2 != size { 553 t.Errorf("seed = %d, size %v != before marshal proto.Size %v", seed, size, size2) 554 } 555 size3 := github_com_gogo_protobuf_proto.Size(p) 556 if size3 != size { 557 t.Errorf("seed = %d, size %v != after marshal proto.Size %v", seed, size, size3) 558 } 559 } 560 561 func BenchmarkDroppedSize(b *testing.B) { 562 popr := math_rand.New(math_rand.NewSource(616)) 563 total := 0 564 pops := make([]*Dropped, 1000) 565 for i := 0; i < 1000; i++ { 566 pops[i] = NewPopulatedDropped(popr, false) 567 } 568 b.ResetTimer() 569 for i := 0; i < b.N; i++ { 570 total += pops[i%1000].Size() 571 } 572 b.SetBytes(int64(total / b.N)) 573 } 574 575 func TestDroppedWithoutGettersSize(t *testing.T) { 576 seed := time.Now().UnixNano() 577 popr := math_rand.New(math_rand.NewSource(seed)) 578 p := NewPopulatedDroppedWithoutGetters(popr, true) 579 size2 := github_com_gogo_protobuf_proto.Size(p) 580 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 581 if err != nil { 582 t.Fatalf("seed = %d, err = %v", seed, err) 583 } 584 size := p.Size() 585 if len(dAtA) != size { 586 t.Errorf("seed = %d, size %v != marshalled size %v", seed, size, len(dAtA)) 587 } 588 if size2 != size { 589 t.Errorf("seed = %d, size %v != before marshal proto.Size %v", seed, size, size2) 590 } 591 size3 := github_com_gogo_protobuf_proto.Size(p) 592 if size3 != size { 593 t.Errorf("seed = %d, size %v != after marshal proto.Size %v", seed, size, size3) 594 } 595 } 596 597 func BenchmarkDroppedWithoutGettersSize(b *testing.B) { 598 popr := math_rand.New(math_rand.NewSource(616)) 599 total := 0 600 pops := make([]*DroppedWithoutGetters, 1000) 601 for i := 0; i < 1000; i++ { 602 pops[i] = NewPopulatedDroppedWithoutGetters(popr, false) 603 } 604 b.ResetTimer() 605 for i := 0; i < b.N; i++ { 606 total += pops[i%1000].Size() 607 } 608 b.SetBytes(int64(total / b.N)) 609 } 610 611 func TestKeptSize(t *testing.T) { 612 seed := time.Now().UnixNano() 613 popr := math_rand.New(math_rand.NewSource(seed)) 614 p := NewPopulatedKept(popr, true) 615 size2 := github_com_gogo_protobuf_proto.Size(p) 616 dAtA, err := github_com_gogo_protobuf_proto.Marshal(p) 617 if err != nil { 618 t.Fatalf("seed = %d, err = %v", seed, err) 619 } 620 size := p.Size() 621 if len(dAtA) != size { 622 t.Errorf("seed = %d, size %v != marshalled size %v", seed, size, len(dAtA)) 623 } 624 if size2 != size { 625 t.Errorf("seed = %d, size %v != before marshal proto.Size %v", seed, size, size2) 626 } 627 size3 := github_com_gogo_protobuf_proto.Size(p) 628 if size3 != size { 629 t.Errorf("seed = %d, size %v != after marshal proto.Size %v", seed, size, size3) 630 } 631 } 632 633 func BenchmarkKeptSize(b *testing.B) { 634 popr := math_rand.New(math_rand.NewSource(616)) 635 total := 0 636 pops := make([]*Kept, 1000) 637 for i := 0; i < 1000; i++ { 638 pops[i] = NewPopulatedKept(popr, false) 639 } 640 b.ResetTimer() 641 for i := 0; i < b.N; i++ { 642 total += pops[i%1000].Size() 643 } 644 b.SetBytes(int64(total / b.N)) 645 } 646 647 //These tests are generated by github.com/gogo/protobuf/plugin/testgen