OOro

Testing Matrix

Local test commands and the shared SQLite, MySQL, PostgreSQL behavior matrix.

Full suite

source ~/.gvm/scripts/gvm && gvm use go1.27rc1
go test ./...
go test -race ./...

Driver tests

go test ./driver/sqlite
go test ./driver/mysql
go test ./driver/pgsql

MySQL and PostgreSQL use local defaults unless environment variables override them:

ORO_MYSQL_DSN='root:root@tcp(localhost:3306)/duxorm?parseTime=true&multiStatements=false'
ORO_PGSQL_DSN='postgres://root@localhost:5432/duxorm?sslmode=disable'

The local development convention is:

Driver Host User Password Database
MySQL localhost root root duxorm
PostgreSQL localhost root empty duxorm

Shared matrix

The driver matrix covers the same ORM behavior across SQLite, MySQL, and PostgreSQL:

  • schema sync table creation and column addition;
  • model and table CRUD;
  • create return values and inserted primary keys;
  • default values and nullable values;
  • batch create and upsert;
  • Where, WhereGroup, WhereWhen, relation filters;
  • pagination, aggregates, stream, chunk;
  • transactions, nested transactions, locks;
  • joins, subqueries, group and having;
  • HasOne, HasMany, BelongsTo, ManyToMany;
  • dynamic relations and pivot fields;
  • With, For, WhereHas, WhereDoesntHave;
  • relation aggregates;
  • JSON queries and serialization.

Docs build

The docs use pnpm.

cd docs
pnpm install
pnpm run build
Edit this page