move checkpoint policy test helpers · Entire
move checkpoint policy test helpers
39d9209→main·
pfleidi·2w ago·3 files·+36 added/-39 removed
Keep shared CLI checkpoint policy fixtures together instead of storing one in attach tests.
Sessions
98e7269509d0View transcript
Changes
3
cmd/entire/cli
Mattach_test.go-12
Dcheckpoint_policy_malformed_test.go-27
Acheckpoint_policy_test_helpers_test.go+36
20 unmodified lines
21
22
23
24
24
25
26
1467 unmodified lines
1494
1495
1496
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1497
1498
1499
20 unmodified lines
"github.com/entireio/cli/cmd/entire/cli/agent/types"
cpkg "github.com/entireio/cli/cmd/entire/cli/checkpoint"
"github.com/entireio/cli/cmd/entire/cli/checkpoint/id"
"github.com/entireio/cli/cmd/entire/cli/checkpointpolicy"
"github.com/entireio/cli/cmd/entire/cli/paths"
cliReview "github.com/entireio/cli/cmd/entire/cli/review"
"github.com/entireio/cli/cmd/entire/cli/session"
1467 unmodified lines
}
}
func writeUnsupportedCheckpointPolicyForCLITest(t *testing.T, repo *git.Repository) {
t.Helper()
_, err := checkpointpolicy.WriteLocal(t.Context(), repo, plumbing.ZeroHash, checkpointpolicy.Policy{
CheckpointVersion: "refs-v1",
CheckpointMinVersion: "branch-v1",
})
if err != nil {
t.Fatal(err)
}
}
// setupAttachTestRepo creates a temp git repo with one commit and enables Entire.
// Returns the repo directory. Caller must not use t.Parallel() (uses t.Chdir).
func setupAttachTestRepo(t *testing.T) {
Mcmd/entire/cli/attach_test.go-12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package cli
import (
"context"
"testing"
"github.com/entireio/cli/cmd/entire/cli/checkpoint"
"github.com/entireio/cli/cmd/entire/cli/checkpointpolicy"
"github.com/go-git/go-git/v6"
"github.com/go-git/go-git/v6/plumbing"
"github.com/go-git/go-git/v6/plumbing/filemode"
"github.com/go-git/go-git/v6/plumbing/object"
"github.com/stretchr/testify/require"
)
func writeMalformedCheckpointPolicyForCLITest(t *testing.T, repo *git.Repository) {
t.Helper()
blobHash, err := checkpoint.CreateBlobFromContent(repo, []byte(`{"checkpoint_version":`))
require.NoError(t, err)
treeHash, err := checkpoint.BuildTreeFromEntries(context.Background(), repo, map[string]object.TreeEntry{
checkpointpolicy.PolicyFileName: {Name: checkpointpolicy.PolicyFileName, Mode: filemode.Regular, Hash: blobHash},
})
require.NoError(t, err)
commitHash, err := checkpoint.CreateCommit(context.Background(), repo, treeHash, plumbing.ZeroHash, "malformed checkpoint policy", "Test", "test@example.com")
require.NoError(t, err)
require.NoError(t, checkpointpolicy.SetRef(repo, checkpointpolicy.RefName, commitHash))
}
func writeUnsupportedCheckpointPolicyForCLITest(t *testing.T, repo *git.Repository) {
t.Helper()
_, err := checkpointpolicy.WriteLocal(t.Context(), repo, plumbing.ZeroHash, checkpointpolicy.Policy{
CheckpointVersion: "refs-v1",
CheckpointMinVersion: "branch-v1",
})
require.NoError(t, err)
}
Dcmd/entire/cli/checkpoint_policy_malformed_test.go-27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package cli
import (
"context"
"testing"
Acmd/entire/cli/checkpoint_policy_test_helpers_test.go+36