Page Menu
Home
Musing Studio
Search
Configure Global Search
Log In
Files
F12217417
alter_test.go
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Subscribers
None
alter_test.go
View Options
package
db
import
"testing"
func
TestAlterTableSqlBuilder_ToSQL
(
t
*
testing
.
T
)
{
type
fields
struct
{
Dialect
DialectType
Name
string
Changes
[]
string
}
tests
:=
[]
struct
{
name
string
builder
*
AlterTableSqlBuilder
want
string
wantErr
bool
}{
{
name
:
"MySQL add int"
,
builder
:
DialectMySQL
.
AlterTable
(
"the_table"
).
AddColumn
(
DialectMySQL
.
Column
(
"the_col"
,
ColumnTypeInteger
,
UnsetSize
)),
want
:
"ALTER TABLE the_table ADD COLUMN the_col INT NOT NULL"
,
wantErr
:
false
,
},
{
name
:
"MySQL add string"
,
builder
:
DialectMySQL
.
AlterTable
(
"the_table"
).
AddColumn
(
DialectMySQL
.
Column
(
"the_col"
,
ColumnTypeVarChar
,
OptionalInt
{
true
,
128
})),
want
:
"ALTER TABLE the_table ADD COLUMN the_col VARCHAR(128) NOT NULL"
,
wantErr
:
false
,
},
{
name
:
"MySQL add int and string"
,
builder
:
DialectMySQL
.
AlterTable
(
"the_table"
).
AddColumn
(
DialectMySQL
.
Column
(
"first_col"
,
ColumnTypeInteger
,
UnsetSize
)).
AddColumn
(
DialectMySQL
.
Column
(
"second_col"
,
ColumnTypeVarChar
,
OptionalInt
{
true
,
128
})),
want
:
"ALTER TABLE the_table ADD COLUMN first_col INT NOT NULL, ADD COLUMN second_col VARCHAR(128) NOT NULL"
,
wantErr
:
false
,
},
}
for
_
,
tt
:=
range
tests
{
t
.
Run
(
tt
.
name
,
func
(
t
*
testing
.
T
)
{
got
,
err
:=
tt
.
builder
.
ToSQL
()
if
(
err
!=
nil
)
!=
tt
.
wantErr
{
t
.
Errorf
(
"ToSQL() error = %v, wantErr %v"
,
err
,
tt
.
wantErr
)
return
}
if
got
!=
tt
.
want
{
t
.
Errorf
(
"ToSQL() got = %v, want %v"
,
got
,
tt
.
want
)
}
})
}
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Oct 30, 2:33 AM (1 d, 2 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3456421
Attached To
rWF WriteFreely
Event Timeline
Log In to Comment