@@ -28,13 +28,18 @@ import (
28
28
"github.com/stretchr/testify/require"
29
29
)
30
30
31
- func TestInitialize (t * testing.T ) {
32
- flags := test .ConfigurationFlags ()
31
+ var projectPaths []string
33
32
33
+ func init () {
34
34
projectPath , err := os .Getwd ()
35
- require .Nil (t , err )
36
- projectPaths := []string {projectPath }
35
+ if err != nil {
36
+ panic (err )
37
+ }
38
+ projectPaths = []string {projectPath }
39
+ }
37
40
41
+ func TestInitializeFormat (t * testing.T ) {
42
+ flags := test .ConfigurationFlags ()
38
43
flags .Set ("format" , "foo" )
39
44
assert .Error (t , Initialize (flags , projectPaths ))
40
45
@@ -45,7 +50,10 @@ func TestInitialize(t *testing.T) {
45
50
flags .Set ("format" , "json" )
46
51
assert .Nil (t , Initialize (flags , projectPaths ))
47
52
assert .Equal (t , outputformat .JSON , OutputFormat ())
53
+ }
48
54
55
+ func TestInitializeLibraryManager (t * testing.T ) {
56
+ flags := test .ConfigurationFlags ()
49
57
flags .Set ("library-manager" , "foo" )
50
58
assert .Error (t , Initialize (flags , projectPaths ))
51
59
@@ -71,6 +79,10 @@ func TestInitialize(t *testing.T) {
71
79
assert .Nil (t , Initialize (flags , projectPaths ))
72
80
assert .False (t , customCheckModes [checkmode .LibraryManagerSubmission ])
73
81
assert .False (t , customCheckModes [checkmode .LibraryManagerIndexed ])
82
+ }
83
+
84
+ func TestInitializeLogFormat (t * testing.T ) {
85
+ flags := test .ConfigurationFlags ()
74
86
75
87
flags .Set ("log-format" , "foo" )
76
88
assert .Error (t , Initialize (flags , projectPaths ))
@@ -80,6 +92,10 @@ func TestInitialize(t *testing.T) {
80
92
81
93
flags .Set ("log-format" , "json" )
82
94
assert .Nil (t , Initialize (flags , projectPaths ))
95
+ }
96
+
97
+ func TestInitializePermissive (t * testing.T ) {
98
+ flags := test .ConfigurationFlags ()
83
99
84
100
flags .Set ("permissive" , "true" )
85
101
assert .Nil (t , Initialize (flags , projectPaths ))
@@ -88,6 +104,10 @@ func TestInitialize(t *testing.T) {
88
104
flags .Set ("permissive" , "false" )
89
105
assert .Nil (t , Initialize (flags , projectPaths ))
90
106
assert .False (t , customCheckModes [checkmode .Permissive ])
107
+ }
108
+
109
+ func TestInitializeProjectType (t * testing.T ) {
110
+ flags := test .ConfigurationFlags ()
91
111
92
112
flags .Set ("project-type" , "foo" )
93
113
assert .Error (t , Initialize (flags , projectPaths ))
@@ -111,6 +131,10 @@ func TestInitialize(t *testing.T) {
111
131
flags .Set ("project-type" , "all" )
112
132
assert .Nil (t , Initialize (flags , projectPaths ))
113
133
assert .Equal (t , projecttype .All , SuperprojectTypeFilter ())
134
+ }
135
+
136
+ func TestInitializeRecursive (t * testing.T ) {
137
+ flags := test .ConfigurationFlags ()
114
138
115
139
flags .Set ("recursive" , "true" )
116
140
assert .Nil (t , Initialize (flags , projectPaths ))
@@ -119,6 +143,10 @@ func TestInitialize(t *testing.T) {
119
143
flags .Set ("recursive" , "false" )
120
144
assert .Nil (t , Initialize (flags , projectPaths ))
121
145
assert .False (t , Recursive ())
146
+ }
147
+
148
+ func TestInitializeReportFile (t * testing.T ) {
149
+ flags := test .ConfigurationFlags ()
122
150
123
151
flags .Set ("report-file" , "" )
124
152
assert .Nil (t , Initialize (flags , projectPaths ))
@@ -128,11 +156,26 @@ func TestInitialize(t *testing.T) {
128
156
flags .Set ("report-file" , reportFilePath .String ())
129
157
assert .Nil (t , Initialize (flags , projectPaths ))
130
158
assert .Equal (t , reportFilePath , ReportFilePath ())
159
+ }
131
160
132
- assert .Nil (t , Initialize (flags , projectPaths ))
161
+ func TestInitializeProjectPath (t * testing.T ) {
162
+ targetPaths = nil
163
+ assert .Nil (t , Initialize (test .ConfigurationFlags (), []string {}))
164
+ workingDirectoryPath , err := os .Getwd ()
165
+ require .Nil (t , err )
166
+ assert .Equal (t , paths .NewPathList (workingDirectoryPath ), TargetPaths (), "Default PROJECT_PATH to current working directory" )
167
+
168
+ targetPaths = nil
169
+ assert .Nil (t , Initialize (test .ConfigurationFlags (), projectPaths ))
133
170
assert .Equal (t , paths .NewPathList (projectPaths [0 ]), TargetPaths ())
134
171
135
- assert .Error (t , Initialize (flags , []string {"/nonexistent" }))
172
+ targetPaths = nil
173
+ assert .Error (t , Initialize (test .ConfigurationFlags (), []string {"/nonexistent" }))
174
+ }
175
+
176
+ func TestInitializeOfficial (t * testing.T ) {
177
+ assert .Nil (t , Initialize (test .ConfigurationFlags (), projectPaths ))
178
+ assert .False (t , customCheckModes [checkmode .Official ], "Default official check mode" )
136
179
137
180
os .Setenv ("ARDUINO_CHECK_OFFICIAL" , "true" )
138
181
assert .Nil (t , Initialize (test .ConfigurationFlags (), projectPaths ))
0 commit comments