Sha256: 264f1e3daffffa093f4133931e5a0bad58cf1b52440f4dc52f661ac009a05883

Contents?: true

Size: 894 Bytes

Versions: 4

Compression:

Stored size: 894 Bytes

Contents

# encoding: utf-8
require 'helper'
require 'memcached_mock'

describe 'Encoding' do

  context 'using a live server' do
    should 'support i18n content' do
      memcached do |dc|
        key = 'foo'
        bad_key = utf8 = 'ƒ©åÍÎ'

        assert dc.set(key, utf8)
        assert_equal utf8, dc.get(key)

        # keys must be ASCII
        assert_raises ArgumentError, /illegal character/ do
          dc.set(bad_key, utf8)
        end
      end
    end

    should 'support content expiry' do
      memcached do |dc|
        key = 'foo'
        assert dc.set(key, 'bar', 1)
        assert_equal 'bar', dc.get(key)
        sleep 2
        assert_equal nil, dc.get(key)
      end
    end

    should 'not allow non-ASCII keys' do
      memcached do |dc|
        key = 'fooƒ'
        assert_raises ArgumentError do
          dc.set(key, 'bar')
        end
      end
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dalli-2.0.2 test/test_encoding.rb
dalli-2.0.1 test/test_encoding.rb
dalli-2.0.0 test/test_encoding.rb
dalli-1.1.5 test/test_encoding.rb