From 81cc036fc193d77c5bd4b55266180d8b8c03d23e Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Mon, 25 Jul 2011 11:22:18 -0500 Subject: [PATCH] Ensure languages are sorted --- lib/linguist/languages.yml | 14 +++++++------- test/test_pedantic.rb | 29 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 7 deletions(-) create mode 100644 test/test_pedantic.rb diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 0c649bed..bfbf4bd9 100644 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -139,6 +139,13 @@ C-ObjDump: extensions: - .c-objdump +CMake: + extensions: + - .cmake + - .cmake.in + filenames: + - CMakeLists.txt + CSS: extensions: - .css @@ -154,13 +161,6 @@ Clojure: - .clj - .cljs -CMake: - extensions: - - .cmake - - .cmake.in - filenames: - - CMakeLists.txt - CoffeeScript: type: programming extensions: diff --git a/test/test_pedantic.rb b/test/test_pedantic.rb new file mode 100644 index 00000000..538fc0e9 --- /dev/null +++ b/test/test_pedantic.rb @@ -0,0 +1,29 @@ +require 'test/unit' + +class TestPedantic < Test::Unit::TestCase + Lib = File.expand_path("../../lib/linguist", __FILE__) + + def file(name) + File.read(File.join(Lib, name)) + end + + def test_language_names_are_sorted + languages = [] + file("languages.yml").lines.each do |line| + if line =~ /^(\w+):$/ + languages << $1 + end + end + assert_sorted languages + end + + def assert_sorted(list) + previous = nil + list.each do |item| + if previous && previous > item + flunk "#{previous} should come after #{item}" + end + previous = item + end + end +end