TestNewCheckoutManager verifies that a CheckoutManager can be created with user configs.
(t *testing.T)
| 12 | |
| 13 | // TestNewCheckoutManager verifies that a CheckoutManager can be created with user configs. |
| 14 | func TestNewCheckoutManager(t *testing.T) { |
| 15 | t.Run("empty configs produces empty manager", func(t *testing.T) { |
| 16 | cm := NewCheckoutManager(nil) |
| 17 | // HasUserCheckouts removed (dead code) |
| 18 | assert.Nil(t, cm.GetDefaultCheckoutOverride(), "empty manager should have no default override") |
| 19 | }) |
| 20 | |
| 21 | t.Run("single default override", func(t *testing.T) { |
| 22 | depth := 0 |
| 23 | cm := NewCheckoutManager([]*CheckoutConfig{ |
| 24 | {FetchDepth: &depth}, |
| 25 | }) |
| 26 | // HasUserCheckouts removed (dead code) |
| 27 | override := cm.GetDefaultCheckoutOverride() |
| 28 | require.NotNil(t, override, "should have default override") |
| 29 | require.NotNil(t, override.fetchDepth, "fetch depth should be set") |
| 30 | assert.Equal(t, 0, *override.fetchDepth, "fetch depth should be 0") |
| 31 | }) |
| 32 | |
| 33 | t.Run("custom github-token on default checkout", func(t *testing.T) { |
| 34 | cm := NewCheckoutManager([]*CheckoutConfig{ |
| 35 | {GitHubToken: "${{ secrets.MY_TOKEN }}"}, |
| 36 | }) |
| 37 | override := cm.GetDefaultCheckoutOverride() |
| 38 | require.NotNil(t, override, "should have default override") |
| 39 | assert.Equal(t, "${{ secrets.MY_TOKEN }}", override.token, "github-token should be set") |
| 40 | }) |
| 41 | } |
| 42 | |
| 43 | // TestCheckoutManagerMerging verifies that duplicate checkout configs are merged. |
| 44 | func TestCheckoutManagerMerging(t *testing.T) { |
nothing calls this directly
no test coverage detected