(t *testing.T)
| 1538 | } |
| 1539 | |
| 1540 | func 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 | |
| 1578 | func Test_TableNameIsKeyword(t *testing.T) { |
| 1579 | table := createInitTable(TableNameWhichIsKeyword) |
nothing calls this directly
no test coverage detected
searching dependent graphs…