Skip to content

Instantly share code, notes, and snippets.

@lukaselmer
Created November 14, 2012 21:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lukaselmer/4074840 to your computer and use it in GitHub Desktop.
Save lukaselmer/4074840 to your computer and use it in GitHub Desktop.
MockArticle - which is "better"? Which would you code/use? Which would you like to maintain?
class MockArticlesHard
@@articles = {}
def initialize
return unless @@articles.empty?
@@articles[:article_aab] = FactoryGirl.create(:article_aab)
@@articles[:article_bla] = FactoryGirl.create(:article_bla)
@@articles[:article_blub] = FactoryGirl.create(:article_blub)
@@articles[:article_blub_blub] = FactoryGirl.create(:article_blub_blub)
@@articles[:article_blub_bla] = FactoryGirl.create(:article_blub_bla)
Article.solr_reindex
end
def article_aab
@@articles[:article_aab]
end
def article_bla
@@articles[:article_bla]
end
def article_blub
@@articles[:article_blub]
end
def article_blub_blub
@@articles[:article_blub_blub]
end
def article_blub_bla
@@articles[:article_blub_bla]
end
end
class MockArticles
@@articles = {}
@@mock_article_names = %w(article_aab article_bla article_blub article_blub_blub article_blub_bla)
def initialize
return unless @@articles.empty?
@@mock_article_names.each do |article_title|
@@articles[article_title] = FactoryGirl.create(article_title.to_sym)
end
Article.solr_reindex
end
@@mock_article_names.each do |article_title|
define_method(article_title) do
@@articles[article_title]
end
end
end
class MockArticles
@@articles = {}
def initialize
return unless @@articles.empty?
%w(article_aab article_bla article_blub article_blub_blub article_blub_bla).each do |article_title|
@@articles[article_title] = FactoryGirl.create(article_title.to_sym)
end
Article.solr_reindex
end
def method_missing(meth, *args)
@@articles[meth.to_s]
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment