Cassandra\SchemaMetadataIntegrationTest::testSchemaMetadataWithNestedColumnTypes PHP Method

testSchemaMetadataWithNestedColumnTypes() public method

This test ensures that the validator parser correctly parses and builds columns with deeply nested collection types.
    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>>>");
    }