def Abingo.bingo!(name = nil, options = {})
if name.kind_of? Array
name.map do |single_test|
self.bingo!(single_test, options)
end
else
if name.nil?
participating_tests = Abingo.cache.read("Abingo::participating_tests::#{Abingo.identity}") || []
participating_tests.each do |participating_test|
self.bingo!(participating_test, options)
end
else
conversion_name = name.gsub(" ", "_")
tests_listening_to_conversion = Abingo.cache.read("Abingo::tests_listening_to_conversion#{conversion_name}")
if tests_listening_to_conversion
if tests_listening_to_conversion.size > 1
tests_listening_to_conversion.map do |individual_test|
self.score_conversion!(individual_test.to_s)
end
elsif tests_listening_to_conversion.size == 1
test_name_str = tests_listening_to_conversion.first.to_s
self.score_conversion!(test_name_str)
end
else
test_name_str = name.to_s
self.score_conversion!(test_name_str)
end
end
end
end