mirror of
https://github.com/ent/ent.git
synced 2026-05-24 09:31:56 +03:00
sql/schema: avoid parsing prerelease in semver
Reviewed By: alexsn Differential Revision: D17476646 fbshipit-source-id: a3c8de5232e8c249c44fcb734c566420dccd0aa8
This commit is contained in:
committed by
Facebook Github Bot
parent
bf913111fd
commit
26f3a42944
@@ -693,7 +693,7 @@ func parseVersion(v string) (*version, bool) {
|
||||
if i == len(parts) {
|
||||
break
|
||||
}
|
||||
if *e, err = strconv.Atoi(parts[i]); err != nil {
|
||||
if *e, err = strconv.Atoi(strings.Split(parts[i], "-")[0]); err != nil {
|
||||
return nil, false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,3 +93,20 @@ func TestColumn_ScanDefault(t *testing.T) {
|
||||
require.Equal(t, false, c1.Default)
|
||||
require.Error(t, c1.ScanDefault("foo"))
|
||||
}
|
||||
|
||||
func TestColumn_MySQLType(t *testing.T) {
|
||||
c1 := &Column{Type: field.TypeString, Unique: true}
|
||||
require.Equal(t, "varchar(191)", c1.MySQLType("5.5"))
|
||||
require.Equal(t, "varchar(191)", c1.MySQLType("5.6.1"))
|
||||
require.Equal(t, "varchar(191)", c1.MySQLType("5.6.8"))
|
||||
require.Equal(t, "varchar(255)", c1.MySQLType("5.7"))
|
||||
require.Equal(t, "varchar(255)", c1.MySQLType("5.7.0"))
|
||||
require.Equal(t, "varchar(255)", c1.MySQLType("5.7.26-log"))
|
||||
require.Equal(t, "varchar(255)", c1.MySQLType("8-log"))
|
||||
|
||||
c1 = &Column{Type: field.TypeJSON}
|
||||
require.Equal(t, "json", c1.MySQLType("5.7.8"))
|
||||
require.Equal(t, "json", c1.MySQLType("5.7.8-log"))
|
||||
require.Equal(t, "longblob", c1.MySQLType("5.5"))
|
||||
require.Equal(t, "longblob", c1.MySQLType("5.7"))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user