public function testCompositeKeys($keyType)
{
$map = Type::map($keyType, Type::varchar())->create();
$map->set($keyType->create("a", "1", "b", "2"), "value1");
$this->assertEquals($map->get($keyType->create("a", "1", "b", "2")), "value1");
$this->assertEquals(1, count($map));
$map->set($keyType->create("c", "3", "d", "4", "e", "5"), "value2");
$this->assertEquals($map->get($keyType->create("c", "3", "d", "4", "e", "5")), "value2");
$this->assertEquals(2, count($map));
$map->remove($keyType->create("a", "1", "b", "2"));
$this->assertFalse($map->has($keyType->create("a", "1", "b", "2")));
$this->assertEquals(1, count($map));
$map->remove($keyType->create("c", "3", "d", "4", "e", "5"));
$this->assertFalse($map->has($keyType->create("c", "3", "d", "4", "e", "5")));
$this->assertEquals(0, count($map));
}