mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-12-08 20:38:47 +00:00
A Language should know about it's language_id
This commit is contained in:
@@ -289,6 +289,9 @@ module Linguist
|
|||||||
# Set legacy search term
|
# Set legacy search term
|
||||||
@search_term = attributes[:search_term] || default_alias_name
|
@search_term = attributes[:search_term] || default_alias_name
|
||||||
|
|
||||||
|
# Set the language_id
|
||||||
|
@language_id = attributes[:language_id]
|
||||||
|
|
||||||
# Set extensions or default to [].
|
# Set extensions or default to [].
|
||||||
@extensions = attributes[:extensions] || []
|
@extensions = attributes[:extensions] || []
|
||||||
@interpreters = attributes[:interpreters] || []
|
@interpreters = attributes[:interpreters] || []
|
||||||
@@ -351,6 +354,17 @@ module Linguist
|
|||||||
# Returns the name String
|
# Returns the name String
|
||||||
attr_reader :search_term
|
attr_reader :search_term
|
||||||
|
|
||||||
|
# Public: Get language_id (used in GitHub search)
|
||||||
|
#
|
||||||
|
# Examples
|
||||||
|
#
|
||||||
|
# # => "1"
|
||||||
|
# # => "2"
|
||||||
|
# # => "3"
|
||||||
|
#
|
||||||
|
# Returns the integer language_id
|
||||||
|
attr_reader :language_id
|
||||||
|
|
||||||
# Public: Get the name of a TextMate-compatible scope
|
# Public: Get the name of a TextMate-compatible scope
|
||||||
#
|
#
|
||||||
# Returns the scope
|
# Returns the scope
|
||||||
@@ -547,6 +561,7 @@ module Linguist
|
|||||||
:group_name => options['group'],
|
:group_name => options['group'],
|
||||||
:searchable => options.fetch('searchable', true),
|
:searchable => options.fetch('searchable', true),
|
||||||
:search_term => options['search_term'],
|
:search_term => options['search_term'],
|
||||||
|
:language_id => options['language_id'],
|
||||||
:extensions => Array(options['extensions']),
|
:extensions => Array(options['extensions']),
|
||||||
:interpreters => options['interpreters'].sort,
|
:interpreters => options['interpreters'].sort,
|
||||||
:filenames => options['filenames'],
|
:filenames => options['filenames'],
|
||||||
|
|||||||
@@ -386,6 +386,14 @@ class TestLanguage < Minitest::Test
|
|||||||
assert missing.empty?, message
|
assert missing.empty?, message
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_all_languages_have_a_language_id_set
|
||||||
|
missing = Language.all.select { |language| language.language_id.nil? }
|
||||||
|
|
||||||
|
message = "The following languages do not have a language_id listed in languages.yml. Please add language_id fields for all new languages.\n"
|
||||||
|
missing.each { |language| message << "#{language.name}\n" }
|
||||||
|
assert missing.empty?, message
|
||||||
|
end
|
||||||
|
|
||||||
def test_all_languages_have_a_valid_ace_mode
|
def test_all_languages_have_a_valid_ace_mode
|
||||||
ace_fixture_path = File.join('test', 'fixtures', 'ace_modes.json')
|
ace_fixture_path = File.join('test', 'fixtures', 'ace_modes.json')
|
||||||
skip("No ace_modes.json file") unless File.exist?(ace_fixture_path)
|
skip("No ace_modes.json file") unless File.exist?(ace_fixture_path)
|
||||||
|
|||||||
Reference in New Issue
Block a user