dry-rb/dry-validation
import_predicates_as_macros: included_in?, format?, size? issues
開放
#608 建立於 2019年12月19日
bughelp wanted
倉庫指標
- 星標
- (1,422 顆星)
- PR 合併指標
- (30 天內沒有已合併 PR)
描述
class MyContract < Dry::Validation::Contract
params do
required(:hogwarts_house).hash do
required(:head).filled(:string)
required(:common_room).hash do
required(:name).filled(:string)
required(:location).filled(:string)
end
end
end
rule('hogwarts_house.head').validate(size?: 1..255)
rule('hogwarts_house.head').validate(format?: SOME_REGEX)
rule('hogwarts_house.common_room.location').validate(included_in?: ['tower', 'underground'])
end
For included_in? and size? passing an array of integers/strings not working but it works when just one value passed or with predicates which do not require arrays)
included_in?
rule('hogwarts_house.common_room.location').validate(included_in?: ['tower', 'underground'])
size?
rule('hogwarts_house.head').validate(size?: 1..255)ArgumentError (wrong number of arguments (given 256, expected 2))
This predicate is just returning error.
format?
rule('hogwarts_house.head').validate(format?: SOME_REGEX)Dry::Container::Error: Nothing registered with the key :format?