require File.dirname(__FILE__) + '/../test_helper' class LanguageHelperTest < ActiveSupport::TestCase include LanguageHelper should 'return current language' do expects(:locale).returns('pt') assert_equal 'pt', language end should 'remove country code for TinyMCE' do self.expects(:language).returns('pt_BR') assert_equal 'pt', tinymce_language end should 'downcase and use dash for HTML language' do self.expects(:language).returns('pt_BR') assert_equal 'pt-br', html_language end should 'generate language chooser correcly' do environment = Environment.default environment.expects(:locales).returns({ 'en' => 'English', 'pt_BR' => 'Português Brasileiro', 'fr' => 'Français', 'it' => 'Italiano' }).at_least_once self.expects(:language).returns('pt_BR') result = self.language_chooser(environment) assert_match /Português Brasileiro<\/strong>/, result assert_no_match /English<\/strong>/, result assert_no_match /Français<\/strong>/, result assert_no_match /Italiano<\/strong>/, result self.expects(:language).returns('fr') result = self.language_chooser(environment) assert_no_match /Português Brasileiro<\/strong>/, result assert_no_match /English<\/strong>/, result assert_match /Français<\/strong>/, result assert_no_match /Italiano<\/strong>/, result end should 'generate drodown language chooser correcly' do environment = Environment.default environment.expects(:locales).returns({ 'en' => 'English', 'pt_BR' => 'Português Brasileiro', 'fr' => 'Français', 'it' => 'Italiano' }).at_least_once self.expects(:language).returns('en') result = self.language_chooser(environment, :element => 'dropdown') assert_match /