<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JsUnit Test Container Controller</title>
    <script language="javascript" type="text/javascript">
        var containerReady = false;

        function init() {
            containerReady = true;
        }

        function isPageLoaded() {
            if (!containerReady)
                return false;

            var isTestPageLoaded = false;

            try {
                // attempt to access the var isTestPageLoaded in the testFrame
                if (typeof(top.testManager.containerTestFrame.isTestPageLoaded) != 'undefined') {
                    isTestPageLoaded = top.testManager.containerTestFrame.isTestPageLoaded;
                }

                // ok, if the above did not throw an exception, then the
                // variable is defined. If the onload has not fired in the
                // testFrame then isTestPageLoaded is still false. Otherwise
                // the testFrame has set it to true
            }
            catch (e) {
                // an error occured while attempting to access the isTestPageLoaded
                // in the testFrame, therefore the testFrame has not loaded yet
                isTestPageLoaded = false;
            }
            return isTestPageLoaded;
        }

        function isContainerReady() {
            return containerReady;
        }

        function setNotReady() {
            try {
                // attempt to set the isTestPageLoaded variable
                // in the test frame to false.
                top.testManager.containerTestFrame.isTestPageLoaded = false;
            }
            catch (e) {
                // testFrame.isTestPageLoaded not available... ignore
            }
        }
        function setTestPage(testPageURI) {
            setNotReady();
            top.jsUnitParseParms(testPageURI);
            testPageURI = appendCacheBusterParameterTo(testPageURI);
            try {
                top.testManager.containerTestFrame.location.href = testPageURI;
            } catch (e) {
            }
        }

        function appendCacheBusterParameterTo(testPageURI) {
            if (testPageURI.indexOf("?") == -1)
                testPageURI += "?";
            else
                testPageURI += "&";
            testPageURI += "cacheBuster=";
            testPageURI += new Date().getTime();
            return testPageURI;
        }
    </script>
</head>

<body onload="init()">
Test Container Controller
</body>
</html>