MCPcopy
hub / github.com/gogf/gf / Test_TableFields

Function Test_TableFields

contrib/drivers/sqlitecgo/sqlitecgo_z_unit_core_test.go:1540–1576  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

1538}
1539
1540func Test_TableFields(t *testing.T) {
1541
1542 gtest.C(t, func(t *gtest.T) {
1543 tableName := "fields_" + gtime.TimestampNanoStr()
1544 createTable(tableName)
1545 defer dropTable(tableName)
1546 var expect = map[string][]any{
1547 // fields type null key default extra comment
1548 "id": {"INTEGER", false, "pri", nil, "", ""},
1549 "passport": {"VARCHAR(45)", false, "", "passport", "", ""},
1550 "password": {"VARCHAR(128)", false, "", "password", "", ""},
1551 "nickname": {"VARCHAR(45)", true, "", nil, "", ""},
1552 "create_time": {"DATETIME", true, "", nil, "", ""},
1553 }
1554
1555 res, err := db.TableFields(context.Background(), tableName)
1556 gtest.AssertNil(err)
1557
1558 for k, v := range expect {
1559 _, ok := res[k]
1560 gtest.AssertEQ(ok, true)
1561 gtest.AssertEQ(res[k].Name, k)
1562 gtest.AssertEQ(res[k].Type, v[0])
1563 gtest.AssertEQ(res[k].Null, v[1])
1564 gtest.AssertEQ(res[k].Key, v[2])
1565 gtest.AssertEQ(res[k].Default, v[3])
1566 gtest.AssertEQ(res[k].Extra, v[4])
1567 gtest.AssertEQ(res[k].Comment, v[5])
1568 }
1569
1570 })
1571
1572 gtest.C(t, func(t *gtest.T) {
1573 _, err := db.TableFields(context.Background(), "t1 t2")
1574 gtest.AssertNE(err, nil)
1575 })
1576}
1577
1578func Test_TableNameIsKeyword(t *testing.T) {
1579 table := createInitTable(TableNameWhichIsKeyword)

Callers

nothing calls this directly

Calls 8

CFunction · 0.92
TimestampNanoStrFunction · 0.92
AssertNilFunction · 0.92
AssertEQFunction · 0.92
AssertNEFunction · 0.92
createTableFunction · 0.70
dropTableFunction · 0.70
TableFieldsMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…