<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<script src="../resources/js-test.js"></script>
</head>
<body id="body">
<script>

    description("This tests that there's no crash when accessising any properties at the initial state.");

    function enumelateProperties(value) {
       if (typeof(value) !== 'object')
           return;
       for (var key in value)
           enumelateProperties(value[key]);
    }

    if (window.accessibilityController)
        enumelateProperties(window.accessibilityController);

</script>
</body>
</html>
