From 152e3ace9980abf30e33df77fdb6888c9a0c29eb Mon Sep 17 00:00:00 2001 From: Arfon Smith Date: Tue, 22 Apr 2014 16:56:27 -0500 Subject: [PATCH] Adding all_extensions method to Language --- lib/linguist/language.rb | 5 +++++ test/test_samples.rb | 5 +---- 2 files changed, 6 insertions(+), 4 deletions(-) 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