РЕДАКТИРОВАТЬ:
Property.joins(:photos).group('photos.property_id').having('count(photos.property_id) > 1').count
#=> {1234=>2} # 1234 is property id 2 is count of photos
Вы получите property_ids с количеством связанных фотографий с ним.
Старый ответ:
Вы можете получить свойства по крайней мере с одной фотографией, связанной с ней
Property.includes(:photos).where.not(photos: { property_id: nil })
Поскольку вы используете рельсы 3.2 .not
не будет работа, которую вы должны использовать
Property.includes(:photos).where("property_id IS NOT null")
К сожалению, ASP.NET viewengine использует VirtualPathProvider в ASP.NET, размещающем среду. Для усугубления положения я проследил часть другого кода с помощью Отражателя и нашел, что существуют другие зависимости к некоторым hardcode ссылкам на утилиты VirtualPath. Я надеюсь, что они фиксируют это в выпуске, таким образом, мы можем действительно протестировать наши Представления и как они представляются.
Одна опция состояла бы в том, чтобы выполнить модульные тесты в браузере. Я имел успех с Селеном для таких случаев.
Мы разочаровались в представлениях поблочного тестирования и теперь используем тесты браузера WatiN в качестве части нашей сборки.
Мы также используем Решение Resharper Широкий Анализ, чтобы проверить, существуют ли ошибки компилятора. Не прекрасный, но это получает очень похожие результаты. Оборотная сторона - тесты WatiN являются медленными.
Это значения, которые должны быть установлены в объекте HttpBrowserCapabilities, чтобы сайт веб-форм asp.net работал, я попытался бы удостовериться, что они установлены и видят, решает ли это Вашу проблему, я не уверен, было ли это, но эй это стоящее того, чтобы попытаться право?
Надеюсь, это поможет.
Я рекомендовал бы селен также для тестирования UI. Существует вполне немного в стандартном приложении MVC, которое может быть протестированной единицей, но компоненты уровня UI всегда казались лучшим пригодным для тестирования в браузере как Селен. Можно интегрировать тестирование Селена с поблочным тестированием с помощью cruisecontrol.net.
Вот руководство для интеграции Селена с Вашим CC.Net.
Используйте TypeMock для насмешки далеко зависимостей. Я записал одно сообщение в блоге о том, как дразнить зависимости от Запроса и Ответа в уровне Controller. Возможно, это полезно.