protected virtual void TestStaticIndex()
        {
            SetUp("Static Index");

            testReference = VRTK_ControllerReference.GetControllerReference(actualIndex);
            Assert("testReference != null", testReference != null, "reference should not be null", testReference.ToString());
            Assert("testReference.index == actualIndex", testReference.index == actualIndex, "The reference actual [" + testReference.index + "] does not match the actual [" + actualIndex + "]");
            Assert("testReference.actual == actualController", testReference.actual == actualController, "The reference actual [" + testReference.actual + "] does not match the actual [" + actualController + "]");
            Assert("testReference.scriptAlias == aliasController", testReference.scriptAlias == aliasController, "The reference script alias [" + testReference.scriptAlias + "] does not match the actual [" + aliasController + "]");
            Assert("testReference.model == modelController", testReference.model == modelController, "The reference model [" + testReference.model + "] does not match the model [" + modelController + "]");
            Assert("testReference.hand == actualControllerHand", testReference.hand == actualControllerHand, "The reference hand [" + testReference.hand + "] does not match the hand [" + actualControllerHand + "]");

            foreach (SDK_BaseController.ControllerHand otherHand in GetOtherHands(actualControllerHand))
            {
                Assert("testReference.hand == " + otherHand, testReference.hand != otherHand, "The reference hand [" + testReference.hand + "] should not match the hand [" + otherHand + "]");
            }

            TearDown();
        }