TL;DR
list - listで差分がでる
なぜ、Rails list値の差分比較を書くことになったか
2つのケースで利用した
1. WebClient -> RailsAPI -> 外部APIの時のvalidationで利用
現状の実装でRailsApiServerから外部のAPIを叩く実装があり、外部APIもまだvalidation条件がふわっとしていたため、ApiServer側でvalidationを担保しようと思っての実装(Model継承してService層ににがしているので、あまり本質的じゃない)。
2. RSpecのresponse bodyの情報チェックの時に利用した
あまりないケースだが、credential情報をちゃんと消しているかなどの簡易チェックに結構有用だった。
また、ResponseBodyの型情報あっております!!って時のチェックでも利用した。
例
sample.rb
list_a = [1, 2, 3]
list_b = [1, 2]
a - b # [3]
obj.keys - obj_without_credential_keys = [ "client_key" ]