| 
									
										
										
										
											2017-04-14 19:12:39 -04:00
										 |  |  | # frozen_string_literal: true | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | require 'rails_helper' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | describe 'Localization' do | 
					
						
							| 
									
										
										
										
											2017-06-12 17:58:03 +09:00
										 |  |  |   after(:all) do | 
					
						
							|  |  |  |     I18n.locale = I18n.default_locale | 
					
						
							|  |  |  |   end | 
					
						
							| 
									
										
										
										
											2017-07-11 15:27:59 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-04-14 19:12:39 -04:00
										 |  |  |   it 'uses a specific region when provided' do | 
					
						
							|  |  |  |     headers = { 'Accept-Language' => 'zh-HK' } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     get "/about", headers: headers | 
					
						
							|  |  |  |     expect(response.body).to include( | 
					
						
							| 
									
										
										
										
											2017-07-11 15:27:59 +02:00
										 |  |  |       I18n.t('about.about_mastodon_html', locale: 'zh-HK') | 
					
						
							| 
									
										
										
										
											2017-04-14 19:12:39 -04:00
										 |  |  |     ) | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   it 'falls back to a locale when region missing' do | 
					
						
							|  |  |  |     headers = { 'Accept-Language' => 'es-FAKE' } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     get "/about", headers: headers | 
					
						
							|  |  |  |     expect(response.body).to include( | 
					
						
							| 
									
										
										
										
											2017-07-11 15:27:59 +02:00
										 |  |  |       I18n.t('about.about_mastodon_html', locale: 'es') | 
					
						
							| 
									
										
										
										
											2017-04-14 19:12:39 -04:00
										 |  |  |     ) | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |   it 'falls back to english when locale is missing' do | 
					
						
							|  |  |  |     headers = { 'Accept-Language' => '12-FAKE' } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     get "/about", headers: headers | 
					
						
							|  |  |  |     expect(response.body).to include( | 
					
						
							| 
									
										
										
										
											2017-07-11 15:27:59 +02:00
										 |  |  |       I18n.t('about.about_mastodon_html', locale: 'en') | 
					
						
							| 
									
										
										
										
											2017-04-14 19:12:39 -04:00
										 |  |  |     ) | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | end |