TestVariablePort ${tls_port}
TestVariablePortStr "${tls_port_str}"

LoadModule status_module modules/mod_status.so

# Basic IfDefine
<IfDefine COMPLEX>
    VAR_DIRECTIVE success
    LoadModule ssl_module modules/mod_ssl.so
</IfDefine>

<IfDefine !COMPLEX>
    INVALID_VAR_DIRECTIVE failure
</IfDefine>

<IfDefine NOT_COMPLEX>
    INVALID_VAR_DIRECTIVE failure
</IfDefine>

<IfDefine !NOT_COMPLEX>
    VAR_DIRECTIVE failure
</IfDefine>


# Basic IfModule
<IfModule ssl_module>
    MOD_DIRECTIVE Success
</IfModule>

<IfModule !ssl_module>
    INVALID_MOD_DIRECTIVE failure
</IfModule>

<IfModule fake_module>
    INVALID_MOD_DIRECTIVE failure
</IfModule>

<IfModule !fake_module>
    MOD_DIRECTIVE Success
</IfModule>

# Nested Tests
<IfModule status_module>
    <IfDefine COMPLEX>
        NESTED_DIRECTIVE success

        <IfModule mod_ssl.c>
            NESTED_DIRECTIVE success
        </IfModule>

        <IfModule !mod_ssl.c>
            INVALID_NESTED_DIRECTIVE failure
        </IfModule>
    </IfDefine>

    <IfDefine !COMPLEX>
        INVALID_NESTED_DIRECTIVE failure

        <IfModule ssl_module>
            INVALID_NESTED_DIRECTIVE failure
        </IfModule>
    </IfDefine>

    NESTED_DIRECTIVE success

</IfModule>
