add more tests for Sync2 (#925)

This commit is contained in:
Lunny Xiao 2018-05-04 10:51:34 +08:00 committed by GitHub
parent ae0364a057
commit 12e0367559
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 4 deletions

View File

@ -1188,7 +1188,7 @@ func (engine *Engine) Sync(beans ...interface{}) error {
for _, bean := range beans {
v := rValue(bean)
tableNameNoSchema := engine.tbNameNoSchema(v.Interface())
tableNameNoSchema := engine.TableName(bean)
table, err := engine.autoMapType(v)
if err != nil {
return err

View File

@ -122,7 +122,7 @@ func (session *Session) DropTable(beanOrTableName interface{}) error {
}
func (session *Session) dropTable(beanOrTableName interface{}) error {
tableName := session.engine.tbNameNoSchema(beanOrTableName)
tableName := session.engine.TableName(beanOrTableName)
var needDrop = true
if !session.engine.dialect.SupportDropIfExists() {
sqlStr, args := session.engine.dialect.TableCheckSql(tableName)
@ -147,7 +147,7 @@ func (session *Session) IsTableExist(beanOrTableName interface{}) (bool, error)
defer session.Close()
}
tableName := session.engine.tbNameNoSchema(beanOrTableName)
tableName := session.engine.TableName(beanOrTableName)
return session.isTableExist(tableName)
}
@ -163,7 +163,7 @@ func (session *Session) IsTableEmpty(bean interface{}) (bool, error) {
if session.isAutoClose {
defer session.Close()
}
return session.isTableEmpty(session.engine.tbNameNoSchema(bean))
return session.isTableEmpty(session.engine.TableName(bean))
}
func (session *Session) isTableEmpty(tableName string) (bool, error) {

View File

@ -289,8 +289,21 @@ func TestSync2_2(t *testing.T) {
assert.NoError(t, prepareEngine())
var tableNames = make(map[string]bool)
for i := 0; i < 10; i++ {
tableName := fmt.Sprintf("test_sync2_index_%d", i)
tableNames[tableName] = true
assert.NoError(t, testEngine.Table(tableName).Sync2(new(TestSync2Index)))
exist, err := testEngine.IsTableExist(tableName)
assert.NoError(t, err)
assert.True(t, exist)
}
tables, err := testEngine.DBMetas()
assert.NoError(t, err)
for _, table := range tables {
assert.True(t, tableNames[table.Name])
}
}