| 85 | } |
| 86 | |
| 87 | func TestNodeInspectPretty(t *testing.T) { |
| 88 | testCases := []struct { |
| 89 | name string |
| 90 | nodeInspectFunc func() (client.NodeInspectResult, error) |
| 91 | }{ |
| 92 | { |
| 93 | name: "simple", |
| 94 | nodeInspectFunc: func() (client.NodeInspectResult, error) { |
| 95 | return client.NodeInspectResult{ |
| 96 | Node: *builders.Node(builders.NodeLabels(map[string]string{"lbl1": "value1"})), |
| 97 | }, nil |
| 98 | }, |
| 99 | }, |
| 100 | { |
| 101 | name: "manager", |
| 102 | nodeInspectFunc: func() (client.NodeInspectResult, error) { |
| 103 | return client.NodeInspectResult{ |
| 104 | Node: *builders.Node(builders.Manager()), |
| 105 | }, nil |
| 106 | }, |
| 107 | }, |
| 108 | { |
| 109 | name: "manager-leader", |
| 110 | nodeInspectFunc: func() (client.NodeInspectResult, error) { |
| 111 | return client.NodeInspectResult{ |
| 112 | Node: *builders.Node(builders.Manager(builders.Leader())), |
| 113 | }, nil |
| 114 | }, |
| 115 | }, |
| 116 | } |
| 117 | for _, tc := range testCases { |
| 118 | t.Run(tc.name, func(t *testing.T) { |
| 119 | cli := test.NewFakeCli(&fakeClient{ |
| 120 | nodeInspectFunc: tc.nodeInspectFunc, |
| 121 | }) |
| 122 | cmd := newInspectCommand(cli) |
| 123 | cmd.SetArgs([]string{"nodeID"}) |
| 124 | assert.Check(t, cmd.Flags().Set("pretty", "true")) |
| 125 | assert.NilError(t, cmd.Execute()) |
| 126 | golden.Assert(t, cli.OutBuffer().String(), fmt.Sprintf("node-inspect-pretty.%s.golden", tc.name)) |
| 127 | }) |
| 128 | } |
| 129 | } |