SSブログ

ecto_sql 3.0 の adapter のテスト [Elixir]

(自分用のおぼえがき)

Elixir の Web フレームワーク Phonix のデーターベース層のライブラリがEcto で、
3.0 から ecto と ecto_sql に分割されて、SQL ベースのデーターベースを使う場合はecto_sql をdeps に書いておけばいいらしい。
https://github.com/elixir-ecto/ecto_sql
ecto_sql は内部で ecto に依存しているので、コア部分が ecto で、SQL に依存している部分を ecto_sql に括りだしたということか。
デフォルトで postgresql と mysql に対応した Adapter を用意していて、それぞれ postgrex、mariaex というドライバーを使っている。

自分は、Ecto Adapter に興味があるので、 Ecto Adapter をテストする方法を探す。

$ ECTO_ADAPTER=pg mix test

$ ECTO_ADAPTER=mysql mix test

で、テストできる模様。

それぞれ、ユーザーが postgresql, root のパスワードなしでlocalhost に接続して、 ecto_test データーベースでテストするようになっている。
環境変数 MYSQL_URL, PG_URL に
user:password@server
と書くと指定のユーザーID, パスワードで接続してテストが実行される。

ecto_sql 3.0 でサポートしているデーターベース(PostgreSQL, MySQL)で、別のデーターベースドライバーを使う Adapter を書く例
http://blog.plataformatec.com.br/2019/01/building-a-new-mysql-adapter-for-ecto-part-iv-ecto-integration/
Pull Request が送られているhttps://github.com/elixir-ecto/ecto_sql/pull/66

コメント(0) 
共通テーマ:日記・雑感