Ejemplo n.º 1
0
 public function testDecrement()
 {
     $key1 = 'test';
     $key2 = 'test2';
     Counter::reset($key1);
     Counter::reset($key2);
     $this->assertEquals(10, Counter::increment($key1, 10));
     $this->assertEquals(10, Counter::increment($key2, 10));
     $this->assertEquals(9, Counter::decrement($key1));
     $this->assertEquals(8, Counter::decrement($key1));
     $this->assertEquals(9, Counter::decrement($key2));
     $this->assertEquals(8, Counter::decrement($key2));
     $this->assertEquals(6, Counter::decrement($key2, 2));
     $this->assertEquals(6, Counter::decrement($key1, 2));
     $this->assertEquals(-2, Counter::decrement($key2, 8));
     $this->assertEquals(-2, Counter::decrement($key1, 8));
 }
Ejemplo n.º 2
0
 public function generateDistributedId()
 {
     $prefix = time() - static::$_distributedOptions['start_time'];
     $suffix = Text::padOrTruncate(Counter::increment($this->_table), '0', 4);
     $id = $prefix . static::$_distributedOptions['node_id'] . $suffix;
     return $this->setId($id);
 }