なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2021/04/24)

2021/04/24分のコミットです。

CHANGELOGへの追加はありませんでした。


Merge pull request #40095 from ChaelCodes/cc-comparablity-validator

Active Modelの修正です。

任意のオブジェクトの比較を行う為のcomparison validatorを追加しています。このvalidatorにより、入力された日付が任意の日付より前/後である事のチェックが出来るようになっています。

class Promotion < ApplicationRecord
  validates :start_date, comparison: { greater_than: :end_date }
end

比較の条件には、greater_thangreater_than_or_equal_toequal_toless_thanless_than_or_equal_toother_thanが指定出来るようになっています。


Fix "uninitialized constant ActiveModel::Validations::NumericalityValidator::Comparability (NameError)"

activemodel/lib/active_model/validations/comparison.rbactivemodel/lib/active_model/validations/numericality.rbの修正です。

不足していたactive_model/validations/comparabilityのrequireを追加しています。


Convert \r\n to \n

activemodel/lib/active_model/validations/comparability.rbの修正です。

改行コードに\r\nが使われていたのを、\nを使うよう修正しています。


Fix error message on comparison validator

activemodel/lib/active_model/validations/comparability.rbactivemodel/lib/active_model/validations/comparison.rbの修正です。

comparison validatorでエラーメッセージを正しく生成されてなかったのを修正しています。


Fix numericality validator :in with invalid args to raise ArgumentError

activemodel/lib/active_model/validations/numericality.rbの修正です。

numericality validator の:inオプションに不正な値を指定した場合に、ArgumentErrorをraiseするよう修正しています。


Added more test coverage for comparison validator.

activemodel/test/cases/validations/comparison_validation_test.rbの修正です。

comparison validatorにテスト(TimeオブジェクトやStringオブジェクトを指定したパターン)を追加しています。


Enable Layout/EndOfLine to prevent \r\n is included in the future

.rubocop.ymlの修正です。

Layout/EndOfLine copを追加しています。