@@ -4,11 +4,17 @@ const path = require('path');
4
4
const request = require ( 'supertest' ) ;
5
5
const server = require ( './server' ) ;
6
6
const assert = require ( 'assert' ) ;
7
+ const process = require ( 'process' ) ;
7
8
8
9
const clearUploadsDir = server . clearUploadsDir ;
9
10
const fileDir = server . fileDir ;
10
11
const uploadDir = server . uploadDir ;
11
12
13
+ const tempFileDir = '/tmp/' ;
14
+
15
+ /** Default permissions different for win32 and linux systems */
16
+ const defaultFilePermissions = process . platform === 'win32' ? 0o666 : 0o644 ;
17
+
12
18
describe ( 'tempFile: Test fileupload w/ useTempFiles.' , function ( ) {
13
19
afterEach ( function ( done ) {
14
20
clearUploadsDir ( ) ;
@@ -26,7 +32,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
26
32
actualFileNameToUpload ,
27
33
expectedFileNameOnFileSystem ,
28
34
done ,
29
- expectedFilePermissions = 0o644
35
+ expectedFilePermissions = defaultFilePermissions
30
36
) {
31
37
32
38
let filePath = path . join ( fileDir , actualFileNameToUpload ) ;
@@ -69,7 +75,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
69
75
const fileUploadOptions = {
70
76
safeFileNames : false ,
71
77
useTempFiles : true ,
72
- tempFileDir : '/tmp/'
78
+ tempFileDir
73
79
} ;
74
80
const actualFileName = 'my$Invalid#fileName.png123' ;
75
81
const expectedFileName = 'my$Invalid#fileName.png123' ;
@@ -83,7 +89,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
83
89
it ( 'Is disabled by default.' , function ( done ) {
84
90
const fileUploadOptions = {
85
91
useTempFiles : true ,
86
- tempFileDir : '/tmp/'
92
+ tempFileDir
87
93
} ;
88
94
const actualFileName = 'my$Invalid#fileName.png123' ;
89
95
const expectedFileName = 'my$Invalid#fileName.png123' ;
@@ -101,7 +107,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
101
107
const fileUploadOptions = {
102
108
safeFileNames : true ,
103
109
useTempFiles : true ,
104
- tempFileDir : '/tmp/'
110
+ tempFileDir
105
111
} ;
106
112
const actualFileName = 'my$Invalid#fileName.png123' ;
107
113
const expectedFileName = 'myInvalidfileNamepng123' ;
@@ -119,7 +125,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
119
125
const fileUploadOptions = {
120
126
safeFileNames : / [ $ # ] / g,
121
127
useTempFiles : true ,
122
- tempFileDir : '/tmp/'
128
+ tempFileDir
123
129
} ;
124
130
const actualFileName = 'my$Invalid#fileName.png123' ;
125
131
const expectedFileName = 'myInvalidfileName.png123' ;
@@ -136,7 +142,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
136
142
const fileUploadOptions = {
137
143
safeFileNames : false ,
138
144
useTempFiles : true ,
139
- tempFileDir : '/tmp/' ,
145
+ tempFileDir,
140
146
tempFilePermissions : 0o666
141
147
} ;
142
148
const actualFileName = 'my$Invalid#fileName.png123' ;
@@ -151,7 +157,7 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
151
157
it ( 'Respects option boundaries when provided.' , function ( done ) {
152
158
const fileUploadOptions = {
153
159
useTempFiles : true ,
154
- tempFileDir : '/tmp/' ,
160
+ tempFileDir,
155
161
tempFilePermissions : 0o7777
156
162
} ;
157
163
const expressFileupload = require ( '../lib/index' ) ;
@@ -163,17 +169,20 @@ describe('tempFile: Test fileupload w/ useTempFiles.', function() {
163
169
it ( 'Applies permissions in filesystem.' , function ( done ) {
164
170
const fileUploadOptions = {
165
171
useTempFiles : true ,
166
- tempFileDir : '/tmp/' ,
172
+ tempFileDir,
167
173
tempFilePermissions : 0o600
168
174
} ;
169
175
const actualFileName = 'my$Invalid#fileName.png123' ;
170
176
const expectedFileName = 'my$Invalid#fileName.png123' ;
177
+ // Expected file perms after moving it to the destination folder depends on the platform.
178
+ const expectedFilePermissions = process . platform === 'win32' ? 0o666 : 0o600 ;
179
+
171
180
executeFileUploadTestWalk (
172
181
fileUploadOptions ,
173
182
actualFileName ,
174
183
expectedFileName ,
175
184
done ,
176
- 0o600
185
+ expectedFilePermissions
177
186
) ;
178
187
} ) ;
179
188
} ) ;
0 commit comments