diff --git a/lib/linguist/language.rb b/lib/linguist/language.rb index 955becb3..b4972eb7 100644 --- a/lib/linguist/language.rb +++ b/lib/linguist/language.rb @@ -426,6 +426,11 @@ module Linguist # # Returns the extensions Array attr_reader :filenames + + # Public: Return all possible extensions for language + def all_extensions + (extensions + [primary_extension]).uniq + end # Public: Get URL escaped name. # diff --git a/test/test_samples.rb b/test/test_samples.rb index 007a9abf..896a4ea2 100644 --- a/test/test_samples.rb +++ b/test/test_samples.rb @@ -39,10 +39,7 @@ class TestSamples < Test::Unit::TestCase # If a language extension isn't globally unique then make sure there are samples def test_presence Linguist::Language.all.each do |language| - # TODO - feels like there should be a better way to do this. - extensions = [language.primary_extension] + language.extensions - - extensions.uniq.each do |extension| + language.all_extensions.each do |extension| language_matches = Language.find_by_filename("foo.#{extension}") # If there is more than one language match for a given extension