Browse Source

Add debug method for display debug info controled under env DEBUG variable

Jackson Tian 7 years ago
parent
commit
1e688463b8
3 changed files with 35 additions and 4 deletions
  1. 1 1
      .gitignore
  2. 6 3
      .travis.yml
  3. 28 0
      sdk/utils/debug.go

+ 1 - 1
.gitignore

@@ -11,4 +11,4 @@ build/
 dist/
 out/
 .gitignore
-
+coverage.*

+ 6 - 3
.travis.yml

@@ -1,11 +1,10 @@
 language: go
 
-sudo: false
-
 go:
   - 1.8.x
   - 1.9.x
   - 1.10.x
+  - 1.11.x
 
 branches:
   only:
@@ -28,4 +27,8 @@ script:
   - go vet ./services/...
   - go build ./sdk
   - go build ./services/...
-  - go test -v -timeout 60m ./integration/...
+  - go test -race -coverprofile=coverage.txt -covermode=atomic ./sdk
+  #- go test -v -timeout 60s ./integration/...
+
+after_success:
+  - bash <(curl -s https://codecov.io/bash)

+ 28 - 0
sdk/utils/debug.go

@@ -0,0 +1,28 @@
+package utils
+
+import (
+  "fmt"
+  "strings"
+  "os"
+)
+
+type Debug func(format string, v ...interface{})
+
+func Init(flag string) Debug {
+  enable := false
+
+  env := os.Getenv("DEBUG")
+  parts := strings.Split(env, ",")
+  for _, part := range parts {
+    if part == flag {
+      enable = true
+      break
+    }
+  }
+
+  return func (format string, v ...interface{}) {
+    if enable {
+      fmt.Println(fmt.Sprintf(format, v...))
+    }
+  }
+}