Skip to content
This repository was archived by the owner on Oct 11, 2023. It is now read-only.

Commit ee0430e

Browse files
committed
Merge branch 'coverage' into 'develop'
Add Unit test for Relay package
2 parents 79b7f4d + e8bad75 commit ee0430e

7 files changed

+818
-10
lines changed

Diff for: .gitlab-ci.yml

+16
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
stages:
55
- linter
66
- build
7+
- test
78
- pages
89

10+
911
# linter
1012
dockerlint:
1113
stage: linter
@@ -21,6 +23,7 @@ golint:
2123
script:
2224
- find . -type f -name "*\.go" | grep -v 'vendor' | xargs -I{} fgt golint {}
2325

26+
2427
# build
2528
docker-build:
2629
stage: build
@@ -43,6 +46,19 @@ go-build:
4346
- go build -a -ldflags '-extldflags "-static"' -o influxdb-relay
4447

4548

49+
# tests
50+
go-tests:
51+
stage: test
52+
image: vpgrp/golang:latest
53+
before_script:
54+
- mkdir -p ${GOPATH}/src/github.com/vente-privee
55+
- ln -fsv ${CI_PROJECT_DIR} ${GOPATH}/src/github.com/vente-privee/influxdb-relay
56+
- go get github.com/stretchr/testify/assert
57+
script:
58+
- cd ${GOPATH}/src/github.com/vente-privee/influxdb-relay
59+
- go test ./...
60+
61+
4662
# vpage
4763
pages:
4864
stage: pages

Diff for: main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ const (
1717

1818
var (
1919
usage = func() {
20-
fmt.Println("Please, see README for more information about InfluxDB Relay...\n")
20+
fmt.Println("Please, see README for more information about InfluxDB Relay...")
2121
flag.PrintDefaults()
2222
}
2323

Diff for: relay/http.go

+9-4
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010
"log"
1111
"net"
1212
"net/http"
13+
"os"
1314
"strconv"
1415
"strings"
1516
"sync"
@@ -36,8 +37,9 @@ type HTTP struct {
3637

3738
backends []*httpBackend
3839

39-
start time.Time
40-
log bool
40+
start time.Time
41+
log bool
42+
logger *log.Logger
4143
}
4244

4345
type relayHandlerFunc func(h *HTTP, w http.ResponseWriter, r *http.Request)
@@ -79,6 +81,9 @@ func NewHTTP(cfg config.HTTPConfig, verbose bool) (Relay, error) {
7981
h.addr = cfg.Addr
8082
h.name = cfg.Name
8183
h.log = verbose
84+
if verbose {
85+
h.logger = log.New(os.Stdout, "", 0)
86+
}
8287

8388
h.pingResponseCode = DefaultHTTPPingResponse
8489
if cfg.DefaultPingResponse != 0 {
@@ -88,7 +93,7 @@ func NewHTTP(cfg config.HTTPConfig, verbose bool) (Relay, error) {
8893
h.pingResponseHeaders = make(map[string]string)
8994
h.pingResponseHeaders["X-InfluxDB-Version"] = "relay"
9095
if h.pingResponseCode != http.StatusNoContent {
91-
h.pingResponseHeaders["Content-Lenght"] = "0"
96+
h.pingResponseHeaders["Content-Length"] = "0"
9297
}
9398

9499
h.cert = cfg.SSLCombinedPem
@@ -206,7 +211,7 @@ func jsonResponse(w http.ResponseWriter, r response) {
206211
w.Header().Set("Content-Length", fmt.Sprint(len(data)))
207212
w.WriteHeader(r.code)
208213

209-
w.Write([]byte(data))
214+
_, _ = w.Write(data)
210215
}
211216

212217
type poster interface {

Diff for: relay/http_handlers.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ func (h *HTTP) handlePing(w http.ResponseWriter, r *http.Request) {
3333
for key, value := range h.pingResponseHeaders {
3434
w.Header().Add(key, value)
3535
}
36-
w.WriteHeader(http.StatusNoContent)
36+
w.WriteHeader(h.pingResponseCode)
3737
} else {
3838
jsonResponse(w, response{http.StatusMethodNotAllowed, http.StatusText(http.StatusMethodNotAllowed)})
3939
return
@@ -209,7 +209,7 @@ func (h *HTTP) handleStandard(w http.ResponseWriter, r *http.Request) {
209209

210210
responses <- &responseData{}
211211
} else {
212-
if resp.StatusCode / 100 == 5 {
212+
if resp.StatusCode/100 == 5 {
213213
log.Printf("5xx response for relay %q backend %q: %v", h.Name(), b.name, resp.StatusCode)
214214
}
215215
responses <- resp
@@ -295,7 +295,7 @@ func (h *HTTP) handleProm(w http.ResponseWriter, r *http.Request) {
295295

296296
responses <- &responseData{}
297297
} else {
298-
if resp.StatusCode / 100 == 5 {
298+
if resp.StatusCode/100 == 5 {
299299
log.Printf("5xx response for relay %q backend %q: %v", h.Name(), b.name, resp.StatusCode)
300300
}
301301

0 commit comments

Comments
 (0)