TestShowUpdateSummary tests the update summary display
(t *testing.T)
| 535 | |
| 536 | // TestShowUpdateSummary tests the update summary display |
| 537 | func TestShowUpdateSummary(t *testing.T) { |
| 538 | tests := []struct { |
| 539 | name string |
| 540 | successfulUpdates []string |
| 541 | failedUpdates []updateFailure |
| 542 | wantSuccess bool |
| 543 | wantFailed bool |
| 544 | }{ |
| 545 | { |
| 546 | name: "all successful", |
| 547 | successfulUpdates: []string{"workflow1", "workflow2", "workflow3"}, |
| 548 | failedUpdates: []updateFailure{}, |
| 549 | wantSuccess: true, |
| 550 | wantFailed: false, |
| 551 | }, |
| 552 | { |
| 553 | name: "all failed", |
| 554 | successfulUpdates: []string{}, |
| 555 | failedUpdates: []updateFailure{ |
| 556 | {Name: "workflow1", Error: "failed to download"}, |
| 557 | {Name: "workflow2", Error: "merge conflict"}, |
| 558 | }, |
| 559 | wantSuccess: false, |
| 560 | wantFailed: true, |
| 561 | }, |
| 562 | { |
| 563 | name: "mixed results", |
| 564 | successfulUpdates: []string{"workflow1", "workflow3"}, |
| 565 | failedUpdates: []updateFailure{ |
| 566 | {Name: "workflow2", Error: "failed to compile"}, |
| 567 | }, |
| 568 | wantSuccess: true, |
| 569 | wantFailed: true, |
| 570 | }, |
| 571 | { |
| 572 | name: "empty results", |
| 573 | successfulUpdates: []string{}, |
| 574 | failedUpdates: []updateFailure{}, |
| 575 | wantSuccess: false, |
| 576 | wantFailed: false, |
| 577 | }, |
| 578 | } |
| 579 | |
| 580 | for _, tt := range tests { |
| 581 | t.Run(tt.name, func(t *testing.T) { |
| 582 | // This test just verifies the function doesn't panic and can be called |
| 583 | // We don't check the exact output format since it uses console helpers |
| 584 | // and the exact formatting may change |
| 585 | showUpdateSummary(tt.successfulUpdates, tt.failedUpdates) |
| 586 | }) |
| 587 | } |
| 588 | } |
| 589 | |
| 590 | // TestHasLocalModifications tests the local modifications detection |
| 591 | func TestHasLocalModifications(t *testing.T) { |
nothing calls this directly
no test coverage detected