tounge 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.rdoc CHANGED
@@ -44,6 +44,17 @@ Parses <tt>ENV['HTTP_ACCEPT_LANGUAGE]</tt> and sets the locale to the first matc
44
44
 
45
45
  If everything else fails, use the default locale.
46
46
 
47
+ == Configuration
48
+
49
+ You can change the lookup chain by creating an initializer
50
+
51
+ #config/initializers/tounge_setup.rb
52
+ Tounge::LocaleSetter.configure |config|
53
+ config.lookup_chain = [:user, :http, :session, :default]
54
+ end
55
+
56
+ This would give user settings the highest priority and disallow setting locale through url parameters.
57
+
47
58
  == Contribute
48
59
 
49
60
  1. Fork the repository
@@ -20,7 +20,7 @@ module Tounge
20
20
  { params: params,
21
21
  session: session,
22
22
  user: current_user,
23
- http: ENV['HTTP_ACCEPT_LANGUAGE'],
23
+ http: request.env['HTTP_ACCEPT_LANGUAGE'],
24
24
  default: I18n.default_locale }
25
25
  end
26
26
  end
@@ -1,3 +1,3 @@
1
1
  module Tounge
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
@@ -2521,3 +2521,332 @@ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2521
2521
   (0.0ms) rollback transaction
2522
2522
   (0.0ms) begin transaction
2523
2523
   (0.0ms) rollback transaction
2524
+ Connecting to database specified by database.yml
2525
+  (0.3ms) begin transaction
2526
+  (0.0ms) rollback transaction
2527
+  (0.0ms) begin transaction
2528
+  (0.0ms) rollback transaction
2529
+  (0.0ms) begin transaction
2530
+  (0.0ms) rollback transaction
2531
+  (0.0ms) begin transaction
2532
+  (0.0ms) rollback transaction
2533
+  (0.0ms) begin transaction
2534
+  (0.0ms) rollback transaction
2535
+  (0.0ms) begin transaction
2536
+  (0.0ms) rollback transaction
2537
+  (0.0ms) begin transaction
2538
+  (0.0ms) rollback transaction
2539
+  (0.0ms) begin transaction
2540
+  (0.0ms) rollback transaction
2541
+  (0.0ms) begin transaction
2542
+  (0.0ms) rollback transaction
2543
+  (0.0ms) begin transaction
2544
+  (0.0ms) rollback transaction
2545
+  (0.0ms) begin transaction
2546
+  (0.0ms) rollback transaction
2547
+  (0.0ms) begin transaction
2548
+  (0.0ms) rollback transaction
2549
+  (0.0ms) begin transaction
2550
+  (0.0ms) rollback transaction
2551
+  (0.0ms) begin transaction
2552
+  (0.0ms) rollback transaction
2553
+  (0.0ms) begin transaction
2554
+  (0.0ms) rollback transaction
2555
+  (0.0ms) begin transaction
2556
+  (0.0ms) rollback transaction
2557
+  (0.0ms) begin transaction
2558
+  (0.0ms) rollback transaction
2559
+  (0.0ms) begin transaction
2560
+ Processing by PagesController#index as HTML
2561
+ Rendered pages/index.html.erb within layouts/application (1.7ms)
2562
+ Completed 200 OK in 30ms (Views: 29.1ms | ActiveRecord: 0.0ms)
2563
+  (0.1ms) rollback transaction
2564
+  (0.0ms) begin transaction
2565
+ Processing by PagesController#index as HTML
2566
+ Parameters: {"locale"=>"sv-SE"}
2567
+ Completed 200 OK in 1ms (Views: 1.3ms | ActiveRecord: 0.0ms)
2568
+  (0.1ms) rollback transaction
2569
+  (0.0ms) begin transaction
2570
+  (0.0ms) rollback transaction
2571
+ Connecting to database specified by database.yml
2572
+  (0.3ms) begin transaction
2573
+  (0.0ms) rollback transaction
2574
+  (0.0ms) begin transaction
2575
+  (0.0ms) rollback transaction
2576
+  (0.0ms) begin transaction
2577
+  (0.0ms) rollback transaction
2578
+  (0.0ms) begin transaction
2579
+  (0.0ms) rollback transaction
2580
+  (0.0ms) begin transaction
2581
+  (0.0ms) rollback transaction
2582
+  (0.0ms) begin transaction
2583
+  (0.0ms) rollback transaction
2584
+  (0.0ms) begin transaction
2585
+  (0.0ms) rollback transaction
2586
+  (0.0ms) begin transaction
2587
+  (0.0ms) rollback transaction
2588
+  (0.0ms) begin transaction
2589
+  (0.0ms) rollback transaction
2590
+  (0.0ms) begin transaction
2591
+  (0.0ms) rollback transaction
2592
+  (0.0ms) begin transaction
2593
+  (0.0ms) rollback transaction
2594
+  (0.0ms) begin transaction
2595
+  (0.0ms) rollback transaction
2596
+  (0.0ms) begin transaction
2597
+  (0.0ms) rollback transaction
2598
+  (0.0ms) begin transaction
2599
+  (0.0ms) rollback transaction
2600
+  (0.0ms) begin transaction
2601
+  (0.0ms) rollback transaction
2602
+  (0.0ms) begin transaction
2603
+  (0.0ms) rollback transaction
2604
+  (0.0ms) begin transaction
2605
+  (0.0ms) rollback transaction
2606
+  (0.0ms) begin transaction
2607
+ Processing by PagesController#index as HTML
2608
+ Rendered pages/index.html.erb within layouts/application (1.7ms)
2609
+ Completed 200 OK in 25ms (Views: 24.5ms | ActiveRecord: 0.0ms)
2610
+  (0.1ms) rollback transaction
2611
+  (0.0ms) begin transaction
2612
+ Processing by PagesController#index as HTML
2613
+ Parameters: {"locale"=>"sv-SE"}
2614
+ Completed 200 OK in 1ms (Views: 1.3ms | ActiveRecord: 0.0ms)
2615
+  (0.0ms) rollback transaction
2616
+  (0.0ms) begin transaction
2617
+  (0.0ms) rollback transaction
2618
+ Connecting to database specified by database.yml
2619
+  (0.3ms) begin transaction
2620
+  (0.0ms) rollback transaction
2621
+  (0.0ms) begin transaction
2622
+  (0.0ms) rollback transaction
2623
+  (0.0ms) begin transaction
2624
+  (0.0ms) rollback transaction
2625
+  (0.0ms) begin transaction
2626
+  (0.0ms) rollback transaction
2627
+  (0.0ms) begin transaction
2628
+  (0.0ms) rollback transaction
2629
+  (0.0ms) begin transaction
2630
+  (0.1ms) rollback transaction
2631
+  (0.0ms) begin transaction
2632
+  (0.0ms) rollback transaction
2633
+  (0.0ms) begin transaction
2634
+  (0.0ms) rollback transaction
2635
+  (0.0ms) begin transaction
2636
+  (0.0ms) rollback transaction
2637
+  (0.0ms) begin transaction
2638
+  (0.0ms) rollback transaction
2639
+  (0.0ms) begin transaction
2640
+  (0.0ms) rollback transaction
2641
+  (0.0ms) begin transaction
2642
+  (0.0ms) rollback transaction
2643
+  (0.0ms) begin transaction
2644
+  (0.0ms) rollback transaction
2645
+  (0.0ms) begin transaction
2646
+  (0.0ms) rollback transaction
2647
+  (0.0ms) begin transaction
2648
+  (0.0ms) rollback transaction
2649
+  (0.0ms) begin transaction
2650
+  (0.0ms) rollback transaction
2651
+  (0.0ms) begin transaction
2652
+  (0.0ms) rollback transaction
2653
+  (0.0ms) begin transaction
2654
+ Processing by PagesController#index as HTML
2655
+ Rendered pages/index.html.erb within layouts/application (1.7ms)
2656
+ Completed 200 OK in 27ms (Views: 26.3ms | ActiveRecord: 0.0ms)
2657
+  (0.1ms) rollback transaction
2658
+  (0.0ms) begin transaction
2659
+ Processing by PagesController#index as HTML
2660
+ Parameters: {"locale"=>"sv-SE"}
2661
+ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2662
+  (0.0ms) rollback transaction
2663
+  (0.0ms) begin transaction
2664
+  (0.0ms) rollback transaction
2665
+ Connecting to database specified by database.yml
2666
+  (0.3ms) begin transaction
2667
+  (0.0ms) rollback transaction
2668
+  (0.0ms) begin transaction
2669
+  (0.0ms) rollback transaction
2670
+  (0.0ms) begin transaction
2671
+  (0.0ms) rollback transaction
2672
+  (0.0ms) begin transaction
2673
+  (0.0ms) rollback transaction
2674
+  (0.0ms) begin transaction
2675
+  (0.0ms) rollback transaction
2676
+  (0.0ms) begin transaction
2677
+  (0.0ms) rollback transaction
2678
+  (0.0ms) begin transaction
2679
+  (0.0ms) rollback transaction
2680
+  (0.0ms) begin transaction
2681
+  (0.0ms) rollback transaction
2682
+  (0.0ms) begin transaction
2683
+  (0.0ms) rollback transaction
2684
+  (0.0ms) begin transaction
2685
+  (0.0ms) rollback transaction
2686
+  (0.0ms) begin transaction
2687
+  (0.0ms) rollback transaction
2688
+  (0.0ms) begin transaction
2689
+  (0.0ms) rollback transaction
2690
+  (0.0ms) begin transaction
2691
+  (0.0ms) rollback transaction
2692
+  (0.0ms) begin transaction
2693
+  (0.0ms) rollback transaction
2694
+  (0.0ms) begin transaction
2695
+  (0.0ms) rollback transaction
2696
+  (0.0ms) begin transaction
2697
+  (0.0ms) rollback transaction
2698
+  (0.0ms) begin transaction
2699
+  (0.1ms) rollback transaction
2700
+  (0.0ms) begin transaction
2701
+ Processing by PagesController#index as HTML
2702
+ Rendered pages/index.html.erb within layouts/application (1.7ms)
2703
+ Completed 200 OK in 25ms (Views: 24.2ms | ActiveRecord: 0.0ms)
2704
+  (0.1ms) rollback transaction
2705
+  (0.0ms) begin transaction
2706
+ Processing by PagesController#index as HTML
2707
+ Parameters: {"locale"=>"sv-SE"}
2708
+ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2709
+  (0.0ms) rollback transaction
2710
+  (0.0ms) begin transaction
2711
+  (0.0ms) rollback transaction
2712
+ Connecting to database specified by database.yml
2713
+  (0.3ms) begin transaction
2714
+  (0.1ms) rollback transaction
2715
+  (0.1ms) begin transaction
2716
+  (0.0ms) rollback transaction
2717
+  (0.0ms) begin transaction
2718
+  (0.0ms) rollback transaction
2719
+  (0.0ms) begin transaction
2720
+  (0.0ms) rollback transaction
2721
+  (0.0ms) begin transaction
2722
+  (0.0ms) rollback transaction
2723
+  (0.0ms) begin transaction
2724
+  (0.0ms) rollback transaction
2725
+  (0.0ms) begin transaction
2726
+  (0.0ms) rollback transaction
2727
+  (0.0ms) begin transaction
2728
+  (0.0ms) rollback transaction
2729
+  (0.0ms) begin transaction
2730
+  (0.0ms) rollback transaction
2731
+  (0.0ms) begin transaction
2732
+  (0.0ms) rollback transaction
2733
+  (0.0ms) begin transaction
2734
+  (0.0ms) rollback transaction
2735
+  (0.0ms) begin transaction
2736
+  (0.0ms) rollback transaction
2737
+  (0.0ms) begin transaction
2738
+  (0.0ms) rollback transaction
2739
+  (0.0ms) begin transaction
2740
+  (0.0ms) rollback transaction
2741
+  (0.0ms) begin transaction
2742
+  (0.0ms) rollback transaction
2743
+  (0.0ms) begin transaction
2744
+  (0.0ms) rollback transaction
2745
+  (0.0ms) begin transaction
2746
+  (0.0ms) rollback transaction
2747
+  (0.0ms) begin transaction
2748
+ Processing by PagesController#index as HTML
2749
+ Rendered pages/index.html.erb within layouts/application (2.0ms)
2750
+ Completed 200 OK in 26ms (Views: 25.6ms | ActiveRecord: 0.0ms)
2751
+  (0.1ms) rollback transaction
2752
+  (0.0ms) begin transaction
2753
+ Processing by PagesController#index as HTML
2754
+ Parameters: {"locale"=>"sv-SE"}
2755
+ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2756
+  (0.0ms) rollback transaction
2757
+  (0.0ms) begin transaction
2758
+  (0.0ms) rollback transaction
2759
+ Connecting to database specified by database.yml
2760
+  (0.3ms) begin transaction
2761
+  (0.0ms) rollback transaction
2762
+  (0.0ms) begin transaction
2763
+  (0.0ms) rollback transaction
2764
+  (0.0ms) begin transaction
2765
+  (0.0ms) rollback transaction
2766
+  (0.0ms) begin transaction
2767
+  (0.0ms) rollback transaction
2768
+  (0.0ms) begin transaction
2769
+  (0.0ms) rollback transaction
2770
+  (0.0ms) begin transaction
2771
+  (0.0ms) rollback transaction
2772
+  (0.0ms) begin transaction
2773
+  (0.0ms) rollback transaction
2774
+  (0.0ms) begin transaction
2775
+  (0.0ms) rollback transaction
2776
+  (0.0ms) begin transaction
2777
+  (0.0ms) rollback transaction
2778
+  (0.0ms) begin transaction
2779
+  (0.0ms) rollback transaction
2780
+  (0.0ms) begin transaction
2781
+  (0.0ms) rollback transaction
2782
+  (0.0ms) begin transaction
2783
+  (0.0ms) rollback transaction
2784
+  (0.0ms) begin transaction
2785
+  (0.0ms) rollback transaction
2786
+  (0.0ms) begin transaction
2787
+  (0.0ms) rollback transaction
2788
+  (0.0ms) begin transaction
2789
+  (0.0ms) rollback transaction
2790
+  (0.0ms) begin transaction
2791
+  (0.0ms) rollback transaction
2792
+  (0.0ms) begin transaction
2793
+  (0.0ms) rollback transaction
2794
+  (0.0ms) begin transaction
2795
+ Processing by PagesController#index as HTML
2796
+ Rendered pages/index.html.erb within layouts/application (1.8ms)
2797
+ Completed 200 OK in 25ms (Views: 24.9ms | ActiveRecord: 0.0ms)
2798
+  (0.1ms) rollback transaction
2799
+  (0.0ms) begin transaction
2800
+ Processing by PagesController#index as HTML
2801
+ Parameters: {"locale"=>"sv-SE"}
2802
+ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2803
+  (0.0ms) rollback transaction
2804
+  (0.0ms) begin transaction
2805
+  (0.0ms) rollback transaction
2806
+ Connecting to database specified by database.yml
2807
+  (0.3ms) begin transaction
2808
+  (0.0ms) rollback transaction
2809
+  (0.1ms) begin transaction
2810
+  (0.0ms) rollback transaction
2811
+  (0.0ms) begin transaction
2812
+  (0.0ms) rollback transaction
2813
+  (0.0ms) begin transaction
2814
+  (0.1ms) rollback transaction
2815
+  (0.0ms) begin transaction
2816
+  (0.0ms) rollback transaction
2817
+  (0.0ms) begin transaction
2818
+  (0.0ms) rollback transaction
2819
+  (0.0ms) begin transaction
2820
+  (0.0ms) rollback transaction
2821
+  (0.0ms) begin transaction
2822
+  (0.0ms) rollback transaction
2823
+  (0.0ms) begin transaction
2824
+  (0.0ms) rollback transaction
2825
+  (0.0ms) begin transaction
2826
+  (0.0ms) rollback transaction
2827
+  (0.0ms) begin transaction
2828
+  (0.0ms) rollback transaction
2829
+  (0.0ms) begin transaction
2830
+  (0.0ms) rollback transaction
2831
+  (0.0ms) begin transaction
2832
+  (0.0ms) rollback transaction
2833
+  (0.0ms) begin transaction
2834
+  (0.0ms) rollback transaction
2835
+  (0.0ms) begin transaction
2836
+  (0.0ms) rollback transaction
2837
+  (0.0ms) begin transaction
2838
+  (0.0ms) rollback transaction
2839
+  (0.0ms) begin transaction
2840
+  (0.0ms) rollback transaction
2841
+  (0.0ms) begin transaction
2842
+ Processing by PagesController#index as HTML
2843
+ Rendered pages/index.html.erb within layouts/application (1.9ms)
2844
+ Completed 200 OK in 26ms (Views: 25.2ms | ActiveRecord: 0.0ms)
2845
+  (0.1ms) rollback transaction
2846
+  (0.0ms) begin transaction
2847
+ Processing by PagesController#index as HTML
2848
+ Parameters: {"locale"=>"sv-SE"}
2849
+ Completed 200 OK in 1ms (Views: 1.2ms | ActiveRecord: 0.0ms)
2850
+  (0.0ms) rollback transaction
2851
+  (0.0ms) begin transaction
2852
+  (0.0ms) rollback transaction
@@ -6,8 +6,20 @@ class DummyUser
6
6
  end
7
7
  end
8
8
 
9
+ class DummyRequest
10
+ attr_accessor :env
11
+
12
+ def initialize
13
+ @env = {}
14
+ end
15
+ end
16
+
9
17
  class DummyController < ApplicationController
10
- attr_accessor :params, :session, :current_user
18
+ attr_accessor :params, :session, :current_user, :request
19
+
20
+ def initialize
21
+ @request = DummyRequest.new
22
+ end
11
23
  end
12
24
 
13
25
  class LocaleControlTest < ActiveSupport::TestCase
@@ -40,10 +52,8 @@ class LocaleControlTest < ActiveSupport::TestCase
40
52
 
41
53
  test "set locale from http" do
42
54
  controller = DummyController.new
43
- org_accept = ENV['HTTP_ACCEPT_LANGUAGE']
44
- ENV['HTTP_ACCEPT_LANGUAGE'] = "sv-SE,en-US;q=0.8"
55
+ controller.request.env['HTTP_ACCEPT_LANGUAGE'] = "sv-SE,en-US;q=0.8"
45
56
  controller.set_locale
46
57
  assert_equal :'sv-SE', I18n.locale
47
- ENV['HTTP_ACCEPT_LANGUAGE'] = org_accept
48
58
  end
49
59
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tounge
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -108,7 +108,6 @@ files:
108
108
  - test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
109
109
  - test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
110
110
  - test/dummy/tmp/cache/assets/E37/7E0/sprockets%2F8d9eabd26028ef9e8e9efaa2c16bfe03
111
- - test/dummy/tmp/pids/server.pid
112
111
  - test/locale_control_test.rb
113
112
  - test/locale_setter_test.rb
114
113
  - test/test_helper.rb
@@ -127,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
127
126
  version: '0'
128
127
  segments:
129
128
  - 0
130
- hash: -1975252539773363279
129
+ hash: -1919210742161165427
131
130
  required_rubygems_version: !ruby/object:Gem::Requirement
132
131
  none: false
133
132
  requirements:
@@ -136,7 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
136
135
  version: '0'
137
136
  segments:
138
137
  - 0
139
- hash: -1975252539773363279
138
+ hash: -1919210742161165427
140
139
  requirements: []
141
140
  rubyforge_project:
142
141
  rubygems_version: 1.8.24
@@ -193,7 +192,6 @@ test_files:
193
192
  - test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
194
193
  - test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
195
194
  - test/dummy/tmp/cache/assets/E37/7E0/sprockets%2F8d9eabd26028ef9e8e9efaa2c16bfe03
196
- - test/dummy/tmp/pids/server.pid
197
195
  - test/locale_control_test.rb
198
196
  - test/locale_setter_test.rb
199
197
  - test/test_helper.rb
@@ -1 +0,0 @@
1
- 41830