Ejemplo n.º 1
0
 public function testAddGetRemove()
 {
     $key1 = 'key1';
     $key2 = 'key2';
     $key3 = 'key3';
     $item1 = 'item 1';
     $item2 = 'item 2';
     $item3 = 'item 3';
     $items = [$key1 => $item1, $key2 => $item2];
     $keys = new Set([$key1, $key2]);
     $values = new ArrayList([$item1, $item2]);
     $map = new Map();
     $map->set($key1, $item1);
     $this->assertEquals(1, $map->size());
     $this->assertEquals($item1, $map->get($key1));
     $this->assertEquals($key1, $map->getKey($item1));
     $this->assertNull($map->getKey($item2));
     $this->assertTrue($map->has($key1));
     $this->assertFalse($map->has($key2));
     $map->remove($key1);
     $this->assertEquals(0, $map->size());
     $map->setAll($items);
     $this->assertEquals(2, $map->size());
     $this->assertEquals($keys, $map->keys());
     $this->assertEquals($values, $map->values());
     $map->set($key3, $item3);
     $this->assertEquals(3, $map->size());
     $map->clear();
     $this->assertEquals(0, $map->size());
     $dupKeyItems = [$key1 => $item1, $key2 => $item2];
     $map->setAll($dupKeyItems);
     $map->set($key2, $item3);
     $this->assertEquals(2, $map->size());
     $this->assertEquals($item3, $map->get($key2));
     $this->assertEmpty($map->get('non_existing_key'));
     $this->assertEmpty($map->remove('non_existing_key'));
     $this->assertEquals([], $map->get('non_existing_key', []));
 }
Ejemplo n.º 2
0
 /**
  * Returns all method names
  *
  * @return Set
  */
 public function getMethodNames()
 {
     return $this->methods->keys();
 }
Ejemplo n.º 3
0
 /**
  * Returns all property names
  *
  * @return Set
  */
 public function getPropertyNames()
 {
     return $this->properties->keys();
 }
Ejemplo n.º 4
0
 /**
  * Returns all extension keys
  *
  * @return Set
  */
 public function getExtensionKeys()
 {
     return $this->extensions->keys();
 }
Ejemplo n.º 5
0
 /**
  * Returns all constant names
  *
  * @return Set
  */
 public function getConstantNames()
 {
     return $this->constants->keys();
 }