diff options
author | Julien Dessaux | 2025-02-14 00:14:15 +0100 |
---|---|---|
committer | Julien Dessaux | 2025-02-14 00:14:15 +0100 |
commit | d97985a694b218713ddf63ed684b6a509f931f3b (patch) | |
tree | 84609f4e242419bf89301e0ead4927f450d7bfe5 /golang/pkg/database | |
parent | [golang] Bootstrap contracting and refactor the agent code (diff) | |
download | spacetraders-d97985a694b218713ddf63ed684b6a509f931f3b.tar.gz spacetraders-d97985a694b218713ddf63ed684b6a509f931f3b.tar.bz2 spacetraders-d97985a694b218713ddf63ed684b6a509f931f3b.zip |
[golang] implement automation loop and add contract accepting
Diffstat (limited to '')
-rw-r--r-- | golang/pkg/database/agents.go | 2 | ||||
-rw-r--r-- | golang/pkg/database/db.go | 16 | ||||
-rw-r--r-- | golang/pkg/database/tokens.go | 2 |
3 files changed, 18 insertions, 2 deletions
diff --git a/golang/pkg/database/agents.go b/golang/pkg/database/agents.go index cd9e0a2..e2580a9 100644 --- a/golang/pkg/database/agents.go +++ b/golang/pkg/database/agents.go @@ -12,7 +12,7 @@ func (db *DB) SaveAgent(agent *model.Agent) error { if err != nil { return fmt.Errorf("failed to marshal agent: %w", err) } - if _, err := db.Exec(`INSERT INTO agents SET data = (json(?));`, data); err != nil { + if _, err := db.Exec(`INSERT INTO agents VALUES data = (json(?));`, data); err != nil { return fmt.Errorf("failed to insert agent data: %w", err) } return nil diff --git a/golang/pkg/database/db.go b/golang/pkg/database/db.go index cb15e52..f094039 100644 --- a/golang/pkg/database/db.go +++ b/golang/pkg/database/db.go @@ -5,6 +5,7 @@ import ( "database/sql" "fmt" "runtime" + "strings" ) func initDB(ctx context.Context, url string) (*sql.DB, error) { @@ -90,6 +91,21 @@ func (db *DB) Close() error { return nil } +func (db *DB) Reset() error { + _, err := db.Exec(strings.Join([]string{ + "DELETE FROM agents;", + "DELETE FROM markets;", + "DELETE FROM systems;", + "DELETE FROM tokens;", + "DELETE FROM transactions;", + "DELETE FROM waypoints;", + }, "")) + if err != nil { + return fmt.Errorf("failed to reset database: %w", err) + } + return nil +} + func (db *DB) Exec(query string, args ...any) (sql.Result, error) { return db.writeDB.ExecContext(db.ctx, query, args...) } diff --git a/golang/pkg/database/tokens.go b/golang/pkg/database/tokens.go index 0356cb2..8111551 100644 --- a/golang/pkg/database/tokens.go +++ b/golang/pkg/database/tokens.go @@ -1,6 +1,6 @@ package database -func (db *DB) AddToken(token string) error { +func (db *DB) SaveToken(token string) error { _, err := db.Exec(`INSERT INTO tokens(data) VALUES (?);`, token) return err } |