mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	unit test for find_by_shebang
This commit is contained in:
		| @@ -249,6 +249,36 @@ class TestLanguage < Test::Unit::TestCase | ||||
|     assert_equal [Language['HTML+Django']], Language.find_by_filename('index.jinja') | ||||
|   end | ||||
|  | ||||
|   def test_find_by_shebang | ||||
|     assert_equal 'ruby', Linguist.interpreter_from_shebang("#!/usr/bin/ruby\n# baz") | ||||
|     { []         => ["", | ||||
|                      "foo", | ||||
|                      "#bar", | ||||
|                      "#baz", | ||||
|                      "///", | ||||
|                      "\n\n\n\n\n", | ||||
|                      " #!/usr/sbin/ruby", | ||||
|                      "\n#!/usr/sbin/ruby"], | ||||
|       ['Ruby']   => ["#!/usr/bin/env ruby\n# baz", | ||||
|                      "#!/usr/sbin/ruby\n# bar", | ||||
|                      "#!/usr/bin/ruby\n# foo", | ||||
|                      "#!/usr/sbin/ruby", | ||||
|                      "#!/usr/sbin/ruby foo bar baz\n"], | ||||
|       ['R']      => ["#!/usr/bin/env Rscript\n# example R script\n#\n"], | ||||
|       ['Shell']  => ["#!/usr/bin/bash\n", "#!/bin/sh"], | ||||
|       ['Python'] => ["#!/bin/python\n# foo\n# bar\n# baz", | ||||
|                      "#!/usr/bin/python2.7\n\n\n\n", | ||||
|                      "#!/usr/bin/python3\n\n\n\n"], | ||||
|       ["Common Lisp"] => ["#!/usr/bin/sbcl --script\n\n"] | ||||
|     }.each do |languages, bodies| | ||||
|       bodies.each do |body| | ||||
|         assert_equal([body, languages.map{|l| Language[l]}], | ||||
|                      [body, Language.find_by_shebang(body)]) | ||||
|          | ||||
|       end | ||||
|     end | ||||
|   end | ||||
|  | ||||
|   def test_find | ||||
|     assert_equal 'Ruby', Language['Ruby'].name | ||||
|     assert_equal 'Ruby', Language['ruby'].name | ||||
|   | ||||
		Reference in New Issue
	
	Block a user