1+ require 'rails_helper'
2+
3+ RSpec . describe "Stats" , type : :request do
4+ describe "GET /stats" do
5+ it "日本語版の統計ページが表示される" do
6+ get "/stats"
7+ expect ( response ) . to have_http_status ( 200 )
8+ expect ( response . body ) . to include ( "統計情報" )
9+ expect ( response . body ) . to include ( "推移グラフ" )
10+ expect ( response . body ) . to include ( "最新データ" )
11+ expect ( response . body ) . to include ( "View in English" )
12+ end
13+ end
14+
15+ describe "GET /english/stats" do
16+ it "英語版の統計ページが表示される" do
17+ get "/english/stats"
18+ expect ( response ) . to have_http_status ( 200 )
19+ expect ( response . body ) . to include ( "Statistics" )
20+ expect ( response . body ) . to include ( "Transition Charts" )
21+ expect ( response . body ) . to include ( "Latest Data" )
22+ expect ( response . body ) . to include ( "Switch to Japanese" )
23+ end
24+
25+ it "都道府県名が英語で表示される" do
26+ # テストデータベースに都道府県を作成
27+ Prefecture . find_or_create_by! ( name : "東京" , region : "関東" )
28+ Prefecture . find_or_create_by! ( name : "大阪" , region : "近畿" )
29+ Prefecture . find_or_create_by! ( name : "北海道" , region : "北海道" )
30+
31+ get "/english/stats"
32+ expect ( response . body ) . to include ( "Tokyo" )
33+ expect ( response . body ) . to include ( "Osaka" )
34+ expect ( response . body ) . to include ( "Hokkaido" )
35+ end
36+
37+ it "グラフのタイトルが英語で表示される" do
38+ get "/english/stats"
39+ expect ( response . body ) . to include ( "Number of Dojos" )
40+ expect ( response . body ) . to include ( "Number of Events" )
41+ expect ( response . body ) . to include ( "Number of Participants" )
42+ end
43+ end
44+
45+ describe "言語パラメータ" do
46+ it "言語パラメータがデフォルトで'ja'に設定される" do
47+ get "/stats"
48+ controller = @controller
49+ expect ( controller . instance_variable_get ( :@lang ) ) . to eq ( 'ja' )
50+ end
51+
52+ it "/english/stats で言語パラメータが'en'に設定される" do
53+ get "/english/stats"
54+ controller = @controller
55+ expect ( controller . instance_variable_get ( :@lang ) ) . to eq ( 'en' )
56+ end
57+ end
58+ end
0 commit comments