Sha256: 52714666175f6190ca586afc29aa9f756ada78489c6af769bc1f0dda2b618585

Contents?: true

Size: 1001 Bytes

Versions: 2

Compression:

Stored size: 1001 Bytes

Contents

require 'spec_helper'

describe "LocaleSetter::HTTP" do
  describe ".for" do
    let(:available){ ['en', 'es'] }

    context "when the first choice is supported" do
      context "given 'en'" do
        it "returns :en" do
          LocaleSetter::HTTP.for("en", available).should == :en
        end
      end

      context "given two acceptable locales" do
        it "returns :en" do
          LocaleSetter::HTTP.for("en,es", available).should == :en
        end
      end
    end

    context "when the first choice is not supported" do
      context "given 'en,es'" do
        it "returns :es" do
          LocaleSetter::HTTP.for("de,es", available).should == :es
        end
      end
    end

    context "when using preference weightings" do
      it "returns :en" do
        LocaleSetter::HTTP.for("en;1,es;0.8", available).should == :en
      end

      it "handles misordered preferences" do
        LocaleSetter::HTTP.for("es;0.8,en;1", available).should == :en
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
locale_setter-0.4.0 spec/locale_setter/http_spec.rb
locale_setter-0.3.0 spec/locale/http_spec.rb