(t *testing.T)
| 359 | } |
| 360 | |
| 361 | func TestVersionSegments64(t *testing.T) { |
| 362 | cases := []struct { |
| 363 | version string |
| 364 | expected []int64 |
| 365 | }{ |
| 366 | {"1.2.3", []int64{1, 2, 3}}, |
| 367 | {"1.2-beta", []int64{1, 2, 0}}, |
| 368 | {"1-x.Y.0", []int64{1, 0, 0}}, |
| 369 | {"1.2.0-x.Y.0+metadata", []int64{1, 2, 0}}, |
| 370 | {"1.4.9223372036854775807", []int64{1, 4, 9223372036854775807}}, |
| 371 | } |
| 372 | |
| 373 | for _, tc := range cases { |
| 374 | v, err := NewVersion(tc.version) |
| 375 | if err != nil { |
| 376 | t.Fatalf("err: %s", err) |
| 377 | } |
| 378 | |
| 379 | actual := v.Segments64() |
| 380 | expected := tc.expected |
| 381 | if !reflect.DeepEqual(actual, expected) { |
| 382 | t.Fatalf("expected: %#v\nactual: %#v", expected, actual) |
| 383 | } |
| 384 | |
| 385 | { |
| 386 | expected := actual[0] |
| 387 | actual[0]++ |
| 388 | actual = v.Segments64() |
| 389 | if actual[0] != expected { |
| 390 | t.Fatalf("Segments64 is mutable") |
| 391 | } |
| 392 | } |
| 393 | } |
| 394 | } |
| 395 | |
| 396 | func TestVersionString(t *testing.T) { |
| 397 | cases := [][]string{ |
nothing calls this directly
no test coverage detected