2019-08-01から1ヶ月間の記事一覧

Rubyのライブラリやアプリケーションで使えるENVの一覧を取得する方法

最近、コンテナ化や The Twelve-Factor App で環境変数を使う機会が多くなってきたので、一覧を作る方法が欲しくなった。 gemにする気力は今無いので、とりあえずコード片をブログに書いておく。*1 # config/application.rb の最後に以下のコードを貼ったら…

コミットメッセージを書くときに気をつけていること

コミットメッセージに関するブログを読んだので、自分がコミットメッセージを書くときに気にしてることを書いておく。 chiastolite.hatenablog.com sue445.hatenablog.com 基本的な話 まずは Gitのコミットメッセージの書き方 を読んでおく。 コミットメッセ…

Re:VIEWで技術書を書いているときにファイルを変更したら自動でビルドする

ファイルの変更を検知して、Re:VIEWのビルドを自動化したら便利だったのでブログに書いておく。 設定方法 vvakame/docker-reviewのdockerイメージを使ってビルドするスクリプトを {project_root}/bin/build として作成しておきます。 #!/bin/sh SHELL_PATH=$…

ActiveDecoratorにプルリクを投げるまでにやったこと

怪しい挙動を見つけたきっかけ テストコードで以下のようなことをしてました。 Rails.application.eager_load! testでもproductionと同じ環境になるように事前に読み込んでいたのですが、テストを個別に実行するときにも全ファイルを読み込んでしまうため消…

ActiveRecordのissueで再現コードを書くときに発行されたSQLを確認する方法

rails/rails#36895 の挙動を確認してみようかなーと思ったけど、発行されるSQLを確認する方法が分からなかったので調べた。 Rails本体のテストコードだと assert_no_queries が使えるけど、これは外で使えないので。 動いたコード assert_no_queriesの定義さ…

Railsのissueに書いてある再現コードを使ってgit bisectする方法

備忘録。 具体的な例 先日に登録されたissueを例にしてみる。 github.com 再現コードを少し書き換える v5.2.3と6.0.0.rc2でsqlite3の依存周りでエラーが出たので、Gemfileのあたりを少しだけ弄った。 # frozen_string_literal: true require "bundler/inline…

minitestで書かれたActiveRecordのテストで特定のケースだけを実行する方法

追記: activerecord/RUNNING_UNIT_TESTS に書いてあった。 自分用の備忘録。 特定のファイルを実行する方法 $ cd activerecord $ ARCONN=postgresql ruby \ -I"lib:test" \ test/cases/adapters/postgresql/range_test.rb 特定のテストケースを実行する方法 …