fix(ui): resolve lint issues in file browser #54
@@ -73,6 +73,7 @@ func (r *Reader) ReadDatabase() (*models.Database, error) {
|
||||
}
|
||||
return db, nil
|
||||
}
|
||||
|
||||
func (r *Reader) ReadSchema() (*models.Schema, error) {
|
||||
db, err := r.ReadDatabase()
|
||||
if err != nil {
|
||||
@@ -83,6 +84,7 @@ func (r *Reader) ReadSchema() (*models.Schema, error) {
|
||||
}
|
||||
return db.Schemas[0], nil
|
||||
}
|
||||
|
||||
func (r *Reader) ReadTable() (*models.Table, error) {
|
||||
s, err := r.ReadSchema()
|
||||
if err != nil {
|
||||
@@ -93,6 +95,7 @@ func (r *Reader) ReadTable() (*models.Table, error) {
|
||||
}
|
||||
return s.Tables[0], nil
|
||||
}
|
||||
|
||||
func (r *Reader) connect() error {
|
||||
db, err := sql.Open("mysql", r.options.ConnectionString)
|
||||
if err != nil {
|
||||
@@ -105,6 +108,7 @@ func (r *Reader) connect() error {
|
||||
r.db = db
|
||||
return nil
|
||||
}
|
||||
|
||||
func (r *Reader) close() {
|
||||
if r.db != nil {
|
||||
_ = r.db.Close()
|
||||
@@ -128,6 +132,7 @@ func (r *Reader) querySchemas(current string) ([]*models.Schema, error) {
|
||||
}
|
||||
return out, rows.Err()
|
||||
}
|
||||
|
||||
func (r *Reader) queryTables(schema string) ([]*models.Table, error) {
|
||||
rows, err := r.db.QueryContext(r.ctx, "SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = ? AND TABLE_TYPE = 'BASE TABLE' ORDER BY TABLE_NAME", schema)
|
||||
if err != nil {
|
||||
@@ -144,6 +149,7 @@ func (r *Reader) queryTables(schema string) ([]*models.Table, error) {
|
||||
}
|
||||
return out, rows.Err()
|
||||
}
|
||||
|
||||
func (r *Reader) queryColumns(schema, table string) (map[string]*models.Column, error) {
|
||||
rows, err := r.db.QueryContext(r.ctx, `SELECT COLUMN_NAME, COLUMN_TYPE, IS_NULLABLE, COLUMN_DEFAULT, ORDINAL_POSITION, EXTRA, COLUMN_COMMENT FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ? ORDER BY ORDINAL_POSITION`, schema, table)
|
||||
if err != nil {
|
||||
@@ -171,6 +177,7 @@ func (r *Reader) queryColumns(schema, table string) (map[string]*models.Column,
|
||||
}
|
||||
return out, rows.Err()
|
||||
}
|
||||
|
||||
func (r *Reader) queryConstraints(schema, table string) (map[string]*models.Constraint, error) {
|
||||
rows, err := r.db.QueryContext(r.ctx, `SELECT CONSTRAINT_NAME, CONSTRAINT_TYPE, COLUMN_NAME, REFERENCED_TABLE_SCHEMA, REFERENCED_TABLE_NAME, REFERENCED_COLUMN_NAME, ORDINAL_POSITION FROM information_schema.KEY_COLUMN_USAGE k JOIN information_schema.TABLE_CONSTRAINTS t USING (CONSTRAINT_SCHEMA, TABLE_NAME, CONSTRAINT_NAME) WHERE k.TABLE_SCHEMA=? AND k.TABLE_NAME=? ORDER BY CONSTRAINT_NAME, ORDINAL_POSITION`, schema, table)
|
||||
if err != nil {
|
||||
@@ -207,6 +214,7 @@ func (r *Reader) queryConstraints(schema, table string) (map[string]*models.Cons
|
||||
}
|
||||
return out, rows.Err()
|
||||
}
|
||||
|
||||
func (r *Reader) queryIndexes(schema, table string) (map[string]*models.Index, error) {
|
||||
rows, err := r.db.QueryContext(r.ctx, `SELECT INDEX_NAME, NON_UNIQUE, COLUMN_NAME, SEQ_IN_INDEX, INDEX_TYPE FROM information_schema.STATISTICS WHERE TABLE_SCHEMA=? AND TABLE_NAME=? AND INDEX_NAME <> 'PRIMARY' ORDER BY INDEX_NAME, SEQ_IN_INDEX`, schema, table)
|
||||
if err != nil {
|
||||
@@ -231,6 +239,7 @@ func (r *Reader) queryIndexes(schema, table string) (map[string]*models.Index, e
|
||||
}
|
||||
return out, rows.Err()
|
||||
}
|
||||
|
||||
func (r *Reader) deriveRelationship(t *models.Table, c *models.Constraint) {
|
||||
n := fmt.Sprintf("%s_to_%s", t.Name, c.ReferencedTable)
|
||||
rel := models.InitRelationship(n, models.OneToMany)
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
package mysql
|
||||
|
||||
import (
|
||||
"git.warky.dev/wdevs/relspecgo/pkg/readers"
|
||||
"testing"
|
||||
|
||||
"git.warky.dev/wdevs/relspecgo/pkg/readers"
|
||||
)
|
||||
|
||||
func TestReaderMapDataType(t *testing.T) {
|
||||
|
||||
@@ -63,7 +63,7 @@ func MatchesExtension(name string, exts []string) bool {
|
||||
}
|
||||
ext := strings.ToLower(filepath.Ext(name))
|
||||
for _, e := range exts {
|
||||
if strings.ToLower(e) == ext {
|
||||
if strings.EqualFold(e, ext) {
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,8 +87,7 @@ func (se *SchemaEditor) showFileBrowser(cfg FileBrowserConfig) {
|
||||
cfg.OnSelect(path)
|
||||
}
|
||||
|
||||
var refresh func()
|
||||
refresh = func() {
|
||||
refresh := func() {
|
||||
exts := cfg.Extensions
|
||||
if !useFilter {
|
||||
exts = nil
|
||||
|
||||
@@ -55,6 +55,7 @@ func (w *Writer) writeDatabaseDDL(db *models.Database) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (w *Writer) WriteSchema(s *models.Schema) error {
|
||||
for _, t := range s.Tables {
|
||||
if err := w.writeTable(s, t); err != nil {
|
||||
@@ -63,12 +64,14 @@ func (w *Writer) WriteSchema(s *models.Schema) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (w *Writer) WriteTable(t *models.Table) error {
|
||||
if w.writer == nil {
|
||||
w.writer = os.Stdout
|
||||
}
|
||||
return w.writeTable(nil, t)
|
||||
}
|
||||
|
||||
func (w *Writer) writeTable(s *models.Schema, t *models.Table) error {
|
||||
name := t.Name
|
||||
if s != nil {
|
||||
@@ -125,6 +128,7 @@ func (w *Writer) writeTable(s *models.Schema, t *models.Table) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (w *Writer) execute(dbm *models.Database, conn string) error {
|
||||
var b strings.Builder
|
||||
old := w.writer
|
||||
@@ -150,6 +154,7 @@ func (w *Writer) execute(dbm *models.Database, conn string) error {
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func stripComments(sqlText string) string {
|
||||
lines := strings.Split(sqlText, "\n")
|
||||
kept := lines[:0]
|
||||
|
||||
Reference in New Issue
Block a user