diff --git a/Changelog.md b/Changelog.md
index ef857c07e08ddff918b6e51828974c3028c10c14..7cbe5954bed907b5afec156d04da3e628c8f6005 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,5 +1,8 @@
 # 0.0.2.0pre
 
+# 0.0.1.1
+
+Fix syntax error in French Javascript pluralization rule.
 
 # 0.0.1.0
 
diff --git a/config/locales/cldr/plurals.rb b/config/locales/cldr/plurals.rb
index 039afc521bbe530af5592f7e502ec6b0dc5f6441..01b566342083d7a2f6ec84ea65430acfd9656883 100644
--- a/config/locales/cldr/plurals.rb
+++ b/config/locales/cldr/plurals.rb
@@ -15,7 +15,7 @@
   :eu => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } },
   :fi => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } },
   :fil => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| [0, 1].include?(n) ? :one : :other }, :js_rule => 'function (n) { return jQuery.inArray(n, [0, 1]) != -1 ? "one" : "other" }' } } },
-  :fr => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n.between?(0, 2) && n != 2 ? :one : :other }, :js_rule => 'function (n) { return n.between?(0, 2) && n != 2 ? "one" : "other" }' } } },
+  :fr => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n.between?(0, 2) && n != 2 ? :one : :other }, :js_rule => 'function (n) { return n >= 0 && n <= 2 && n != 2 ? "one" : "other" }' } } },
   :ga => { :i18n => {:plural => { :keys => [:one, :two, :few, :many, :other], :rule => lambda { |n| n == 1 ? :one : n == 2 ? :two : [3, 4, 5, 6].include?(n) ? :few : [7, 8, 9, 10].include?(n) ? :many : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : n == 2 ? "two" : jQuery.inArray(n, [3, 4, 5, 6]) != -1 ? "few" : jQuery.inArray(n, [7, 8, 9, 10]) != -1 ? "many" : "other" }' } } },
   :gl => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } },
   :he => { :i18n => {:plural => { :keys => [:one, :two, :many, :other], :rule => lambda { |n| n == 1 ? :one : n == 2 ? :two : n != 0 ? :many : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : n == 2 ? "two" : n != 0 ? "many" : "other" }' } } },
@@ -49,4 +49,4 @@
   :ur => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } },
   :vi => { :i18n => {:plural => { :keys => [:other], :rule => lambda { |n| :other }, :js_rule => 'function (n) { return "other" }' } } },
   :zh => { :i18n => {:plural => { :keys => [:other], :rule => lambda { |n| :other }, :js_rule => 'function (n) { return "other" }' } } }
-}
\ No newline at end of file
+}
diff --git a/spec/locale_spec.rb b/spec/locale_spec.rb
new file mode 100644
index 0000000000000000000000000000000000000000..0ba8c31cdb392800ceacc9fc48cc78abd1681a72
--- /dev/null
+++ b/spec/locale_spec.rb
@@ -0,0 +1,50 @@
+require 'spec_helper'
+
+describe 'locale files' do
+  describe "cldr/plurals.rb" do
+    AVAILABLE_LANGUAGE_CODES.each do |locale|
+      describe "#{locale} plural rules" do
+        it "defines the keys" do
+          I18n.with_locale locale do
+            expect {
+              I18n.t 'i18n.plural.keys'
+            }.to_not raise_error
+          end
+        end
+        
+        it "defines a valid pluralization function" do
+          I18n.with_locale locale do
+            expect {
+              rule = I18n.t 'i18n.plural.rule', resolve: false
+              rule.call(1)
+            }.to_not raise_error
+          end
+        end
+        
+        it "defines a valid javascript pluralization function" do
+          I18n.with_locale locale do
+            expect {
+              ExecJS.eval I18n.t('i18n.plural.js_rule')
+            }.to_not raise_error
+          end
+        end
+      end
+    end
+  end
+  
+  AVAILABLE_LANGUAGE_CODES.each do |locale|
+    ["diaspora/#{locale}.yml",
+     "devise/devise.#{locale}.yml",
+     "javascript/javascript.#{locale}.yml"].each do |file|
+      describe file do
+        it "has no syntax errors if it exists" do
+          file = Rails.root.join("config", "locales", file)
+          pending "Not yet available" unless File.exists? file
+          expect {
+            YAML.load_file file
+          }.to_not raise_error
+        end
+      end
+    end
+  end
+end