diff --git a/package.xml b/package.xml index bbec4158..7f1f7e46 100644 --- a/package.xml +++ b/package.xml @@ -74,6 +74,7 @@ Fixes + @@ -143,9 +144,11 @@ Fixes + + diff --git a/tests/incrdecr_64.phpt b/tests/incrdecr_64.phpt new file mode 100644 index 00000000..d71c050d --- /dev/null +++ b/tests/incrdecr_64.phpt @@ -0,0 +1,75 @@ +--TEST-- +Memcached::increment() Memcached::decrement() on 64bits +--SKIPIF-- + +--FILE-- +delete('foo'); +var_dump($m->increment('foo', 1)); +var_dump($m->getResultCode()); +var_dump($m->decrement('foo', 1)); +var_dump($m->getResultCode()); +var_dump($m->get('foo')); +var_dump($m->getResultCode()); + +echo "Normal\n"; +$m->set('foo', 1); +var_dump($m->get('foo')); +$m->increment('foo'); +var_dump($m->get('foo')); +$m->increment('foo', 2); +var_dump($m->get('foo')); +$m->decrement('foo'); +var_dump($m->get('foo')); +$m->decrement('foo', 2); +var_dump($m->get('foo')); + +error_reporting(0); + +echo "Negative offset\n"; +$php_errormsg = ''; +$m->increment('foo', -1); +echo $php_errormsg, "\n"; +var_dump($m->get('foo')); + +$php_errormsg = ''; +$m->decrement('foo', -1); +echo $php_errormsg, "\n"; +var_dump($m->get('foo')); + +echo "Enormous offset\n"; +$m->increment('foo', 4294967296); +var_dump($m->get('foo')); + +$m->decrement('foo', 4294967296); +var_dump($m->get('foo')); + +--EXPECT-- +Not there +bool(false) +int(16) +bool(false) +int(16) +bool(false) +int(16) +Normal +int(1) +int(2) +int(4) +int(3) +int(1) +Negative offset +Memcached::increment(): offset cannot be a negative value +int(1) +Memcached::decrement(): offset cannot be a negative value +int(1) +Enormous offset +int(4294967297) +int(1) diff --git a/tests/incrdecr_bykey_64.phpt b/tests/incrdecr_bykey_64.phpt new file mode 100644 index 00000000..b1f2e4d8 --- /dev/null +++ b/tests/incrdecr_bykey_64.phpt @@ -0,0 +1,69 @@ +--TEST-- +Memcached::incrementByKey() Memcached::decrementByKey() on 64bits +--SKIPIF-- + +--FILE-- +delete('foo'); +var_dump($m->incrementByKey('foo', 'foo', 1)); +var_dump($m->decrementByKey('foo', 'foo', 1)); +var_dump($m->get('foo')); + +echo "Normal\n"; +$m->set('foo', 1); +var_dump($m->get('foo')); +$m->incrementByKey('foo', 'foo'); +var_dump($m->get('foo')); +$m->incrementByKey('foo', 'foo', 2); +var_dump($m->get('foo')); +$m->decrementByKey('foo', 'foo'); +var_dump($m->get('foo')); +$m->decrementByKey('foo', 'foo', 2); +var_dump($m->get('foo')); + +error_reporting(0); + +echo "Negative offset\n"; +$php_errormsg = ''; +$m->incrementByKey('foo', 'foo', -1); +echo $php_errormsg, "\n"; +var_dump($m->get('foo')); + +$php_errormsg = ''; +$m->decrementByKey('foo', 'foo', -1); +echo $php_errormsg, "\n"; +var_dump($m->get('foo')); + +echo "Enormous offset\n"; +$m->incrementByKey('foo', 'foo', 4294967296); +var_dump($m->get('foo')); + +$m->decrementByKey('foo', 'foo', 4294967296); +var_dump($m->get('foo')); + +--EXPECT-- +Not there +bool(false) +bool(false) +bool(false) +Normal +int(1) +int(2) +int(4) +int(3) +int(1) +Negative offset +Memcached::incrementByKey(): offset cannot be a negative value +int(1) +Memcached::decrementByKey(): offset cannot be a negative value +int(1) +Enormous offset +int(4294967297) +int(1)