public function testAddWithResources()
{
$set = new Set();
$fh = fopen(__FILE__, 'r');
$set->add($fh);
$set->add($fh);
// Should only get added once
$this->assertEquals(1, count($set));
$this->assertEquals(1, count($set->asArray()));
$resources = 0;
foreach ($set as $key => $value) {
if (is_resource($value)) {
$resources++;
$vector_key = 'Resource(' . strval($value) . ')';
$this->assertEquals($vector_key, $key);
$this->assertEquals($fh, $value);
}
}
// There should have been one resource
$this->assertEquals(1, $resources);
}