public function testSchemaMetadataWithNestedColumnTypes()
{
$statement = new SimpleStatement("CREATE TABLE {$this->tableNamePrefix}_nested1 (key int PRIMARY KEY, value map<frozen<list<int>>, int>)");
$this->session->execute($statement);
$statement = new SimpleStatement("CREATE TABLE {$this->tableNamePrefix}_nested2 (key int PRIMARY KEY, value map<int, frozen<list<int>>>)");
$this->session->execute($statement);
$statement = new SimpleStatement("CREATE TABLE {$this->tableNamePrefix}_nested3 (key int PRIMARY KEY, value list<frozen<map<int, frozen<set<int>>>>>)");
$this->session->execute($statement);
$keyspace = $this->session->schema()->keyspace($this->keyspaceName);
$table1 = $keyspace->table("{$this->tableNamePrefix}_nested1");
$this->assertEquals((string) $table1->column("value")->type(), "map<list<int>, int>");
$table2 = $keyspace->table("{$this->tableNamePrefix}_nested2");
$this->assertEquals((string) $table2->column("value")->type(), "map<int, list<int>>");
$table3 = $keyspace->table("{$this->tableNamePrefix}_nested3");
$this->assertEquals((string) $table3->column("value")->type(), "list<map<int, set<int>>>");
}