Sha256: 844a0c5fba2b339a4706e0cef6c67ddf45d62b15400d5d19d439cfe9188fd7e2
Contents?: true
Size: 1.66 KB
Versions: 1
Compression:
Stored size: 1.66 KB
Contents
require 'spec_helper' describe LocaleSetter::Controller do it "exists" do expect{ LocaleSetter::Controller }.to_not raise_error end class BareController def self.before_filter(name); end end describe ".included" do it "sets a before filter" do BareController.should_receive(:before_filter).with(:set_locale) BareController.send(:include, LocaleSetter::Controller) end it "skips setting the before_filter if not supported" do expect{ BareController.send(:include, LocaleSetter::Controller) }.to_not raise_error end end class Controller < BareController include LocaleSetter::Controller end let(:controller){ Controller.new } before(:each) do controller.i18n.locale = :es end describe "#default_url_options" do it "adds a :locale key" do controller.default_url_options({})[:locale].should be end it "does not require a parameter" do expect{ controller.default_url_options }.to_not raise_error end it "builds on passed in options" do result = controller.default_url_options({:test => true}) result[:test].should be result[:locale].should be end it "defers to a passed in locale" do result = controller.default_url_options({:locale => 'abc'}) result[:locale].should == 'abc' end it "doesn't appent a locale if it's the default" do controller.i18n.locale = controller.i18n.default_locale controller.default_url_options({})[:locale].should_not be end it "appends a locale when not the default" do controller.i18n.locale = :sample controller.default_url_options({})[:locale].should == :sample end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
locale_setter-0.4.0 | spec/locale_setter/controller_spec.rb |