| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files/python/Lib/site-packages/pymemcache/test/ |
Upload File : |
import six
import pytest
from pymemcache.test.utils import MockMemcacheClient
@pytest.mark.unit()
def test_get_set():
client = MockMemcacheClient()
assert client.get(b"hello") is None
client.set(b"hello", 12)
assert client.get(b"hello") == 12
@pytest.mark.unit()
def test_get_set_unicide_key():
client = MockMemcacheClient()
assert client.get(u"hello") is None
client.set(b"hello", 12)
assert client.get(u"hello") == 12
@pytest.mark.unit()
def test_get_set_non_ascii_value():
client = MockMemcacheClient()
assert client.get(b"hello") is None
# This is the value of msgpack.packb('non_ascii')
non_ascii_str = b'\xa9non_ascii'
client.set(b"hello", non_ascii_str)
assert client.get(b"hello") == non_ascii_str
@pytest.mark.unit()
def test_get_many_set_many():
client = MockMemcacheClient()
client.set(b"h", 1)
result = client.get_many([b"h", b"e", b"l", b"o"])
assert result == {b"h": 1}
# Convert keys into bytes
d = dict((k.encode('ascii'), v)
for k, v in six.iteritems(dict(h=1, e=2, z=3)))
client.set_many(d)
assert client.get_many([b"h", b"e", b"z", b"o"]) == d
@pytest.mark.unit()
def test_get_many_set_many_non_ascii_values():
client = MockMemcacheClient()
# These are the values of calling msgpack.packb() on '1', '2', and '3'
non_ascii_1 = b'\xa11'
non_ascii_2 = b'\xa12'
non_ascii_3 = b'\xa13'
client.set(b"h", non_ascii_1)
result = client.get_many([b"h", b"e", b"l", b"o"])
assert result == {b"h": non_ascii_1}
# Convert keys into bytes
d = dict((k.encode('ascii'), v)
for k, v in six.iteritems(
dict(h=non_ascii_1, e=non_ascii_2, z=non_ascii_3)
))
client.set_many(d)
assert client.get_many([b"h", b"e", b"z", b"o"]) == d
@pytest.mark.unit()
def test_add():
client = MockMemcacheClient()
client.add(b"k", 2)
assert client.get(b"k") == 2
client.add(b"k", 25)
assert client.get(b"k") == 2
@pytest.mark.unit()
def test_delete():
client = MockMemcacheClient()
client.add(b"k", 2)
assert client.get(b"k") == 2
client.delete(b"k")
assert client.get(b"k") is None
@pytest.mark.unit()
def test_incr_decr():
client = MockMemcacheClient()
client.add(b"k", 2)
client.incr(b"k", 4)
assert client.get(b"k") == 6
client.decr(b"k", 2)
assert client.get(b"k") == 4
@pytest.mark.unit()
def test_prepand_append():
client = MockMemcacheClient()
client.set(b"k", '1')
client.append(b"k", 'a')
client.prepend(b"k", 'p')
assert client.get(b"k") == b'p1a'