Skip to content

Commit bd2bfda

Browse files
author
Felipe Amaral
committed
feat: removing duplication
1 parent e7e6812 commit bd2bfda

File tree

4 files changed

+142
-142
lines changed

4 files changed

+142
-142
lines changed

pkg/printer/csv_test.go

Lines changed: 26 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -41,55 +41,37 @@ func TestNewCSVPrinter(t *testing.T) {
4141
}
4242

4343
func TestCSVPrinterPrint(t *testing.T) {
44-
tests := []struct {
45-
name string
46-
labels map[string]interface{}
47-
withLabels config.OptionalFlags
48-
}{
49-
{
50-
name: "WithLabels",
51-
labels: map[string]interface{}{"app": "php-apache-app"},
52-
withLabels: config.OptionalFlags{Labels: true},
53-
},
54-
{
55-
name: "NoLabels",
56-
labels: map[string]interface{}{},
57-
withLabels: config.OptionalFlags{Labels: false},
58-
},
44+
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
45+
if err != nil {
46+
t.Fatalf(tempFileCreateFailureMessage, err)
5947
}
60-
for _, tt := range tests {
61-
t.Run(tt.name, func(t *testing.T) {
62-
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
63-
if err != nil {
64-
t.Fatalf(tempFileCreateFailureMessage, err)
65-
}
66-
defer os.Remove(tmpFile.Name())
48+
defer os.Remove(tmpFile.Name())
6749

68-
tp := &csvPrinter{
69-
commonPrinter: &commonPrinter{tmpFile},
70-
}
50+
tp := &csvPrinter{
51+
commonPrinter: &commonPrinter{tmpFile},
52+
}
7153

72-
version, _ := judge.NewVersion("1.2.3")
73-
results := []judge.Result{{
74-
Name: "Name",
75-
Namespace: "Namespace",
76-
Kind: "Kind",
77-
ApiVersion: "1.2.3",
78-
RuleSet: "Test",
79-
ReplaceWith: "4.5.6",
80-
Since: version,
81-
Labels: tt.labels,
82-
}}
54+
version, _ := judge.NewVersion("1.2.3")
55+
labels := map[string]interface{}{"key1": "value1"}
8356

84-
if err := tp.Print(results, tt.withLabels); err != nil {
85-
t.Fatalf("unexpected error: %v", err)
86-
}
57+
results := []judge.Result{{
58+
Name: "Name",
59+
Namespace: "Namespace",
60+
Kind: "Kind",
61+
ApiVersion: "1.2.3",
62+
RuleSet: "Test",
63+
ReplaceWith: "4.5.6",
64+
Since: version,
65+
Labels: labels,
66+
}}
8767

88-
fi, _ := tmpFile.Stat()
89-
if fi.Size() == 0 {
90-
t.Fatalf("expected non-zero size output file: %v", err)
91-
}
92-
})
68+
if err := tp.Print(results, config.OptionalFlags{Labels: true}); err != nil {
69+
t.Fatalf("unexpected error: %v", err)
70+
}
71+
72+
fi, _ := tmpFile.Stat()
73+
if fi.Size() == 0 {
74+
t.Fatalf("expected non-zero size output file: %v", err)
9375
}
9476
}
9577

pkg/printer/json_test.go

Lines changed: 33 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -41,67 +41,46 @@ func Test_newJSONPrinter(t *testing.T) {
4141
})
4242
}
4343
}
44-
4544
func Test_jsonPrinter_Print(t *testing.T) {
46-
tests := []struct {
47-
name string
48-
labels map[string]interface{}
49-
withLabels config.OptionalFlags
50-
}{
51-
{
52-
name: "WithLabels",
53-
labels: map[string]interface{}{"label1": "value1", "label2": "value2"},
54-
withLabels: config.OptionalFlags{Labels: true},
55-
},
56-
{
57-
name: "NoLabels",
58-
labels: map[string]interface{}{},
59-
withLabels: config.OptionalFlags{Labels: false},
60-
},
45+
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
46+
if err != nil {
47+
t.Fatalf(tempFileCreateFailureMessage, err)
6148
}
49+
defer os.Remove(tmpFile.Name())
6250

63-
for _, tt := range tests {
64-
t.Run(tt.name, func(t *testing.T) {
65-
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
66-
if err != nil {
67-
t.Fatalf(tempFileCreateFailureMessage, err)
68-
}
69-
defer os.Remove(tmpFile.Name())
70-
71-
c := &jsonPrinter{
72-
commonPrinter: &commonPrinter{tmpFile},
73-
}
51+
c := &jsonPrinter{
52+
commonPrinter: &commonPrinter{tmpFile},
53+
}
7454

75-
version, _ := judge.NewVersion("1.2.3")
76-
results := []judge.Result{{
77-
Name: "Name",
78-
Namespace: "Namespace",
79-
Kind: "Kind",
80-
ApiVersion: "1.2.3",
81-
RuleSet: "Test",
82-
ReplaceWith: "4.5.6",
83-
Since: version,
84-
Labels: tt.labels,
85-
}}
55+
version, _ := judge.NewVersion("1.2.3")
56+
labels := map[string]interface{}{"key1": "value1"}
8657

87-
if err := c.Print(results, tt.withLabels); err != nil {
88-
t.Fatalf("unexpected error: %v", err)
89-
}
58+
results := []judge.Result{{
59+
Name: "Name",
60+
Namespace: "Namespace",
61+
Kind: "Kind",
62+
ApiVersion: "1.2.3",
63+
RuleSet: "Test",
64+
ReplaceWith: "4.5.6",
65+
Since: version,
66+
Labels: labels,
67+
}}
68+
if err := c.Print(results, config.OptionalFlags{Labels: true}); err != nil {
69+
t.Fatalf("unexpected error: %v", err)
70+
}
9071

91-
tmpFile.Seek(0, 0)
72+
tmpFile.Seek(0, 0)
9273

93-
var readResults []judge.Result
94-
readBytes, err := ioutil.ReadAll(tmpFile)
95-
if err != nil {
96-
t.Fatalf("unexpected error reading back the file: %v", err)
97-
}
98-
if err := json.Unmarshal(readBytes, &readResults); err != nil {
99-
t.Fatalf("unexpected error unmarshalling the previously written file: %v", err)
100-
}
101-
if !reflect.DeepEqual(readResults, results) {
102-
t.Fatalf("written and read result do not seem to be equal")
103-
}
104-
})
74+
var readResults []judge.Result
75+
readBytes, err := ioutil.ReadAll(tmpFile)
76+
if err != nil {
77+
t.Fatalf("unexpected error reading back the file: %v", err)
78+
}
79+
if err := json.Unmarshal(readBytes, &readResults); err != nil {
80+
t.Fatalf("unexpected error unmarshalling the previously written file: %v", err)
81+
}
82+
if !reflect.DeepEqual(readResults, results) {
83+
t.Fatalf("written and read result do not seem to be equal")
10584
}
10685
}
10786

pkg/printer/printer_helper_test.go

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,68 @@
11
package printer
22

33
import (
4+
"io/ioutil"
5+
"os"
46
"strings"
57
"testing"
8+
9+
"github.com/doitintl/kube-no-trouble/pkg/config"
10+
"github.com/doitintl/kube-no-trouble/pkg/judge"
611
)
712

13+
func TestTypePrinterPrint(t *testing.T) {
14+
tests := []struct {
15+
name string
16+
labels map[string]interface{}
17+
withLabels config.OptionalFlags
18+
}{
19+
{
20+
name: "WithLabels",
21+
labels: map[string]interface{}{"app": "version1"},
22+
withLabels: config.OptionalFlags{Labels: true},
23+
},
24+
{
25+
name: "NoLabels",
26+
labels: map[string]interface{}{},
27+
withLabels: config.OptionalFlags{Labels: false},
28+
},
29+
}
30+
for _, tt := range tests {
31+
t.Run(tt.name, func(t *testing.T) {
32+
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
33+
if err != nil {
34+
t.Fatalf(tempFileCreateFailureMessage, err)
35+
}
36+
defer os.Remove(tmpFile.Name())
37+
38+
tp := &csvPrinter{
39+
commonPrinter: &commonPrinter{tmpFile},
40+
}
41+
42+
version, _ := judge.NewVersion("1.2.3")
43+
results := []judge.Result{{
44+
Name: "Name",
45+
Namespace: "Namespace",
46+
Kind: "Kind",
47+
ApiVersion: "1.2.3",
48+
RuleSet: "Test",
49+
ReplaceWith: "4.5.6",
50+
Since: version,
51+
Labels: tt.labels,
52+
}}
53+
54+
if err := tp.Print(results, tt.withLabels); err != nil {
55+
t.Fatalf("unexpected error: %v", err)
56+
}
57+
58+
fi, _ := tmpFile.Stat()
59+
if fi.Size() == 0 {
60+
t.Fatalf("expected non-zero size output file: %v", err)
61+
}
62+
})
63+
}
64+
}
65+
866
func TestMapToCommaSeparatedString(t *testing.T) {
967
tests := []struct {
1068
input map[string]interface{}

pkg/printer/text_test.go

Lines changed: 25 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -41,56 +41,37 @@ func Test_newTextPrinter(t *testing.T) {
4141
}
4242

4343
func Test_textPrinter_Print(t *testing.T) {
44-
tests := []struct {
45-
name string
46-
labels map[string]interface{}
47-
withLabels config.OptionalFlags
48-
}{
49-
{
50-
name: "WithLabels",
51-
labels: map[string]interface{}{"label1": "value1", "label2": "value2"},
52-
withLabels: config.OptionalFlags{Labels: true},
53-
},
54-
{
55-
name: "NoLabels",
56-
labels: map[string]interface{}{},
57-
withLabels: config.OptionalFlags{Labels: false},
58-
},
44+
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
45+
if err != nil {
46+
t.Fatalf(tempFileCreateFailureMessage, err)
5947
}
48+
defer os.Remove(tmpFile.Name())
6049

61-
for _, tt := range tests {
62-
t.Run(tt.name, func(t *testing.T) {
63-
tmpFile, err := ioutil.TempFile(os.TempDir(), tempFilePrefix)
64-
if err != nil {
65-
t.Fatalf(tempFileCreateFailureMessage, err)
66-
}
67-
defer os.Remove(tmpFile.Name())
50+
tp := &textPrinter{
51+
commonPrinter: &commonPrinter{tmpFile},
52+
}
6853

69-
tp := &textPrinter{
70-
commonPrinter: &commonPrinter{tmpFile},
71-
}
54+
version, _ := judge.NewVersion("1.2.3")
55+
labels := map[string]interface{}{"key1": "value1"}
7256

73-
version, _ := judge.NewVersion("1.2.3")
74-
results := []judge.Result{{
75-
Name: "Name",
76-
Namespace: "Namespace",
77-
Kind: "Kind",
78-
ApiVersion: "1.2.3",
79-
RuleSet: "Test",
80-
ReplaceWith: "4.5.6",
81-
Since: version,
82-
Labels: tt.labels,
83-
}}
57+
results := []judge.Result{{
58+
Name: "Name",
59+
Namespace: "Namespace",
60+
Kind: "Kind",
61+
ApiVersion: "1.2.3",
62+
RuleSet: "Test",
63+
ReplaceWith: "4.5.6",
64+
Since: version,
65+
Labels: labels,
66+
}}
8467

85-
if err := tp.Print(results, tt.withLabels); err != nil {
86-
t.Fatalf("unexpected error: %v", err)
87-
}
68+
if err := tp.Print(results, config.OptionalFlags{Labels: true}); err != nil {
69+
t.Fatalf("unexpected error: %v", err)
70+
}
8871

89-
fi, _ := tmpFile.Stat()
90-
if fi.Size() == 0 {
91-
t.Fatalf("expected non-zero size output file: %v", err)
92-
}
93-
})
72+
fi, _ := tmpFile.Stat()
73+
if fi.Size() == 0 {
74+
t.Fatalf("expected non-zero size output file: %v", err)
9475
}
9576
}
9677

0 commit comments

Comments
 (0)