yandex-ui/noscript — pull request #420 by doochik (2014-08-26 20:08:54+00:00)
Title: [ns.ViewCollection] Обновление частично валидных коллекций

Разбирая #418 и #419, наткнулся на следующий баг.

`_getUpdateTree` создает виды для элементов коллекции по условию "все модели валидны" [пруфлинк](https://github.com/yandex-ui/noscript/blob/94ef6b6537423b0a72c4679d64ba17c2cfca3125/src/ns.viewCollection.js#L265).
В то же время `_getUpdateHTML` обновляет виды по условию "валидна модель-коллекция" [пруфлинк](https://github.com/yandex-ui/noscript/blob/94ef6b6537423b0a72c4679d64ba17c2cfca3125/src/ns.viewCollection.js#L455). С учетом того, что они работают синхронно, разные условия прохода по коллекции бросаются в глаза.

Теперь наглядный баг из теста.

Допустим, мы имеем вложенную коллекцию с зависимыми моделями, которых нет, но уже есть ModelCollection (т.е. как бы коллекци мы отрисовать можем, но контейнер не готов). Мы знаем, что внутрь вложенных коллекциий никто не ходит, поэтому эти зависимые модели никто не запрашивает.
Получается ситуация, что `_getUpdateTree` элементы коллекции не создаст (потому что не все модели валидны), но `_getUpdateHTML` пройдется по ним (потому что коллекции валидна) и упадет на [js-ошибке](https://github.com/yandex-ui/noscript/blob/94ef6b6537423b0a72c4679d64ba17c2cfca3125/src/ns.viewCollection.js#L489), потому что `view is undefined`.

Заодно убрал все из #404. То, что я нашел там, оказалось симпотом, а не причиной.