MCPcopy
hub / github.com/kopia/kopia / TestSetErrorHandlingPolicyFromFlags

Function TestSetErrorHandlingPolicyFromFlags

cli/command_policy_set_test.go:14–172  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

12)
13
14func TestSetErrorHandlingPolicyFromFlags(t *testing.T) {
15 var pef policyErrorFlags
16
17 ctx := testlogging.Context(t)
18
19 for _, tc := range []struct {
20 name string
21 startingPolicy *policy.ErrorHandlingPolicy
22 fileArg string
23 dirArg string
24 expResult *policy.ErrorHandlingPolicy
25 expErr bool
26 expChangeCount int
27 }{
28 {
29 name: "No values provided as command line arguments",
30 startingPolicy: &policy.ErrorHandlingPolicy{
31 IgnoreFileErrors: policy.NewOptionalBool(true),
32 IgnoreDirectoryErrors: policy.NewOptionalBool(true),
33 },
34 fileArg: "",
35 dirArg: "",
36 expResult: &policy.ErrorHandlingPolicy{
37 IgnoreFileErrors: policy.NewOptionalBool(true),
38 IgnoreDirectoryErrors: policy.NewOptionalBool(true),
39 },
40 expChangeCount: 0,
41 },
42 {
43 name: "Malformed arguments",
44 startingPolicy: &policy.ErrorHandlingPolicy{},
45 fileArg: "not-true-or-false",
46 dirArg: "not-even-inherit",
47 expResult: &policy.ErrorHandlingPolicy{
48 IgnoreFileErrors: nil,
49 IgnoreDirectoryErrors: nil,
50 },
51 expErr: true,
52 expChangeCount: 0,
53 },
54 {
55 name: "One is malformed, the other well formed",
56 startingPolicy: &policy.ErrorHandlingPolicy{},
57 fileArg: "true",
58 dirArg: "some-malformed-arg",
59 expResult: &policy.ErrorHandlingPolicy{
60 IgnoreFileErrors: policy.NewOptionalBool(true),
61 IgnoreDirectoryErrors: nil,
62 },
63 expErr: true,
64 expChangeCount: 1,
65 },
66 {
67 name: "Inherit case",
68 startingPolicy: &policy.ErrorHandlingPolicy{},
69 fileArg: "inherit",
70 dirArg: "inherit",
71 expResult: &policy.ErrorHandlingPolicy{

Callers

nothing calls this directly

Calls 5

ContextFunction · 0.92
NewOptionalBoolFunction · 0.92
LogMethod · 0.80
ErrorfMethod · 0.80

Tested by

no test coverage detected