public function testSupported()
    {
        $xml = <<<XML
<schema name="test" owner="ROLE_OWNER">
  <function name="test_fn" returns="text">
    <functionParameter name="a" type="text"/>
    <functionParameter name="b" type="int"/>
    <functionParameter name="c" type="date"/>
    <functionDefinition language="sql" sqlFormat="mysql5">
      RETURN 'xyz';
    </functionDefinition>
  </function>
</schema>
XML;
        $schema = new SimpleXMLElement($xml);
        $this->assertTrue(mysql5_function::supported_language('sql'));
        $this->assertFalse(mysql5_function::supported_language('tsql'));
        $this->assertTrue(mysql5_function::has_definition($schema->function));
        $schema->function->functionDefinition['language'] = 'tsql';
        $this->assertFalse(mysql5_function::has_definition($schema->function));
        $schema->function->functionDefinition['language'] = 'sql';
        $schema->function->functionDefinition['sqlFormat'] = 'pgsql8';
        $this->assertFalse(mysql5_function::has_definition($schema->function));
    }