@@ -6,13 +6,17 @@ import (
6
6
"net/http"
7
7
"net/http/httptest"
8
8
"net/url"
9
+ "os"
10
+ "path/filepath"
9
11
"strings"
10
12
"testing"
11
13
12
14
"github.com/go-openapi/runtime"
13
15
apiClient "github.com/go-openapi/runtime/client"
14
16
"github.com/go-openapi/strfmt"
17
+ "github.com/netlify/open-api/go/models"
15
18
"github.com/netlify/open-api/go/plumbing/operations"
19
+ "github.com/stretchr/testify/assert"
16
20
"github.com/stretchr/testify/require"
17
21
)
18
22
@@ -131,6 +135,33 @@ func TestConcurrentFileUpload(t *testing.T) {
131
135
}
132
136
}
133
137
138
+ func TestWalk_IgnoreNodeModulesInRoot (t * testing.T ) {
139
+ dir , err := ioutil .TempDir ("" , "deploy" )
140
+ require .Nil (t , err )
141
+ defer os .RemoveAll (dir )
142
+
143
+ err = os .Mkdir (filepath .Join (dir , "node_modules" ), os .ModePerm )
144
+ require .Nil (t , err )
145
+ err = ioutil .WriteFile (filepath .Join (dir , "node_modules" , "root-package" ), []byte {}, 0644 )
146
+ require .Nil (t , err )
147
+
148
+ err = os .MkdirAll (filepath .Join (dir , "more" , "node_modules" ), os .ModePerm )
149
+ require .Nil (t , err )
150
+ err = ioutil .WriteFile (filepath .Join (dir , "more" , "node_modules" , "inner-package" ), []byte {}, 0644 )
151
+ require .Nil (t , err )
152
+
153
+ files , err := walk (dir , mockObserver {}, false , false )
154
+ require .Nil (t , err )
155
+ assert .NotNil (t , files .Files ["node_modules/root-package" ])
156
+ assert .NotNil (t , files .Files ["more/node_modules/inner-package" ])
157
+
158
+ // When deploy directory == build directory, ignore node_modules in deploy directory root.
159
+ files , err = walk (dir , mockObserver {}, false , true )
160
+ require .Nil (t , err )
161
+ assert .Nil (t , files .Files ["node_modules/root-package" ])
162
+ assert .NotNil (t , files .Files ["more/node_modules/inner-package" ])
163
+ }
164
+
134
165
func TestReadZipRuntime (t * testing.T ) {
135
166
runtime , err := readZipRuntime ("../internal/data/hello-rs-function-test.zip" )
136
167
if err != nil {
@@ -141,3 +172,18 @@ func TestReadZipRuntime(t *testing.T) {
141
172
t .Fatalf ("unexpected runtime value, expected='rs', got='%s'" , runtime )
142
173
}
143
174
}
175
+
176
+ type mockObserver struct {}
177
+
178
+ func (m mockObserver ) OnSetupWalk () error { return nil }
179
+ func (m mockObserver ) OnSuccessfulStep (* FileBundle ) error { return nil }
180
+ func (m mockObserver ) OnSuccessfulWalk (* models.DeployFiles ) error { return nil }
181
+ func (m mockObserver ) OnFailedWalk () {}
182
+
183
+ func (m mockObserver ) OnSetupDelta (* models.DeployFiles ) error { return nil }
184
+ func (m mockObserver ) OnSuccessfulDelta (* models.DeployFiles , * models.Deploy ) error { return nil }
185
+ func (m mockObserver ) OnFailedDelta (* models.DeployFiles ) {}
186
+
187
+ func (m mockObserver ) OnSetupUpload (* FileBundle ) error { return nil }
188
+ func (m mockObserver ) OnSuccessfulUpload (* FileBundle ) error { return nil }
189
+ func (m mockObserver ) OnFailedUpload (* FileBundle ) {}
0 commit comments