Я реализую простой шаблон стратегии (впервые в ruby) и хочу написать тест, чтобы убедиться, что каждый подкласс реализует метод критической стратегии.Итак, у меня есть что-то вроде этого:
class SearchTools::MusicSearcher
def find_artists
raise 'Abstract method called'
end
end
class SearchTools::LastFMSearcher < MusicSearcher
def find_artists(search_phrase)
# get artists from lastfm's restful api
end
end
class SearchTools::DatabaseSearcher < MusicSearcher
def find_artists(search_phrase)
# look in database for artists
end
end
class SearchTools::Search
def initialize(searcher)
@searcher = searcher
end
def find_artists(search_phrase)
@searcher.find_artists(search_phrase)
end
end
В настоящее время я использую rspec, factory_girl и musta-matchers для моего тестирования.Кто-нибудь знает, как мне этого добиться?
Приветствия!
PS Я привык указывать буквальный «интерфейс» с C #, поэтому я ищу, чтобы посмотреть, что я могу использовать вruby для обеспечения общего интерфейса для каждой стратегии ...