Remove the duplicate mssql drone test and add a specific sync test
Signed-off-by: Andrew Thornton <art27@cantab.net>
This commit is contained in:
parent
3a7eec0c08
commit
9b384f6f8d
24
.drone.yml
24
.drone.yml
|
@ -190,30 +190,6 @@ steps:
|
||||||
- push
|
- push
|
||||||
- pull_request
|
- pull_request
|
||||||
|
|
||||||
- name: test-mssql-nvarchar
|
|
||||||
pull: default
|
|
||||||
image: golang:1.12
|
|
||||||
depends_on:
|
|
||||||
- test-mssql
|
|
||||||
environment:
|
|
||||||
GO111MODULE: "on"
|
|
||||||
GOPROXY: "https://goproxy.cn"
|
|
||||||
TEST_MSSQL_HOST: mssql
|
|
||||||
TEST_MSSQL_DBNAME: xorm_test
|
|
||||||
TEST_MSSQL_USERNAME: sa
|
|
||||||
TEST_MSSQL_PASSWORD: "yourStrong(!)Password"
|
|
||||||
TEST_MSSQL_DEFAULT_VARCHAR: nvarchar
|
|
||||||
TEST_MSSQL_DEFAULT_CHAR: nchar
|
|
||||||
commands:
|
|
||||||
- make test-mssql
|
|
||||||
- TEST_CACHE_ENABLE=true make test-mssql
|
|
||||||
- TEST_QUOTE_POLICY=reserved make test-mssql
|
|
||||||
- TEST_MSSQL_DEFAULT_VARCHAR=NVARCHAR TEST_MSSQL_DEFAULT_CHAR=NCHAR make test-mssql
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- push
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: test-tidb
|
- name: test-tidb
|
||||||
pull: default
|
pull: default
|
||||||
image: golang:1.12
|
image: golang:1.12
|
||||||
|
|
3
Makefile
3
Makefile
|
@ -22,6 +22,7 @@ TEST_MSSQL_USERNAME ?= sa
|
||||||
TEST_MSSQL_PASSWORD ?= MwantsaSecurePassword1
|
TEST_MSSQL_PASSWORD ?= MwantsaSecurePassword1
|
||||||
TEST_MSSQL_DEFAULT_VARCHAR ?= varchar
|
TEST_MSSQL_DEFAULT_VARCHAR ?= varchar
|
||||||
TEST_MSSQL_DEFAULT_CHAR ?= char
|
TEST_MSSQL_DEFAULT_CHAR ?= char
|
||||||
|
TEST_MSSQL_DO_NVARCHAR_OVERRIDE_TEST ?= true
|
||||||
|
|
||||||
TEST_MYSQL_HOST ?= mysql:3306
|
TEST_MYSQL_HOST ?= mysql:3306
|
||||||
TEST_MYSQL_CHARSET ?= utf8
|
TEST_MYSQL_CHARSET ?= utf8
|
||||||
|
@ -147,6 +148,7 @@ test-mssql: go-check
|
||||||
$(GO) test $(INTEGRATION_PACKAGES) -v -race -db=mssql -cache=$(TEST_CACHE_ENABLE) -quote=$(TEST_QUOTE_POLICY) \
|
$(GO) test $(INTEGRATION_PACKAGES) -v -race -db=mssql -cache=$(TEST_CACHE_ENABLE) -quote=$(TEST_QUOTE_POLICY) \
|
||||||
-conn_str="server=$(TEST_MSSQL_HOST);user id=$(TEST_MSSQL_USERNAME);password=$(TEST_MSSQL_PASSWORD);database=$(TEST_MSSQL_DBNAME)" \
|
-conn_str="server=$(TEST_MSSQL_HOST);user id=$(TEST_MSSQL_USERNAME);password=$(TEST_MSSQL_PASSWORD);database=$(TEST_MSSQL_DBNAME)" \
|
||||||
-default_varchar=$(TEST_MSSQL_DEFAULT_VARCHAR) -default_char=$(TEST_MSSQL_DEFAULT_CHAR) \
|
-default_varchar=$(TEST_MSSQL_DEFAULT_VARCHAR) -default_char=$(TEST_MSSQL_DEFAULT_CHAR) \
|
||||||
|
-do_nvarchar_override_test=$(TEST_MSSQL_DO_NVARCHAR_OVERRIDE_TEST) \
|
||||||
-coverprofile=mssql.$(TEST_QUOTE_POLICY).$(TEST_CACHE_ENABLE).coverage.out -covermode=atomic
|
-coverprofile=mssql.$(TEST_QUOTE_POLICY).$(TEST_CACHE_ENABLE).coverage.out -covermode=atomic
|
||||||
|
|
||||||
.PNONY: test-mssql\#%
|
.PNONY: test-mssql\#%
|
||||||
|
@ -154,6 +156,7 @@ test-mssql\#%: go-check
|
||||||
$(GO) test $(INTEGRATION_PACKAGES) -v -race -run $* -db=mssql -cache=$(TEST_CACHE_ENABLE) -quote=$(TEST_QUOTE_POLICY) \
|
$(GO) test $(INTEGRATION_PACKAGES) -v -race -run $* -db=mssql -cache=$(TEST_CACHE_ENABLE) -quote=$(TEST_QUOTE_POLICY) \
|
||||||
-conn_str="server=$(TEST_MSSQL_HOST);user id=$(TEST_MSSQL_USERNAME);password=$(TEST_MSSQL_PASSWORD);database=$(TEST_MSSQL_DBNAME)" \
|
-conn_str="server=$(TEST_MSSQL_HOST);user id=$(TEST_MSSQL_USERNAME);password=$(TEST_MSSQL_PASSWORD);database=$(TEST_MSSQL_DBNAME)" \
|
||||||
-default_varchar=$(TEST_MSSQL_DEFAULT_VARCHAR) -default_char=$(TEST_MSSQL_DEFAULT_CHAR) \
|
-default_varchar=$(TEST_MSSQL_DEFAULT_VARCHAR) -default_char=$(TEST_MSSQL_DEFAULT_CHAR) \
|
||||||
|
-do_nvarchar_override_test=$(TEST_MSSQL_DO_NVARCHAR_OVERRIDE_TEST) \
|
||||||
-coverprofile=mssql.$(TEST_QUOTE_POLICY).$(TEST_CACHE_ENABLE).coverage.out -covermode=atomic
|
-coverprofile=mssql.$(TEST_QUOTE_POLICY).$(TEST_CACHE_ENABLE).coverage.out -covermode=atomic
|
||||||
|
|
||||||
.PNONY: test-mymysql
|
.PNONY: test-mymysql
|
||||||
|
|
|
@ -152,6 +152,61 @@ func TestSyncTable2(t *testing.T) {
|
||||||
assert.EqualValues(t, colMapper.Obj2Table("NewCol"), tables[0].Columns()[3].Name)
|
assert.EqualValues(t, colMapper.Obj2Table("NewCol"), tables[0].Columns()[3].Name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SyncTable4 struct {
|
||||||
|
Id int64
|
||||||
|
Name string
|
||||||
|
Text string `xorm:"TEXT"`
|
||||||
|
Char byte `xorm:"CHAR"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *SyncTable4) TableName() string {
|
||||||
|
return "sync_table1"
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestSyncTable3(t *testing.T) {
|
||||||
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
||||||
|
assert.NoError(t, testEngine.Sync2(new(SyncTable4)))
|
||||||
|
|
||||||
|
tables, err := testEngine.DBMetas()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, 1, len(tables))
|
||||||
|
assert.EqualValues(t, "sync_table1", tables[0].Name)
|
||||||
|
tableInfo, err := testEngine.TableInfo(new(SyncTable4))
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, testEngine.Dialect().SQLType(tables[0].GetColumn("name")), testEngine.Dialect().SQLType(tableInfo.GetColumn("name")))
|
||||||
|
|
||||||
|
if *doNVarcharTest {
|
||||||
|
var oldDefaultVarchar string
|
||||||
|
var oldDefaultChar string
|
||||||
|
oldDefaultVarchar, *defaultVarchar = *defaultVarchar, "nvarchar"
|
||||||
|
oldDefaultChar, *defaultChar = *defaultChar, "nchar"
|
||||||
|
testEngine.Dialect().SetParams(map[string]string{
|
||||||
|
"DEFAULT_VARCHAR": *defaultVarchar,
|
||||||
|
"DEFAULT_CHAR": *defaultChar,
|
||||||
|
})
|
||||||
|
defer func() {
|
||||||
|
*defaultVarchar = oldDefaultVarchar
|
||||||
|
*defaultChar = oldDefaultChar
|
||||||
|
testEngine.Dialect().SetParams(map[string]string{
|
||||||
|
"DEFAULT_VARCHAR": *defaultVarchar,
|
||||||
|
"DEFAULT_CHAR": *defaultChar,
|
||||||
|
})
|
||||||
|
}()
|
||||||
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
||||||
|
assert.NoError(t, testEngine.Sync2(new(SyncTable4)))
|
||||||
|
|
||||||
|
tables, err := testEngine.DBMetas()
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, 1, len(tables))
|
||||||
|
assert.EqualValues(t, "sync_table1", tables[0].Name)
|
||||||
|
tableInfo, err := testEngine.TableInfo(new(SyncTable4))
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.EqualValues(t, testEngine.Dialect().SQLType(tables[0].GetColumn("name")), testEngine.Dialect().SQLType(tableInfo.GetColumn("name")))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestIsTableExist(t *testing.T) {
|
func TestIsTableExist(t *testing.T) {
|
||||||
assert.NoError(t, PrepareEngine())
|
assert.NoError(t, PrepareEngine())
|
||||||
|
|
||||||
|
|
|
@ -35,6 +35,7 @@ var (
|
||||||
schema = flag.String("schema", "", "specify the schema")
|
schema = flag.String("schema", "", "specify the schema")
|
||||||
ignoreSelectUpdate = flag.Bool("ignore_select_update", false, "ignore select update if implementation difference, only for tidb")
|
ignoreSelectUpdate = flag.Bool("ignore_select_update", false, "ignore select update if implementation difference, only for tidb")
|
||||||
ingoreUpdateLimit = flag.Bool("ignore_update_limit", false, "ignore update limit if implementation difference, only for cockroach")
|
ingoreUpdateLimit = flag.Bool("ignore_update_limit", false, "ignore update limit if implementation difference, only for cockroach")
|
||||||
|
doNVarcharTest = flag.Bool("do_nvarchar_override_test", false, "do nvarchar override test in sync table, only for mssql")
|
||||||
quotePolicyStr = flag.String("quote", "always", "quote could be always, none, reversed")
|
quotePolicyStr = flag.String("quote", "always", "quote could be always, none, reversed")
|
||||||
defaultVarchar = flag.String("default_varchar", "varchar", "default varchar type, mssql only, could be varchar or nvarchar, default is varchar")
|
defaultVarchar = flag.String("default_varchar", "varchar", "default varchar type, mssql only, could be varchar or nvarchar, default is varchar")
|
||||||
defaultChar = flag.String("default_char", "char", "default char type, mssql only, could be char or nchar, default is char")
|
defaultChar = flag.String("default_char", "char", "default char type, mssql only, could be char or nchar, default is char")
|
||||||
|
|
Loading…
Reference in New Issue