public override void UpdateTestResult(TestResult result)
        {
            int lastDot = result.Name.LastIndexOf('.');

            if (lastDot < 0)
            {
                return;
            }
            string         fixtureName = result.Name.Substring(0, lastDot);
            string         methodName  = result.Name.Substring(lastDot + 1);
            NUnitTestClass testClass   = GetTestClass(new FullTypeName(fixtureName));

            if (testClass == null)
            {
                // maybe it's an inherited test
                int secondToLastDot = result.Name.LastIndexOf('.', lastDot - 1);
                if (secondToLastDot >= 0)
                {
                    string fixtureName2 = result.Name.Substring(0, secondToLastDot);
                    methodName = result.Name.Substring(secondToLastDot + 1);
                    testClass  = GetTestClass(new FullTypeName(fixtureName2));
                }
            }
            if (testClass != null)
            {
                NUnitTestMethod testMethod = testClass.FindTestMethod(methodName);
                if (testMethod != null)
                {
                    testMethod.UpdateTestResult(result);
                }
            }
        }