add test for multiple model
refactor
implement subscribe collection