Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
eec72348
Commit
eec72348
authored
Aug 24, 2020
by
Jacob Vosmaer
Committed by
Alessio Caiazza
Aug 24, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Tests: consistent helper function names
parent
3cdfdd0c
Changes
21
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
150 additions
and
142 deletions
+150
-142
authorization_test.go
authorization_test.go
+1
-1
cable_test.go
cable_test.go
+4
-4
channel_test.go
channel_test.go
+4
-4
gitaly_integration_test.go
gitaly_integration_test.go
+2
-2
gitaly_test.go
gitaly_test.go
+6
-6
internal/artifacts/artifacts_store_test.go
internal/artifacts/artifacts_store_test.go
+7
-7
internal/artifacts/artifacts_upload_test.go
internal/artifacts/artifacts_upload_test.go
+9
-9
internal/artifacts/entry_test.go
internal/artifacts/entry_test.go
+12
-12
internal/channel/wrappers_test.go
internal/channel/wrappers_test.go
+3
-3
internal/git/archive_test.go
internal/git/archive_test.go
+5
-5
internal/git/blob_test.go
internal/git/blob_test.go
+1
-1
internal/sendurl/sendurl_test.go
internal/sendurl/sendurl_test.go
+26
-26
internal/staticpages/deploy_page_test.go
internal/staticpages/deploy_page_test.go
+2
-2
internal/staticpages/error_pages_test.go
internal/staticpages/error_pages_test.go
+18
-18
internal/staticpages/servefile_test.go
internal/staticpages/servefile_test.go
+8
-8
internal/testhelper/testhelper.go
internal/testhelper/testhelper.go
+20
-12
internal/upload/uploads_test.go
internal/upload/uploads_test.go
+9
-9
internal/upstream/development_test.go
internal/upstream/development_test.go
+1
-1
internal/upstream/handlers_test.go
internal/upstream/handlers_test.go
+3
-3
main_test.go
main_test.go
+1
-1
proxy_test.go
proxy_test.go
+8
-8
No files found.
authorization_test.go
View file @
eec72348
...
...
@@ -38,7 +38,7 @@ func runPreAuthorizeHandler(t *testing.T, ts *httptest.Server, suffix string, ur
response
:=
httptest
.
NewRecorder
()
a
.
PreAuthorizeHandler
(
okHandler
,
suffix
)
.
ServeHTTP
(
response
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
expectedCode
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
expectedCode
)
return
response
}
...
...
cable_test.go
View file @
eec72348
...
...
@@ -35,10 +35,10 @@ func TestSingleBackend(t *testing.T) {
defer
server
.
Close
()
require
.
NoError
(
t
,
say
(
client
,
"hello"
))
assert
ReadMessage
(
t
,
server
,
websocket
.
TextMessage
,
"hello"
)
require
ReadMessage
(
t
,
server
,
websocket
.
TextMessage
,
"hello"
)
require
.
NoError
(
t
,
say
(
server
,
"world"
))
assert
ReadMessage
(
t
,
client
,
websocket
.
TextMessage
,
"world"
)
require
ReadMessage
(
t
,
client
,
websocket
.
TextMessage
,
"world"
)
}
func
TestSeparateCableBackend
(
t
*
testing
.
T
)
{
...
...
@@ -62,10 +62,10 @@ func TestSeparateCableBackend(t *testing.T) {
defer
server
.
Close
()
require
.
NoError
(
t
,
say
(
client
,
"hello"
))
assert
ReadMessage
(
t
,
server
,
websocket
.
TextMessage
,
"hello"
)
require
ReadMessage
(
t
,
server
,
websocket
.
TextMessage
,
"hello"
)
require
.
NoError
(
t
,
say
(
server
,
"world"
))
assert
ReadMessage
(
t
,
client
,
websocket
.
TextMessage
,
"world"
)
require
ReadMessage
(
t
,
client
,
websocket
.
TextMessage
,
"world"
)
}
func
startCableServer
()
(
chan
connWithReq
,
*
httptest
.
Server
)
{
...
...
channel_test.go
View file @
eec72348
...
...
@@ -58,18 +58,18 @@ func TestChannelHappyPath(t *testing.T) {
if
err
:=
say
(
server
,
"
\x01
"
+
message
);
err
!=
nil
{
t
.
Fatal
(
err
)
}
assert
ReadMessage
(
t
,
client
,
websocket
.
BinaryMessage
,
message
)
require
ReadMessage
(
t
,
client
,
websocket
.
BinaryMessage
,
message
)
if
err
:=
say
(
client
,
message
);
err
!=
nil
{
t
.
Fatal
(
err
)
}
// channel.k8s.io: client writes get put on channel 0, STDIN
assert
ReadMessage
(
t
,
server
,
websocket
.
BinaryMessage
,
"
\x00
"
+
message
)
require
ReadMessage
(
t
,
server
,
websocket
.
BinaryMessage
,
"
\x00
"
+
message
)
// Closing the client should send an EOT signal to the server's STDIN
client
.
Close
()
assert
ReadMessage
(
t
,
server
,
websocket
.
BinaryMessage
,
"
\x00\x04
"
)
require
ReadMessage
(
t
,
server
,
websocket
.
BinaryMessage
,
"
\x00\x04
"
)
})
}
}
...
...
@@ -260,7 +260,7 @@ func say(conn *websocket.Conn, message string) error {
return
conn
.
WriteMessage
(
websocket
.
TextMessage
,
[]
byte
(
message
))
}
func
assert
ReadMessage
(
t
*
testing
.
T
,
conn
*
websocket
.
Conn
,
expectedMessageType
int
,
expectedData
string
)
{
func
require
ReadMessage
(
t
*
testing
.
T
,
conn
*
websocket
.
Conn
,
expectedMessageType
int
,
expectedData
string
)
{
messageType
,
data
,
err
:=
conn
.
ReadMessage
()
if
err
!=
nil
{
t
.
Fatal
(
err
)
...
...
gitaly_integration_test.go
View file @
eec72348
...
...
@@ -177,7 +177,7 @@ func TestAllowedGetGitBlob(t *testing.T) {
assert
.
Equal
(
t
,
200
,
resp
.
StatusCode
,
"GET %q: status code"
,
resp
.
Request
.
URL
)
assert
.
Equal
(
t
,
expectedBody
,
shortBody
,
"GET %q: response body"
,
resp
.
Request
.
URL
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Length"
,
strconv
.
Itoa
(
bodyLen
))
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Length"
,
strconv
.
Itoa
(
bodyLen
))
assertNginxResponseBuffering
(
t
,
"no"
,
resp
,
"GET %q: nginx response buffering"
,
resp
.
Request
.
URL
)
}
...
...
@@ -317,7 +317,7 @@ func TestAllowedGetGitFormatPatch(t *testing.T) {
assert
.
Equal
(
t
,
200
,
resp
.
StatusCode
,
"GET %q: status code"
,
resp
.
Request
.
URL
)
assertNginxResponseBuffering
(
t
,
"no"
,
resp
,
"GET %q: nginx response buffering"
,
resp
.
Request
.
URL
)
testhelper
.
Assert
PatchSeries
(
testhelper
.
Require
PatchSeries
(
t
,
body
,
"372ab6950519549b14d220271ee2322caa44d4eb"
,
...
...
gitaly_test.go
View file @
eec72348
...
...
@@ -218,7 +218,7 @@ func TestPostReceivePackProxiedToGitalySuccessfully(t *testing.T) {
assert
.
Equal
(
t
,
200
,
resp
.
StatusCode
,
"POST %q"
,
resource
)
require
.
Equal
(
t
,
string
(
testhelper
.
GitalyReceivePackResponseMock
),
split
[
1
])
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-git-receive-pack-result"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-git-receive-pack-result"
)
}
func
TestPostReceivePackProxiedToGitalyInterrupted
(
t
*
testing
.
T
)
{
...
...
@@ -314,7 +314,7 @@ func TestPostUploadPackProxiedToGitalySuccessfully(t *testing.T) {
)
defer
resp
.
Body
.
Close
()
require
.
Equal
(
t
,
200
,
resp
.
StatusCode
,
"POST %q"
,
resource
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-git-upload-pack-result"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-git-upload-pack-result"
)
m
.
Lock
()
requestFinished
:=
requestReadFinished
...
...
@@ -609,10 +609,10 @@ func TestGetSnapshotProxiedToGitalySuccessfully(t *testing.T) {
assert
.
Equal
(
t
,
expectedBody
,
string
(
body
),
"GET %q: body"
,
resp
.
Request
.
URL
)
assert
.
Equal
(
t
,
archiveLength
,
len
(
body
),
"GET %q: body size"
,
resp
.
Request
.
URL
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Disposition"
,
`attachment; filename="snapshot.tar"`
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-tar"
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Transfer-Encoding"
,
"binary"
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Cache-Control"
,
"private"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Disposition"
,
`attachment; filename="snapshot.tar"`
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"application/x-tar"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Transfer-Encoding"
,
"binary"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Cache-Control"
,
"private"
)
}
func
TestGetSnapshotProxiedToGitalyInterruptedStream
(
t
*
testing
.
T
)
{
...
...
internal/artifacts/artifacts_store_test.go
View file @
eec72348
...
...
@@ -136,8 +136,8 @@ func TestUploadHandlerSendingToExternalStorage(t *testing.T) {
contentBuffer
,
contentType
:=
createTestMultipartForm
(
t
,
archiveData
)
response
:=
testUploadArtifacts
(
t
,
contentType
,
ts
.
URL
+
Path
,
&
contentBuffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
assert
.
Equal
(
t
,
1
,
storeServerCalled
,
"store should be called only once"
)
assert
.
Equal
(
t
,
1
,
responseProcessorCalled
,
"response processor should be called only once"
)
})
...
...
@@ -167,7 +167,7 @@ func TestUploadHandlerSendingToExternalStorageAndStorageServerUnreachable(t *tes
defer
ts
.
Close
()
response
:=
testUploadArtifactsFromTestZip
(
t
,
ts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
}
func
TestUploadHandlerSendingToExternalStorageAndInvalidURLIsUsed
(
t
*
testing
.
T
)
{
...
...
@@ -193,7 +193,7 @@ func TestUploadHandlerSendingToExternalStorageAndInvalidURLIsUsed(t *testing.T)
defer
ts
.
Close
()
response
:=
testUploadArtifactsFromTestZip
(
t
,
ts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
}
func
TestUploadHandlerSendingToExternalStorageAndItReturnsAnError
(
t
*
testing
.
T
)
{
...
...
@@ -231,7 +231,7 @@ func TestUploadHandlerSendingToExternalStorageAndItReturnsAnError(t *testing.T)
defer
ts
.
Close
()
response
:=
testUploadArtifactsFromTestZip
(
t
,
ts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
assert
.
Equal
(
t
,
1
,
putCalledTimes
,
"upload should be called only once"
)
}
...
...
@@ -272,7 +272,7 @@ func TestUploadHandlerSendingToExternalStorageAndSupportRequestTimeout(t *testin
defer
ts
.
Close
()
response
:=
testUploadArtifactsFromTestZip
(
t
,
ts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
assert
.
Equal
(
t
,
1
,
putCalledTimes
,
"upload should be called only once"
)
}
...
...
@@ -308,7 +308,7 @@ func TestUploadHandlerMultipartUploadSizeLimit(t *testing.T) {
contentBuffer
,
contentType
:=
createTestMultipartForm
(
t
,
make
([]
byte
,
uploadSize
))
response
:=
testUploadArtifacts
(
t
,
contentType
,
ts
.
URL
+
Path
,
&
contentBuffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusRequestEntityTooLarge
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusRequestEntityTooLarge
)
// Poll because AbortMultipartUpload is async
for
i
:=
0
;
os
.
IsMultipartUpload
(
test
.
ObjectPath
)
&&
i
<
100
;
i
++
{
...
...
internal/artifacts/artifacts_upload_test.go
View file @
eec72348
...
...
@@ -184,8 +184,8 @@ func TestUploadHandlerAddingMetadata(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
}
func
TestUploadHandlerForUnsupportedArchive
(
t
*
testing
.
T
)
{
...
...
@@ -194,8 +194,8 @@ func TestUploadHandlerForUnsupportedArchive(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderMissing
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderMissing
)
}
func
TestUploadHandlerForMultipleFiles
(
t
*
testing
.
T
)
{
...
...
@@ -208,7 +208,7 @@ func TestUploadHandlerForMultipleFiles(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
}
func
TestUploadFormProcessing
(
t
*
testing
.
T
)
{
...
...
@@ -217,7 +217,7 @@ func TestUploadFormProcessing(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
}
func
TestLsifFileProcessing
(
t
*
testing
.
T
)
{
...
...
@@ -236,8 +236,8 @@ func TestLsifFileProcessing(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseHeader
(
t
,
response
,
MetadataHeaderKey
,
MetadataHeaderPresent
)
}
func
TestInvalidLsifFileProcessing
(
t
*
testing
.
T
)
{
...
...
@@ -256,5 +256,5 @@ func TestInvalidLsifFileProcessing(t *testing.T) {
require
.
NoError
(
t
,
s
.
writer
.
Close
())
response
:=
testUploadArtifacts
(
t
,
s
.
writer
.
FormDataContentType
(),
s
.
url
,
s
.
buffer
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusInternalServerError
)
}
internal/artifacts/entry_test.go
View file @
eec72348
...
...
@@ -50,16 +50,16 @@ func TestDownloadingFromValidArchive(t *testing.T) {
response
:=
testEntryServer
(
t
,
tempFile
.
Name
(),
"test.txt"
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
test.txt
\"
"
)
testhelper
.
Assert
ResponseBody
(
t
,
response
,
"testtest"
)
testhelper
.
Require
ResponseBody
(
t
,
response
,
"testtest"
)
}
func
TestDownloadingFromValidHTTPArchive
(
t
*
testing
.
T
)
{
...
...
@@ -84,16 +84,16 @@ func TestDownloadingFromValidHTTPArchive(t *testing.T) {
response
:=
testEntryServer
(
t
,
fileServer
.
URL
+
"/archive.zip"
,
"test.txt"
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
test.txt
\"
"
)
testhelper
.
Assert
ResponseBody
(
t
,
response
,
"testtest"
)
testhelper
.
Require
ResponseBody
(
t
,
response
,
"testtest"
)
}
func
TestDownloadingNonExistingFile
(
t
*
testing
.
T
)
{
...
...
@@ -107,17 +107,17 @@ func TestDownloadingNonExistingFile(t *testing.T) {
archive
.
Close
()
response
:=
testEntryServer
(
t
,
tempFile
.
Name
(),
"test"
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
404
)
}
func
TestDownloadingFromInvalidArchive
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"path/to/non/existing/file"
,
"test"
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
404
)
}
func
TestIncompleteApiResponse
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
""
,
""
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
500
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
500
)
}
func
TestDownloadingFromNonExistingHTTPArchive
(
t
*
testing
.
T
)
{
...
...
@@ -130,5 +130,5 @@ func TestDownloadingFromNonExistingHTTPArchive(t *testing.T) {
response
:=
testEntryServer
(
t
,
fileServer
.
URL
+
"/not-existing-archive-file.zip"
,
"test.txt"
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
404
)
}
internal/channel/wrappers_test.go
View file @
eec72348
...
...
@@ -61,7 +61,7 @@ var (
fakeOther
=
fake
(
other
,
[]
byte
(
"foo"
),
nil
)
)
func
assertEqual
(
t
*
testing
.
T
,
expected
,
actual
*
fakeConn
,
msg
string
,
args
...
interface
{})
{
func
requireEqualConn
(
t
*
testing
.
T
,
expected
,
actual
*
fakeConn
,
msg
string
,
args
...
interface
{})
{
if
expected
.
mt
!=
actual
.
mt
{
t
.
Logf
(
"messageType expected to be %v but was %v"
,
expected
.
mt
,
actual
.
mt
)
t
.
Fatalf
(
msg
,
args
...
)
...
...
@@ -111,7 +111,7 @@ func TestReadMessage(t *testing.T) {
conn
:=
Wrap
(
tc
.
input
,
subprotocol
)
mt
,
data
,
err
:=
conn
.
ReadMessage
()
actual
:=
fake
(
mt
,
data
,
err
)
assertEqual
(
t
,
tc
.
expected
,
actual
,
"%s test case %v"
,
subprotocol
,
i
)
requireEqualConn
(
t
,
tc
.
expected
,
actual
,
"%s test case %v"
,
subprotocol
,
i
)
}
}
}
...
...
@@ -149,7 +149,7 @@ func TestWriteMessage(t *testing.T) {
actual
:=
fake
(
0
,
nil
,
tc
.
input
.
err
)
conn
:=
Wrap
(
actual
,
subprotocol
)
actual
.
err
=
conn
.
WriteMessage
(
tc
.
input
.
mt
,
tc
.
input
.
data
)
assertEqual
(
t
,
tc
.
expected
,
actual
,
"%s test case %v"
,
subprotocol
,
i
)
requireEqualConn
(
t
,
tc
.
expected
,
actual
,
"%s test case %v"
,
subprotocol
,
i
)
}
}
}
internal/git/archive_test.go
View file @
eec72348
...
...
@@ -76,10 +76,10 @@ func TestSetArchiveHeaders(t *testing.T) {
setArchiveHeaders
(
w
,
testCase
.
in
,
"filename"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Content-Type"
,
testCase
.
out
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Content-Length"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Content-Disposition"
,
`attachment; filename="filename"`
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Cache-Control"
,
"public, max-age=3600"
)
testhelper
.
Assert
AbsentResponseWriterHeader
(
t
,
w
,
"Set-Cookie"
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Content-Type"
,
testCase
.
out
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Content-Length"
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Content-Disposition"
,
`attachment; filename="filename"`
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Cache-Control"
,
"public, max-age=3600"
)
testhelper
.
Require
AbsentResponseWriterHeader
(
t
,
w
,
"Set-Cookie"
)
}
}
internal/git/blob_test.go
View file @
eec72348
...
...
@@ -13,5 +13,5 @@ func TestSetBlobHeaders(t *testing.T) {
setBlobHeaders
(
w
)
testhelper
.
Assert
AbsentResponseWriterHeader
(
t
,
w
,
"Set-Cookie"
)
testhelper
.
Require
AbsentResponseWriterHeader
(
t
,
w
,
"Set-Cookie"
)
}
internal/sendurl/sendurl_test.go
View file @
eec72348
...
...
@@ -84,16 +84,16 @@ func testEntryServer(t *testing.T, requestURL string, httpHeaders http.Header, a
func
TestDownloadingUsingSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/get/request"
,
nil
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
archive.txt
\"
"
)
testhelper
.
Assert
ResponseBody
(
t
,
response
,
testData
)
testhelper
.
Require
ResponseBody
(
t
,
response
,
testData
)
}
func
TestDownloadingAChunkOfDataWithSendURL
(
t
*
testing
.
T
)
{
...
...
@@ -104,19 +104,19 @@ func TestDownloadingAChunkOfDataWithSendURL(t *testing.T) {
}
response
:=
testEntryServer
(
t
,
"/get/request"
,
httpHeaders
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusPartialContent
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusPartialContent
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
archive.txt
\"
"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Range"
,
"bytes 1-2/30"
)
testhelper
.
Assert
ResponseBody
(
t
,
response
,
"23"
)
testhelper
.
Require
ResponseBody
(
t
,
response
,
"23"
)
}
func
TestAccessingAlreadyDownloadedFileWithSendURL
(
t
*
testing
.
T
)
{
...
...
@@ -125,22 +125,22 @@ func TestAccessingAlreadyDownloadedFileWithSendURL(t *testing.T) {
}
response
:=
testEntryServer
(
t
,
"/get/request"
,
httpHeaders
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusNotModified
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusNotModified
)
}
func
TestAccessingRedirectWithSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/get/redirect"
,
nil
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusTemporaryRedirect
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusTemporaryRedirect
)
}
func
TestAccessingAllowedRedirectWithSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/get/redirect"
,
nil
,
true
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
archive.txt
\"
"
)
}
...
...
@@ -153,45 +153,45 @@ func TestAccessingAllowedRedirectWithChunkOfDataWithSendURL(t *testing.T) {
}
response
:=
testEntryServer
(
t
,
"/get/redirect"
,
httpHeaders
,
true
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusPartialContent
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusPartialContent
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Disposition"
,
"attachment; filename=
\"
archive.txt
\"
"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Content-Range"
,
"bytes 1-2/30"
)
testhelper
.
Assert
ResponseBody
(
t
,
response
,
"23"
)
testhelper
.
Require
ResponseBody
(
t
,
response
,
"23"
)
}
func
TestOriginalCacheHeadersPreservedWithSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/get/redirect"
,
nil
,
true
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusOK
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Cache-Control"
,
"no-cache"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Expires"
,
""
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Date"
,
"Wed, 21 Oct 2015 05:28:00 GMT"
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
response
,
testhelper
.
Require
ResponseWriterHeader
(
t
,
response
,
"Pragma"
,
"no-cache"
)
}
func
TestDownloadingNonExistingFileUsingSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/invalid/path"
,
nil
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusNotFound
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusNotFound
)
}
func
TestDownloadingNonExistingRemoteFileWithSendURL
(
t
*
testing
.
T
)
{
response
:=
testEntryServer
(
t
,
"/get/file-not-existing"
,
nil
,
false
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
http
.
StatusNotFound
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
http
.
StatusNotFound
)
}
internal/staticpages/deploy_page_test.go
View file @
eec72348
...
...
@@ -52,6 +52,6 @@ func TestIfDeployPageExist(t *testing.T) {
}
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
deployPage
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
deployPage
)
}
internal/staticpages/error_pages_test.go
View file @
eec72348
...
...
@@ -36,9 +36,9 @@ func TestIfErrorPageIsPresented(t *testing.T) {
st
.
ErrorPagesUnless
(
false
,
ErrorFormatHTML
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Assert
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"text/html; charset=utf-8"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Require
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"text/html; charset=utf-8"
)
}
func
TestIfErrorPassedIfNoErrorPageIsFound
(
t
*
testing
.
T
)
{
...
...
@@ -58,8 +58,8 @@ func TestIfErrorPassedIfNoErrorPageIsFound(t *testing.T) {
st
.
ErrorPagesUnless
(
false
,
ErrorFormatHTML
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
errorResponse
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
errorResponse
)
}
func
TestIfErrorPageIsIgnoredInDevelopment
(
t
*
testing
.
T
)
{
...
...
@@ -81,8 +81,8 @@ func TestIfErrorPageIsIgnoredInDevelopment(t *testing.T) {
st
:=
&
Static
{
dir
}
st
.
ErrorPagesUnless
(
true
,
ErrorFormatHTML
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
500
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
serverError
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
500
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
serverError
)
}
func
TestIfErrorPageIsIgnoredIfCustomError
(
t
*
testing
.
T
)
{
...
...
@@ -105,8 +105,8 @@ func TestIfErrorPageIsIgnoredIfCustomError(t *testing.T) {
st
:=
&
Static
{
dir
}
st
.
ErrorPagesUnless
(
false
,
ErrorFormatHTML
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
500
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
serverError
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
500
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
serverError
)
}
func
TestErrorPageInterceptedByContentType
(
t
*
testing
.
T
)
{
...
...
@@ -140,12 +140,12 @@ func TestErrorPageInterceptedByContentType(t *testing.T) {
st
:=
&
Static
{
dir
}
st
.
ErrorPagesUnless
(
false
,
ErrorFormatHTML
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
500
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
500
)
if
tc
.
intercepted
{
testhelper
.
Assert
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
errorPage
)
}
else
{
testhelper
.
Assert
ResponseBody
(
t
,
w
,
serverError
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
serverError
)
}
}
}
...
...
@@ -165,9 +165,9 @@ func TestIfErrorPageIsPresentedJSON(t *testing.T) {
st
.
ErrorPagesUnless
(
false
,
ErrorFormatJSON
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Assert
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"application/json; charset=utf-8"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Require
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"application/json; charset=utf-8"
)
}
func
TestIfErrorPageIsPresentedText
(
t
*
testing
.
T
)
{
...
...
@@ -185,7 +185,7 @@ func TestIfErrorPageIsPresentedText(t *testing.T) {
st
.
ErrorPagesUnless
(
false
,
ErrorFormatText
,
h
)
.
ServeHTTP
(
w
,
nil
)
w
.
Flush
()
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Assert
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
errorPage
)
testhelper
.
Require
ResponseHeader
(
t
,
w
,
"Content-Type"
,
"text/plain; charset=utf-8"
)
}
internal/staticpages/servefile_test.go
View file @
eec72348
...
...
@@ -20,7 +20,7 @@ func TestServingNonExistingFile(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
st
:=
&
Static
{
dir
}
st
.
ServeExisting
(
"/"
,
CacheDisabled
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
}
func
TestServingDirectory
(
t
*
testing
.
T
)
{
...
...
@@ -34,7 +34,7 @@ func TestServingDirectory(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
st
:=
&
Static
{
dir
}
st
.
ServeExisting
(
"/"
,
CacheDisabled
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
}
func
TestServingMalformedUri
(
t
*
testing
.
T
)
{
...
...
@@ -44,7 +44,7 @@ func TestServingMalformedUri(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
st
:=
&
Static
{
dir
}
st
.
ServeExisting
(
"/"
,
CacheDisabled
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
}
func
TestExecutingHandlerWhenNoFileFound
(
t
*
testing
.
T
)
{
...
...
@@ -76,7 +76,7 @@ func TestServingTheActualFile(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
st
:=
&
Static
{
dir
}
st
.
ServeExisting
(
"/"
,
CacheDisabled
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
200
)
if
w
.
Body
.
String
()
!=
fileContent
{
t
.
Error
(
"We should serve the file: "
,
w
.
Body
.
String
())
}
...
...
@@ -108,15 +108,15 @@ func testServingThePregzippedFile(t *testing.T, enableGzip bool) {
w
:=
httptest
.
NewRecorder
()
st
:=
&
Static
{
dir
}
st
.
ServeExisting
(
"/"
,
CacheDisabled
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
200
)
if
enableGzip
{
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Content-Encoding"
,
"gzip"
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Content-Encoding"
,
"gzip"
)
if
!
bytes
.
Equal
(
w
.
Body
.
Bytes
(),
fileGzipContent
.
Bytes
())
{
t
.
Error
(
"We should serve the pregzipped file"
)
}
}
else
{
testhelper
.
Assert
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Assert
ResponseWriterHeader
(
t
,
w
,
"Content-Encoding"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
200
)
testhelper
.
Require
ResponseWriterHeader
(
t
,
w
,
"Content-Encoding"
)
if
w
.
Body
.
String
()
!=
fileContent
{
t
.
Error
(
"We should serve the file: "
,
w
.
Body
.
String
())
}
...
...
internal/testhelper/testhelper.go
View file @
eec72348
...
...
@@ -33,9 +33,10 @@ func ConfigureSecret() {
var
extractPatchSeriesMatcher
=
regexp
.
MustCompile
(
`^From (\w+)`
)
//
Assert
PatchSeries takes a `git format-patch` blob, extracts the From xxxxx
//
Require
PatchSeries takes a `git format-patch` blob, extracts the From xxxxx
// lines and compares the SHAs to expected list.
func
AssertPatchSeries
(
t
*
testing
.
T
,
blob
[]
byte
,
expected
...
string
)
{
func
RequirePatchSeries
(
t
*
testing
.
T
,
blob
[]
byte
,
expected
...
string
)
{
t
.
Helper
()
var
actual
[]
string
footer
:=
make
([]
string
,
3
)
...
...
@@ -60,31 +61,36 @@ func AssertPatchSeries(t *testing.T, blob []byte, expected ...string) {
}
}
func
AssertResponseCode
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedCode
int
)
{
func
RequireResponseCode
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedCode
int
)
{
t
.
Helper
()
if
response
.
Code
!=
expectedCode
{
t
.
Fatalf
(
"for HTTP request expected to get %d, got %d instead"
,
expectedCode
,
response
.
Code
)
}
}
func
AssertResponseBody
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedBody
string
)
{
func
RequireResponseBody
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedBody
string
)
{
t
.
Helper
()
if
response
.
Body
.
String
()
!=
expectedBody
{
t
.
Fatalf
(
"for HTTP request expected to receive %q, got %q instead as body"
,
expectedBody
,
response
.
Body
.
String
())
}
}
func
AssertResponseBodyRegexp
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedBody
*
regexp
.
Regexp
)
{
func
RequireResponseBodyRegexp
(
t
*
testing
.
T
,
response
*
httptest
.
ResponseRecorder
,
expectedBody
*
regexp
.
Regexp
)
{
t
.
Helper
()
if
!
expectedBody
.
MatchString
(
response
.
Body
.
String
())
{
t
.
Fatalf
(
"for HTTP request expected to receive body matching %q, got %q instead"
,
expectedBody
.
String
(),
response
.
Body
.
String
())
}
}
func
AssertResponseWriterHeader
(
t
*
testing
.
T
,
w
http
.
ResponseWriter
,
header
string
,
expected
...
string
)
{
func
RequireResponseWriterHeader
(
t
*
testing
.
T
,
w
http
.
ResponseWriter
,
header
string
,
expected
...
string
)
{
t
.
Helper
()
actual
:=
w
.
Header
()[
http
.
CanonicalHeaderKey
(
header
)]
assert
HeaderExists
(
t
,
header
,
actual
,
expected
)
require
HeaderExists
(
t
,
header
,
actual
,
expected
)
}
func
AssertAbsentResponseWriterHeader
(
t
*
testing
.
T
,
w
http
.
ResponseWriter
,
header
string
)
{
func
RequireAbsentResponseWriterHeader
(
t
*
testing
.
T
,
w
http
.
ResponseWriter
,
header
string
)
{
t
.
Helper
()
actual
:=
w
.
Header
()[
http
.
CanonicalHeaderKey
(
header
)]
if
len
(
actual
)
!=
0
{
...
...
@@ -92,7 +98,8 @@ func AssertAbsentResponseWriterHeader(t *testing.T, w http.ResponseWriter, heade
}
}
func
AssertResponseHeader
(
t
*
testing
.
T
,
w
interface
{},
header
string
,
expected
...
string
)
{
func
RequireResponseHeader
(
t
*
testing
.
T
,
w
interface
{},
header
string
,
expected
...
string
)
{
t
.
Helper
()
var
actual
[]
string
header
=
http
.
CanonicalHeaderKey
(
header
)
...
...
@@ -104,13 +111,14 @@ func AssertResponseHeader(t *testing.T, w interface{}, header string, expected .
}
else
if
resp
,
ok
:=
w
.
(
*
httptest
.
ResponseRecorder
);
ok
{
actual
=
resp
.
Header
()[
header
]
}
else
{
t
.
Fatalf
(
"invalid type of w passed
Assert
ResponseHeader"
)
t
.
Fatalf
(
"invalid type of w passed
Require
ResponseHeader"
)
}
assert
HeaderExists
(
t
,
header
,
actual
,
expected
)
require
HeaderExists
(
t
,
header
,
actual
,
expected
)
}
func
assertHeaderExists
(
t
*
testing
.
T
,
header
string
,
actual
,
expected
[]
string
)
{
func
requireHeaderExists
(
t
*
testing
.
T
,
header
string
,
actual
,
expected
[]
string
)
{
t
.
Helper
()
if
len
(
expected
)
!=
len
(
actual
)
{
t
.
Fatalf
(
"for HTTP request expected to receive the header %q with %+v, got %+v"
,
header
,
expected
,
actual
)
}
...
...
internal/upload/uploads_test.go
View file @
eec72348
...
...
@@ -62,7 +62,7 @@ func TestUploadTempPathRequirement(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
request
,
nilHandler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
500
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
500
)
}
func
TestUploadHandlerForwardingRawData
(
t
*
testing
.
T
)
{
...
...
@@ -103,7 +103,7 @@ func TestUploadHandlerForwardingRawData(t *testing.T) {
HandleFileUploads
(
response
,
httpRequest
,
handler
,
apiResponse
,
nil
,
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
202
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
202
)
if
response
.
Body
.
String
()
!=
"RESPONSE"
{
t
.
Fatal
(
"Expected RESPONSE in response body"
)
}
...
...
@@ -209,7 +209,7 @@ func TestUploadHandlerRewritingMultiPartData(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
httpRequest
,
handler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
202
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
202
)
cancel
()
// this will trigger an async cleanup
waitUntilDeleted
(
t
,
filePath
)
...
...
@@ -286,7 +286,7 @@ func TestUploadHandlerDetectingInjectedMultiPartData(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
httpRequest
,
handler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
test
.
response
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
test
.
response
)
cancel
()
// this will trigger an async cleanup
waitUntilDeleted
(
t
,
filePath
)
...
...
@@ -321,7 +321,7 @@ func TestUploadProcessingField(t *testing.T) {
HandleFileUploads
(
response
,
httpRequest
,
nilHandler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
500
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
500
)
}
func
TestUploadProcessingFile
(
t
*
testing
.
T
)
{
...
...
@@ -382,7 +382,7 @@ func TestUploadProcessingFile(t *testing.T) {
HandleFileUploads
(
response
,
httpRequest
,
nilHandler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
200
)
})
}
...
...
@@ -430,7 +430,7 @@ func TestInvalidFileNames(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
httpRequest
,
nilHandler
,
apiResponse
,
&
SavedFileTracker
{
Request
:
httpRequest
},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
testCase
.
code
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
testCase
.
code
)
}
}
...
...
@@ -486,7 +486,7 @@ func TestUploadHandlerRemovingExif(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
httpRequest
,
handler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
200
)
}
func
TestUploadHandlerRemovingInvalidExif
(
t
*
testing
.
T
)
{
...
...
@@ -528,7 +528,7 @@ func TestUploadHandlerRemovingInvalidExif(t *testing.T) {
require
.
NoError
(
t
,
err
)
HandleFileUploads
(
response
,
httpRequest
,
handler
,
apiResponse
,
&
testFormProcessor
{},
opts
)
testhelper
.
Assert
ResponseCode
(
t
,
response
,
422
)
testhelper
.
Require
ResponseCode
(
t
,
response
,
422
)
}
func
newProxy
(
url
string
)
*
proxy
.
Proxy
{
...
...
internal/upstream/development_test.go
View file @
eec72348
...
...
@@ -36,5 +36,5 @@ func TestDevelopmentModeDisabled(t *testing.T) {
if
executed
{
t
.
Error
(
"The handler should not get executed"
)
}
testhelper
.
Assert
ResponseCode
(
t
,
w
,
404
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
404
)
}
internal/upstream/handlers_test.go
View file @
eec72348
...
...
@@ -38,7 +38,7 @@ func TestGzipEncoding(t *testing.T) {
}
}))
.
ServeHTTP
(
resp
,
req
)
testhelper
.
Assert
ResponseCode
(
t
,
resp
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
resp
,
200
)
}
func
TestNoEncoding
(
t
*
testing
.
T
)
{
...
...
@@ -62,7 +62,7 @@ func TestNoEncoding(t *testing.T) {
}
}))
.
ServeHTTP
(
resp
,
req
)
testhelper
.
Assert
ResponseCode
(
t
,
resp
,
200
)
testhelper
.
Require
ResponseCode
(
t
,
resp
,
200
)
}
func
TestInvalidEncoding
(
t
*
testing
.
T
)
{
...
...
@@ -78,5 +78,5 @@ func TestInvalidEncoding(t *testing.T) {
t
.
Fatal
(
"it shouldn't be executed"
)
}))
.
ServeHTTP
(
resp
,
req
)
testhelper
.
Assert
ResponseCode
(
t
,
resp
,
500
)
testhelper
.
Require
ResponseCode
(
t
,
resp
,
500
)
}
main_test.go
View file @
eec72348
...
...
@@ -503,7 +503,7 @@ func TestAPIFalsePositivesAreProxied(t *testing.T) {
assert
.
NoError
(
t
,
err
,
"%s %q: reading body"
,
tc
.
method
,
tc
.
path
)
assert
.
Equal
(
t
,
200
,
resp
.
StatusCode
,
"%s %q: status code"
,
tc
.
method
,
tc
.
path
)
testhelper
.
Assert
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"text/html"
)
testhelper
.
Require
ResponseHeader
(
t
,
resp
,
"Content-Type"
,
"text/html"
)
assert
.
Equal
(
t
,
string
(
goodResponse
),
string
(
respBody
),
"%s %q: response body"
,
tc
.
method
,
tc
.
path
)
}
}
...
...
proxy_test.go
View file @
eec72348
...
...
@@ -66,8 +66,8 @@ func TestProxyRequest(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
newProxy
(
ts
.
URL
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
202
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
"RESPONSE"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
202
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
"RESPONSE"
)
if
w
.
Header
()
.
Get
(
"Custom-Response-Header"
)
!=
"test"
{
t
.
Fatal
(
"Expected custom response header"
)
...
...
@@ -83,8 +83,8 @@ func TestProxyError(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
newProxy
(
"http://localhost:655575/"
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
502
)
testhelper
.
Assert
ResponseBodyRegexp
(
t
,
w
,
regexp
.
MustCompile
(
"dial tcp:.*invalid port.*"
))
testhelper
.
Require
ResponseCode
(
t
,
w
,
502
)
testhelper
.
Require
ResponseBodyRegexp
(
t
,
w
,
regexp
.
MustCompile
(
"dial tcp:.*invalid port.*"
))
}
func
TestProxyReadTimeout
(
t
*
testing
.
T
)
{
...
...
@@ -110,8 +110,8 @@ func TestProxyReadTimeout(t *testing.T) {
p
:=
newProxy
(
ts
.
URL
,
rt
)
w
:=
httptest
.
NewRecorder
()
p
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
502
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
"GitLab is not responding"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
502
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
"GitLab is not responding"
)
}
func
TestProxyHandlerTimeout
(
t
*
testing
.
T
)
{
...
...
@@ -128,6 +128,6 @@ func TestProxyHandlerTimeout(t *testing.T) {
w
:=
httptest
.
NewRecorder
()
newProxy
(
ts
.
URL
,
nil
)
.
ServeHTTP
(
w
,
httpRequest
)
testhelper
.
Assert
ResponseCode
(
t
,
w
,
503
)
testhelper
.
Assert
ResponseBody
(
t
,
w
,
"Request took too long"
)
testhelper
.
Require
ResponseCode
(
t
,
w
,
503
)
testhelper
.
Require
ResponseBody
(
t
,
w
,
"Request took too long"
)
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment