У меня есть rubygem, который определяет пользовательский класс SemanticFormBuilder, который добавляет новый тип ввода Formtastic. Код работает, как и ожидалось, но я не могу понять, как добавить тесты для него. Я думал, что мог бы сделать что-то вроде загрузки Formtastic, вызвать semantic_form_for, а затем ввести объявление ad ann, использующего мой собственный тип :as
, но я не знаю, с чего начать.
Кто-нибудь знает какие-нибудь драгоценные камни, которые делают что-то подобное, на что я мог бы взглянуть на источник? Любые предложения о том, с чего начать?
Мой драгоценный камень требует Rails 2.3.x
Источник для моего пользовательского ввода выглядит следующим образом, и я включаю его в инициализатор в моем приложении:
module ClassyEnumHelper
class SemanticFormBuilder < Formtastic::SemanticFormBuilder
def enum_select_input(method, options)
enum_class = object.send(method)
unless enum_class.respond_to? :base_class
raise "#{method} does not refer to a defined ClassyEnum object"
end
options[:collection] = enum_class.base_class.all_with_name
options[:selected] = enum_class.to_s
select_input(method, options)
end
end
end
Не уверен, что любой другой мой исходный код поможет, но его можно найти здесь http://github.com/beerlington/classy_enum