mirror of https://github.com/dtm-labs/dtm.git
csharpjavadistributed-transactionsdtmgogolangmicroservicenodejsphpdatabasesagaseatatcctransactiontransactionsxapythondistributed
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
49 lines
1.3 KiB
package common
|
|
|
|
import (
|
|
"errors"
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/go-playground/assert/v2"
|
|
)
|
|
|
|
func TestLoadFromEnv(t *testing.T) {
|
|
assert.Equal(t, "MICRO_SERVICE_DRIVER", toUnderscoreUpper("MicroService_Driver"))
|
|
|
|
ms := MicroService{}
|
|
os.Setenv("T_DRIVER", "d1")
|
|
loadFromEnv("T", &ms)
|
|
assert.Equal(t, "d1", ms.Driver)
|
|
}
|
|
|
|
func TestCheckConfig(t *testing.T) {
|
|
config := &Config
|
|
retryIntervalErr := checkConfig()
|
|
retryIntervalExpect := errors.New("RetryInterval should not be less than 10")
|
|
assert.Equal(t,retryIntervalErr,retryIntervalExpect)
|
|
|
|
config.RetryInterval = 10
|
|
timeoutToFailErr := checkConfig()
|
|
timeoutToFailExpect := errors.New("TimeoutToFail should not be less than RetryInterval")
|
|
assert.Equal(t,timeoutToFailErr,timeoutToFailExpect)
|
|
|
|
config.TimeoutToFail = 20
|
|
driverErr := checkConfig()
|
|
assert.Equal(t,driverErr,nil)
|
|
|
|
config.Store = Store{Driver: Mysql}
|
|
hostErr := checkConfig()
|
|
hostExpect := errors.New("Db host not valid ")
|
|
assert.Equal(t,hostErr,hostExpect)
|
|
|
|
config.Store = Store{Driver: Mysql,Host: "127.0.0.1"}
|
|
portErr := checkConfig()
|
|
portExpect := errors.New("Db port not valid ")
|
|
assert.Equal(t,portErr,portExpect)
|
|
|
|
config.Store = Store{Driver: Mysql,Host: "127.0.0.1",Port: 8686}
|
|
userErr := checkConfig()
|
|
userExpect := errors.New("Db user not valid ")
|
|
assert.Equal(t,userErr,userExpect)
|
|
}
|
|
|