Restructure project
This commit is contained in:
parent
e44e7caa11
commit
16b2f17301
46 changed files with 1744 additions and 1265 deletions
56
internal/env/env_test.go
vendored
Normal file
56
internal/env/env_test.go
vendored
Normal file
|
@ -0,0 +1,56 @@
|
|||
package env
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestPortParser(t *testing.T) {
|
||||
key := "PORT"
|
||||
var err error
|
||||
defer func() {
|
||||
os.Unsetenv(key)
|
||||
}()
|
||||
|
||||
os.Setenv(key, "1024")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err, nil, "Parsing should pass")
|
||||
|
||||
os.Setenv(key, "-12")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err.Error(), "Key: 'Config.Port' Error:Field validation for 'Port' failed on the 'min' tag", "Validation should fail")
|
||||
|
||||
os.Setenv(key, "60000")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err.Error(), "Key: 'Config.Port' Error:Field validation for 'Port' failed on the 'max' tag", "Validation should fail")
|
||||
|
||||
os.Setenv(key, "abc")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err.Error(), "env: parse error on field \"Port\" of type \"int\": strconv.ParseInt: parsing \"abc\": invalid syntax", "Parsing should fail")
|
||||
}
|
||||
|
||||
func TestTimeZoneParser(t *testing.T) {
|
||||
key := "TZ"
|
||||
var err error
|
||||
defer func() {
|
||||
os.Unsetenv(key)
|
||||
}()
|
||||
|
||||
os.Setenv(key, "Europe/Berlin")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err, nil, "Parsing should pass")
|
||||
|
||||
os.Setenv(key, "Etc/UTC")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err, nil, "Parsing should pass")
|
||||
|
||||
os.Setenv(key, "abc")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err.Error(), "Key: 'Config.TimeZone' Error:Field validation for 'TimeZone' failed on the 'timezone' tag", "Validation should fail")
|
||||
|
||||
os.Setenv(key, "-1")
|
||||
_, err = Parse()
|
||||
assert.Equal(t, err.Error(), "Key: 'Config.TimeZone' Error:Field validation for 'TimeZone' failed on the 'timezone' tag", "Validation should fail")
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue